ru-se.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

block-library.js (1090364B)


      1 this["wp"] = this["wp"] || {}; this["wp"]["blockLibrary"] =
      2 /******/ (function(modules) { // webpackBootstrap
      3 /******/ 	// The module cache
      4 /******/ 	var installedModules = {};
      5 /******/
      6 /******/ 	// The require function
      7 /******/ 	function __webpack_require__(moduleId) {
      8 /******/
      9 /******/ 		// Check if module is in cache
     10 /******/ 		if(installedModules[moduleId]) {
     11 /******/ 			return installedModules[moduleId].exports;
     12 /******/ 		}
     13 /******/ 		// Create a new module (and put it into the cache)
     14 /******/ 		var module = installedModules[moduleId] = {
     15 /******/ 			i: moduleId,
     16 /******/ 			l: false,
     17 /******/ 			exports: {}
     18 /******/ 		};
     19 /******/
     20 /******/ 		// Execute the module function
     21 /******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
     22 /******/
     23 /******/ 		// Flag the module as loaded
     24 /******/ 		module.l = true;
     25 /******/
     26 /******/ 		// Return the exports of the module
     27 /******/ 		return module.exports;
     28 /******/ 	}
     29 /******/
     30 /******/
     31 /******/ 	// expose the modules object (__webpack_modules__)
     32 /******/ 	__webpack_require__.m = modules;
     33 /******/
     34 /******/ 	// expose the module cache
     35 /******/ 	__webpack_require__.c = installedModules;
     36 /******/
     37 /******/ 	// define getter function for harmony exports
     38 /******/ 	__webpack_require__.d = function(exports, name, getter) {
     39 /******/ 		if(!__webpack_require__.o(exports, name)) {
     40 /******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
     41 /******/ 		}
     42 /******/ 	};
     43 /******/
     44 /******/ 	// define __esModule on exports
     45 /******/ 	__webpack_require__.r = function(exports) {
     46 /******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
     47 /******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
     48 /******/ 		}
     49 /******/ 		Object.defineProperty(exports, '__esModule', { value: true });
     50 /******/ 	};
     51 /******/
     52 /******/ 	// create a fake namespace object
     53 /******/ 	// mode & 1: value is a module id, require it
     54 /******/ 	// mode & 2: merge all properties of value into the ns
     55 /******/ 	// mode & 4: return value when already ns object
     56 /******/ 	// mode & 8|1: behave like require
     57 /******/ 	__webpack_require__.t = function(value, mode) {
     58 /******/ 		if(mode & 1) value = __webpack_require__(value);
     59 /******/ 		if(mode & 8) return value;
     60 /******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
     61 /******/ 		var ns = Object.create(null);
     62 /******/ 		__webpack_require__.r(ns);
     63 /******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
     64 /******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
     65 /******/ 		return ns;
     66 /******/ 	};
     67 /******/
     68 /******/ 	// getDefaultExport function for compatibility with non-harmony modules
     69 /******/ 	__webpack_require__.n = function(module) {
     70 /******/ 		var getter = module && module.__esModule ?
     71 /******/ 			function getDefault() { return module['default']; } :
     72 /******/ 			function getModuleExports() { return module; };
     73 /******/ 		__webpack_require__.d(getter, 'a', getter);
     74 /******/ 		return getter;
     75 /******/ 	};
     76 /******/
     77 /******/ 	// Object.prototype.hasOwnProperty.call
     78 /******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
     79 /******/
     80 /******/ 	// __webpack_public_path__
     81 /******/ 	__webpack_require__.p = "";
     82 /******/
     83 /******/
     84 /******/ 	// Load entry module and return exports
     85 /******/ 	return __webpack_require__(__webpack_require__.s = "K51g");
     86 /******/ })
     87 /************************************************************************/
     88 /******/ ({
     89 
     90 /***/ "1CF3":
     91 /***/ (function(module, exports) {
     92 
     93 (function() { module.exports = window["wp"]["dom"]; }());
     94 
     95 /***/ }),
     96 
     97 /***/ "1K8p":
     98 /***/ (function(module, exports, __webpack_require__) {
     99 
    100 "use strict";
    101 /**
    102  * Copyright (c) 2015, Facebook, Inc.
    103  * All rights reserved.
    104  *
    105  * This source code is licensed under the BSD-style license found in the
    106  * LICENSE file in the root directory of this source tree. An additional grant
    107  * of patent rights can be found in the PATENTS file in the same directory.
    108  *
    109  * @providesModule normalizeWheel
    110  * @typechecks
    111  */
    112 
    113 
    114 
    115 var UserAgent_DEPRECATED = __webpack_require__("jrfk");
    116 
    117 var isEventSupported = __webpack_require__("ez49");
    118 
    119 
    120 // Reasonable defaults
    121 var PIXEL_STEP  = 10;
    122 var LINE_HEIGHT = 40;
    123 var PAGE_HEIGHT = 800;
    124 
    125 /**
    126  * Mouse wheel (and 2-finger trackpad) support on the web sucks.  It is
    127  * complicated, thus this doc is long and (hopefully) detailed enough to answer
    128  * your questions.
    129  *
    130  * If you need to react to the mouse wheel in a predictable way, this code is
    131  * like your bestest friend. * hugs *
    132  *
    133  * As of today, there are 4 DOM event types you can listen to:
    134  *
    135  *   'wheel'                -- Chrome(31+), FF(17+), IE(9+)
    136  *   'mousewheel'           -- Chrome, IE(6+), Opera, Safari
    137  *   'MozMousePixelScroll'  -- FF(3.5 only!) (2010-2013) -- don't bother!
    138  *   'DOMMouseScroll'       -- FF(0.9.7+) since 2003
    139  *
    140  * So what to do?  The is the best:
    141  *
    142  *   normalizeWheel.getEventType();
    143  *
    144  * In your event callback, use this code to get sane interpretation of the
    145  * deltas.  This code will return an object with properties:
    146  *
    147  *   spinX   -- normalized spin speed (use for zoom) - x plane
    148  *   spinY   -- " - y plane
    149  *   pixelX  -- normalized distance (to pixels) - x plane
    150  *   pixelY  -- " - y plane
    151  *
    152  * Wheel values are provided by the browser assuming you are using the wheel to
    153  * scroll a web page by a number of lines or pixels (or pages).  Values can vary
    154  * significantly on different platforms and browsers, forgetting that you can
    155  * scroll at different speeds.  Some devices (like trackpads) emit more events
    156  * at smaller increments with fine granularity, and some emit massive jumps with
    157  * linear speed or acceleration.
    158  *
    159  * This code does its best to normalize the deltas for you:
    160  *
    161  *   - spin is trying to normalize how far the wheel was spun (or trackpad
    162  *     dragged).  This is super useful for zoom support where you want to
    163  *     throw away the chunky scroll steps on the PC and make those equal to
    164  *     the slow and smooth tiny steps on the Mac. Key data: This code tries to
    165  *     resolve a single slow step on a wheel to 1.
    166  *
    167  *   - pixel is normalizing the desired scroll delta in pixel units.  You'll
    168  *     get the crazy differences between browsers, but at least it'll be in
    169  *     pixels!
    170  *
    171  *   - positive value indicates scrolling DOWN/RIGHT, negative UP/LEFT.  This
    172  *     should translate to positive value zooming IN, negative zooming OUT.
    173  *     This matches the newer 'wheel' event.
    174  *
    175  * Why are there spinX, spinY (or pixels)?
    176  *
    177  *   - spinX is a 2-finger side drag on the trackpad, and a shift + wheel turn
    178  *     with a mouse.  It results in side-scrolling in the browser by default.
    179  *
    180  *   - spinY is what you expect -- it's the classic axis of a mouse wheel.
    181  *
    182  *   - I dropped spinZ/pixelZ.  It is supported by the DOM 3 'wheel' event and
    183  *     probably is by browsers in conjunction with fancy 3D controllers .. but
    184  *     you know.
    185  *
    186  * Implementation info:
    187  *
    188  * Examples of 'wheel' event if you scroll slowly (down) by one step with an
    189  * average mouse:
    190  *
    191  *   OS X + Chrome  (mouse)     -    4   pixel delta  (wheelDelta -120)
    192  *   OS X + Safari  (mouse)     -  N/A   pixel delta  (wheelDelta  -12)
    193  *   OS X + Firefox (mouse)     -    0.1 line  delta  (wheelDelta  N/A)
    194  *   Win8 + Chrome  (mouse)     -  100   pixel delta  (wheelDelta -120)
    195  *   Win8 + Firefox (mouse)     -    3   line  delta  (wheelDelta -120)
    196  *
    197  * On the trackpad:
    198  *
    199  *   OS X + Chrome  (trackpad)  -    2   pixel delta  (wheelDelta   -6)
    200  *   OS X + Firefox (trackpad)  -    1   pixel delta  (wheelDelta  N/A)
    201  *
    202  * On other/older browsers.. it's more complicated as there can be multiple and
    203  * also missing delta values.
    204  *
    205  * The 'wheel' event is more standard:
    206  *
    207  * http://www.w3.org/TR/DOM-Level-3-Events/#events-wheelevents
    208  *
    209  * The basics is that it includes a unit, deltaMode (pixels, lines, pages), and
    210  * deltaX, deltaY and deltaZ.  Some browsers provide other values to maintain
    211  * backward compatibility with older events.  Those other values help us
    212  * better normalize spin speed.  Example of what the browsers provide:
    213  *
    214  *                          | event.wheelDelta | event.detail
    215  *        ------------------+------------------+--------------
    216  *          Safari v5/OS X  |       -120       |       0
    217  *          Safari v5/Win7  |       -120       |       0
    218  *         Chrome v17/OS X  |       -120       |       0
    219  *         Chrome v17/Win7  |       -120       |       0
    220  *                IE9/Win7  |       -120       |   undefined
    221  *         Firefox v4/OS X  |     undefined    |       1
    222  *         Firefox v4/Win7  |     undefined    |       3
    223  *
    224  */
    225 function normalizeWheel(/*object*/ event) /*object*/ {
    226   var sX = 0, sY = 0,       // spinX, spinY
    227       pX = 0, pY = 0;       // pixelX, pixelY
    228 
    229   // Legacy
    230   if ('detail'      in event) { sY = event.detail; }
    231   if ('wheelDelta'  in event) { sY = -event.wheelDelta / 120; }
    232   if ('wheelDeltaY' in event) { sY = -event.wheelDeltaY / 120; }
    233   if ('wheelDeltaX' in event) { sX = -event.wheelDeltaX / 120; }
    234 
    235   // side scrolling on FF with DOMMouseScroll
    236   if ( 'axis' in event && event.axis === event.HORIZONTAL_AXIS ) {
    237     sX = sY;
    238     sY = 0;
    239   }
    240 
    241   pX = sX * PIXEL_STEP;
    242   pY = sY * PIXEL_STEP;
    243 
    244   if ('deltaY' in event) { pY = event.deltaY; }
    245   if ('deltaX' in event) { pX = event.deltaX; }
    246 
    247   if ((pX || pY) && event.deltaMode) {
    248     if (event.deltaMode == 1) {          // delta in LINE units
    249       pX *= LINE_HEIGHT;
    250       pY *= LINE_HEIGHT;
    251     } else {                             // delta in PAGE units
    252       pX *= PAGE_HEIGHT;
    253       pY *= PAGE_HEIGHT;
    254     }
    255   }
    256 
    257   // Fall-back if spin cannot be determined
    258   if (pX && !sX) { sX = (pX < 1) ? -1 : 1; }
    259   if (pY && !sY) { sY = (pY < 1) ? -1 : 1; }
    260 
    261   return { spinX  : sX,
    262            spinY  : sY,
    263            pixelX : pX,
    264            pixelY : pY };
    265 }
    266 
    267 
    268 /**
    269  * The best combination if you prefer spinX + spinY normalization.  It favors
    270  * the older DOMMouseScroll for Firefox, as FF does not include wheelDelta with
    271  * 'wheel' event, making spin speed determination impossible.
    272  */
    273 normalizeWheel.getEventType = function() /*string*/ {
    274   return (UserAgent_DEPRECATED.firefox())
    275            ? 'DOMMouseScroll'
    276            : (isEventSupported('wheel'))
    277                ? 'wheel'
    278                : 'mousewheel';
    279 };
    280 
    281 module.exports = normalizeWheel;
    282 
    283 
    284 /***/ }),
    285 
    286 /***/ "1Yn1":
    287 /***/ (function(module, __webpack_exports__, __webpack_require__) {
    288 
    289 "use strict";
    290 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
    291 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
    292 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
    293 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
    294 
    295 
    296 /**
    297  * WordPress dependencies
    298  */
    299 
    300 const code = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
    301   viewBox: "0 0 24 24",
    302   xmlns: "http://www.w3.org/2000/svg"
    303 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
    304   d: "M20.8 10.7l-4.3-4.3-1.1 1.1 4.3 4.3c.1.1.1.3 0 .4l-4.3 4.3 1.1 1.1 4.3-4.3c.7-.8.7-1.9 0-2.6zM4.2 11.8l4.3-4.3-1-1-4.3 4.3c-.7.7-.7 1.8 0 2.5l4.3 4.3 1.1-1.1-4.3-4.3c-.2-.1-.2-.3-.1-.4z"
    305 }));
    306 /* harmony default export */ __webpack_exports__["a"] = (code);
    307 
    308 
    309 /***/ }),
    310 
    311 /***/ "1ZqX":
    312 /***/ (function(module, exports) {
    313 
    314 (function() { module.exports = window["wp"]["data"]; }());
    315 
    316 /***/ }),
    317 
    318 /***/ "1iEr":
    319 /***/ (function(module, __webpack_exports__, __webpack_require__) {
    320 
    321 "use strict";
    322 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
    323 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
    324 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
    325 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
    326 
    327 
    328 /**
    329  * WordPress dependencies
    330  */
    331 
    332 const chevronRight = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
    333   xmlns: "http://www.w3.org/2000/svg",
    334   viewBox: "0 0 24 24"
    335 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
    336   d: "M10.6 6L9.4 7l4.6 5-4.6 5 1.2 1 5.4-6z"
    337 }));
    338 /* harmony default export */ __webpack_exports__["a"] = (chevronRight);
    339 
    340 
    341 /***/ }),
    342 
    343 /***/ "2gm7":
    344 /***/ (function(module, __webpack_exports__, __webpack_require__) {
    345 
    346 "use strict";
    347 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
    348 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
    349 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
    350 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
    351 
    352 
    353 /**
    354  * WordPress dependencies
    355  */
    356 
    357 const chevronLeft = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
    358   xmlns: "http://www.w3.org/2000/svg",
    359   viewBox: "0 0 24 24"
    360 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
    361   d: "M14.6 7l-1.2-1L8 12l5.4 6 1.2-1-4.6-5z"
    362 }));
    363 /* harmony default export */ __webpack_exports__["a"] = (chevronLeft);
    364 
    365 
    366 /***/ }),
    367 
    368 /***/ "4eJC":
    369 /***/ (function(module, exports, __webpack_require__) {
    370 
    371 /**
    372  * Memize options object.
    373  *
    374  * @typedef MemizeOptions
    375  *
    376  * @property {number} [maxSize] Maximum size of the cache.
    377  */
    378 
    379 /**
    380  * Internal cache entry.
    381  *
    382  * @typedef MemizeCacheNode
    383  *
    384  * @property {?MemizeCacheNode|undefined} [prev] Previous node.
    385  * @property {?MemizeCacheNode|undefined} [next] Next node.
    386  * @property {Array<*>}                   args   Function arguments for cache
    387  *                                               entry.
    388  * @property {*}                          val    Function result.
    389  */
    390 
    391 /**
    392  * Properties of the enhanced function for controlling cache.
    393  *
    394  * @typedef MemizeMemoizedFunction
    395  *
    396  * @property {()=>void} clear Clear the cache.
    397  */
    398 
    399 /**
    400  * Accepts a function to be memoized, and returns a new memoized function, with
    401  * optional options.
    402  *
    403  * @template {Function} F
    404  *
    405  * @param {F}             fn        Function to memoize.
    406  * @param {MemizeOptions} [options] Options object.
    407  *
    408  * @return {F & MemizeMemoizedFunction} Memoized function.
    409  */
    410 function memize( fn, options ) {
    411 	var size = 0;
    412 
    413 	/** @type {?MemizeCacheNode|undefined} */
    414 	var head;
    415 
    416 	/** @type {?MemizeCacheNode|undefined} */
    417 	var tail;
    418 
    419 	options = options || {};
    420 
    421 	function memoized( /* ...args */ ) {
    422 		var node = head,
    423 			len = arguments.length,
    424 			args, i;
    425 
    426 		searchCache: while ( node ) {
    427 			// Perform a shallow equality test to confirm that whether the node
    428 			// under test is a candidate for the arguments passed. Two arrays
    429 			// are shallowly equal if their length matches and each entry is
    430 			// strictly equal between the two sets. Avoid abstracting to a
    431 			// function which could incur an arguments leaking deoptimization.
    432 
    433 			// Check whether node arguments match arguments length
    434 			if ( node.args.length !== arguments.length ) {
    435 				node = node.next;
    436 				continue;
    437 			}
    438 
    439 			// Check whether node arguments match arguments values
    440 			for ( i = 0; i < len; i++ ) {
    441 				if ( node.args[ i ] !== arguments[ i ] ) {
    442 					node = node.next;
    443 					continue searchCache;
    444 				}
    445 			}
    446 
    447 			// At this point we can assume we've found a match
    448 
    449 			// Surface matched node to head if not already
    450 			if ( node !== head ) {
    451 				// As tail, shift to previous. Must only shift if not also
    452 				// head, since if both head and tail, there is no previous.
    453 				if ( node === tail ) {
    454 					tail = node.prev;
    455 				}
    456 
    457 				// Adjust siblings to point to each other. If node was tail,
    458 				// this also handles new tail's empty `next` assignment.
    459 				/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;
    460 				if ( node.next ) {
    461 					node.next.prev = node.prev;
    462 				}
    463 
    464 				node.next = head;
    465 				node.prev = null;
    466 				/** @type {MemizeCacheNode} */ ( head ).prev = node;
    467 				head = node;
    468 			}
    469 
    470 			// Return immediately
    471 			return node.val;
    472 		}
    473 
    474 		// No cached value found. Continue to insertion phase:
    475 
    476 		// Create a copy of arguments (avoid leaking deoptimization)
    477 		args = new Array( len );
    478 		for ( i = 0; i < len; i++ ) {
    479 			args[ i ] = arguments[ i ];
    480 		}
    481 
    482 		node = {
    483 			args: args,
    484 
    485 			// Generate the result from original function
    486 			val: fn.apply( null, args ),
    487 		};
    488 
    489 		// Don't need to check whether node is already head, since it would
    490 		// have been returned above already if it was
    491 
    492 		// Shift existing head down list
    493 		if ( head ) {
    494 			head.prev = node;
    495 			node.next = head;
    496 		} else {
    497 			// If no head, follows that there's no tail (at initial or reset)
    498 			tail = node;
    499 		}
    500 
    501 		// Trim tail if we're reached max size and are pending cache insertion
    502 		if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {
    503 			tail = /** @type {MemizeCacheNode} */ ( tail ).prev;
    504 			/** @type {MemizeCacheNode} */ ( tail ).next = null;
    505 		} else {
    506 			size++;
    507 		}
    508 
    509 		head = node;
    510 
    511 		return node.val;
    512 	}
    513 
    514 	memoized.clear = function() {
    515 		head = null;
    516 		tail = null;
    517 		size = 0;
    518 	};
    519 
    520 	if ( false ) {}
    521 
    522 	// Ignore reason: There's not a clear solution to create an intersection of
    523 	// the function with additional properties, where the goal is to retain the
    524 	// function signature of the incoming argument and add control properties
    525 	// on the return value.
    526 
    527 	// @ts-ignore
    528 	return memoized;
    529 }
    530 
    531 module.exports = memize;
    532 
    533 
    534 /***/ }),
    535 
    536 /***/ "A/WM":
    537 /***/ (function(module, exports, __webpack_require__) {
    538 
    539 var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
    540   Copyright (c) 2018 Jed Watson.
    541   Licensed under the MIT License (MIT), see
    542   http://jedwatson.github.io/classnames
    543 */
    544 /* global define */
    545 
    546 (function () {
    547 	'use strict';
    548 
    549 	var classNames = (function () {
    550 		// don't inherit from Object so we can skip hasOwnProperty check later
    551 		// http://stackoverflow.com/questions/15518328/creating-js-object-with-object-createnull#answer-21079232
    552 		function StorageObject() {}
    553 		StorageObject.prototype = Object.create(null);
    554 
    555 		function _parseArray (resultSet, array) {
    556 			var length = array.length;
    557 
    558 			for (var i = 0; i < length; ++i) {
    559 				_parse(resultSet, array[i]);
    560 			}
    561 		}
    562 
    563 		var hasOwn = {}.hasOwnProperty;
    564 
    565 		function _parseNumber (resultSet, num) {
    566 			resultSet[num] = true;
    567 		}
    568 
    569 		function _parseObject (resultSet, object) {
    570 			if (object.toString === Object.prototype.toString) {
    571 				for (var k in object) {
    572 					if (hasOwn.call(object, k)) {
    573 						// set value to false instead of deleting it to avoid changing object structure
    574 						// https://www.smashingmagazine.com/2012/11/writing-fast-memory-efficient-javascript/#de-referencing-misconceptions
    575 						resultSet[k] = !!object[k];
    576 					}
    577 				}
    578 			} else {
    579 				resultSet[object.toString()] = true;
    580 			}
    581 		}
    582 
    583 		var SPACE = /\s+/;
    584 		function _parseString (resultSet, str) {
    585 			var array = str.split(SPACE);
    586 			var length = array.length;
    587 
    588 			for (var i = 0; i < length; ++i) {
    589 				resultSet[array[i]] = true;
    590 			}
    591 		}
    592 
    593 		function _parse (resultSet, arg) {
    594 			if (!arg) return;
    595 			var argType = typeof arg;
    596 
    597 			// 'foo bar'
    598 			if (argType === 'string') {
    599 				_parseString(resultSet, arg);
    600 
    601 			// ['foo', 'bar', ...]
    602 			} else if (Array.isArray(arg)) {
    603 				_parseArray(resultSet, arg);
    604 
    605 			// { 'foo': true, ... }
    606 			} else if (argType === 'object') {
    607 				_parseObject(resultSet, arg);
    608 
    609 			// '130'
    610 			} else if (argType === 'number') {
    611 				_parseNumber(resultSet, arg);
    612 			}
    613 		}
    614 
    615 		function _classNames () {
    616 			// don't leak arguments
    617 			// https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#32-leaking-arguments
    618 			var len = arguments.length;
    619 			var args = Array(len);
    620 			for (var i = 0; i < len; i++) {
    621 				args[i] = arguments[i];
    622 			}
    623 
    624 			var classSet = new StorageObject();
    625 			_parseArray(classSet, args);
    626 
    627 			var list = [];
    628 
    629 			for (var k in classSet) {
    630 				if (classSet[k]) {
    631 					list.push(k)
    632 				}
    633 			}
    634 
    635 			return list.join(' ');
    636 		}
    637 
    638 		return _classNames;
    639 	})();
    640 
    641 	if ( true && module.exports) {
    642 		classNames.default = classNames;
    643 		module.exports = classNames;
    644 	} else if (true) {
    645 		// register as 'classnames', consistent with npm package name
    646 		!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
    647 			return classNames;
    648 		}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
    649 				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
    650 	} else {}
    651 }());
    652 
    653 
    654 /***/ }),
    655 
    656 /***/ "B9Az":
    657 /***/ (function(module, __webpack_exports__, __webpack_require__) {
    658 
    659 "use strict";
    660 
    661 // EXTERNAL MODULE: external ["wp","element"]
    662 var external_wp_element_ = __webpack_require__("GRId");
    663 
    664 // EXTERNAL MODULE: external ["wp","primitives"]
    665 var external_wp_primitives_ = __webpack_require__("Tqx9");
    666 
    667 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pencil.js
    668 
    669 
    670 /**
    671  * WordPress dependencies
    672  */
    673 
    674 const pencil = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
    675   xmlns: "http://www.w3.org/2000/svg",
    676   viewBox: "0 0 24 24"
    677 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
    678   d: "M20.1 5.1L16.9 2 6.2 12.7l-1.3 4.4 4.5-1.3L20.1 5.1zM4 20.8h8v-1.5H4v1.5z"
    679 }));
    680 /* harmony default export */ var library_pencil = (pencil);
    681 
    682 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/edit.js
    683 /**
    684  * Internal dependencies
    685  */
    686 
    687 /* harmony default export */ var edit = __webpack_exports__["a"] = (library_pencil);
    688 
    689 
    690 /***/ }),
    691 
    692 /***/ "Bpkj":
    693 /***/ (function(module, __webpack_exports__, __webpack_require__) {
    694 
    695 "use strict";
    696 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
    697 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
    698 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
    699 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
    700 
    701 
    702 /**
    703  * WordPress dependencies
    704  */
    705 
    706 const link = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
    707   xmlns: "http://www.w3.org/2000/svg",
    708   viewBox: "0 0 24 24"
    709 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
    710   d: "M15.6 7.2H14v1.5h1.6c2 0 3.7 1.7 3.7 3.7s-1.7 3.7-3.7 3.7H14v1.5h1.6c2.8 0 5.2-2.3 5.2-5.2 0-2.9-2.3-5.2-5.2-5.2zM4.7 12.4c0-2 1.7-3.7 3.7-3.7H10V7.2H8.4c-2.9 0-5.2 2.3-5.2 5.2 0 2.9 2.3 5.2 5.2 5.2H10v-1.5H8.4c-2 0-3.7-1.7-3.7-3.7zm4.6.9h5.3v-1.5H9.3v1.5z"
    711 }));
    712 /* harmony default export */ __webpack_exports__["a"] = (link);
    713 
    714 
    715 /***/ }),
    716 
    717 /***/ "FEKF":
    718 /***/ (function(module, exports, __webpack_require__) {
    719 
    720 /*! Fast Average Color | © 2019 Denis Seleznev | MIT License | https://github.com/hcodes/fast-average-color/ */
    721 (function (global, factory) {
    722 	 true ? module.exports = factory() :
    723 	undefined;
    724 }(this, (function () { 'use strict';
    725 
    726 function _classCallCheck(instance, Constructor) {
    727   if (!(instance instanceof Constructor)) {
    728     throw new TypeError("Cannot call a class as a function");
    729   }
    730 }
    731 
    732 function _defineProperties(target, props) {
    733   for (var i = 0; i < props.length; i++) {
    734     var descriptor = props[i];
    735     descriptor.enumerable = descriptor.enumerable || false;
    736     descriptor.configurable = true;
    737     if ("value" in descriptor) descriptor.writable = true;
    738     Object.defineProperty(target, descriptor.key, descriptor);
    739   }
    740 }
    741 
    742 function _createClass(Constructor, protoProps, staticProps) {
    743   if (protoProps) _defineProperties(Constructor.prototype, protoProps);
    744   if (staticProps) _defineProperties(Constructor, staticProps);
    745   return Constructor;
    746 }
    747 
    748 function _slicedToArray(arr, i) {
    749   return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();
    750 }
    751 
    752 function _arrayWithHoles(arr) {
    753   if (Array.isArray(arr)) return arr;
    754 }
    755 
    756 function _iterableToArrayLimit(arr, i) {
    757   var _arr = [];
    758   var _n = true;
    759   var _d = false;
    760   var _e = undefined;
    761 
    762   try {
    763     for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
    764       _arr.push(_s.value);
    765 
    766       if (i && _arr.length === i) break;
    767     }
    768   } catch (err) {
    769     _d = true;
    770     _e = err;
    771   } finally {
    772     try {
    773       if (!_n && _i["return"] != null) _i["return"]();
    774     } finally {
    775       if (_d) throw _e;
    776     }
    777   }
    778 
    779   return _arr;
    780 }
    781 
    782 function _nonIterableRest() {
    783   throw new TypeError("Invalid attempt to destructure non-iterable instance");
    784 }
    785 
    786 var FastAverageColor =
    787 /*#__PURE__*/
    788 function () {
    789   function FastAverageColor() {
    790     _classCallCheck(this, FastAverageColor);
    791   }
    792 
    793   _createClass(FastAverageColor, [{
    794     key: "getColorAsync",
    795 
    796     /**
    797      * Get asynchronously the average color from not loaded image.
    798      *
    799      * @param {HTMLImageElement} resource
    800      * @param {Function} callback
    801      * @param {Object|null} [options]
    802      * @param {Array}  [options.defaultColor=[255, 255, 255, 255]]
    803      * @param {*}      [options.data]
    804      * @param {string} [options.mode="speed"] "precision" or "speed"
    805      * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant"
    806      * @param {number} [options.step=1]
    807      * @param {number} [options.left=0]
    808      * @param {number} [options.top=0]
    809      * @param {number} [options.width=width of resource]
    810      * @param {number} [options.height=height of resource]
    811      */
    812     value: function getColorAsync(resource, callback, options) {
    813       if (resource.complete) {
    814         callback.call(resource, this.getColor(resource, options), options && options.data);
    815       } else {
    816         this._bindImageEvents(resource, callback, options);
    817       }
    818     }
    819     /**
    820      * Get the average color from images, videos and canvas.
    821      *
    822      * @param {HTMLImageElement|HTMLVideoElement|HTMLCanvasElement} resource
    823      * @param {Object|null} [options]
    824      * @param {Array}  [options.defaultColor=[255, 255, 255, 255]]
    825      * @param {*}      [options.data]
    826      * @param {string} [options.mode="speed"] "precision" or "speed"
    827      * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant"
    828      * @param {number} [options.step=1]
    829      * @param {number} [options.left=0]
    830      * @param {number} [options.top=0]
    831      * @param {number} [options.width=width of resource]
    832      * @param {number} [options.height=height of resource]
    833      *
    834      * @returns {Object}
    835      */
    836 
    837   }, {
    838     key: "getColor",
    839     value: function getColor(resource, options) {
    840       options = options || {};
    841 
    842       var defaultColor = this._getDefaultColor(options),
    843           originalSize = this._getOriginalSize(resource),
    844           size = this._prepareSizeAndPosition(originalSize, options);
    845 
    846       var error = null,
    847           value = defaultColor;
    848 
    849       if (!size.srcWidth || !size.srcHeight || !size.destWidth || !size.destHeight) {
    850         return this._prepareResult(defaultColor, new Error('FastAverageColor: Incorrect sizes.'));
    851       }
    852 
    853       if (!this._ctx) {
    854         this._canvas = this._makeCanvas();
    855         this._ctx = this._canvas.getContext && this._canvas.getContext('2d');
    856 
    857         if (!this._ctx) {
    858           return this._prepareResult(defaultColor, new Error('FastAverageColor: Canvas Context 2D is not supported in this browser.'));
    859         }
    860       }
    861 
    862       this._canvas.width = size.destWidth;
    863       this._canvas.height = size.destHeight;
    864 
    865       try {
    866         this._ctx.clearRect(0, 0, size.destWidth, size.destHeight);
    867 
    868         this._ctx.drawImage(resource, size.srcLeft, size.srcTop, size.srcWidth, size.srcHeight, 0, 0, size.destWidth, size.destHeight);
    869 
    870         var bitmapData = this._ctx.getImageData(0, 0, size.destWidth, size.destHeight).data;
    871 
    872         value = this.getColorFromArray4(bitmapData, options);
    873       } catch (e) {
    874         // Security error, CORS
    875         // https://developer.mozilla.org/en/docs/Web/HTML/CORS_enabled_image
    876         error = e;
    877       }
    878 
    879       return this._prepareResult(value, error);
    880     }
    881     /**
    882      * Get the average color from a array when 1 pixel is 4 bytes.
    883      *
    884      * @param {Array|Uint8Array} arr
    885      * @param {Object} [options]
    886      * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant"
    887      * @param {Array}  [options.defaultColor=[255, 255, 255, 255]]
    888      * @param {number} [options.step=1]
    889      *
    890      * @returns {Array} [red (0-255), green (0-255), blue (0-255), alpha (0-255)]
    891      */
    892 
    893   }, {
    894     key: "getColorFromArray4",
    895     value: function getColorFromArray4(arr, options) {
    896       options = options || {};
    897       var bytesPerPixel = 4,
    898           arrLength = arr.length;
    899 
    900       if (arrLength < bytesPerPixel) {
    901         return this._getDefaultColor(options);
    902       }
    903 
    904       var len = arrLength - arrLength % bytesPerPixel,
    905           preparedStep = (options.step || 1) * bytesPerPixel,
    906           algorithm = '_' + (options.algorithm || 'sqrt') + 'Algorithm';
    907 
    908       if (typeof this[algorithm] !== 'function') {
    909         throw new Error("FastAverageColor: ".concat(options.algorithm, " is unknown algorithm."));
    910       }
    911 
    912       return this[algorithm](arr, len, preparedStep);
    913     }
    914     /**
    915      * Destroy the instance.
    916      */
    917 
    918   }, {
    919     key: "destroy",
    920     value: function destroy() {
    921       delete this._canvas;
    922       delete this._ctx;
    923     }
    924   }, {
    925     key: "_getDefaultColor",
    926     value: function _getDefaultColor(options) {
    927       return this._getOption(options, 'defaultColor', [255, 255, 255, 255]);
    928     }
    929   }, {
    930     key: "_getOption",
    931     value: function _getOption(options, name, defaultValue) {
    932       return typeof options[name] === 'undefined' ? defaultValue : options[name];
    933     }
    934   }, {
    935     key: "_prepareSizeAndPosition",
    936     value: function _prepareSizeAndPosition(originalSize, options) {
    937       var srcLeft = this._getOption(options, 'left', 0),
    938           srcTop = this._getOption(options, 'top', 0),
    939           srcWidth = this._getOption(options, 'width', originalSize.width),
    940           srcHeight = this._getOption(options, 'height', originalSize.height),
    941           destWidth = srcWidth,
    942           destHeight = srcHeight;
    943 
    944       if (options.mode === 'precision') {
    945         return {
    946           srcLeft: srcLeft,
    947           srcTop: srcTop,
    948           srcWidth: srcWidth,
    949           srcHeight: srcHeight,
    950           destWidth: destWidth,
    951           destHeight: destHeight
    952         };
    953       }
    954 
    955       var maxSize = 100,
    956           minSize = 10;
    957       var factor;
    958 
    959       if (srcWidth > srcHeight) {
    960         factor = srcWidth / srcHeight;
    961         destWidth = maxSize;
    962         destHeight = Math.round(destWidth / factor);
    963       } else {
    964         factor = srcHeight / srcWidth;
    965         destHeight = maxSize;
    966         destWidth = Math.round(destHeight / factor);
    967       }
    968 
    969       if (destWidth > srcWidth || destHeight > srcHeight || destWidth < minSize || destHeight < minSize) {
    970         destWidth = srcWidth;
    971         destHeight = srcHeight;
    972       }
    973 
    974       return {
    975         srcLeft: srcLeft,
    976         srcTop: srcTop,
    977         srcWidth: srcWidth,
    978         srcHeight: srcHeight,
    979         destWidth: destWidth,
    980         destHeight: destHeight
    981       };
    982     }
    983   }, {
    984     key: "_simpleAlgorithm",
    985     value: function _simpleAlgorithm(arr, len, preparedStep) {
    986       var redTotal = 0,
    987           greenTotal = 0,
    988           blueTotal = 0,
    989           alphaTotal = 0,
    990           count = 0;
    991 
    992       for (var i = 0; i < len; i += preparedStep) {
    993         var alpha = arr[i + 3],
    994             red = arr[i] * alpha,
    995             green = arr[i + 1] * alpha,
    996             blue = arr[i + 2] * alpha;
    997         redTotal += red;
    998         greenTotal += green;
    999         blueTotal += blue;
   1000         alphaTotal += alpha;
   1001         count++;
   1002       }
   1003 
   1004       return alphaTotal ? [Math.round(redTotal / alphaTotal), Math.round(greenTotal / alphaTotal), Math.round(blueTotal / alphaTotal), Math.round(alphaTotal / count)] : [0, 0, 0, 0];
   1005     }
   1006   }, {
   1007     key: "_sqrtAlgorithm",
   1008     value: function _sqrtAlgorithm(arr, len, preparedStep) {
   1009       var redTotal = 0,
   1010           greenTotal = 0,
   1011           blueTotal = 0,
   1012           alphaTotal = 0,
   1013           count = 0;
   1014 
   1015       for (var i = 0; i < len; i += preparedStep) {
   1016         var red = arr[i],
   1017             green = arr[i + 1],
   1018             blue = arr[i + 2],
   1019             alpha = arr[i + 3];
   1020         redTotal += red * red * alpha;
   1021         greenTotal += green * green * alpha;
   1022         blueTotal += blue * blue * alpha;
   1023         alphaTotal += alpha;
   1024         count++;
   1025       }
   1026 
   1027       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];
   1028     }
   1029   }, {
   1030     key: "_dominantAlgorithm",
   1031     value: function _dominantAlgorithm(arr, len, preparedStep) {
   1032       var colorHash = {},
   1033           divider = 24;
   1034 
   1035       for (var i = 0; i < len; i += preparedStep) {
   1036         var red = arr[i],
   1037             green = arr[i + 1],
   1038             blue = arr[i + 2],
   1039             alpha = arr[i + 3],
   1040             key = Math.round(red / divider) + ',' + Math.round(green / divider) + ',' + Math.round(blue / divider);
   1041 
   1042         if (colorHash[key]) {
   1043           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];
   1044         } else {
   1045           colorHash[key] = [red * alpha, green * alpha, blue * alpha, alpha, 1];
   1046         }
   1047       }
   1048 
   1049       var buffer = Object.keys(colorHash).map(function (key) {
   1050         return colorHash[key];
   1051       }).sort(function (a, b) {
   1052         var countA = a[4],
   1053             countB = b[4];
   1054         return countA > countB ? -1 : countA === countB ? 0 : 1;
   1055       });
   1056 
   1057       var _buffer$ = _slicedToArray(buffer[0], 5),
   1058           redTotal = _buffer$[0],
   1059           greenTotal = _buffer$[1],
   1060           blueTotal = _buffer$[2],
   1061           alphaTotal = _buffer$[3],
   1062           count = _buffer$[4];
   1063 
   1064       return alphaTotal ? [Math.round(redTotal / alphaTotal), Math.round(greenTotal / alphaTotal), Math.round(blueTotal / alphaTotal), Math.round(alphaTotal / count)] : [0, 0, 0, 0];
   1065     }
   1066   }, {
   1067     key: "_bindImageEvents",
   1068     value: function _bindImageEvents(resource, callback, options) {
   1069       var _this = this;
   1070 
   1071       options = options || {};
   1072 
   1073       var data = options && options.data,
   1074           defaultColor = this._getDefaultColor(options),
   1075           onload = function onload() {
   1076         unbindEvents();
   1077         callback.call(resource, _this.getColor(resource, options), data);
   1078       },
   1079           onerror = function onerror() {
   1080         unbindEvents();
   1081         callback.call(resource, _this._prepareResult(defaultColor, new Error('Image error')), data);
   1082       },
   1083           onabort = function onabort() {
   1084         unbindEvents();
   1085         callback.call(resource, _this._prepareResult(defaultColor, new Error('Image abort')), data);
   1086       },
   1087           unbindEvents = function unbindEvents() {
   1088         resource.removeEventListener('load', onload);
   1089         resource.removeEventListener('error', onerror);
   1090         resource.removeEventListener('abort', onabort);
   1091       };
   1092 
   1093       resource.addEventListener('load', onload);
   1094       resource.addEventListener('error', onerror);
   1095       resource.addEventListener('abort', onabort);
   1096     }
   1097   }, {
   1098     key: "_prepareResult",
   1099     value: function _prepareResult(value, error) {
   1100       var rgb = value.slice(0, 3),
   1101           rgba = [].concat(rgb, value[3] / 255),
   1102           isDark = this._isDark(value);
   1103 
   1104       return {
   1105         error: error,
   1106         value: value,
   1107         rgb: 'rgb(' + rgb.join(',') + ')',
   1108         rgba: 'rgba(' + rgba.join(',') + ')',
   1109         hex: this._arrayToHex(rgb),
   1110         hexa: this._arrayToHex(value),
   1111         isDark: isDark,
   1112         isLight: !isDark
   1113       };
   1114     }
   1115   }, {
   1116     key: "_getOriginalSize",
   1117     value: function _getOriginalSize(resource) {
   1118       if (resource instanceof HTMLImageElement) {
   1119         return {
   1120           width: resource.naturalWidth,
   1121           height: resource.naturalHeight
   1122         };
   1123       }
   1124 
   1125       if (resource instanceof HTMLVideoElement) {
   1126         return {
   1127           width: resource.videoWidth,
   1128           height: resource.videoHeight
   1129         };
   1130       }
   1131 
   1132       return {
   1133         width: resource.width,
   1134         height: resource.height
   1135       };
   1136     }
   1137   }, {
   1138     key: "_toHex",
   1139     value: function _toHex(num) {
   1140       var str = num.toString(16);
   1141       return str.length === 1 ? '0' + str : str;
   1142     }
   1143   }, {
   1144     key: "_arrayToHex",
   1145     value: function _arrayToHex(arr) {
   1146       return '#' + arr.map(this._toHex).join('');
   1147     }
   1148   }, {
   1149     key: "_isDark",
   1150     value: function _isDark(color) {
   1151       // http://www.w3.org/TR/AERT#color-contrast
   1152       var result = (color[0] * 299 + color[1] * 587 + color[2] * 114) / 1000;
   1153       return result < 128;
   1154     }
   1155   }, {
   1156     key: "_makeCanvas",
   1157     value: function _makeCanvas() {
   1158       return typeof window === 'undefined' ? new OffscreenCanvas(1, 1) : document.createElement('canvas');
   1159     }
   1160   }]);
   1161 
   1162   return FastAverageColor;
   1163 }();
   1164 
   1165 return FastAverageColor;
   1166 
   1167 })));
   1168 
   1169 
   1170 /***/ }),
   1171 
   1172 /***/ "FqII":
   1173 /***/ (function(module, exports) {
   1174 
   1175 (function() { module.exports = window["wp"]["date"]; }());
   1176 
   1177 /***/ }),
   1178 
   1179 /***/ "GRId":
   1180 /***/ (function(module, exports) {
   1181 
   1182 (function() { module.exports = window["wp"]["element"]; }());
   1183 
   1184 /***/ }),
   1185 
   1186 /***/ "HSyU":
   1187 /***/ (function(module, exports) {
   1188 
   1189 (function() { module.exports = window["wp"]["blocks"]; }());
   1190 
   1191 /***/ }),
   1192 
   1193 /***/ "JREk":
   1194 /***/ (function(module, exports) {
   1195 
   1196 (function() { module.exports = window["wp"]["serverSideRender"]; }());
   1197 
   1198 /***/ }),
   1199 
   1200 /***/ "K51g":
   1201 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   1202 
   1203 "use strict";
   1204 // ESM COMPAT FLAG
   1205 __webpack_require__.r(__webpack_exports__);
   1206 
   1207 // EXPORTS
   1208 __webpack_require__.d(__webpack_exports__, "__experimentalGetCoreBlocks", function() { return /* binding */ __experimentalGetCoreBlocks; });
   1209 __webpack_require__.d(__webpack_exports__, "registerCoreBlocks", function() { return /* binding */ registerCoreBlocks; });
   1210 __webpack_require__.d(__webpack_exports__, "__experimentalRegisterExperimentalCoreBlocks", function() { return /* binding */ __experimentalRegisterExperimentalCoreBlocks; });
   1211 
   1212 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/paragraph/index.js
   1213 var build_module_paragraph_namespaceObject = {};
   1214 __webpack_require__.r(build_module_paragraph_namespaceObject);
   1215 __webpack_require__.d(build_module_paragraph_namespaceObject, "metadata", function() { return paragraph_metadata; });
   1216 __webpack_require__.d(build_module_paragraph_namespaceObject, "name", function() { return paragraph_name; });
   1217 __webpack_require__.d(build_module_paragraph_namespaceObject, "settings", function() { return paragraph_settings; });
   1218 
   1219 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/image/index.js
   1220 var build_module_image_namespaceObject = {};
   1221 __webpack_require__.r(build_module_image_namespaceObject);
   1222 __webpack_require__.d(build_module_image_namespaceObject, "metadata", function() { return image_metadata; });
   1223 __webpack_require__.d(build_module_image_namespaceObject, "name", function() { return image_name; });
   1224 __webpack_require__.d(build_module_image_namespaceObject, "settings", function() { return image_settings; });
   1225 
   1226 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/heading/index.js
   1227 var build_module_heading_namespaceObject = {};
   1228 __webpack_require__.r(build_module_heading_namespaceObject);
   1229 __webpack_require__.d(build_module_heading_namespaceObject, "metadata", function() { return heading_metadata; });
   1230 __webpack_require__.d(build_module_heading_namespaceObject, "name", function() { return heading_name; });
   1231 __webpack_require__.d(build_module_heading_namespaceObject, "settings", function() { return heading_settings; });
   1232 
   1233 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/quote/index.js
   1234 var build_module_quote_namespaceObject = {};
   1235 __webpack_require__.r(build_module_quote_namespaceObject);
   1236 __webpack_require__.d(build_module_quote_namespaceObject, "metadata", function() { return quote_metadata; });
   1237 __webpack_require__.d(build_module_quote_namespaceObject, "name", function() { return quote_name; });
   1238 __webpack_require__.d(build_module_quote_namespaceObject, "settings", function() { return quote_settings; });
   1239 
   1240 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/gallery/index.js
   1241 var build_module_gallery_namespaceObject = {};
   1242 __webpack_require__.r(build_module_gallery_namespaceObject);
   1243 __webpack_require__.d(build_module_gallery_namespaceObject, "metadata", function() { return gallery_metadata; });
   1244 __webpack_require__.d(build_module_gallery_namespaceObject, "name", function() { return gallery_name; });
   1245 __webpack_require__.d(build_module_gallery_namespaceObject, "settings", function() { return gallery_settings; });
   1246 
   1247 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/archives/index.js
   1248 var archives_namespaceObject = {};
   1249 __webpack_require__.r(archives_namespaceObject);
   1250 __webpack_require__.d(archives_namespaceObject, "metadata", function() { return archives_metadata; });
   1251 __webpack_require__.d(archives_namespaceObject, "name", function() { return archives_name; });
   1252 __webpack_require__.d(archives_namespaceObject, "settings", function() { return archives_settings; });
   1253 
   1254 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/audio/index.js
   1255 var build_module_audio_namespaceObject = {};
   1256 __webpack_require__.r(build_module_audio_namespaceObject);
   1257 __webpack_require__.d(build_module_audio_namespaceObject, "metadata", function() { return audio_metadata; });
   1258 __webpack_require__.d(build_module_audio_namespaceObject, "name", function() { return audio_name; });
   1259 __webpack_require__.d(build_module_audio_namespaceObject, "settings", function() { return audio_settings; });
   1260 
   1261 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/button/index.js
   1262 var button_namespaceObject = {};
   1263 __webpack_require__.r(button_namespaceObject);
   1264 __webpack_require__.d(button_namespaceObject, "metadata", function() { return button_metadata; });
   1265 __webpack_require__.d(button_namespaceObject, "name", function() { return button_name; });
   1266 __webpack_require__.d(button_namespaceObject, "settings", function() { return button_settings; });
   1267 
   1268 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/buttons/index.js
   1269 var build_module_buttons_namespaceObject = {};
   1270 __webpack_require__.r(build_module_buttons_namespaceObject);
   1271 __webpack_require__.d(build_module_buttons_namespaceObject, "metadata", function() { return buttons_metadata; });
   1272 __webpack_require__.d(build_module_buttons_namespaceObject, "name", function() { return buttons_name; });
   1273 __webpack_require__.d(build_module_buttons_namespaceObject, "settings", function() { return buttons_settings; });
   1274 
   1275 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/calendar/index.js
   1276 var build_module_calendar_namespaceObject = {};
   1277 __webpack_require__.r(build_module_calendar_namespaceObject);
   1278 __webpack_require__.d(build_module_calendar_namespaceObject, "metadata", function() { return calendar_metadata; });
   1279 __webpack_require__.d(build_module_calendar_namespaceObject, "name", function() { return calendar_name; });
   1280 __webpack_require__.d(build_module_calendar_namespaceObject, "settings", function() { return calendar_settings; });
   1281 
   1282 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/categories/index.js
   1283 var categories_namespaceObject = {};
   1284 __webpack_require__.r(categories_namespaceObject);
   1285 __webpack_require__.d(categories_namespaceObject, "metadata", function() { return categories_metadata; });
   1286 __webpack_require__.d(categories_namespaceObject, "name", function() { return categories_name; });
   1287 __webpack_require__.d(categories_namespaceObject, "settings", function() { return categories_settings; });
   1288 
   1289 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/code/index.js
   1290 var code_namespaceObject = {};
   1291 __webpack_require__.r(code_namespaceObject);
   1292 __webpack_require__.d(code_namespaceObject, "metadata", function() { return code_metadata; });
   1293 __webpack_require__.d(code_namespaceObject, "name", function() { return code_name; });
   1294 __webpack_require__.d(code_namespaceObject, "settings", function() { return code_settings; });
   1295 
   1296 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/columns/index.js
   1297 var build_module_columns_namespaceObject = {};
   1298 __webpack_require__.r(build_module_columns_namespaceObject);
   1299 __webpack_require__.d(build_module_columns_namespaceObject, "metadata", function() { return columns_metadata; });
   1300 __webpack_require__.d(build_module_columns_namespaceObject, "name", function() { return columns_name; });
   1301 __webpack_require__.d(build_module_columns_namespaceObject, "settings", function() { return columns_settings; });
   1302 
   1303 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/column/index.js
   1304 var build_module_column_namespaceObject = {};
   1305 __webpack_require__.r(build_module_column_namespaceObject);
   1306 __webpack_require__.d(build_module_column_namespaceObject, "metadata", function() { return column_metadata; });
   1307 __webpack_require__.d(build_module_column_namespaceObject, "name", function() { return column_name; });
   1308 __webpack_require__.d(build_module_column_namespaceObject, "settings", function() { return column_settings; });
   1309 
   1310 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/cover/index.js
   1311 var build_module_cover_namespaceObject = {};
   1312 __webpack_require__.r(build_module_cover_namespaceObject);
   1313 __webpack_require__.d(build_module_cover_namespaceObject, "metadata", function() { return cover_metadata; });
   1314 __webpack_require__.d(build_module_cover_namespaceObject, "name", function() { return cover_name; });
   1315 __webpack_require__.d(build_module_cover_namespaceObject, "settings", function() { return cover_settings; });
   1316 
   1317 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/embed/index.js
   1318 var embed_namespaceObject = {};
   1319 __webpack_require__.r(embed_namespaceObject);
   1320 __webpack_require__.d(embed_namespaceObject, "metadata", function() { return embed_metadata; });
   1321 __webpack_require__.d(embed_namespaceObject, "name", function() { return embed_name; });
   1322 __webpack_require__.d(embed_namespaceObject, "settings", function() { return embed_settings; });
   1323 
   1324 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/file/index.js
   1325 var build_module_file_namespaceObject = {};
   1326 __webpack_require__.r(build_module_file_namespaceObject);
   1327 __webpack_require__.d(build_module_file_namespaceObject, "metadata", function() { return file_metadata; });
   1328 __webpack_require__.d(build_module_file_namespaceObject, "name", function() { return file_name; });
   1329 __webpack_require__.d(build_module_file_namespaceObject, "settings", function() { return file_settings; });
   1330 
   1331 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/html/index.js
   1332 var build_module_html_namespaceObject = {};
   1333 __webpack_require__.r(build_module_html_namespaceObject);
   1334 __webpack_require__.d(build_module_html_namespaceObject, "metadata", function() { return html_metadata; });
   1335 __webpack_require__.d(build_module_html_namespaceObject, "name", function() { return html_name; });
   1336 __webpack_require__.d(build_module_html_namespaceObject, "settings", function() { return html_settings; });
   1337 
   1338 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/media-text/index.js
   1339 var media_text_namespaceObject = {};
   1340 __webpack_require__.r(media_text_namespaceObject);
   1341 __webpack_require__.d(media_text_namespaceObject, "metadata", function() { return media_text_metadata; });
   1342 __webpack_require__.d(media_text_namespaceObject, "name", function() { return media_text_name; });
   1343 __webpack_require__.d(media_text_namespaceObject, "settings", function() { return media_text_settings; });
   1344 
   1345 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/latest-comments/index.js
   1346 var latest_comments_namespaceObject = {};
   1347 __webpack_require__.r(latest_comments_namespaceObject);
   1348 __webpack_require__.d(latest_comments_namespaceObject, "metadata", function() { return latest_comments_metadata; });
   1349 __webpack_require__.d(latest_comments_namespaceObject, "name", function() { return latest_comments_name; });
   1350 __webpack_require__.d(latest_comments_namespaceObject, "settings", function() { return latest_comments_settings; });
   1351 
   1352 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/latest-posts/index.js
   1353 var latest_posts_namespaceObject = {};
   1354 __webpack_require__.r(latest_posts_namespaceObject);
   1355 __webpack_require__.d(latest_posts_namespaceObject, "metadata", function() { return latest_posts_metadata; });
   1356 __webpack_require__.d(latest_posts_namespaceObject, "name", function() { return latest_posts_name; });
   1357 __webpack_require__.d(latest_posts_namespaceObject, "settings", function() { return latest_posts_settings; });
   1358 
   1359 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/loginout/index.js
   1360 var loginout_namespaceObject = {};
   1361 __webpack_require__.r(loginout_namespaceObject);
   1362 __webpack_require__.d(loginout_namespaceObject, "metadata", function() { return loginout_metadata; });
   1363 __webpack_require__.d(loginout_namespaceObject, "name", function() { return loginout_name; });
   1364 __webpack_require__.d(loginout_namespaceObject, "settings", function() { return loginout_settings; });
   1365 
   1366 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/list/index.js
   1367 var build_module_list_namespaceObject = {};
   1368 __webpack_require__.r(build_module_list_namespaceObject);
   1369 __webpack_require__.d(build_module_list_namespaceObject, "metadata", function() { return list_metadata; });
   1370 __webpack_require__.d(build_module_list_namespaceObject, "name", function() { return list_name; });
   1371 __webpack_require__.d(build_module_list_namespaceObject, "settings", function() { return list_settings; });
   1372 
   1373 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/missing/index.js
   1374 var missing_namespaceObject = {};
   1375 __webpack_require__.r(missing_namespaceObject);
   1376 __webpack_require__.d(missing_namespaceObject, "metadata", function() { return missing_metadata; });
   1377 __webpack_require__.d(missing_namespaceObject, "name", function() { return missing_name; });
   1378 __webpack_require__.d(missing_namespaceObject, "settings", function() { return missing_settings; });
   1379 
   1380 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/more/index.js
   1381 var build_module_more_namespaceObject = {};
   1382 __webpack_require__.r(build_module_more_namespaceObject);
   1383 __webpack_require__.d(build_module_more_namespaceObject, "metadata", function() { return more_metadata; });
   1384 __webpack_require__.d(build_module_more_namespaceObject, "name", function() { return more_name; });
   1385 __webpack_require__.d(build_module_more_namespaceObject, "settings", function() { return more_settings; });
   1386 
   1387 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/nextpage/index.js
   1388 var nextpage_namespaceObject = {};
   1389 __webpack_require__.r(nextpage_namespaceObject);
   1390 __webpack_require__.d(nextpage_namespaceObject, "metadata", function() { return nextpage_metadata; });
   1391 __webpack_require__.d(nextpage_namespaceObject, "name", function() { return nextpage_name; });
   1392 __webpack_require__.d(nextpage_namespaceObject, "settings", function() { return nextpage_settings; });
   1393 
   1394 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/page-list/index.js
   1395 var page_list_namespaceObject = {};
   1396 __webpack_require__.r(page_list_namespaceObject);
   1397 __webpack_require__.d(page_list_namespaceObject, "metadata", function() { return page_list_metadata; });
   1398 __webpack_require__.d(page_list_namespaceObject, "name", function() { return page_list_name; });
   1399 __webpack_require__.d(page_list_namespaceObject, "settings", function() { return page_list_settings; });
   1400 
   1401 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/preformatted/index.js
   1402 var build_module_preformatted_namespaceObject = {};
   1403 __webpack_require__.r(build_module_preformatted_namespaceObject);
   1404 __webpack_require__.d(build_module_preformatted_namespaceObject, "metadata", function() { return preformatted_metadata; });
   1405 __webpack_require__.d(build_module_preformatted_namespaceObject, "name", function() { return preformatted_name; });
   1406 __webpack_require__.d(build_module_preformatted_namespaceObject, "settings", function() { return preformatted_settings; });
   1407 
   1408 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/pullquote/index.js
   1409 var build_module_pullquote_namespaceObject = {};
   1410 __webpack_require__.r(build_module_pullquote_namespaceObject);
   1411 __webpack_require__.d(build_module_pullquote_namespaceObject, "metadata", function() { return pullquote_metadata; });
   1412 __webpack_require__.d(build_module_pullquote_namespaceObject, "name", function() { return pullquote_name; });
   1413 __webpack_require__.d(build_module_pullquote_namespaceObject, "settings", function() { return pullquote_settings; });
   1414 
   1415 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/block/index.js
   1416 var block_namespaceObject = {};
   1417 __webpack_require__.r(block_namespaceObject);
   1418 __webpack_require__.d(block_namespaceObject, "metadata", function() { return block_metadata; });
   1419 __webpack_require__.d(block_namespaceObject, "name", function() { return block_name; });
   1420 __webpack_require__.d(block_namespaceObject, "settings", function() { return block_settings; });
   1421 
   1422 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/rss/index.js
   1423 var build_module_rss_namespaceObject = {};
   1424 __webpack_require__.r(build_module_rss_namespaceObject);
   1425 __webpack_require__.d(build_module_rss_namespaceObject, "metadata", function() { return rss_metadata; });
   1426 __webpack_require__.d(build_module_rss_namespaceObject, "name", function() { return rss_name; });
   1427 __webpack_require__.d(build_module_rss_namespaceObject, "settings", function() { return rss_settings; });
   1428 
   1429 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/search/index.js
   1430 var search_namespaceObject = {};
   1431 __webpack_require__.r(search_namespaceObject);
   1432 __webpack_require__.d(search_namespaceObject, "metadata", function() { return search_metadata; });
   1433 __webpack_require__.d(search_namespaceObject, "name", function() { return search_name; });
   1434 __webpack_require__.d(search_namespaceObject, "settings", function() { return search_settings; });
   1435 
   1436 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/group/index.js
   1437 var build_module_group_namespaceObject = {};
   1438 __webpack_require__.r(build_module_group_namespaceObject);
   1439 __webpack_require__.d(build_module_group_namespaceObject, "metadata", function() { return group_metadata; });
   1440 __webpack_require__.d(build_module_group_namespaceObject, "name", function() { return group_name; });
   1441 __webpack_require__.d(build_module_group_namespaceObject, "settings", function() { return group_settings; });
   1442 
   1443 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/separator/index.js
   1444 var build_module_separator_namespaceObject = {};
   1445 __webpack_require__.r(build_module_separator_namespaceObject);
   1446 __webpack_require__.d(build_module_separator_namespaceObject, "metadata", function() { return separator_metadata; });
   1447 __webpack_require__.d(build_module_separator_namespaceObject, "name", function() { return separator_name; });
   1448 __webpack_require__.d(build_module_separator_namespaceObject, "settings", function() { return build_module_separator_settings; });
   1449 
   1450 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/shortcode/index.js
   1451 var build_module_shortcode_namespaceObject = {};
   1452 __webpack_require__.r(build_module_shortcode_namespaceObject);
   1453 __webpack_require__.d(build_module_shortcode_namespaceObject, "metadata", function() { return shortcode_metadata; });
   1454 __webpack_require__.d(build_module_shortcode_namespaceObject, "name", function() { return shortcode_name; });
   1455 __webpack_require__.d(build_module_shortcode_namespaceObject, "settings", function() { return shortcode_settings; });
   1456 
   1457 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/spacer/index.js
   1458 var spacer_namespaceObject = {};
   1459 __webpack_require__.r(spacer_namespaceObject);
   1460 __webpack_require__.d(spacer_namespaceObject, "metadata", function() { return spacer_metadata; });
   1461 __webpack_require__.d(spacer_namespaceObject, "name", function() { return spacer_name; });
   1462 __webpack_require__.d(spacer_namespaceObject, "settings", function() { return spacer_settings; });
   1463 
   1464 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/table/index.js
   1465 var build_module_table_namespaceObject = {};
   1466 __webpack_require__.r(build_module_table_namespaceObject);
   1467 __webpack_require__.d(build_module_table_namespaceObject, "metadata", function() { return table_metadata; });
   1468 __webpack_require__.d(build_module_table_namespaceObject, "name", function() { return table_name; });
   1469 __webpack_require__.d(build_module_table_namespaceObject, "settings", function() { return table_settings; });
   1470 
   1471 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/text-columns/index.js
   1472 var text_columns_namespaceObject = {};
   1473 __webpack_require__.r(text_columns_namespaceObject);
   1474 __webpack_require__.d(text_columns_namespaceObject, "metadata", function() { return text_columns_metadata; });
   1475 __webpack_require__.d(text_columns_namespaceObject, "name", function() { return text_columns_name; });
   1476 __webpack_require__.d(text_columns_namespaceObject, "settings", function() { return text_columns_settings; });
   1477 
   1478 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/verse/index.js
   1479 var build_module_verse_namespaceObject = {};
   1480 __webpack_require__.r(build_module_verse_namespaceObject);
   1481 __webpack_require__.d(build_module_verse_namespaceObject, "metadata", function() { return verse_metadata; });
   1482 __webpack_require__.d(build_module_verse_namespaceObject, "name", function() { return verse_name; });
   1483 __webpack_require__.d(build_module_verse_namespaceObject, "settings", function() { return verse_settings; });
   1484 
   1485 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/video/index.js
   1486 var build_module_video_namespaceObject = {};
   1487 __webpack_require__.r(build_module_video_namespaceObject);
   1488 __webpack_require__.d(build_module_video_namespaceObject, "metadata", function() { return video_metadata; });
   1489 __webpack_require__.d(build_module_video_namespaceObject, "name", function() { return video_name; });
   1490 __webpack_require__.d(build_module_video_namespaceObject, "settings", function() { return video_settings; });
   1491 
   1492 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/tag-cloud/index.js
   1493 var tag_cloud_namespaceObject = {};
   1494 __webpack_require__.r(tag_cloud_namespaceObject);
   1495 __webpack_require__.d(tag_cloud_namespaceObject, "metadata", function() { return tag_cloud_metadata; });
   1496 __webpack_require__.d(tag_cloud_namespaceObject, "name", function() { return tag_cloud_name; });
   1497 __webpack_require__.d(tag_cloud_namespaceObject, "settings", function() { return tag_cloud_settings; });
   1498 
   1499 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/freeform/index.js
   1500 var freeform_namespaceObject = {};
   1501 __webpack_require__.r(freeform_namespaceObject);
   1502 __webpack_require__.d(freeform_namespaceObject, "metadata", function() { return freeform_metadata; });
   1503 __webpack_require__.d(freeform_namespaceObject, "name", function() { return freeform_name; });
   1504 __webpack_require__.d(freeform_namespaceObject, "settings", function() { return freeform_settings; });
   1505 
   1506 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/social-links/index.js
   1507 var social_links_namespaceObject = {};
   1508 __webpack_require__.r(social_links_namespaceObject);
   1509 __webpack_require__.d(social_links_namespaceObject, "metadata", function() { return social_links_metadata; });
   1510 __webpack_require__.d(social_links_namespaceObject, "name", function() { return social_links_name; });
   1511 __webpack_require__.d(social_links_namespaceObject, "settings", function() { return social_links_settings; });
   1512 
   1513 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/social-link/index.js
   1514 var social_link_namespaceObject = {};
   1515 __webpack_require__.r(social_link_namespaceObject);
   1516 __webpack_require__.d(social_link_namespaceObject, "metadata", function() { return social_link_metadata; });
   1517 __webpack_require__.d(social_link_namespaceObject, "name", function() { return social_link_name; });
   1518 __webpack_require__.d(social_link_namespaceObject, "settings", function() { return social_link_settings; });
   1519 
   1520 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/site-logo/index.js
   1521 var build_module_site_logo_namespaceObject = {};
   1522 __webpack_require__.r(build_module_site_logo_namespaceObject);
   1523 __webpack_require__.d(build_module_site_logo_namespaceObject, "metadata", function() { return site_logo_metadata; });
   1524 __webpack_require__.d(build_module_site_logo_namespaceObject, "name", function() { return site_logo_name; });
   1525 __webpack_require__.d(build_module_site_logo_namespaceObject, "settings", function() { return site_logo_settings; });
   1526 
   1527 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/site-tagline/index.js
   1528 var site_tagline_namespaceObject = {};
   1529 __webpack_require__.r(site_tagline_namespaceObject);
   1530 __webpack_require__.d(site_tagline_namespaceObject, "metadata", function() { return site_tagline_metadata; });
   1531 __webpack_require__.d(site_tagline_namespaceObject, "name", function() { return site_tagline_name; });
   1532 __webpack_require__.d(site_tagline_namespaceObject, "settings", function() { return site_tagline_settings; });
   1533 
   1534 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/site-title/index.js
   1535 var site_title_namespaceObject = {};
   1536 __webpack_require__.r(site_title_namespaceObject);
   1537 __webpack_require__.d(site_title_namespaceObject, "metadata", function() { return site_title_metadata; });
   1538 __webpack_require__.d(site_title_namespaceObject, "name", function() { return site_title_name; });
   1539 __webpack_require__.d(site_title_namespaceObject, "settings", function() { return site_title_settings; });
   1540 
   1541 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query/index.js
   1542 var query_namespaceObject = {};
   1543 __webpack_require__.r(query_namespaceObject);
   1544 __webpack_require__.d(query_namespaceObject, "metadata", function() { return query_metadata; });
   1545 __webpack_require__.d(query_namespaceObject, "name", function() { return query_name; });
   1546 __webpack_require__.d(query_namespaceObject, "settings", function() { return query_settings; });
   1547 
   1548 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-template/index.js
   1549 var post_template_namespaceObject = {};
   1550 __webpack_require__.r(post_template_namespaceObject);
   1551 __webpack_require__.d(post_template_namespaceObject, "metadata", function() { return post_template_metadata; });
   1552 __webpack_require__.d(post_template_namespaceObject, "name", function() { return post_template_name; });
   1553 __webpack_require__.d(post_template_namespaceObject, "settings", function() { return post_template_settings; });
   1554 
   1555 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-title/index.js
   1556 var query_title_namespaceObject = {};
   1557 __webpack_require__.r(query_title_namespaceObject);
   1558 __webpack_require__.d(query_title_namespaceObject, "metadata", function() { return query_title_metadata; });
   1559 __webpack_require__.d(query_title_namespaceObject, "name", function() { return query_title_name; });
   1560 __webpack_require__.d(query_title_namespaceObject, "settings", function() { return query_title_settings; });
   1561 
   1562 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination/index.js
   1563 var build_module_query_pagination_namespaceObject = {};
   1564 __webpack_require__.r(build_module_query_pagination_namespaceObject);
   1565 __webpack_require__.d(build_module_query_pagination_namespaceObject, "metadata", function() { return query_pagination_metadata; });
   1566 __webpack_require__.d(build_module_query_pagination_namespaceObject, "name", function() { return query_pagination_name; });
   1567 __webpack_require__.d(build_module_query_pagination_namespaceObject, "settings", function() { return query_pagination_settings; });
   1568 
   1569 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination-next/index.js
   1570 var build_module_query_pagination_next_namespaceObject = {};
   1571 __webpack_require__.r(build_module_query_pagination_next_namespaceObject);
   1572 __webpack_require__.d(build_module_query_pagination_next_namespaceObject, "metadata", function() { return query_pagination_next_metadata; });
   1573 __webpack_require__.d(build_module_query_pagination_next_namespaceObject, "name", function() { return query_pagination_next_name; });
   1574 __webpack_require__.d(build_module_query_pagination_next_namespaceObject, "settings", function() { return query_pagination_next_settings; });
   1575 
   1576 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination-numbers/index.js
   1577 var build_module_query_pagination_numbers_namespaceObject = {};
   1578 __webpack_require__.r(build_module_query_pagination_numbers_namespaceObject);
   1579 __webpack_require__.d(build_module_query_pagination_numbers_namespaceObject, "metadata", function() { return query_pagination_numbers_metadata; });
   1580 __webpack_require__.d(build_module_query_pagination_numbers_namespaceObject, "name", function() { return query_pagination_numbers_name; });
   1581 __webpack_require__.d(build_module_query_pagination_numbers_namespaceObject, "settings", function() { return query_pagination_numbers_settings; });
   1582 
   1583 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination-previous/index.js
   1584 var build_module_query_pagination_previous_namespaceObject = {};
   1585 __webpack_require__.r(build_module_query_pagination_previous_namespaceObject);
   1586 __webpack_require__.d(build_module_query_pagination_previous_namespaceObject, "metadata", function() { return query_pagination_previous_metadata; });
   1587 __webpack_require__.d(build_module_query_pagination_previous_namespaceObject, "name", function() { return query_pagination_previous_name; });
   1588 __webpack_require__.d(build_module_query_pagination_previous_namespaceObject, "settings", function() { return query_pagination_previous_settings; });
   1589 
   1590 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-title/index.js
   1591 var build_module_post_title_namespaceObject = {};
   1592 __webpack_require__.r(build_module_post_title_namespaceObject);
   1593 __webpack_require__.d(build_module_post_title_namespaceObject, "metadata", function() { return post_title_metadata; });
   1594 __webpack_require__.d(build_module_post_title_namespaceObject, "name", function() { return post_title_name; });
   1595 __webpack_require__.d(build_module_post_title_namespaceObject, "settings", function() { return post_title_settings; });
   1596 
   1597 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-content/index.js
   1598 var build_module_post_content_namespaceObject = {};
   1599 __webpack_require__.r(build_module_post_content_namespaceObject);
   1600 __webpack_require__.d(build_module_post_content_namespaceObject, "metadata", function() { return post_content_metadata; });
   1601 __webpack_require__.d(build_module_post_content_namespaceObject, "name", function() { return post_content_name; });
   1602 __webpack_require__.d(build_module_post_content_namespaceObject, "settings", function() { return post_content_settings; });
   1603 
   1604 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-date/index.js
   1605 var build_module_post_date_namespaceObject = {};
   1606 __webpack_require__.r(build_module_post_date_namespaceObject);
   1607 __webpack_require__.d(build_module_post_date_namespaceObject, "metadata", function() { return post_date_metadata; });
   1608 __webpack_require__.d(build_module_post_date_namespaceObject, "name", function() { return post_date_name; });
   1609 __webpack_require__.d(build_module_post_date_namespaceObject, "settings", function() { return post_date_settings; });
   1610 
   1611 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-excerpt/index.js
   1612 var build_module_post_excerpt_namespaceObject = {};
   1613 __webpack_require__.r(build_module_post_excerpt_namespaceObject);
   1614 __webpack_require__.d(build_module_post_excerpt_namespaceObject, "metadata", function() { return post_excerpt_metadata; });
   1615 __webpack_require__.d(build_module_post_excerpt_namespaceObject, "name", function() { return post_excerpt_name; });
   1616 __webpack_require__.d(build_module_post_excerpt_namespaceObject, "settings", function() { return post_excerpt_settings; });
   1617 
   1618 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-featured-image/index.js
   1619 var build_module_post_featured_image_namespaceObject = {};
   1620 __webpack_require__.r(build_module_post_featured_image_namespaceObject);
   1621 __webpack_require__.d(build_module_post_featured_image_namespaceObject, "metadata", function() { return post_featured_image_metadata; });
   1622 __webpack_require__.d(build_module_post_featured_image_namespaceObject, "name", function() { return post_featured_image_name; });
   1623 __webpack_require__.d(build_module_post_featured_image_namespaceObject, "settings", function() { return post_featured_image_settings; });
   1624 
   1625 // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-terms/index.js
   1626 var post_terms_namespaceObject = {};
   1627 __webpack_require__.r(post_terms_namespaceObject);
   1628 __webpack_require__.d(post_terms_namespaceObject, "metadata", function() { return post_terms_metadata; });
   1629 __webpack_require__.d(post_terms_namespaceObject, "name", function() { return post_terms_name; });
   1630 __webpack_require__.d(post_terms_namespaceObject, "settings", function() { return post_terms_settings; });
   1631 
   1632 // EXTERNAL MODULE: external ["wp","coreData"]
   1633 var external_wp_coreData_ = __webpack_require__("jZUy");
   1634 
   1635 // EXTERNAL MODULE: external ["wp","blockEditor"]
   1636 var external_wp_blockEditor_ = __webpack_require__("axFQ");
   1637 
   1638 // EXTERNAL MODULE: external ["wp","blocks"]
   1639 var external_wp_blocks_ = __webpack_require__("HSyU");
   1640 
   1641 // EXTERNAL MODULE: external "lodash"
   1642 var external_lodash_ = __webpack_require__("YLtl");
   1643 
   1644 // EXTERNAL MODULE: external ["wp","i18n"]
   1645 var external_wp_i18n_ = __webpack_require__("l3Sj");
   1646 
   1647 // EXTERNAL MODULE: external ["wp","element"]
   1648 var external_wp_element_ = __webpack_require__("GRId");
   1649 
   1650 // EXTERNAL MODULE: external ["wp","primitives"]
   1651 var external_wp_primitives_ = __webpack_require__("Tqx9");
   1652 
   1653 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/paragraph.js
   1654 
   1655 
   1656 /**
   1657  * WordPress dependencies
   1658  */
   1659 
   1660 const paragraph = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   1661   xmlns: "http://www.w3.org/2000/svg",
   1662   viewBox: "0 0 24 24"
   1663 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   1664   d: "M18.3 4H9.9v-.1l-.9.2c-2.3.4-4 2.4-4 4.8s1.7 4.4 4 4.8l.7.1V20h1.5V5.5h2.9V20h1.5V5.5h2.7V4z"
   1665 }));
   1666 /* harmony default export */ var library_paragraph = (paragraph);
   1667 
   1668 // EXTERNAL MODULE: ./node_modules/classnames/index.js
   1669 var classnames = __webpack_require__("TSYQ");
   1670 var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
   1671 
   1672 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/deprecated.js
   1673 
   1674 
   1675 /**
   1676  * External dependencies
   1677  */
   1678 
   1679 
   1680 /**
   1681  * WordPress dependencies
   1682  */
   1683 
   1684 
   1685 
   1686 const supports = {
   1687   className: false
   1688 };
   1689 const deprecated_blockAttributes = {
   1690   align: {
   1691     type: 'string'
   1692   },
   1693   content: {
   1694     type: 'string',
   1695     source: 'html',
   1696     selector: 'p',
   1697     default: ''
   1698   },
   1699   dropCap: {
   1700     type: 'boolean',
   1701     default: false
   1702   },
   1703   placeholder: {
   1704     type: 'string'
   1705   },
   1706   textColor: {
   1707     type: 'string'
   1708   },
   1709   backgroundColor: {
   1710     type: 'string'
   1711   },
   1712   fontSize: {
   1713     type: 'string'
   1714   },
   1715   direction: {
   1716     type: 'string',
   1717     enum: ['ltr', 'rtl']
   1718   },
   1719   style: {
   1720     type: 'object'
   1721   }
   1722 };
   1723 
   1724 const migrateCustomColorsAndFontSizes = attributes => {
   1725   if (!attributes.customTextColor && !attributes.customBackgroundColor && !attributes.customFontSize) {
   1726     return attributes;
   1727   }
   1728 
   1729   const style = {};
   1730 
   1731   if (attributes.customTextColor || attributes.customBackgroundColor) {
   1732     style.color = {};
   1733   }
   1734 
   1735   if (attributes.customTextColor) {
   1736     style.color.text = attributes.customTextColor;
   1737   }
   1738 
   1739   if (attributes.customBackgroundColor) {
   1740     style.color.background = attributes.customBackgroundColor;
   1741   }
   1742 
   1743   if (attributes.customFontSize) {
   1744     style.typography = {
   1745       fontSize: attributes.customFontSize
   1746     };
   1747   }
   1748 
   1749   return { ...Object(external_lodash_["omit"])(attributes, ['customTextColor', 'customBackgroundColor', 'customFontSize']),
   1750     style
   1751   };
   1752 };
   1753 
   1754 const deprecated = [{
   1755   supports,
   1756   attributes: { ...Object(external_lodash_["omit"])(deprecated_blockAttributes, ['style']),
   1757     customTextColor: {
   1758       type: 'string'
   1759     },
   1760     customBackgroundColor: {
   1761       type: 'string'
   1762     },
   1763     customFontSize: {
   1764       type: 'number'
   1765     }
   1766   },
   1767   migrate: migrateCustomColorsAndFontSizes,
   1768 
   1769   save({
   1770     attributes
   1771   }) {
   1772     const {
   1773       align,
   1774       content,
   1775       dropCap,
   1776       backgroundColor,
   1777       textColor,
   1778       customBackgroundColor,
   1779       customTextColor,
   1780       fontSize,
   1781       customFontSize,
   1782       direction
   1783     } = attributes;
   1784     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
   1785     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
   1786     const fontSizeClass = Object(external_wp_blockEditor_["getFontSizeClass"])(fontSize);
   1787     const className = classnames_default()({
   1788       'has-text-color': textColor || customTextColor,
   1789       'has-background': backgroundColor || customBackgroundColor,
   1790       'has-drop-cap': dropCap,
   1791       [`has-text-align-${align}`]: align,
   1792       [fontSizeClass]: fontSizeClass,
   1793       [textClass]: textClass,
   1794       [backgroundClass]: backgroundClass
   1795     });
   1796     const styles = {
   1797       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
   1798       color: textClass ? undefined : customTextColor,
   1799       fontSize: fontSizeClass ? undefined : customFontSize
   1800     };
   1801     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   1802       tagName: "p",
   1803       style: styles,
   1804       className: className ? className : undefined,
   1805       value: content,
   1806       dir: direction
   1807     });
   1808   }
   1809 
   1810 }, {
   1811   supports,
   1812   attributes: { ...Object(external_lodash_["omit"])(deprecated_blockAttributes, ['style']),
   1813     customTextColor: {
   1814       type: 'string'
   1815     },
   1816     customBackgroundColor: {
   1817       type: 'string'
   1818     },
   1819     customFontSize: {
   1820       type: 'number'
   1821     }
   1822   },
   1823   migrate: migrateCustomColorsAndFontSizes,
   1824 
   1825   save({
   1826     attributes
   1827   }) {
   1828     const {
   1829       align,
   1830       content,
   1831       dropCap,
   1832       backgroundColor,
   1833       textColor,
   1834       customBackgroundColor,
   1835       customTextColor,
   1836       fontSize,
   1837       customFontSize,
   1838       direction
   1839     } = attributes;
   1840     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
   1841     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
   1842     const fontSizeClass = Object(external_wp_blockEditor_["getFontSizeClass"])(fontSize);
   1843     const className = classnames_default()({
   1844       'has-text-color': textColor || customTextColor,
   1845       'has-background': backgroundColor || customBackgroundColor,
   1846       'has-drop-cap': dropCap,
   1847       [fontSizeClass]: fontSizeClass,
   1848       [textClass]: textClass,
   1849       [backgroundClass]: backgroundClass
   1850     });
   1851     const styles = {
   1852       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
   1853       color: textClass ? undefined : customTextColor,
   1854       fontSize: fontSizeClass ? undefined : customFontSize,
   1855       textAlign: align
   1856     };
   1857     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   1858       tagName: "p",
   1859       style: styles,
   1860       className: className ? className : undefined,
   1861       value: content,
   1862       dir: direction
   1863     });
   1864   }
   1865 
   1866 }, {
   1867   supports,
   1868   attributes: { ...Object(external_lodash_["omit"])(deprecated_blockAttributes, ['style']),
   1869     customTextColor: {
   1870       type: 'string'
   1871     },
   1872     customBackgroundColor: {
   1873       type: 'string'
   1874     },
   1875     customFontSize: {
   1876       type: 'number'
   1877     },
   1878     width: {
   1879       type: 'string'
   1880     }
   1881   },
   1882   migrate: migrateCustomColorsAndFontSizes,
   1883 
   1884   save({
   1885     attributes
   1886   }) {
   1887     const {
   1888       width,
   1889       align,
   1890       content,
   1891       dropCap,
   1892       backgroundColor,
   1893       textColor,
   1894       customBackgroundColor,
   1895       customTextColor,
   1896       fontSize,
   1897       customFontSize
   1898     } = attributes;
   1899     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
   1900     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
   1901     const fontSizeClass = fontSize && `is-${fontSize}-text`;
   1902     const className = classnames_default()({
   1903       [`align${width}`]: width,
   1904       'has-background': backgroundColor || customBackgroundColor,
   1905       'has-drop-cap': dropCap,
   1906       [fontSizeClass]: fontSizeClass,
   1907       [textClass]: textClass,
   1908       [backgroundClass]: backgroundClass
   1909     });
   1910     const styles = {
   1911       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
   1912       color: textClass ? undefined : customTextColor,
   1913       fontSize: fontSizeClass ? undefined : customFontSize,
   1914       textAlign: align
   1915     };
   1916     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   1917       tagName: "p",
   1918       style: styles,
   1919       className: className ? className : undefined,
   1920       value: content
   1921     });
   1922   }
   1923 
   1924 }, {
   1925   supports,
   1926   attributes: Object(external_lodash_["omit"])({ ...deprecated_blockAttributes,
   1927     fontSize: {
   1928       type: 'number'
   1929     }
   1930   }, ['style']),
   1931 
   1932   save({
   1933     attributes
   1934   }) {
   1935     const {
   1936       width,
   1937       align,
   1938       content,
   1939       dropCap,
   1940       backgroundColor,
   1941       textColor,
   1942       fontSize
   1943     } = attributes;
   1944     const className = classnames_default()({
   1945       [`align${width}`]: width,
   1946       'has-background': backgroundColor,
   1947       'has-drop-cap': dropCap
   1948     });
   1949     const styles = {
   1950       backgroundColor,
   1951       color: textColor,
   1952       fontSize,
   1953       textAlign: align
   1954     };
   1955     return Object(external_wp_element_["createElement"])("p", {
   1956       style: styles,
   1957       className: className ? className : undefined
   1958     }, content);
   1959   },
   1960 
   1961   migrate(attributes) {
   1962     return migrateCustomColorsAndFontSizes(Object(external_lodash_["omit"])({ ...attributes,
   1963       customFontSize: Object(external_lodash_["isFinite"])(attributes.fontSize) ? attributes.fontSize : undefined,
   1964       customTextColor: attributes.textColor && '#' === attributes.textColor[0] ? attributes.textColor : undefined,
   1965       customBackgroundColor: attributes.backgroundColor && '#' === attributes.backgroundColor[0] ? attributes.backgroundColor : undefined
   1966     }), ['fontSize', 'textColor', 'backgroundColor', 'style']);
   1967   }
   1968 
   1969 }, {
   1970   supports,
   1971   attributes: { ...deprecated_blockAttributes,
   1972     content: {
   1973       type: 'string',
   1974       source: 'html',
   1975       default: ''
   1976     }
   1977   },
   1978 
   1979   save({
   1980     attributes
   1981   }) {
   1982     return Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, attributes.content);
   1983   },
   1984 
   1985   migrate(attributes) {
   1986     return attributes;
   1987   }
   1988 
   1989 }];
   1990 /* harmony default export */ var paragraph_deprecated = (deprecated);
   1991 
   1992 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
   1993 var esm_extends = __webpack_require__("wx14");
   1994 
   1995 // EXTERNAL MODULE: external ["wp","components"]
   1996 var external_wp_components_ = __webpack_require__("tI+e");
   1997 
   1998 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-ltr.js
   1999 
   2000 
   2001 /**
   2002  * WordPress dependencies
   2003  */
   2004 
   2005 const formatLtr = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   2006   xmlns: "http://www.w3.org/2000/svg",
   2007   viewBox: "-2 -2 24 24"
   2008 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   2009   d: "M5.52 2h7.43c.55 0 1 .45 1 1s-.45 1-1 1h-1v13c0 .55-.45 1-1 1s-1-.45-1-1V5c0-.55-.45-1-1-1s-1 .45-1 1v12c0 .55-.45 1-1 1s-1-.45-1-1v-5.96h-.43C3.02 11.04 1 9.02 1 6.52S3.02 2 5.52 2zM14 14l5-4-5-4v8z"
   2010 }));
   2011 /* harmony default export */ var format_ltr = (formatLtr);
   2012 
   2013 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/edit.js
   2014 
   2015 
   2016 
   2017 /**
   2018  * External dependencies
   2019  */
   2020 
   2021 /**
   2022  * WordPress dependencies
   2023  */
   2024 
   2025 
   2026 
   2027 
   2028 
   2029 
   2030 const edit_name = 'core/paragraph';
   2031 
   2032 function ParagraphRTLControl({
   2033   direction,
   2034   setDirection
   2035 }) {
   2036   return Object(external_wp_i18n_["isRTL"])() && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarDropdownMenu"], {
   2037     controls: [{
   2038       icon: format_ltr,
   2039       title: Object(external_wp_i18n_["_x"])('Left to right', 'editor button'),
   2040       isActive: direction === 'ltr',
   2041 
   2042       onClick() {
   2043         setDirection(direction === 'ltr' ? undefined : 'ltr');
   2044       }
   2045 
   2046     }]
   2047   });
   2048 }
   2049 
   2050 function ParagraphBlock({
   2051   attributes,
   2052   mergeBlocks,
   2053   onReplace,
   2054   onRemove,
   2055   setAttributes,
   2056   clientId
   2057 }) {
   2058   const {
   2059     align,
   2060     content,
   2061     direction,
   2062     dropCap,
   2063     placeholder
   2064   } = attributes;
   2065   const isDropCapFeatureEnabled = Object(external_wp_blockEditor_["useSetting"])('typography.dropCap');
   2066   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
   2067     className: classnames_default()({
   2068       'has-drop-cap': dropCap,
   2069       [`has-text-align-${align}`]: align
   2070     }),
   2071     style: {
   2072       direction
   2073     }
   2074   });
   2075   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
   2076     group: "block"
   2077   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
   2078     value: align,
   2079     onChange: newAlign => setAttributes({
   2080       align: newAlign
   2081     })
   2082   }), Object(external_wp_element_["createElement"])(ParagraphRTLControl, {
   2083     direction: direction,
   2084     setDirection: newDirection => setAttributes({
   2085       direction: newDirection
   2086     })
   2087   })), isDropCapFeatureEnabled && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
   2088     title: Object(external_wp_i18n_["__"])('Text settings')
   2089   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
   2090     label: Object(external_wp_i18n_["__"])('Drop cap'),
   2091     checked: !!dropCap,
   2092     onChange: () => setAttributes({
   2093       dropCap: !dropCap
   2094     }),
   2095     help: dropCap ? Object(external_wp_i18n_["__"])('Showing large initial letter.') : Object(external_wp_i18n_["__"])('Toggle to show a large initial letter.')
   2096   }))), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], Object(esm_extends["a" /* default */])({
   2097     identifier: "content",
   2098     tagName: "p"
   2099   }, blockProps, {
   2100     value: content,
   2101     onChange: newContent => setAttributes({
   2102       content: newContent
   2103     }),
   2104     onSplit: (value, isOriginal) => {
   2105       let newAttributes;
   2106 
   2107       if (isOriginal || value) {
   2108         newAttributes = { ...attributes,
   2109           content: value
   2110         };
   2111       }
   2112 
   2113       const block = Object(external_wp_blocks_["createBlock"])(edit_name, newAttributes);
   2114 
   2115       if (isOriginal) {
   2116         block.clientId = clientId;
   2117       }
   2118 
   2119       return block;
   2120     },
   2121     onMerge: mergeBlocks,
   2122     onReplace: onReplace,
   2123     onRemove: onRemove,
   2124     "aria-label": content ? Object(external_wp_i18n_["__"])('Paragraph block') : Object(external_wp_i18n_["__"])('Empty block; start writing or type forward slash to choose a block'),
   2125     "data-empty": content ? false : true,
   2126     placeholder: placeholder || Object(external_wp_i18n_["__"])('Type / to choose a block'),
   2127     __unstableEmbedURLOnPaste: true,
   2128     __unstableAllowPrefixTransformations: true
   2129   })));
   2130 }
   2131 
   2132 /* harmony default export */ var edit = (ParagraphBlock);
   2133 
   2134 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/save.js
   2135 
   2136 
   2137 /**
   2138  * External dependencies
   2139  */
   2140 
   2141 /**
   2142  * WordPress dependencies
   2143  */
   2144 
   2145 
   2146 function save({
   2147   attributes
   2148 }) {
   2149   const {
   2150     align,
   2151     content,
   2152     dropCap,
   2153     direction
   2154   } = attributes;
   2155   const className = classnames_default()({
   2156     'has-drop-cap': dropCap,
   2157     [`has-text-align-${align}`]: align
   2158   });
   2159   return Object(external_wp_element_["createElement"])("p", external_wp_blockEditor_["useBlockProps"].save({
   2160     className,
   2161     dir: direction
   2162   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   2163     value: content
   2164   }));
   2165 }
   2166 
   2167 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/transforms.js
   2168 /**
   2169  * WordPress dependencies
   2170  */
   2171 
   2172 /**
   2173  * Internal dependencies
   2174  */
   2175 
   2176 const {
   2177   name: transforms_name
   2178 } = {
   2179   apiVersion: 2,
   2180   name: "core/paragraph",
   2181   title: "Paragraph",
   2182   category: "text",
   2183   description: "Start with the building block of all narrative.",
   2184   keywords: ["text"],
   2185   textdomain: "default",
   2186   attributes: {
   2187     align: {
   2188       type: "string"
   2189     },
   2190     content: {
   2191       type: "string",
   2192       source: "html",
   2193       selector: "p",
   2194       "default": "",
   2195       __experimentalRole: "content"
   2196     },
   2197     dropCap: {
   2198       type: "boolean",
   2199       "default": false
   2200     },
   2201     placeholder: {
   2202       type: "string"
   2203     },
   2204     direction: {
   2205       type: "string",
   2206       "enum": ["ltr", "rtl"]
   2207     }
   2208   },
   2209   supports: {
   2210     anchor: true,
   2211     className: false,
   2212     color: {
   2213       link: true
   2214     },
   2215     typography: {
   2216       fontSize: true,
   2217       lineHeight: true
   2218     },
   2219     __experimentalSelector: "p",
   2220     __unstablePasteTextInline: true
   2221   },
   2222   editorStyle: "wp-block-paragraph-editor",
   2223   style: "wp-block-paragraph"
   2224 };
   2225 const transforms = {
   2226   from: [{
   2227     type: 'raw',
   2228     // Paragraph is a fallback and should be matched last.
   2229     priority: 20,
   2230     selector: 'p',
   2231     schema: ({
   2232       phrasingContentSchema,
   2233       isPaste
   2234     }) => ({
   2235       p: {
   2236         children: phrasingContentSchema,
   2237         attributes: isPaste ? [] : ['style', 'id']
   2238       }
   2239     }),
   2240 
   2241     transform(node) {
   2242       const attributes = Object(external_wp_blocks_["getBlockAttributes"])(transforms_name, node.outerHTML);
   2243       const {
   2244         textAlign
   2245       } = node.style || {};
   2246 
   2247       if (textAlign === 'left' || textAlign === 'center' || textAlign === 'right') {
   2248         attributes.align = textAlign;
   2249       }
   2250 
   2251       return Object(external_wp_blocks_["createBlock"])(transforms_name, attributes);
   2252     }
   2253 
   2254   }]
   2255 };
   2256 /* harmony default export */ var paragraph_transforms = (transforms);
   2257 
   2258 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/paragraph/index.js
   2259 /**
   2260  * External dependencies
   2261  */
   2262 
   2263 /**
   2264  * WordPress dependencies
   2265  */
   2266 
   2267 
   2268 
   2269 /**
   2270  * Internal dependencies
   2271  */
   2272 
   2273 
   2274 
   2275 const paragraph_metadata = {
   2276   apiVersion: 2,
   2277   name: "core/paragraph",
   2278   title: "Paragraph",
   2279   category: "text",
   2280   description: "Start with the building block of all narrative.",
   2281   keywords: ["text"],
   2282   textdomain: "default",
   2283   attributes: {
   2284     align: {
   2285       type: "string"
   2286     },
   2287     content: {
   2288       type: "string",
   2289       source: "html",
   2290       selector: "p",
   2291       "default": "",
   2292       __experimentalRole: "content"
   2293     },
   2294     dropCap: {
   2295       type: "boolean",
   2296       "default": false
   2297     },
   2298     placeholder: {
   2299       type: "string"
   2300     },
   2301     direction: {
   2302       type: "string",
   2303       "enum": ["ltr", "rtl"]
   2304     }
   2305   },
   2306   supports: {
   2307     anchor: true,
   2308     className: false,
   2309     color: {
   2310       link: true
   2311     },
   2312     typography: {
   2313       fontSize: true,
   2314       lineHeight: true
   2315     },
   2316     __experimentalSelector: "p",
   2317     __unstablePasteTextInline: true
   2318   },
   2319   editorStyle: "wp-block-paragraph-editor",
   2320   style: "wp-block-paragraph"
   2321 };
   2322 
   2323 
   2324 const {
   2325   name: paragraph_name
   2326 } = paragraph_metadata;
   2327 
   2328 const paragraph_settings = {
   2329   icon: library_paragraph,
   2330   example: {
   2331     attributes: {
   2332       content: Object(external_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.'),
   2333       style: {
   2334         typography: {
   2335           fontSize: 28
   2336         }
   2337       },
   2338       dropCap: true
   2339     }
   2340   },
   2341 
   2342   __experimentalLabel(attributes, {
   2343     context
   2344   }) {
   2345     if (context === 'accessibility') {
   2346       const {
   2347         content
   2348       } = attributes;
   2349       return Object(external_lodash_["isEmpty"])(content) ? Object(external_wp_i18n_["__"])('Empty') : content;
   2350     }
   2351   },
   2352 
   2353   transforms: paragraph_transforms,
   2354   deprecated: paragraph_deprecated,
   2355 
   2356   merge(attributes, attributesToMerge) {
   2357     return {
   2358       content: (attributes.content || '') + (attributesToMerge.content || '')
   2359     };
   2360   },
   2361 
   2362   edit: edit,
   2363   save: save
   2364 };
   2365 
   2366 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/image.js
   2367 
   2368 
   2369 /**
   2370  * WordPress dependencies
   2371  */
   2372 
   2373 const image_image = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   2374   viewBox: "0 0 24 24",
   2375   xmlns: "http://www.w3.org/2000/svg"
   2376 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   2377   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM5 4.5h14c.3 0 .5.2.5.5v8.4l-3-2.9c-.3-.3-.8-.3-1 0L11.9 14 9 12c-.3-.2-.6-.2-.8 0l-3.6 2.6V5c-.1-.3.1-.5.4-.5zm14 15H5c-.3 0-.5-.2-.5-.5v-2.4l4.1-3 3 1.9c.3.2.7.2.9-.1L16 12l3.5 3.4V19c0 .3-.2.5-.5.5z"
   2378 }));
   2379 /* harmony default export */ var library_image = (image_image);
   2380 
   2381 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/deprecated.js
   2382 
   2383 
   2384 
   2385 /**
   2386  * External dependencies
   2387  */
   2388 
   2389 /**
   2390  * WordPress dependencies
   2391  */
   2392 
   2393 
   2394 const image_deprecated_blockAttributes = {
   2395   align: {
   2396     type: 'string'
   2397   },
   2398   url: {
   2399     type: 'string',
   2400     source: 'attribute',
   2401     selector: 'img',
   2402     attribute: 'src'
   2403   },
   2404   alt: {
   2405     type: 'string',
   2406     source: 'attribute',
   2407     selector: 'img',
   2408     attribute: 'alt',
   2409     default: ''
   2410   },
   2411   caption: {
   2412     type: 'string',
   2413     source: 'html',
   2414     selector: 'figcaption'
   2415   },
   2416   href: {
   2417     type: 'string',
   2418     source: 'attribute',
   2419     selector: 'figure > a',
   2420     attribute: 'href'
   2421   },
   2422   rel: {
   2423     type: 'string',
   2424     source: 'attribute',
   2425     selector: 'figure > a',
   2426     attribute: 'rel'
   2427   },
   2428   linkClass: {
   2429     type: 'string',
   2430     source: 'attribute',
   2431     selector: 'figure > a',
   2432     attribute: 'class'
   2433   },
   2434   id: {
   2435     type: 'number'
   2436   },
   2437   width: {
   2438     type: 'number'
   2439   },
   2440   height: {
   2441     type: 'number'
   2442   },
   2443   linkDestination: {
   2444     type: 'string'
   2445   },
   2446   linkTarget: {
   2447     type: 'string',
   2448     source: 'attribute',
   2449     selector: 'figure > a',
   2450     attribute: 'target'
   2451   }
   2452 };
   2453 const deprecated_deprecated = [{
   2454   attributes: image_deprecated_blockAttributes,
   2455 
   2456   save({
   2457     attributes
   2458   }) {
   2459     const {
   2460       url,
   2461       alt,
   2462       caption,
   2463       align,
   2464       href,
   2465       width,
   2466       height,
   2467       id
   2468     } = attributes;
   2469     const classes = classnames_default()({
   2470       [`align${align}`]: align,
   2471       'is-resized': width || height
   2472     });
   2473     const image = Object(external_wp_element_["createElement"])("img", {
   2474       src: url,
   2475       alt: alt,
   2476       className: id ? `wp-image-${id}` : null,
   2477       width: width,
   2478       height: height
   2479     });
   2480     return Object(external_wp_element_["createElement"])("figure", {
   2481       className: classes
   2482     }, href ? Object(external_wp_element_["createElement"])("a", {
   2483       href: href
   2484     }, image) : image, !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   2485       tagName: "figcaption",
   2486       value: caption
   2487     }));
   2488   }
   2489 
   2490 }, {
   2491   attributes: image_deprecated_blockAttributes,
   2492 
   2493   save({
   2494     attributes
   2495   }) {
   2496     const {
   2497       url,
   2498       alt,
   2499       caption,
   2500       align,
   2501       href,
   2502       width,
   2503       height,
   2504       id
   2505     } = attributes;
   2506     const image = Object(external_wp_element_["createElement"])("img", {
   2507       src: url,
   2508       alt: alt,
   2509       className: id ? `wp-image-${id}` : null,
   2510       width: width,
   2511       height: height
   2512     });
   2513     return Object(external_wp_element_["createElement"])("figure", {
   2514       className: align ? `align${align}` : null
   2515     }, href ? Object(external_wp_element_["createElement"])("a", {
   2516       href: href
   2517     }, image) : image, !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   2518       tagName: "figcaption",
   2519       value: caption
   2520     }));
   2521   }
   2522 
   2523 }, {
   2524   attributes: image_deprecated_blockAttributes,
   2525 
   2526   save({
   2527     attributes
   2528   }) {
   2529     const {
   2530       url,
   2531       alt,
   2532       caption,
   2533       align,
   2534       href,
   2535       width,
   2536       height
   2537     } = attributes;
   2538     const extraImageProps = width || height ? {
   2539       width,
   2540       height
   2541     } : {};
   2542     const image = Object(external_wp_element_["createElement"])("img", Object(esm_extends["a" /* default */])({
   2543       src: url,
   2544       alt: alt
   2545     }, extraImageProps));
   2546     let figureStyle = {};
   2547 
   2548     if (width) {
   2549       figureStyle = {
   2550         width
   2551       };
   2552     } else if (align === 'left' || align === 'right') {
   2553       figureStyle = {
   2554         maxWidth: '50%'
   2555       };
   2556     }
   2557 
   2558     return Object(external_wp_element_["createElement"])("figure", {
   2559       className: align ? `align${align}` : null,
   2560       style: figureStyle
   2561     }, href ? Object(external_wp_element_["createElement"])("a", {
   2562       href: href
   2563     }, image) : image, !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   2564       tagName: "figcaption",
   2565       value: caption
   2566     }));
   2567   }
   2568 
   2569 }];
   2570 /* harmony default export */ var image_deprecated = (deprecated_deprecated);
   2571 
   2572 // EXTERNAL MODULE: external ["wp","blob"]
   2573 var external_wp_blob_ = __webpack_require__("xTGt");
   2574 
   2575 // EXTERNAL MODULE: external ["wp","data"]
   2576 var external_wp_data_ = __webpack_require__("1ZqX");
   2577 
   2578 // EXTERNAL MODULE: external ["wp","compose"]
   2579 var external_wp_compose_ = __webpack_require__("K9lf");
   2580 
   2581 // EXTERNAL MODULE: external ["wp","url"]
   2582 var external_wp_url_ = __webpack_require__("Mmq9");
   2583 
   2584 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/crop.js
   2585 
   2586 
   2587 /**
   2588  * WordPress dependencies
   2589  */
   2590 
   2591 const crop_crop = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   2592   xmlns: "http://www.w3.org/2000/svg",
   2593   viewBox: "0 0 24 24"
   2594 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   2595   d: "M16.5 7.8v7H18v-7c0-1-.8-1.8-1.8-1.8h-7v1.5h7c.2 0 .3.1.3.3zm-8.7 8.7c-.1 0-.2-.1-.2-.2V2H6v4H2v1.5h4v8.8c0 1 .8 1.8 1.8 1.8h8.8v4H18v-4h4v-1.5H7.8z"
   2596 }));
   2597 /* harmony default export */ var library_crop = (crop_crop);
   2598 
   2599 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/upload.js
   2600 var upload = __webpack_require__("NTP4");
   2601 
   2602 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/overlay-text.js
   2603 
   2604 
   2605 /**
   2606  * WordPress dependencies
   2607  */
   2608 
   2609 const overlayText = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   2610   xmlns: "http://www.w3.org/2000/svg",
   2611   viewBox: "0 0 24 24"
   2612 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   2613   d: "M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12-9.8c.4 0 .8-.3.9-.7l1.1-3h3.6l.5 1.7h1.9L13 9h-2.2l-3.4 9.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12H20V6c0-1.1-.9-2-2-2zm-6 7l1.4 3.9h-2.7L12 11z"
   2614 }));
   2615 /* harmony default export */ var overlay_text = (overlayText);
   2616 
   2617 // EXTERNAL MODULE: external ["wp","notices"]
   2618 var external_wp_notices_ = __webpack_require__("onLe");
   2619 
   2620 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/constants.js
   2621 const ASPECT_RATIOS = [// Common video resolutions.
   2622 {
   2623   ratio: '2.33',
   2624   className: 'wp-embed-aspect-21-9'
   2625 }, {
   2626   ratio: '2.00',
   2627   className: 'wp-embed-aspect-18-9'
   2628 }, {
   2629   ratio: '1.78',
   2630   className: 'wp-embed-aspect-16-9'
   2631 }, {
   2632   ratio: '1.33',
   2633   className: 'wp-embed-aspect-4-3'
   2634 }, // Vertical video and instagram square video support.
   2635 {
   2636   ratio: '1.00',
   2637   className: 'wp-embed-aspect-1-1'
   2638 }, {
   2639   ratio: '0.56',
   2640   className: 'wp-embed-aspect-9-16'
   2641 }, {
   2642   ratio: '0.50',
   2643   className: 'wp-embed-aspect-1-2'
   2644 }];
   2645 const WP_EMBED_TYPE = 'wp-embed';
   2646 
   2647 // EXTERNAL MODULE: ./node_modules/classnames/dedupe.js
   2648 var dedupe = __webpack_require__("A/WM");
   2649 var dedupe_default = /*#__PURE__*/__webpack_require__.n(dedupe);
   2650 
   2651 // EXTERNAL MODULE: ./node_modules/memize/index.js
   2652 var memize = __webpack_require__("4eJC");
   2653 var memize_default = /*#__PURE__*/__webpack_require__.n(memize);
   2654 
   2655 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/util.js
   2656 
   2657 
   2658 /**
   2659  * Internal dependencies
   2660  */
   2661 
   2662 /**
   2663  * External dependencies
   2664  */
   2665 
   2666 
   2667 
   2668 
   2669 /**
   2670  * WordPress dependencies
   2671  */
   2672 
   2673 
   2674 
   2675 /**
   2676  * Internal dependencies
   2677  */
   2678 
   2679 const util_metadata = {
   2680   apiVersion: 2,
   2681   name: "core/embed",
   2682   title: "Embed",
   2683   category: "embed",
   2684   description: "Add a block that displays content pulled from other sites, like Twitter, Instagram or YouTube.",
   2685   textdomain: "default",
   2686   attributes: {
   2687     url: {
   2688       type: "string"
   2689     },
   2690     caption: {
   2691       type: "string",
   2692       source: "html",
   2693       selector: "figcaption"
   2694     },
   2695     type: {
   2696       type: "string"
   2697     },
   2698     providerNameSlug: {
   2699       type: "string"
   2700     },
   2701     allowResponsive: {
   2702       type: "boolean",
   2703       "default": true
   2704     },
   2705     responsive: {
   2706       type: "boolean",
   2707       "default": false
   2708     },
   2709     previewable: {
   2710       type: "boolean",
   2711       "default": true
   2712     }
   2713   },
   2714   supports: {
   2715     align: true
   2716   },
   2717   editorStyle: "wp-block-embed-editor",
   2718   style: "wp-block-embed"
   2719 };
   2720 const {
   2721   name: DEFAULT_EMBED_BLOCK
   2722 } = util_metadata;
   2723 /** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */
   2724 
   2725 /**
   2726  * Returns the embed block's information by matching the provided service provider
   2727  *
   2728  * @param {string} provider The embed block's provider
   2729  * @return {WPBlockVariation} The embed block's information
   2730  */
   2731 
   2732 const getEmbedInfoByProvider = provider => {
   2733   var _getBlockVariations;
   2734 
   2735   return (_getBlockVariations = Object(external_wp_blocks_["getBlockVariations"])(DEFAULT_EMBED_BLOCK)) === null || _getBlockVariations === void 0 ? void 0 : _getBlockVariations.find(({
   2736     name
   2737   }) => name === provider);
   2738 };
   2739 /**
   2740  * Returns true if any of the regular expressions match the URL.
   2741  *
   2742  * @param {string}   url      The URL to test.
   2743  * @param {Array}    patterns The list of regular expressions to test agains.
   2744  * @return {boolean} True if any of the regular expressions match the URL.
   2745  */
   2746 
   2747 const matchesPatterns = (url, patterns = []) => patterns.some(pattern => url.match(pattern));
   2748 /**
   2749  * Finds the block variation that should be used for the URL,
   2750  * based on the provided URL and the variation's patterns.
   2751  *
   2752  * @param {string}  url The URL to test.
   2753  * @return {WPBlockVariation} The block variation that should be used for this URL
   2754  */
   2755 
   2756 const findMoreSuitableBlock = url => {
   2757   var _getBlockVariations2;
   2758 
   2759   return (_getBlockVariations2 = Object(external_wp_blocks_["getBlockVariations"])(DEFAULT_EMBED_BLOCK)) === null || _getBlockVariations2 === void 0 ? void 0 : _getBlockVariations2.find(({
   2760     patterns
   2761   }) => matchesPatterns(url, patterns));
   2762 };
   2763 const isFromWordPress = html => html && html.includes('class="wp-embedded-content"');
   2764 const getPhotoHtml = photo => {
   2765   // 100% width for the preview so it fits nicely into the document, some "thumbnails" are
   2766   // actually the full size photo. If thumbnails not found, use full image.
   2767   const imageUrl = photo.thumbnail_url || photo.url;
   2768   const photoPreview = Object(external_wp_element_["createElement"])("p", null, Object(external_wp_element_["createElement"])("img", {
   2769     src: imageUrl,
   2770     alt: photo.title,
   2771     width: "100%"
   2772   }));
   2773   return Object(external_wp_element_["renderToString"])(photoPreview);
   2774 };
   2775 /**
   2776  * Creates a more suitable embed block based on the passed in props
   2777  * and attributes generated from an embed block's preview.
   2778  *
   2779  * We require `attributesFromPreview` to be generated from the latest attributes
   2780  * and preview, and because of the way the react lifecycle operates, we can't
   2781  * guarantee that the attributes contained in the block's props are the latest
   2782  * versions, so we require that these are generated separately.
   2783  * See `getAttributesFromPreview` in the generated embed edit component.
   2784  *
   2785  * @param {Object} props                  The block's props.
   2786  * @param {Object} [attributesFromPreview]  Attributes generated from the block's most up to date preview.
   2787  * @return {Object|undefined} A more suitable embed block if one exists.
   2788  */
   2789 
   2790 const createUpgradedEmbedBlock = (props, attributesFromPreview = {}) => {
   2791   var _getBlockVariations3;
   2792 
   2793   const {
   2794     preview,
   2795     attributes: {
   2796       url,
   2797       providerNameSlug,
   2798       type
   2799     } = {}
   2800   } = props;
   2801   if (!url || !Object(external_wp_blocks_["getBlockType"])(DEFAULT_EMBED_BLOCK)) return;
   2802   const matchedBlock = findMoreSuitableBlock(url); // WordPress blocks can work on multiple sites, and so don't have patterns,
   2803   // so if we're in a WordPress block, assume the user has chosen it for a WordPress URL.
   2804 
   2805   const isCurrentBlockWP = providerNameSlug === 'wordpress' || type === WP_EMBED_TYPE; // if current block is not WordPress and a more suitable block found
   2806   // that is different from the current one, create the new matched block
   2807 
   2808   const shouldCreateNewBlock = !isCurrentBlockWP && matchedBlock && (matchedBlock.attributes.providerNameSlug !== providerNameSlug || !providerNameSlug);
   2809 
   2810   if (shouldCreateNewBlock) {
   2811     return Object(external_wp_blocks_["createBlock"])(DEFAULT_EMBED_BLOCK, {
   2812       url,
   2813       ...matchedBlock.attributes
   2814     });
   2815   }
   2816 
   2817   const wpVariation = (_getBlockVariations3 = Object(external_wp_blocks_["getBlockVariations"])(DEFAULT_EMBED_BLOCK)) === null || _getBlockVariations3 === void 0 ? void 0 : _getBlockVariations3.find(({
   2818     name
   2819   }) => name === 'wordpress'); // We can't match the URL for WordPress embeds, we have to check the HTML instead.
   2820 
   2821   if (!wpVariation || !preview || !isFromWordPress(preview.html) || isCurrentBlockWP) {
   2822     return;
   2823   } // This is not the WordPress embed block so transform it into one.
   2824 
   2825 
   2826   return Object(external_wp_blocks_["createBlock"])(DEFAULT_EMBED_BLOCK, {
   2827     url,
   2828     ...wpVariation.attributes,
   2829     // By now we have the preview, but when the new block first renders, it
   2830     // won't have had all the attributes set, and so won't get the correct
   2831     // type and it won't render correctly. So, we pass through the current attributes
   2832     // here so that the initial render works when we switch to the WordPress
   2833     // block. This only affects the WordPress block because it can't be
   2834     // rendered in the usual Sandbox (it has a sandbox of its own) and it
   2835     // relies on the preview to set the correct render type.
   2836     ...attributesFromPreview
   2837   });
   2838 };
   2839 /**
   2840  * Removes all previously set aspect ratio related classes and return the rest
   2841  * existing class names.
   2842  *
   2843  * @param {string} existingClassNames Any existing class names.
   2844  * @return {string} The class names without any aspect ratio related class.
   2845  */
   2846 
   2847 const removeAspectRatioClasses = existingClassNames => {
   2848   if (!existingClassNames) {
   2849     // Avoids extraneous work and also, by returning the same value as
   2850     // received, ensures the post is not dirtied by a change of the block
   2851     // attribute from `undefined` to an emtpy string.
   2852     return existingClassNames;
   2853   }
   2854 
   2855   const aspectRatioClassNames = ASPECT_RATIOS.reduce((accumulator, {
   2856     className
   2857   }) => {
   2858     accumulator[className] = false;
   2859     return accumulator;
   2860   }, {
   2861     'wp-has-aspect-ratio': false
   2862   });
   2863   return dedupe_default()(existingClassNames, aspectRatioClassNames);
   2864 };
   2865 /**
   2866  * Returns class names with any relevant responsive aspect ratio names.
   2867  *
   2868  * @param {string}  html               The preview HTML that possibly contains an iframe with width and height set.
   2869  * @param {string}  existingClassNames Any existing class names.
   2870  * @param {boolean} allowResponsive    If the responsive class names should be added, or removed.
   2871  * @return {string} Deduped class names.
   2872  */
   2873 
   2874 function getClassNames(html, existingClassNames, allowResponsive = true) {
   2875   if (!allowResponsive) {
   2876     return removeAspectRatioClasses(existingClassNames);
   2877   }
   2878 
   2879   const previewDocument = document.implementation.createHTMLDocument('');
   2880   previewDocument.body.innerHTML = html;
   2881   const iframe = previewDocument.body.querySelector('iframe'); // If we have a fixed aspect iframe, and it's a responsive embed block.
   2882 
   2883   if (iframe && iframe.height && iframe.width) {
   2884     const aspectRatio = (iframe.width / iframe.height).toFixed(2); // Given the actual aspect ratio, find the widest ratio to support it.
   2885 
   2886     for (let ratioIndex = 0; ratioIndex < ASPECT_RATIOS.length; ratioIndex++) {
   2887       const potentialRatio = ASPECT_RATIOS[ratioIndex];
   2888 
   2889       if (aspectRatio >= potentialRatio.ratio) {
   2890         // Evaluate the difference between actual aspect ratio and closest match.
   2891         // If the difference is too big, do not scale the embed according to aspect ratio.
   2892         const ratioDiff = aspectRatio - potentialRatio.ratio;
   2893 
   2894         if (ratioDiff > 0.1) {
   2895           // No close aspect ratio match found.
   2896           return removeAspectRatioClasses(existingClassNames);
   2897         } // Close aspect ratio match found.
   2898 
   2899 
   2900         return dedupe_default()(removeAspectRatioClasses(existingClassNames), potentialRatio.className, 'wp-has-aspect-ratio');
   2901       }
   2902     }
   2903   }
   2904 
   2905   return existingClassNames;
   2906 }
   2907 /**
   2908  * Fallback behaviour for unembeddable URLs.
   2909  * Creates a paragraph block containing a link to the URL, and calls `onReplace`.
   2910  *
   2911  * @param {string}   url       The URL that could not be embedded.
   2912  * @param {Function} onReplace Function to call with the created fallback block.
   2913  */
   2914 
   2915 function util_fallback(url, onReplace) {
   2916   const link = Object(external_wp_element_["createElement"])("a", {
   2917     href: url
   2918   }, url);
   2919   onReplace(Object(external_wp_blocks_["createBlock"])('core/paragraph', {
   2920     content: Object(external_wp_element_["renderToString"])(link)
   2921   }));
   2922 }
   2923 /***
   2924  * Gets block attributes based on the preview and responsive state.
   2925  *
   2926  * @param {Object} preview The preview data.
   2927  * @param {string} title The block's title, e.g. Twitter.
   2928  * @param {Object} currentClassNames The block's current class names.
   2929  * @param {boolean} isResponsive Boolean indicating if the block supports responsive content.
   2930  * @param {boolean} allowResponsive Apply responsive classes to fixed size content.
   2931  * @return {Object} Attributes and values.
   2932  */
   2933 
   2934 const getAttributesFromPreview = memize_default()((preview, title, currentClassNames, isResponsive, allowResponsive = true) => {
   2935   if (!preview) {
   2936     return {};
   2937   }
   2938 
   2939   const attributes = {}; // Some plugins only return HTML with no type info, so default this to 'rich'.
   2940 
   2941   let {
   2942     type = 'rich'
   2943   } = preview; // If we got a provider name from the API, use it for the slug, otherwise we use the title,
   2944   // because not all embed code gives us a provider name.
   2945 
   2946   const {
   2947     html,
   2948     provider_name: providerName
   2949   } = preview;
   2950   const providerNameSlug = Object(external_lodash_["kebabCase"])((providerName || title).toLowerCase());
   2951 
   2952   if (isFromWordPress(html)) {
   2953     type = WP_EMBED_TYPE;
   2954   }
   2955 
   2956   if (html || 'photo' === type) {
   2957     attributes.type = type;
   2958     attributes.providerNameSlug = providerNameSlug;
   2959   }
   2960 
   2961   attributes.className = getClassNames(html, currentClassNames, isResponsive && allowResponsive);
   2962   return attributes;
   2963 });
   2964 
   2965 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/use-client-width.js
   2966 /**
   2967  * WordPress dependencies
   2968  */
   2969 
   2970 function useClientWidth(ref, dependencies) {
   2971   const [clientWidth, setClientWidth] = Object(external_wp_element_["useState"])();
   2972 
   2973   function calculateClientWidth() {
   2974     setClientWidth(ref.current.clientWidth);
   2975   }
   2976 
   2977   Object(external_wp_element_["useEffect"])(calculateClientWidth, dependencies);
   2978   Object(external_wp_element_["useEffect"])(() => {
   2979     const {
   2980       defaultView
   2981     } = ref.current.ownerDocument;
   2982     defaultView.addEventListener('resize', calculateClientWidth);
   2983     return () => {
   2984       defaultView.removeEventListener('resize', calculateClientWidth);
   2985     };
   2986   }, []);
   2987   return clientWidth;
   2988 }
   2989 
   2990 // CONCATENATED MODULE: ./node_modules/react-easy-crop/node_modules/tslib/tslib.es6.js
   2991 /*! *****************************************************************************
   2992 Copyright (c) Microsoft Corporation.
   2993 
   2994 Permission to use, copy, modify, and/or distribute this software for any
   2995 purpose with or without fee is hereby granted.
   2996 
   2997 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
   2998 REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
   2999 AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
   3000 INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
   3001 LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
   3002 OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
   3003 PERFORMANCE OF THIS SOFTWARE.
   3004 ***************************************************************************** */
   3005 /* global Reflect, Promise */
   3006 
   3007 var extendStatics = function(d, b) {
   3008     extendStatics = Object.setPrototypeOf ||
   3009         ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
   3010         function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
   3011     return extendStatics(d, b);
   3012 };
   3013 
   3014 function __extends(d, b) {
   3015     extendStatics(d, b);
   3016     function __() { this.constructor = d; }
   3017     d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
   3018 }
   3019 
   3020 var __assign = function() {
   3021     __assign = Object.assign || function __assign(t) {
   3022         for (var s, i = 1, n = arguments.length; i < n; i++) {
   3023             s = arguments[i];
   3024             for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
   3025         }
   3026         return t;
   3027     }
   3028     return __assign.apply(this, arguments);
   3029 }
   3030 
   3031 function __rest(s, e) {
   3032     var t = {};
   3033     for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
   3034         t[p] = s[p];
   3035     if (s != null && typeof Object.getOwnPropertySymbols === "function")
   3036         for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
   3037             if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
   3038                 t[p[i]] = s[p[i]];
   3039         }
   3040     return t;
   3041 }
   3042 
   3043 function __decorate(decorators, target, key, desc) {
   3044     var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
   3045     if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
   3046     else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
   3047     return c > 3 && r && Object.defineProperty(target, key, r), r;
   3048 }
   3049 
   3050 function __param(paramIndex, decorator) {
   3051     return function (target, key) { decorator(target, key, paramIndex); }
   3052 }
   3053 
   3054 function __metadata(metadataKey, metadataValue) {
   3055     if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
   3056 }
   3057 
   3058 function __awaiter(thisArg, _arguments, P, generator) {
   3059     function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
   3060     return new (P || (P = Promise))(function (resolve, reject) {
   3061         function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
   3062         function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
   3063         function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
   3064         step((generator = generator.apply(thisArg, _arguments || [])).next());
   3065     });
   3066 }
   3067 
   3068 function __generator(thisArg, body) {
   3069     var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
   3070     return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
   3071     function verb(n) { return function (v) { return step([n, v]); }; }
   3072     function step(op) {
   3073         if (f) throw new TypeError("Generator is already executing.");
   3074         while (_) try {
   3075             if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
   3076             if (y = 0, t) op = [op[0] & 2, t.value];
   3077             switch (op[0]) {
   3078                 case 0: case 1: t = op; break;
   3079                 case 4: _.label++; return { value: op[1], done: false };
   3080                 case 5: _.label++; y = op[1]; op = [0]; continue;
   3081                 case 7: op = _.ops.pop(); _.trys.pop(); continue;
   3082                 default:
   3083                     if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
   3084                     if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
   3085                     if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
   3086                     if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
   3087                     if (t[2]) _.ops.pop();
   3088                     _.trys.pop(); continue;
   3089             }
   3090             op = body.call(thisArg, _);
   3091         } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
   3092         if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
   3093     }
   3094 }
   3095 
   3096 var __createBinding = Object.create ? (function(o, m, k, k2) {
   3097     if (k2 === undefined) k2 = k;
   3098     Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
   3099 }) : (function(o, m, k, k2) {
   3100     if (k2 === undefined) k2 = k;
   3101     o[k2] = m[k];
   3102 });
   3103 
   3104 function __exportStar(m, o) {
   3105     for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);
   3106 }
   3107 
   3108 function __values(o) {
   3109     var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
   3110     if (m) return m.call(o);
   3111     if (o && typeof o.length === "number") return {
   3112         next: function () {
   3113             if (o && i >= o.length) o = void 0;
   3114             return { value: o && o[i++], done: !o };
   3115         }
   3116     };
   3117     throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
   3118 }
   3119 
   3120 function __read(o, n) {
   3121     var m = typeof Symbol === "function" && o[Symbol.iterator];
   3122     if (!m) return o;
   3123     var i = m.call(o), r, ar = [], e;
   3124     try {
   3125         while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
   3126     }
   3127     catch (error) { e = { error: error }; }
   3128     finally {
   3129         try {
   3130             if (r && !r.done && (m = i["return"])) m.call(i);
   3131         }
   3132         finally { if (e) throw e.error; }
   3133     }
   3134     return ar;
   3135 }
   3136 
   3137 function __spread() {
   3138     for (var ar = [], i = 0; i < arguments.length; i++)
   3139         ar = ar.concat(__read(arguments[i]));
   3140     return ar;
   3141 }
   3142 
   3143 function __spreadArrays() {
   3144     for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
   3145     for (var r = Array(s), k = 0, i = 0; i < il; i++)
   3146         for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
   3147             r[k] = a[j];
   3148     return r;
   3149 };
   3150 
   3151 function __await(v) {
   3152     return this instanceof __await ? (this.v = v, this) : new __await(v);
   3153 }
   3154 
   3155 function __asyncGenerator(thisArg, _arguments, generator) {
   3156     if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
   3157     var g = generator.apply(thisArg, _arguments || []), i, q = [];
   3158     return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
   3159     function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
   3160     function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
   3161     function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
   3162     function fulfill(value) { resume("next", value); }
   3163     function reject(value) { resume("throw", value); }
   3164     function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
   3165 }
   3166 
   3167 function __asyncDelegator(o) {
   3168     var i, p;
   3169     return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
   3170     function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
   3171 }
   3172 
   3173 function __asyncValues(o) {
   3174     if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
   3175     var m = o[Symbol.asyncIterator], i;
   3176     return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
   3177     function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
   3178     function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
   3179 }
   3180 
   3181 function __makeTemplateObject(cooked, raw) {
   3182     if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
   3183     return cooked;
   3184 };
   3185 
   3186 var __setModuleDefault = Object.create ? (function(o, v) {
   3187     Object.defineProperty(o, "default", { enumerable: true, value: v });
   3188 }) : function(o, v) {
   3189     o["default"] = v;
   3190 };
   3191 
   3192 function __importStar(mod) {
   3193     if (mod && mod.__esModule) return mod;
   3194     var result = {};
   3195     if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
   3196     __setModuleDefault(result, mod);
   3197     return result;
   3198 }
   3199 
   3200 function __importDefault(mod) {
   3201     return (mod && mod.__esModule) ? mod : { default: mod };
   3202 }
   3203 
   3204 function __classPrivateFieldGet(receiver, privateMap) {
   3205     if (!privateMap.has(receiver)) {
   3206         throw new TypeError("attempted to get private field on non-instance");
   3207     }
   3208     return privateMap.get(receiver);
   3209 }
   3210 
   3211 function __classPrivateFieldSet(receiver, privateMap, value) {
   3212     if (!privateMap.has(receiver)) {
   3213         throw new TypeError("attempted to set private field on non-instance");
   3214     }
   3215     privateMap.set(receiver, value);
   3216     return value;
   3217 }
   3218 
   3219 // EXTERNAL MODULE: external "React"
   3220 var external_React_ = __webpack_require__("cDcd");
   3221 var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
   3222 
   3223 // EXTERNAL MODULE: ./node_modules/normalize-wheel/index.js
   3224 var normalize_wheel = __webpack_require__("wJiJ");
   3225 var normalize_wheel_default = /*#__PURE__*/__webpack_require__.n(normalize_wheel);
   3226 
   3227 // CONCATENATED MODULE: ./node_modules/react-easy-crop/index.module.js
   3228 
   3229 
   3230 
   3231 
   3232 /**
   3233  * Compute the dimension of the crop area based on media size,
   3234  * aspect ratio and optionally rotation
   3235  */
   3236 
   3237 function getCropSize(mediaWidth, mediaHeight, containerWidth, containerHeight, aspect, rotation) {
   3238   if (rotation === void 0) {
   3239     rotation = 0;
   3240   }
   3241 
   3242   var _a = translateSize(mediaWidth, mediaHeight, rotation),
   3243       width = _a.width,
   3244       height = _a.height;
   3245 
   3246   var fittingWidth = Math.min(width, containerWidth);
   3247   var fittingHeight = Math.min(height, containerHeight);
   3248 
   3249   if (fittingWidth > fittingHeight * aspect) {
   3250     return {
   3251       width: fittingHeight * aspect,
   3252       height: fittingHeight
   3253     };
   3254   }
   3255 
   3256   return {
   3257     width: fittingWidth,
   3258     height: fittingWidth / aspect
   3259   };
   3260 }
   3261 /**
   3262  * Ensure a new media position stays in the crop area.
   3263  */
   3264 
   3265 function index_module_restrictPosition(position, mediaSize, cropSize, zoom, rotation) {
   3266   if (rotation === void 0) {
   3267     rotation = 0;
   3268   }
   3269 
   3270   var _a = translateSize(mediaSize.width, mediaSize.height, rotation),
   3271       width = _a.width,
   3272       height = _a.height;
   3273 
   3274   return {
   3275     x: restrictPositionCoord(position.x, width, cropSize.width, zoom),
   3276     y: restrictPositionCoord(position.y, height, cropSize.height, zoom)
   3277   };
   3278 }
   3279 
   3280 function restrictPositionCoord(position, mediaSize, cropSize, zoom) {
   3281   var maxPosition = mediaSize * zoom / 2 - cropSize / 2;
   3282   return Math.min(maxPosition, Math.max(position, -maxPosition));
   3283 }
   3284 
   3285 function getDistanceBetweenPoints(pointA, pointB) {
   3286   return Math.sqrt(Math.pow(pointA.y - pointB.y, 2) + Math.pow(pointA.x - pointB.x, 2));
   3287 }
   3288 function getRotationBetweenPoints(pointA, pointB) {
   3289   return Math.atan2(pointB.y - pointA.y, pointB.x - pointA.x) * 180 / Math.PI;
   3290 }
   3291 /**
   3292  * Compute the output cropped area of the media in percentages and pixels.
   3293  * x/y are the top-left coordinates on the src media
   3294  */
   3295 
   3296 function computeCroppedArea(crop, mediaSize, cropSize, aspect, zoom, rotation, restrictPosition) {
   3297   if (rotation === void 0) {
   3298     rotation = 0;
   3299   }
   3300 
   3301   if (restrictPosition === void 0) {
   3302     restrictPosition = true;
   3303   } // if the media is rotated by the user, we cannot limit the position anymore
   3304   // as it might need to be negative.
   3305 
   3306 
   3307   var limitAreaFn = restrictPosition && rotation === 0 ? limitArea : noOp;
   3308   var croppedAreaPercentages = {
   3309     x: limitAreaFn(100, ((mediaSize.width - cropSize.width / zoom) / 2 - crop.x / zoom) / mediaSize.width * 100),
   3310     y: limitAreaFn(100, ((mediaSize.height - cropSize.height / zoom) / 2 - crop.y / zoom) / mediaSize.height * 100),
   3311     width: limitAreaFn(100, cropSize.width / mediaSize.width * 100 / zoom),
   3312     height: limitAreaFn(100, cropSize.height / mediaSize.height * 100 / zoom)
   3313   }; // we compute the pixels size naively
   3314 
   3315   var widthInPixels = Math.round(limitAreaFn(mediaSize.naturalWidth, croppedAreaPercentages.width * mediaSize.naturalWidth / 100));
   3316   var heightInPixels = Math.round(limitAreaFn(mediaSize.naturalHeight, croppedAreaPercentages.height * mediaSize.naturalHeight / 100));
   3317   var isImgWiderThanHigh = mediaSize.naturalWidth >= mediaSize.naturalHeight * aspect; // then we ensure the width and height exactly match the aspect (to avoid rounding approximations)
   3318   // if the media is wider than high, when zoom is 0, the crop height will be equals to iamge height
   3319   // thus we want to compute the width from the height and aspect for accuracy.
   3320   // Otherwise, we compute the height from width and aspect.
   3321 
   3322   var sizePixels = isImgWiderThanHigh ? {
   3323     width: Math.round(heightInPixels * aspect),
   3324     height: heightInPixels
   3325   } : {
   3326     width: widthInPixels,
   3327     height: Math.round(widthInPixels / aspect)
   3328   };
   3329 
   3330   var croppedAreaPixels = __assign(__assign({}, sizePixels), {
   3331     x: Math.round(limitAreaFn(mediaSize.naturalWidth - sizePixels.width, croppedAreaPercentages.x * mediaSize.naturalWidth / 100)),
   3332     y: Math.round(limitAreaFn(mediaSize.naturalHeight - sizePixels.height, croppedAreaPercentages.y * mediaSize.naturalHeight / 100))
   3333   });
   3334 
   3335   return {
   3336     croppedAreaPercentages: croppedAreaPercentages,
   3337     croppedAreaPixels: croppedAreaPixels
   3338   };
   3339 }
   3340 /**
   3341  * Ensure the returned value is between 0 and max
   3342  */
   3343 
   3344 function limitArea(max, value) {
   3345   return Math.min(max, Math.max(0, value));
   3346 }
   3347 
   3348 function noOp(_max, value) {
   3349   return value;
   3350 }
   3351 /**
   3352  * Compute the crop and zoom from the croppedAreaPixels
   3353  */
   3354 
   3355 
   3356 function getZoomFromCroppedAreaPixels(croppedAreaPixels, mediaSize, cropSize) {
   3357   var mediaZoom = mediaSize.width / mediaSize.naturalWidth;
   3358 
   3359   if (cropSize) {
   3360     var isHeightMaxSize_1 = cropSize.height > cropSize.width;
   3361     return isHeightMaxSize_1 ? cropSize.height / mediaZoom / croppedAreaPixels.height : cropSize.width / mediaZoom / croppedAreaPixels.width;
   3362   }
   3363 
   3364   var aspect = croppedAreaPixels.width / croppedAreaPixels.height;
   3365   var isHeightMaxSize = mediaSize.naturalWidth >= mediaSize.naturalHeight * aspect;
   3366   return isHeightMaxSize ? mediaSize.naturalHeight / croppedAreaPixels.height : mediaSize.naturalWidth / croppedAreaPixels.width;
   3367 }
   3368 /**
   3369  * Compute the crop and zoom from the croppedAreaPixels
   3370  */
   3371 
   3372 
   3373 function getInitialCropFromCroppedAreaPixels(croppedAreaPixels, mediaSize, cropSize) {
   3374   var mediaZoom = mediaSize.width / mediaSize.naturalWidth;
   3375   var zoom = getZoomFromCroppedAreaPixels(croppedAreaPixels, mediaSize, cropSize);
   3376   var cropZoom = mediaZoom * zoom;
   3377   var crop = {
   3378     x: ((mediaSize.naturalWidth - croppedAreaPixels.width) / 2 - croppedAreaPixels.x) * cropZoom,
   3379     y: ((mediaSize.naturalHeight - croppedAreaPixels.height) / 2 - croppedAreaPixels.y) * cropZoom
   3380   };
   3381   return {
   3382     crop: crop,
   3383     zoom: zoom
   3384   };
   3385 }
   3386 /**
   3387  * Return the point that is the center of point a and b
   3388  */
   3389 
   3390 function getCenter(a, b) {
   3391   return {
   3392     x: (b.x + a.x) / 2,
   3393     y: (b.y + a.y) / 2
   3394   };
   3395 }
   3396 /**
   3397  *
   3398  * Returns an x,y point once rotated around xMid,yMid
   3399  */
   3400 
   3401 function rotateAroundMidPoint(x, y, xMid, yMid, degrees) {
   3402   var cos = Math.cos;
   3403   var sin = Math.sin;
   3404   var radian = degrees * Math.PI / 180; // Convert to radians
   3405   // Subtract midpoints, so that midpoint is translated to origin
   3406   // and add it in the end again
   3407 
   3408   var xr = (x - xMid) * cos(radian) - (y - yMid) * sin(radian) + xMid;
   3409   var yr = (x - xMid) * sin(radian) + (y - yMid) * cos(radian) + yMid;
   3410   return [xr, yr];
   3411 }
   3412 /**
   3413  * Returns the new bounding area of a rotated rectangle.
   3414  */
   3415 
   3416 function translateSize(width, height, rotation) {
   3417   var centerX = width / 2;
   3418   var centerY = height / 2;
   3419   var outerBounds = [rotateAroundMidPoint(0, 0, centerX, centerY, rotation), rotateAroundMidPoint(width, 0, centerX, centerY, rotation), rotateAroundMidPoint(width, height, centerX, centerY, rotation), rotateAroundMidPoint(0, height, centerX, centerY, rotation)];
   3420   var minX = Math.min.apply(Math, outerBounds.map(function (p) {
   3421     return p[0];
   3422   }));
   3423   var maxX = Math.max.apply(Math, outerBounds.map(function (p) {
   3424     return p[0];
   3425   }));
   3426   var minY = Math.min.apply(Math, outerBounds.map(function (p) {
   3427     return p[1];
   3428   }));
   3429   var maxY = Math.max.apply(Math, outerBounds.map(function (p) {
   3430     return p[1];
   3431   }));
   3432   return {
   3433     width: maxX - minX,
   3434     height: maxY - minY
   3435   };
   3436 }
   3437 /**
   3438  * Combine multiple class names into a single string.
   3439  */
   3440 
   3441 function index_module_classNames() {
   3442   var args = [];
   3443 
   3444   for (var _i = 0; _i < arguments.length; _i++) {
   3445     args[_i] = arguments[_i];
   3446   }
   3447 
   3448   return args.filter(function (value) {
   3449     if (typeof value === 'string' && value.length > 0) {
   3450       return true;
   3451     }
   3452 
   3453     return false;
   3454   }).join(' ').trim();
   3455 }
   3456 
   3457 var css_248z = ".reactEasyCrop_Container {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  overflow: hidden;\n  user-select: none;\n  touch-action: none;\n  cursor: move;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n}\n\n.reactEasyCrop_Image,\n.reactEasyCrop_Video {\n  will-change: transform; /* this improves performances and prevent painting issues on iOS Chrome */\n}\n\n.reactEasyCrop_Contain {\n  max-width: 100%;\n  max-height: 100%;\n  margin: auto;\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  right: 0;\n}\n.reactEasyCrop_Cover_Horizontal {\n  width: 100%;\n  height: auto;\n}\n.reactEasyCrop_Cover_Vertical {\n  width: auto;\n  height: 100%;\n}\n\n.reactEasyCrop_CropArea {\n  position: absolute;\n  left: 50%;\n  top: 50%;\n  transform: translate(-50%, -50%);\n  border: 1px solid rgba(255, 255, 255, 0.5);\n  box-sizing: border-box;\n  box-shadow: 0 0 0 9999em;\n  color: rgba(0, 0, 0, 0.5);\n  overflow: hidden;\n}\n\n.reactEasyCrop_CropAreaRound {\n  border-radius: 50%;\n}\n\n.reactEasyCrop_CropAreaGrid::before {\n  content: ' ';\n  box-sizing: border-box;\n  position: absolute;\n  border: 1px solid rgba(255, 255, 255, 0.5);\n  top: 0;\n  bottom: 0;\n  left: 33.33%;\n  right: 33.33%;\n  border-top: 0;\n  border-bottom: 0;\n}\n\n.reactEasyCrop_CropAreaGrid::after {\n  content: ' ';\n  box-sizing: border-box;\n  position: absolute;\n  border: 1px solid rgba(255, 255, 255, 0.5);\n  top: 33.33%;\n  bottom: 33.33%;\n  left: 0;\n  right: 0;\n  border-left: 0;\n  border-right: 0;\n}\n";
   3458 
   3459 var MIN_ZOOM = 1;
   3460 var MAX_ZOOM = 3;
   3461 
   3462 var index_module_Cropper =
   3463 /** @class */
   3464 function (_super) {
   3465   __extends(Cropper, _super);
   3466 
   3467   function Cropper() {
   3468     var _this = _super !== null && _super.apply(this, arguments) || this;
   3469 
   3470     _this.imageRef = null;
   3471     _this.videoRef = null;
   3472     _this.containerRef = null;
   3473     _this.styleRef = null;
   3474     _this.containerRect = null;
   3475     _this.mediaSize = {
   3476       width: 0,
   3477       height: 0,
   3478       naturalWidth: 0,
   3479       naturalHeight: 0
   3480     };
   3481     _this.dragStartPosition = {
   3482       x: 0,
   3483       y: 0
   3484     };
   3485     _this.dragStartCrop = {
   3486       x: 0,
   3487       y: 0
   3488     };
   3489     _this.lastPinchDistance = 0;
   3490     _this.lastPinchRotation = 0;
   3491     _this.rafDragTimeout = null;
   3492     _this.rafPinchTimeout = null;
   3493     _this.wheelTimer = null;
   3494     _this.state = {
   3495       cropSize: null,
   3496       hasWheelJustStarted: false
   3497     }; // this is to prevent Safari on iOS >= 10 to zoom the page
   3498 
   3499     _this.preventZoomSafari = function (e) {
   3500       return e.preventDefault();
   3501     };
   3502 
   3503     _this.cleanEvents = function () {
   3504       document.removeEventListener('mousemove', _this.onMouseMove);
   3505       document.removeEventListener('mouseup', _this.onDragStopped);
   3506       document.removeEventListener('touchmove', _this.onTouchMove);
   3507       document.removeEventListener('touchend', _this.onDragStopped);
   3508     };
   3509 
   3510     _this.clearScrollEvent = function () {
   3511       if (_this.containerRef) _this.containerRef.removeEventListener('wheel', _this.onWheel);
   3512 
   3513       if (_this.wheelTimer) {
   3514         clearTimeout(_this.wheelTimer);
   3515       }
   3516     };
   3517 
   3518     _this.onMediaLoad = function () {
   3519       _this.computeSizes();
   3520 
   3521       _this.emitCropData();
   3522 
   3523       _this.setInitialCrop();
   3524 
   3525       if (_this.props.onMediaLoaded) {
   3526         _this.props.onMediaLoaded(_this.mediaSize);
   3527       }
   3528     };
   3529 
   3530     _this.setInitialCrop = function () {
   3531       var _a = _this.props,
   3532           initialCroppedAreaPixels = _a.initialCroppedAreaPixels,
   3533           cropSize = _a.cropSize;
   3534 
   3535       if (!initialCroppedAreaPixels) {
   3536         return;
   3537       }
   3538 
   3539       var _b = getInitialCropFromCroppedAreaPixels(initialCroppedAreaPixels, _this.mediaSize, cropSize),
   3540           crop = _b.crop,
   3541           zoom = _b.zoom;
   3542 
   3543       _this.props.onCropChange(crop);
   3544 
   3545       _this.props.onZoomChange && _this.props.onZoomChange(zoom);
   3546     };
   3547 
   3548     _this.computeSizes = function () {
   3549       var _a, _b, _c, _d, _e, _f;
   3550 
   3551       var mediaRef = _this.imageRef || _this.videoRef;
   3552 
   3553       if (mediaRef && _this.containerRef) {
   3554         _this.containerRect = _this.containerRef.getBoundingClientRect();
   3555         _this.mediaSize = {
   3556           width: mediaRef.offsetWidth,
   3557           height: mediaRef.offsetHeight,
   3558           naturalWidth: ((_a = _this.imageRef) === null || _a === void 0 ? void 0 : _a.naturalWidth) || ((_b = _this.videoRef) === null || _b === void 0 ? void 0 : _b.videoWidth) || 0,
   3559           naturalHeight: ((_c = _this.imageRef) === null || _c === void 0 ? void 0 : _c.naturalHeight) || ((_d = _this.videoRef) === null || _d === void 0 ? void 0 : _d.videoHeight) || 0
   3560         };
   3561         var cropSize = _this.props.cropSize ? _this.props.cropSize : getCropSize(mediaRef.offsetWidth, mediaRef.offsetHeight, _this.containerRect.width, _this.containerRect.height, _this.props.aspect, _this.props.rotation);
   3562 
   3563         if (((_e = _this.state.cropSize) === null || _e === void 0 ? void 0 : _e.height) !== cropSize.height || ((_f = _this.state.cropSize) === null || _f === void 0 ? void 0 : _f.width) !== cropSize.width) {
   3564           _this.props.onCropSizeChange && _this.props.onCropSizeChange(cropSize);
   3565         }
   3566 
   3567         _this.setState({
   3568           cropSize: cropSize
   3569         }, _this.recomputeCropPosition);
   3570       }
   3571     };
   3572 
   3573     _this.onMouseDown = function (e) {
   3574       e.preventDefault();
   3575       document.addEventListener('mousemove', _this.onMouseMove);
   3576       document.addEventListener('mouseup', _this.onDragStopped);
   3577 
   3578       _this.onDragStart(Cropper.getMousePoint(e));
   3579     };
   3580 
   3581     _this.onMouseMove = function (e) {
   3582       return _this.onDrag(Cropper.getMousePoint(e));
   3583     };
   3584 
   3585     _this.onTouchStart = function (e) {
   3586       e.preventDefault();
   3587       document.addEventListener('touchmove', _this.onTouchMove, {
   3588         passive: false
   3589       }); // iOS 11 now defaults to passive: true
   3590 
   3591       document.addEventListener('touchend', _this.onDragStopped);
   3592 
   3593       if (e.touches.length === 2) {
   3594         _this.onPinchStart(e);
   3595       } else if (e.touches.length === 1) {
   3596         _this.onDragStart(Cropper.getTouchPoint(e.touches[0]));
   3597       }
   3598     };
   3599 
   3600     _this.onTouchMove = function (e) {
   3601       // Prevent whole page from scrolling on iOS.
   3602       e.preventDefault();
   3603 
   3604       if (e.touches.length === 2) {
   3605         _this.onPinchMove(e);
   3606       } else if (e.touches.length === 1) {
   3607         _this.onDrag(Cropper.getTouchPoint(e.touches[0]));
   3608       }
   3609     };
   3610 
   3611     _this.onDragStart = function (_a) {
   3612       var _b, _c;
   3613 
   3614       var x = _a.x,
   3615           y = _a.y;
   3616       _this.dragStartPosition = {
   3617         x: x,
   3618         y: y
   3619       };
   3620       _this.dragStartCrop = __assign({}, _this.props.crop);
   3621       (_c = (_b = _this.props).onInteractionStart) === null || _c === void 0 ? void 0 : _c.call(_b);
   3622     };
   3623 
   3624     _this.onDrag = function (_a) {
   3625       var x = _a.x,
   3626           y = _a.y;
   3627       if (_this.rafDragTimeout) window.cancelAnimationFrame(_this.rafDragTimeout);
   3628       _this.rafDragTimeout = window.requestAnimationFrame(function () {
   3629         if (!_this.state.cropSize) return;
   3630         if (x === undefined || y === undefined) return;
   3631         var offsetX = x - _this.dragStartPosition.x;
   3632         var offsetY = y - _this.dragStartPosition.y;
   3633         var requestedPosition = {
   3634           x: _this.dragStartCrop.x + offsetX,
   3635           y: _this.dragStartCrop.y + offsetY
   3636         };
   3637         var newPosition = _this.props.restrictPosition ? index_module_restrictPosition(requestedPosition, _this.mediaSize, _this.state.cropSize, _this.props.zoom, _this.props.rotation) : requestedPosition;
   3638 
   3639         _this.props.onCropChange(newPosition);
   3640       });
   3641     };
   3642 
   3643     _this.onDragStopped = function () {
   3644       var _a, _b;
   3645 
   3646       _this.cleanEvents();
   3647 
   3648       _this.emitCropData();
   3649 
   3650       (_b = (_a = _this.props).onInteractionEnd) === null || _b === void 0 ? void 0 : _b.call(_a);
   3651     };
   3652 
   3653     _this.onWheel = function (e) {
   3654       e.preventDefault();
   3655       var point = Cropper.getMousePoint(e);
   3656       var pixelY = normalize_wheel_default()(e).pixelY;
   3657       var newZoom = _this.props.zoom - pixelY * _this.props.zoomSpeed / 200;
   3658 
   3659       _this.setNewZoom(newZoom, point);
   3660 
   3661       if (!_this.state.hasWheelJustStarted) {
   3662         _this.setState({
   3663           hasWheelJustStarted: true
   3664         }, function () {
   3665           var _a, _b;
   3666 
   3667           return (_b = (_a = _this.props).onInteractionStart) === null || _b === void 0 ? void 0 : _b.call(_a);
   3668         });
   3669       }
   3670 
   3671       if (_this.wheelTimer) {
   3672         clearTimeout(_this.wheelTimer);
   3673       }
   3674 
   3675       _this.wheelTimer = window.setTimeout(function () {
   3676         return _this.setState({
   3677           hasWheelJustStarted: false
   3678         }, function () {
   3679           var _a, _b;
   3680 
   3681           return (_b = (_a = _this.props).onInteractionEnd) === null || _b === void 0 ? void 0 : _b.call(_a);
   3682         });
   3683       }, 250);
   3684     };
   3685 
   3686     _this.getPointOnContainer = function (_a) {
   3687       var x = _a.x,
   3688           y = _a.y;
   3689 
   3690       if (!_this.containerRect) {
   3691         throw new Error('The Cropper is not mounted');
   3692       }
   3693 
   3694       return {
   3695         x: _this.containerRect.width / 2 - (x - _this.containerRect.left),
   3696         y: _this.containerRect.height / 2 - (y - _this.containerRect.top)
   3697       };
   3698     };
   3699 
   3700     _this.getPointOnMedia = function (_a) {
   3701       var x = _a.x,
   3702           y = _a.y;
   3703       var _b = _this.props,
   3704           crop = _b.crop,
   3705           zoom = _b.zoom;
   3706       return {
   3707         x: (x + crop.x) / zoom,
   3708         y: (y + crop.y) / zoom
   3709       };
   3710     };
   3711 
   3712     _this.setNewZoom = function (zoom, point) {
   3713       if (!_this.state.cropSize || !_this.props.onZoomChange) return;
   3714 
   3715       var zoomPoint = _this.getPointOnContainer(point);
   3716 
   3717       var zoomTarget = _this.getPointOnMedia(zoomPoint);
   3718 
   3719       var newZoom = Math.min(_this.props.maxZoom, Math.max(zoom, _this.props.minZoom));
   3720       var requestedPosition = {
   3721         x: zoomTarget.x * newZoom - zoomPoint.x,
   3722         y: zoomTarget.y * newZoom - zoomPoint.y
   3723       };
   3724       var newPosition = _this.props.restrictPosition ? index_module_restrictPosition(requestedPosition, _this.mediaSize, _this.state.cropSize, newZoom, _this.props.rotation) : requestedPosition;
   3725 
   3726       _this.props.onCropChange(newPosition);
   3727 
   3728       _this.props.onZoomChange(newZoom);
   3729     };
   3730 
   3731     _this.getCropData = function () {
   3732       if (!_this.state.cropSize) {
   3733         return null;
   3734       } // this is to ensure the crop is correctly restricted after a zoom back (https://github.com/ricardo-ch/react-easy-crop/issues/6)
   3735 
   3736 
   3737       var restrictedPosition = _this.props.restrictPosition ? index_module_restrictPosition(_this.props.crop, _this.mediaSize, _this.state.cropSize, _this.props.zoom, _this.props.rotation) : _this.props.crop;
   3738       return computeCroppedArea(restrictedPosition, _this.mediaSize, _this.state.cropSize, _this.getAspect(), _this.props.zoom, _this.props.rotation, _this.props.restrictPosition);
   3739     };
   3740 
   3741     _this.emitCropData = function () {
   3742       var cropData = _this.getCropData();
   3743 
   3744       if (!cropData) return;
   3745       var croppedAreaPercentages = cropData.croppedAreaPercentages,
   3746           croppedAreaPixels = cropData.croppedAreaPixels;
   3747 
   3748       if (_this.props.onCropComplete) {
   3749         _this.props.onCropComplete(croppedAreaPercentages, croppedAreaPixels);
   3750       }
   3751 
   3752       if (_this.props.onCropAreaChange) {
   3753         _this.props.onCropAreaChange(croppedAreaPercentages, croppedAreaPixels);
   3754       }
   3755     };
   3756 
   3757     _this.emitCropAreaChange = function () {
   3758       var cropData = _this.getCropData();
   3759 
   3760       if (!cropData) return;
   3761       var croppedAreaPercentages = cropData.croppedAreaPercentages,
   3762           croppedAreaPixels = cropData.croppedAreaPixels;
   3763 
   3764       if (_this.props.onCropAreaChange) {
   3765         _this.props.onCropAreaChange(croppedAreaPercentages, croppedAreaPixels);
   3766       }
   3767     };
   3768 
   3769     _this.recomputeCropPosition = function () {
   3770       if (!_this.state.cropSize) return;
   3771       var newPosition = _this.props.restrictPosition ? index_module_restrictPosition(_this.props.crop, _this.mediaSize, _this.state.cropSize, _this.props.zoom, _this.props.rotation) : _this.props.crop;
   3772 
   3773       _this.props.onCropChange(newPosition);
   3774 
   3775       _this.emitCropData();
   3776     };
   3777 
   3778     return _this;
   3779   }
   3780 
   3781   Cropper.prototype.componentDidMount = function () {
   3782     window.addEventListener('resize', this.computeSizes);
   3783 
   3784     if (this.containerRef) {
   3785       this.props.zoomWithScroll && this.containerRef.addEventListener('wheel', this.onWheel, {
   3786         passive: false
   3787       });
   3788       this.containerRef.addEventListener('gesturestart', this.preventZoomSafari);
   3789       this.containerRef.addEventListener('gesturechange', this.preventZoomSafari);
   3790     }
   3791 
   3792     if (!this.props.disableAutomaticStylesInjection) {
   3793       this.styleRef = document.createElement('style');
   3794       this.styleRef.setAttribute('type', 'text/css');
   3795       this.styleRef.innerHTML = css_248z;
   3796       document.head.appendChild(this.styleRef);
   3797     } // when rendered via SSR, the image can already be loaded and its onLoad callback will never be called
   3798 
   3799 
   3800     if (this.imageRef && this.imageRef.complete) {
   3801       this.onMediaLoad();
   3802     }
   3803   };
   3804 
   3805   Cropper.prototype.componentWillUnmount = function () {
   3806     var _a;
   3807 
   3808     window.removeEventListener('resize', this.computeSizes);
   3809 
   3810     if (this.containerRef) {
   3811       this.containerRef.removeEventListener('gesturestart', this.preventZoomSafari);
   3812       this.containerRef.removeEventListener('gesturechange', this.preventZoomSafari);
   3813     }
   3814 
   3815     if (this.styleRef) {
   3816       (_a = this.styleRef.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(this.styleRef);
   3817     }
   3818 
   3819     this.cleanEvents();
   3820     this.props.zoomWithScroll && this.clearScrollEvent();
   3821   };
   3822 
   3823   Cropper.prototype.componentDidUpdate = function (prevProps) {
   3824     var _a, _b, _c, _d, _e, _f, _g, _h, _j;
   3825 
   3826     if (prevProps.rotation !== this.props.rotation) {
   3827       this.computeSizes();
   3828       this.recomputeCropPosition();
   3829     } else if (prevProps.aspect !== this.props.aspect) {
   3830       this.computeSizes();
   3831     } else if (prevProps.zoom !== this.props.zoom) {
   3832       this.recomputeCropPosition();
   3833     } else if (((_a = prevProps.cropSize) === null || _a === void 0 ? void 0 : _a.height) !== ((_b = this.props.cropSize) === null || _b === void 0 ? void 0 : _b.height) || ((_c = prevProps.cropSize) === null || _c === void 0 ? void 0 : _c.width) !== ((_d = this.props.cropSize) === null || _d === void 0 ? void 0 : _d.width)) {
   3834       this.computeSizes();
   3835     } else if (((_e = prevProps.crop) === null || _e === void 0 ? void 0 : _e.x) !== ((_f = this.props.crop) === null || _f === void 0 ? void 0 : _f.x) || ((_g = prevProps.crop) === null || _g === void 0 ? void 0 : _g.y) !== ((_h = this.props.crop) === null || _h === void 0 ? void 0 : _h.y)) {
   3836       this.emitCropAreaChange();
   3837     }
   3838 
   3839     if (prevProps.zoomWithScroll !== this.props.zoomWithScroll && this.containerRef) {
   3840       this.props.zoomWithScroll ? this.containerRef.addEventListener('wheel', this.onWheel, {
   3841         passive: false
   3842       }) : this.clearScrollEvent();
   3843     }
   3844 
   3845     if (prevProps.video !== this.props.video) {
   3846       (_j = this.videoRef) === null || _j === void 0 ? void 0 : _j.load();
   3847     }
   3848   };
   3849 
   3850   Cropper.prototype.getAspect = function () {
   3851     var _a = this.props,
   3852         cropSize = _a.cropSize,
   3853         aspect = _a.aspect;
   3854 
   3855     if (cropSize) {
   3856       return cropSize.width / cropSize.height;
   3857     }
   3858 
   3859     return aspect;
   3860   };
   3861 
   3862   Cropper.prototype.onPinchStart = function (e) {
   3863     var pointA = Cropper.getTouchPoint(e.touches[0]);
   3864     var pointB = Cropper.getTouchPoint(e.touches[1]);
   3865     this.lastPinchDistance = getDistanceBetweenPoints(pointA, pointB);
   3866     this.lastPinchRotation = getRotationBetweenPoints(pointA, pointB);
   3867     this.onDragStart(getCenter(pointA, pointB));
   3868   };
   3869 
   3870   Cropper.prototype.onPinchMove = function (e) {
   3871     var _this = this;
   3872 
   3873     var pointA = Cropper.getTouchPoint(e.touches[0]);
   3874     var pointB = Cropper.getTouchPoint(e.touches[1]);
   3875     var center = getCenter(pointA, pointB);
   3876     this.onDrag(center);
   3877     if (this.rafPinchTimeout) window.cancelAnimationFrame(this.rafPinchTimeout);
   3878     this.rafPinchTimeout = window.requestAnimationFrame(function () {
   3879       var distance = getDistanceBetweenPoints(pointA, pointB);
   3880       var newZoom = _this.props.zoom * (distance / _this.lastPinchDistance);
   3881 
   3882       _this.setNewZoom(newZoom, center);
   3883 
   3884       _this.lastPinchDistance = distance;
   3885       var rotation = getRotationBetweenPoints(pointA, pointB);
   3886       var newRotation = _this.props.rotation + (rotation - _this.lastPinchRotation);
   3887       _this.props.onRotationChange && _this.props.onRotationChange(newRotation);
   3888       _this.lastPinchRotation = rotation;
   3889     });
   3890   };
   3891 
   3892   Cropper.prototype.render = function () {
   3893     var _this = this;
   3894 
   3895     var _a = this.props,
   3896         image = _a.image,
   3897         video = _a.video,
   3898         mediaProps = _a.mediaProps,
   3899         transform = _a.transform,
   3900         _b = _a.crop,
   3901         x = _b.x,
   3902         y = _b.y,
   3903         rotation = _a.rotation,
   3904         zoom = _a.zoom,
   3905         cropShape = _a.cropShape,
   3906         showGrid = _a.showGrid,
   3907         _c = _a.style,
   3908         containerStyle = _c.containerStyle,
   3909         cropAreaStyle = _c.cropAreaStyle,
   3910         mediaStyle = _c.mediaStyle,
   3911         _d = _a.classes,
   3912         containerClassName = _d.containerClassName,
   3913         cropAreaClassName = _d.cropAreaClassName,
   3914         mediaClassName = _d.mediaClassName,
   3915         objectFit = _a.objectFit;
   3916     return /*#__PURE__*/external_React_default.a.createElement("div", {
   3917       onMouseDown: this.onMouseDown,
   3918       onTouchStart: this.onTouchStart,
   3919       ref: function ref(el) {
   3920         return _this.containerRef = el;
   3921       },
   3922       "data-testid": "container",
   3923       style: containerStyle,
   3924       className: index_module_classNames('reactEasyCrop_Container', containerClassName)
   3925     }, image ? /*#__PURE__*/external_React_default.a.createElement("img", __assign({
   3926       alt: "",
   3927       className: index_module_classNames('reactEasyCrop_Image', objectFit === 'contain' && 'reactEasyCrop_Contain', objectFit === 'horizontal-cover' && 'reactEasyCrop_Cover_Horizontal', objectFit === 'vertical-cover' && 'reactEasyCrop_Cover_Vertical', mediaClassName)
   3928     }, mediaProps, {
   3929       src: image,
   3930       ref: function ref(el) {
   3931         return _this.imageRef = el;
   3932       },
   3933       style: __assign(__assign({}, mediaStyle), {
   3934         transform: transform || "translate(" + x + "px, " + y + "px) rotate(" + rotation + "deg) scale(" + zoom + ")"
   3935       }),
   3936       onLoad: this.onMediaLoad
   3937     })) : video && /*#__PURE__*/external_React_default.a.createElement("video", __assign({
   3938       autoPlay: true,
   3939       loop: true,
   3940       muted: true,
   3941       className: index_module_classNames('reactEasyCrop_Video', objectFit === 'contain' && 'reactEasyCrop_Contain', objectFit === 'horizontal-cover' && 'reactEasyCrop_Cover_Horizontal', objectFit === 'vertical-cover' && 'reactEasyCrop_Cover_Vertical', mediaClassName)
   3942     }, mediaProps, {
   3943       ref: function ref(el) {
   3944         return _this.videoRef = el;
   3945       },
   3946       onLoadedMetadata: this.onMediaLoad,
   3947       style: __assign(__assign({}, mediaStyle), {
   3948         transform: transform || "translate(" + x + "px, " + y + "px) rotate(" + rotation + "deg) scale(" + zoom + ")"
   3949       }),
   3950       controls: false
   3951     }), (Array.isArray(video) ? video : [{
   3952       src: video
   3953     }]).map(function (item) {
   3954       return /*#__PURE__*/external_React_default.a.createElement("source", __assign({
   3955         key: item.src
   3956       }, item));
   3957     })), this.state.cropSize && /*#__PURE__*/external_React_default.a.createElement("div", {
   3958       style: __assign(__assign({}, cropAreaStyle), {
   3959         width: this.state.cropSize.width,
   3960         height: this.state.cropSize.height
   3961       }),
   3962       "data-testid": "cropper",
   3963       className: index_module_classNames('reactEasyCrop_CropArea', cropShape === 'round' && 'reactEasyCrop_CropAreaRound', showGrid && 'reactEasyCrop_CropAreaGrid', cropAreaClassName)
   3964     }));
   3965   };
   3966 
   3967   Cropper.defaultProps = {
   3968     zoom: 1,
   3969     rotation: 0,
   3970     aspect: 4 / 3,
   3971     maxZoom: MAX_ZOOM,
   3972     minZoom: MIN_ZOOM,
   3973     cropShape: 'rect',
   3974     objectFit: 'contain',
   3975     showGrid: true,
   3976     style: {},
   3977     classes: {},
   3978     mediaProps: {},
   3979     zoomSpeed: 1,
   3980     restrictPosition: true,
   3981     zoomWithScroll: true
   3982   };
   3983 
   3984   Cropper.getMousePoint = function (e) {
   3985     return {
   3986       x: Number(e.clientX),
   3987       y: Number(e.clientY)
   3988     };
   3989   };
   3990 
   3991   Cropper.getTouchPoint = function (touch) {
   3992     return {
   3993       x: Number(touch.clientX),
   3994       y: Number(touch.clientY)
   3995     };
   3996   };
   3997 
   3998   return Cropper;
   3999 }(external_React_default.a.Component);
   4000 
   4001 /* harmony default export */ var index_module = (index_module_Cropper);
   4002 
   4003 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/constants.js
   4004 const constants_MIN_ZOOM = 100;
   4005 const constants_MAX_ZOOM = 300;
   4006 const constants_POPOVER_PROPS = {
   4007   position: 'bottom right',
   4008   isAlternate: true
   4009 };
   4010 
   4011 // EXTERNAL MODULE: external ["wp","apiFetch"]
   4012 var external_wp_apiFetch_ = __webpack_require__("ywyh");
   4013 var external_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_wp_apiFetch_);
   4014 
   4015 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/use-save-image.js
   4016 /**
   4017  * WordPress dependencies
   4018  */
   4019 
   4020 
   4021 
   4022 
   4023 
   4024 function useSaveImage({
   4025   crop,
   4026   rotation,
   4027   height,
   4028   width,
   4029   aspect,
   4030   url,
   4031   id,
   4032   onSaveImage,
   4033   onFinishEditing
   4034 }) {
   4035   const {
   4036     createErrorNotice
   4037   } = Object(external_wp_data_["useDispatch"])(external_wp_notices_["store"]);
   4038   const [isInProgress, setIsInProgress] = Object(external_wp_element_["useState"])(false);
   4039   const cancel = Object(external_wp_element_["useCallback"])(() => {
   4040     setIsInProgress(false);
   4041     onFinishEditing();
   4042   }, [setIsInProgress, onFinishEditing]);
   4043   const apply = Object(external_wp_element_["useCallback"])(() => {
   4044     setIsInProgress(true);
   4045     let attrs = {}; // The crop script may return some very small, sub-pixel values when the image was not cropped.
   4046     // Crop only when the new size has changed by more than 0.1%.
   4047 
   4048     if (crop.width < 99.9 || crop.height < 99.9) {
   4049       attrs = crop;
   4050     }
   4051 
   4052     if (rotation > 0) {
   4053       attrs.rotation = rotation;
   4054     }
   4055 
   4056     attrs.src = url;
   4057     external_wp_apiFetch_default()({
   4058       path: `/wp/v2/media/${id}/edit`,
   4059       method: 'POST',
   4060       data: attrs
   4061     }).then(response => {
   4062       onSaveImage({
   4063         id: response.id,
   4064         url: response.source_url,
   4065         height: height && width ? width / aspect : undefined
   4066       });
   4067     }).catch(error => {
   4068       createErrorNotice(Object(external_wp_i18n_["sprintf"])(
   4069       /* translators: 1. Error message */
   4070       Object(external_wp_i18n_["__"])('Could not edit image. %s'), error.message), {
   4071         id: 'image-editing-error',
   4072         type: 'snackbar'
   4073       });
   4074     }).finally(() => {
   4075       setIsInProgress(false);
   4076       onFinishEditing();
   4077     });
   4078   }, [setIsInProgress, crop, rotation, height, width, aspect, url, onSaveImage, createErrorNotice, setIsInProgress, onFinishEditing]);
   4079   return Object(external_wp_element_["useMemo"])(() => ({
   4080     isInProgress,
   4081     apply,
   4082     cancel
   4083   }), [isInProgress, apply, cancel]);
   4084 }
   4085 
   4086 // EXTERNAL MODULE: external ["wp","hooks"]
   4087 var external_wp_hooks_ = __webpack_require__("g56x");
   4088 
   4089 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/use-transform-image.js
   4090 /**
   4091  * WordPress dependencies
   4092  */
   4093 
   4094 
   4095 
   4096 function useTransformState({
   4097   url,
   4098   naturalWidth,
   4099   naturalHeight
   4100 }) {
   4101   const [editedUrl, setEditedUrl] = Object(external_wp_element_["useState"])();
   4102   const [crop, setCrop] = Object(external_wp_element_["useState"])();
   4103   const [position, setPosition] = Object(external_wp_element_["useState"])({
   4104     x: 0,
   4105     y: 0
   4106   });
   4107   const [zoom, setZoom] = Object(external_wp_element_["useState"])();
   4108   const [rotation, setRotation] = Object(external_wp_element_["useState"])();
   4109   const [aspect, setAspect] = Object(external_wp_element_["useState"])();
   4110   const [defaultAspect, setDefaultAspect] = Object(external_wp_element_["useState"])();
   4111   const initializeTransformValues = Object(external_wp_element_["useCallback"])(() => {
   4112     setPosition({
   4113       x: 0,
   4114       y: 0
   4115     });
   4116     setZoom(100);
   4117     setRotation(0);
   4118     setAspect(naturalWidth / naturalHeight);
   4119     setDefaultAspect(naturalWidth / naturalHeight);
   4120   }, [naturalWidth, naturalHeight, setPosition, setZoom, setRotation, setAspect, setDefaultAspect]);
   4121   const rotateClockwise = Object(external_wp_element_["useCallback"])(() => {
   4122     const angle = (rotation + 90) % 360;
   4123     let naturalAspectRatio = naturalWidth / naturalHeight;
   4124 
   4125     if (rotation % 180 === 90) {
   4126       naturalAspectRatio = naturalHeight / naturalWidth;
   4127     }
   4128 
   4129     if (angle === 0) {
   4130       setEditedUrl();
   4131       setRotation(angle);
   4132       setAspect(1 / aspect);
   4133       setPosition({
   4134         x: -(position.y * naturalAspectRatio),
   4135         y: position.x * naturalAspectRatio
   4136       });
   4137       return;
   4138     }
   4139 
   4140     function editImage(event) {
   4141       const canvas = document.createElement('canvas');
   4142       let translateX = 0;
   4143       let translateY = 0;
   4144 
   4145       if (angle % 180) {
   4146         canvas.width = event.target.height;
   4147         canvas.height = event.target.width;
   4148       } else {
   4149         canvas.width = event.target.width;
   4150         canvas.height = event.target.height;
   4151       }
   4152 
   4153       if (angle === 90 || angle === 180) {
   4154         translateX = canvas.width;
   4155       }
   4156 
   4157       if (angle === 270 || angle === 180) {
   4158         translateY = canvas.height;
   4159       }
   4160 
   4161       const context = canvas.getContext('2d');
   4162       context.translate(translateX, translateY);
   4163       context.rotate(angle * Math.PI / 180);
   4164       context.drawImage(event.target, 0, 0);
   4165       canvas.toBlob(blob => {
   4166         setEditedUrl(URL.createObjectURL(blob));
   4167         setRotation(angle);
   4168         setAspect(1 / aspect);
   4169         setPosition({
   4170           x: -(position.y * naturalAspectRatio),
   4171           y: position.x * naturalAspectRatio
   4172         });
   4173       });
   4174     }
   4175 
   4176     const el = new window.Image();
   4177     el.src = url;
   4178     el.onload = editImage;
   4179     const imgCrossOrigin = Object(external_wp_hooks_["applyFilters"])('media.crossOrigin', undefined, url);
   4180 
   4181     if (typeof imgCrossOrigin === 'string') {
   4182       el.crossOrigin = imgCrossOrigin;
   4183     }
   4184   }, [rotation, naturalWidth, naturalHeight, setEditedUrl, setRotation, setAspect, setPosition]);
   4185   return Object(external_wp_element_["useMemo"])(() => ({
   4186     editedUrl,
   4187     setEditedUrl,
   4188     crop,
   4189     setCrop,
   4190     position,
   4191     setPosition,
   4192     zoom,
   4193     setZoom,
   4194     rotation,
   4195     setRotation,
   4196     rotateClockwise,
   4197     aspect,
   4198     setAspect,
   4199     defaultAspect,
   4200     initializeTransformValues
   4201   }), [editedUrl, setEditedUrl, crop, setCrop, position, setPosition, zoom, setZoom, rotation, setRotation, rotateClockwise, aspect, setAspect, defaultAspect, initializeTransformValues]);
   4202 }
   4203 
   4204 function useTransformImage(imageProperties, isEditing) {
   4205   const transformState = useTransformState(imageProperties);
   4206   const {
   4207     initializeTransformValues
   4208   } = transformState;
   4209   Object(external_wp_element_["useEffect"])(() => {
   4210     if (isEditing) {
   4211       initializeTransformValues();
   4212     }
   4213   }, [isEditing, initializeTransformValues]);
   4214   return transformState;
   4215 }
   4216 
   4217 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/context.js
   4218 
   4219 
   4220 /**
   4221  * WordPress dependencies
   4222  */
   4223 
   4224 /**
   4225  * Internal dependencies
   4226  */
   4227 
   4228 
   4229 
   4230 const ImageEditingContext = Object(external_wp_element_["createContext"])({});
   4231 const useImageEditingContext = () => Object(external_wp_element_["useContext"])(ImageEditingContext);
   4232 function ImageEditingProvider({
   4233   id,
   4234   url,
   4235   naturalWidth,
   4236   naturalHeight,
   4237   isEditing,
   4238   onFinishEditing,
   4239   onSaveImage,
   4240   children
   4241 }) {
   4242   const transformImage = useTransformImage({
   4243     url,
   4244     naturalWidth,
   4245     naturalHeight
   4246   }, isEditing);
   4247   const saveImage = useSaveImage({
   4248     id,
   4249     url,
   4250     onSaveImage,
   4251     onFinishEditing,
   4252     ...transformImage
   4253   });
   4254   const providerValue = Object(external_wp_element_["useMemo"])(() => ({ ...transformImage,
   4255     ...saveImage
   4256   }), [transformImage, saveImage]);
   4257   return Object(external_wp_element_["createElement"])(ImageEditingContext.Provider, {
   4258     value: providerValue
   4259   }, children);
   4260 }
   4261 
   4262 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/cropper.js
   4263 
   4264 
   4265 /**
   4266  * External dependencies
   4267  */
   4268 
   4269 
   4270 /**
   4271  * WordPress dependencies
   4272  */
   4273 
   4274 
   4275 /**
   4276  * Internal dependencies
   4277  */
   4278 
   4279 
   4280 
   4281 function ImageCropper({
   4282   url,
   4283   width,
   4284   height,
   4285   clientWidth,
   4286   naturalHeight,
   4287   naturalWidth
   4288 }) {
   4289   const {
   4290     isInProgress,
   4291     editedUrl,
   4292     position,
   4293     zoom,
   4294     aspect,
   4295     setPosition,
   4296     setCrop,
   4297     setZoom,
   4298     rotation
   4299   } = useImageEditingContext();
   4300   let editedHeight = height || clientWidth * naturalHeight / naturalWidth;
   4301 
   4302   if (rotation % 180 === 90) {
   4303     editedHeight = clientWidth * naturalWidth / naturalHeight;
   4304   }
   4305 
   4306   return Object(external_wp_element_["createElement"])("div", {
   4307     className: classnames_default()('wp-block-image__crop-area', {
   4308       'is-applying': isInProgress
   4309     }),
   4310     style: {
   4311       width: width || clientWidth,
   4312       height: editedHeight
   4313     }
   4314   }, Object(external_wp_element_["createElement"])(index_module, {
   4315     image: editedUrl || url,
   4316     disabled: isInProgress,
   4317     minZoom: constants_MIN_ZOOM / 100,
   4318     maxZoom: constants_MAX_ZOOM / 100,
   4319     crop: position,
   4320     zoom: zoom / 100,
   4321     aspect: aspect,
   4322     onCropChange: setPosition,
   4323     onCropComplete: newCropPercent => {
   4324       setCrop(newCropPercent);
   4325     },
   4326     onZoomChange: newZoom => {
   4327       setZoom(newZoom * 100);
   4328     }
   4329   }), isInProgress && Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null));
   4330 }
   4331 
   4332 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/search.js
   4333 var library_search = __webpack_require__("cGtP");
   4334 
   4335 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/zoom-dropdown.js
   4336 
   4337 
   4338 /**
   4339  * WordPress dependencies
   4340  */
   4341 
   4342 
   4343 
   4344 /**
   4345  * Internal dependencies
   4346  */
   4347 
   4348 
   4349 
   4350 function ZoomDropdown() {
   4351   const {
   4352     isInProgress,
   4353     zoom,
   4354     setZoom
   4355   } = useImageEditingContext();
   4356   return Object(external_wp_element_["createElement"])(external_wp_components_["Dropdown"], {
   4357     contentClassName: "wp-block-image__zoom",
   4358     popoverProps: constants_POPOVER_PROPS,
   4359     renderToggle: ({
   4360       isOpen,
   4361       onToggle
   4362     }) => Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   4363       icon: library_search["a" /* default */],
   4364       label: Object(external_wp_i18n_["__"])('Zoom'),
   4365       onClick: onToggle,
   4366       "aria-expanded": isOpen,
   4367       disabled: isInProgress
   4368     }),
   4369     renderContent: () => Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
   4370       label: Object(external_wp_i18n_["__"])('Zoom'),
   4371       min: constants_MIN_ZOOM,
   4372       max: constants_MAX_ZOOM,
   4373       value: Math.round(zoom),
   4374       onChange: setZoom
   4375     })
   4376   });
   4377 }
   4378 
   4379 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/check.js
   4380 var check = __webpack_require__("RMJe");
   4381 
   4382 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/aspect-ratio.js
   4383 
   4384 
   4385 /**
   4386  * WordPress dependencies
   4387  */
   4388 
   4389 const aspect_ratio_aspectRatio = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   4390   xmlns: "http://www.w3.org/2000/svg",
   4391   viewBox: "0 0 24 24"
   4392 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   4393   d: "M18.5 5.5h-13c-1.1 0-2 .9-2 2v9c0 1.1.9 2 2 2h13c1.1 0 2-.9 2-2v-9c0-1.1-.9-2-2-2zm.5 11c0 .3-.2.5-.5.5h-13c-.3 0-.5-.2-.5-.5v-9c0-.3.2-.5.5-.5h13c.3 0 .5.2.5.5v9zM6.5 12H8v-2h2V8.5H6.5V12zm9.5 2h-2v1.5h3.5V12H16v2z"
   4394 }));
   4395 /* harmony default export */ var aspect_ratio = (aspect_ratio_aspectRatio);
   4396 
   4397 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/aspect-ratio-dropdown.js
   4398 
   4399 
   4400 /**
   4401  * WordPress dependencies
   4402  */
   4403 
   4404 
   4405 
   4406 /**
   4407  * Internal dependencies
   4408  */
   4409 
   4410 
   4411 
   4412 
   4413 function AspectGroup({
   4414   aspectRatios,
   4415   isDisabled,
   4416   label,
   4417   onClick,
   4418   value
   4419 }) {
   4420   return Object(external_wp_element_["createElement"])(external_wp_components_["MenuGroup"], {
   4421     label: label
   4422   }, aspectRatios.map(({
   4423     title,
   4424     aspect
   4425   }) => Object(external_wp_element_["createElement"])(external_wp_components_["MenuItem"], {
   4426     key: aspect,
   4427     disabled: isDisabled,
   4428     onClick: () => {
   4429       onClick(aspect);
   4430     },
   4431     role: "menuitemradio",
   4432     isSelected: aspect === value,
   4433     icon: aspect === value ? check["a" /* default */] : undefined
   4434   }, title)));
   4435 }
   4436 
   4437 function AspectRatioDropdown({
   4438   toggleProps
   4439 }) {
   4440   const {
   4441     isInProgress,
   4442     aspect,
   4443     setAspect,
   4444     defaultAspect
   4445   } = useImageEditingContext();
   4446   return Object(external_wp_element_["createElement"])(external_wp_components_["DropdownMenu"], {
   4447     icon: aspect_ratio,
   4448     label: Object(external_wp_i18n_["__"])('Aspect Ratio'),
   4449     popoverProps: constants_POPOVER_PROPS,
   4450     toggleProps: toggleProps,
   4451     className: "wp-block-image__aspect-ratio"
   4452   }, ({
   4453     onClose
   4454   }) => Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(AspectGroup, {
   4455     isDisabled: isInProgress,
   4456     onClick: newAspect => {
   4457       setAspect(newAspect);
   4458       onClose();
   4459     },
   4460     value: aspect,
   4461     aspectRatios: [{
   4462       title: Object(external_wp_i18n_["__"])('Original'),
   4463       aspect: defaultAspect
   4464     }, {
   4465       title: Object(external_wp_i18n_["__"])('Square'),
   4466       aspect: 1
   4467     }]
   4468   }), Object(external_wp_element_["createElement"])(AspectGroup, {
   4469     label: Object(external_wp_i18n_["__"])('Landscape'),
   4470     isDisabled: isInProgress,
   4471     onClick: newAspect => {
   4472       setAspect(newAspect);
   4473       onClose();
   4474     },
   4475     value: aspect,
   4476     aspectRatios: [{
   4477       title: Object(external_wp_i18n_["__"])('16:10'),
   4478       aspect: 16 / 10
   4479     }, {
   4480       title: Object(external_wp_i18n_["__"])('16:9'),
   4481       aspect: 16 / 9
   4482     }, {
   4483       title: Object(external_wp_i18n_["__"])('4:3'),
   4484       aspect: 4 / 3
   4485     }, {
   4486       title: Object(external_wp_i18n_["__"])('3:2'),
   4487       aspect: 3 / 2
   4488     }]
   4489   }), Object(external_wp_element_["createElement"])(AspectGroup, {
   4490     label: Object(external_wp_i18n_["__"])('Portrait'),
   4491     isDisabled: isInProgress,
   4492     onClick: newAspect => {
   4493       setAspect(newAspect);
   4494       onClose();
   4495     },
   4496     value: aspect,
   4497     aspectRatios: [{
   4498       title: Object(external_wp_i18n_["__"])('10:16'),
   4499       aspect: 10 / 16
   4500     }, {
   4501       title: Object(external_wp_i18n_["__"])('9:16'),
   4502       aspect: 9 / 16
   4503     }, {
   4504       title: Object(external_wp_i18n_["__"])('3:4'),
   4505       aspect: 3 / 4
   4506     }, {
   4507       title: Object(external_wp_i18n_["__"])('2:3'),
   4508       aspect: 2 / 3
   4509     }]
   4510   })));
   4511 }
   4512 
   4513 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/rotate-right.js
   4514 
   4515 
   4516 /**
   4517  * WordPress dependencies
   4518  */
   4519 
   4520 const rotateRight = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   4521   xmlns: "http://www.w3.org/2000/svg",
   4522   viewBox: "0 0 24 24"
   4523 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   4524   d: "M15.1 4.8l-3-2.5V4c-4.4 0-8 3.6-8 8 0 3.7 2.5 6.9 6 7.7.3.1.6.1 1 .2l.2-1.5c-.4 0-.7-.1-1.1-.2l-.1.2v-.2c-2.6-.8-4.5-3.3-4.5-6.2 0-3.6 2.9-6.5 6.5-6.5v1.8l3-2.5zM20 11c-.2-1.4-.7-2.7-1.6-3.8l-1.2.8c.7.9 1.1 2 1.3 3.1L20 11zm-1.5 1.8c-.1.5-.2 1.1-.4 1.6s-.5 1-.8 1.5l1.2.9c.4-.5.8-1.1 1-1.8s.5-1.3.5-2l-1.5-.2zm-5.6 5.6l.2 1.5c1.4-.2 2.7-.7 3.8-1.6l-.9-1.1c-.9.7-2 1.1-3.1 1.2z"
   4525 }));
   4526 /* harmony default export */ var rotate_right = (rotateRight);
   4527 
   4528 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/rotation-button.js
   4529 
   4530 
   4531 /**
   4532  * WordPress dependencies
   4533  */
   4534 
   4535 
   4536 
   4537 /**
   4538  * Internal dependencies
   4539  */
   4540 
   4541 
   4542 function RotationButton() {
   4543   const {
   4544     isInProgress,
   4545     rotateClockwise
   4546   } = useImageEditingContext();
   4547   return Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   4548     icon: rotate_right,
   4549     label: Object(external_wp_i18n_["__"])('Rotate'),
   4550     onClick: rotateClockwise,
   4551     disabled: isInProgress
   4552   });
   4553 }
   4554 
   4555 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/form-controls.js
   4556 
   4557 
   4558 /**
   4559  * WordPress dependencies
   4560  */
   4561 
   4562 
   4563 /**
   4564  * Internal dependencies
   4565  */
   4566 
   4567 
   4568 function FormControls() {
   4569   const {
   4570     isInProgress,
   4571     apply,
   4572     cancel
   4573   } = useImageEditingContext();
   4574   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   4575     onClick: apply,
   4576     disabled: isInProgress
   4577   }, Object(external_wp_i18n_["__"])('Apply')), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   4578     onClick: cancel
   4579   }, Object(external_wp_i18n_["__"])('Cancel')));
   4580 }
   4581 
   4582 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image-editing/index.js
   4583 
   4584 
   4585 /**
   4586  * WordPress dependencies
   4587  */
   4588 
   4589 
   4590 /**
   4591  * Internal dependencies
   4592  */
   4593 
   4594 
   4595 
   4596 
   4597 
   4598 
   4599 function ImageEditor({
   4600   url,
   4601   width,
   4602   height,
   4603   clientWidth,
   4604   naturalHeight,
   4605   naturalWidth
   4606 }) {
   4607   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(ImageCropper, {
   4608     url: url,
   4609     width: width,
   4610     height: height,
   4611     clientWidth: clientWidth,
   4612     naturalHeight: naturalHeight,
   4613     naturalWidth: naturalWidth
   4614   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, Object(external_wp_element_["createElement"])(ZoomDropdown, null), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarItem"], null, toggleProps => Object(external_wp_element_["createElement"])(AspectRatioDropdown, {
   4615     toggleProps: toggleProps
   4616   })), Object(external_wp_element_["createElement"])(RotationButton, null)), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, Object(external_wp_element_["createElement"])(FormControls, null))));
   4617 }
   4618 
   4619 
   4620 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/constants.js
   4621 const MIN_SIZE = 20;
   4622 const LINK_DESTINATION_NONE = 'none';
   4623 const LINK_DESTINATION_MEDIA = 'media';
   4624 const LINK_DESTINATION_ATTACHMENT = 'attachment';
   4625 const LINK_DESTINATION_CUSTOM = 'custom';
   4626 const NEW_TAB_REL = ['noreferrer', 'noopener'];
   4627 const ALLOWED_MEDIA_TYPES = ['image'];
   4628 
   4629 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/image.js
   4630 
   4631 
   4632 /**
   4633  * External dependencies
   4634  */
   4635 
   4636 /**
   4637  * WordPress dependencies
   4638  */
   4639 
   4640 
   4641 
   4642 
   4643 
   4644 
   4645 
   4646 
   4647 
   4648 
   4649 
   4650 
   4651 
   4652 /**
   4653  * Internal dependencies
   4654  */
   4655 
   4656 
   4657 
   4658 
   4659 
   4660 /**
   4661  * Module constants
   4662  */
   4663 
   4664 
   4665 
   4666 function getFilename(url) {
   4667   const path = Object(external_wp_url_["getPath"])(url);
   4668 
   4669   if (path) {
   4670     return Object(external_lodash_["last"])(path.split('/'));
   4671   }
   4672 }
   4673 
   4674 function Image({
   4675   temporaryURL,
   4676   attributes: {
   4677     url = '',
   4678     alt,
   4679     caption,
   4680     align,
   4681     id,
   4682     href,
   4683     rel,
   4684     linkClass,
   4685     linkDestination,
   4686     title,
   4687     width,
   4688     height,
   4689     linkTarget,
   4690     sizeSlug
   4691   },
   4692   setAttributes,
   4693   isSelected,
   4694   insertBlocksAfter,
   4695   onReplace,
   4696   onSelectImage,
   4697   onSelectURL,
   4698   onUploadError,
   4699   containerRef,
   4700   clientId
   4701 }) {
   4702   const captionRef = Object(external_wp_element_["useRef"])();
   4703   const prevUrl = Object(external_wp_compose_["usePrevious"])(url);
   4704   const {
   4705     getBlock
   4706   } = Object(external_wp_data_["useSelect"])(external_wp_blockEditor_["store"]);
   4707   const {
   4708     image,
   4709     multiImageSelection
   4710   } = Object(external_wp_data_["useSelect"])(select => {
   4711     const {
   4712       getMedia
   4713     } = select(external_wp_coreData_["store"]);
   4714     const {
   4715       getMultiSelectedBlockClientIds,
   4716       getBlockName
   4717     } = select(external_wp_blockEditor_["store"]);
   4718     const multiSelectedClientIds = getMultiSelectedBlockClientIds();
   4719     return {
   4720       image: id && isSelected ? getMedia(id) : null,
   4721       multiImageSelection: multiSelectedClientIds.length && multiSelectedClientIds.every(_clientId => getBlockName(_clientId) === 'core/image')
   4722     };
   4723   }, [id, isSelected]);
   4724   const {
   4725     imageEditing,
   4726     imageSizes,
   4727     maxWidth,
   4728     mediaUpload
   4729   } = Object(external_wp_data_["useSelect"])(select => {
   4730     const {
   4731       getSettings
   4732     } = select(external_wp_blockEditor_["store"]);
   4733     return Object(external_lodash_["pick"])(getSettings(), ['imageEditing', 'imageSizes', 'maxWidth', 'mediaUpload']);
   4734   });
   4735   const {
   4736     replaceBlocks,
   4737     toggleSelection
   4738   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
   4739   const {
   4740     createErrorNotice,
   4741     createSuccessNotice
   4742   } = Object(external_wp_data_["useDispatch"])(external_wp_notices_["store"]);
   4743   const isLargeViewport = Object(external_wp_compose_["useViewportMatch"])('medium');
   4744   const isWideAligned = Object(external_lodash_["includes"])(['wide', 'full'], align);
   4745   const [{
   4746     naturalWidth,
   4747     naturalHeight
   4748   }, setNaturalSize] = Object(external_wp_element_["useState"])({});
   4749   const [isEditingImage, setIsEditingImage] = Object(external_wp_element_["useState"])(false);
   4750   const [externalBlob, setExternalBlob] = Object(external_wp_element_["useState"])();
   4751   const clientWidth = useClientWidth(containerRef, [align]);
   4752   const isResizable = !isWideAligned && isLargeViewport;
   4753   const imageSizeOptions = Object(external_lodash_["map"])(Object(external_lodash_["filter"])(imageSizes, ({
   4754     slug
   4755   }) => Object(external_lodash_["get"])(image, ['media_details', 'sizes', slug, 'source_url'])), ({
   4756     name,
   4757     slug
   4758   }) => ({
   4759     value: slug,
   4760     label: name
   4761   })); // Check if the cover block is registered.
   4762 
   4763   const coverBlockExists = !!Object(external_wp_blocks_["getBlockType"])('core/cover'); // If an image is externally hosted, try to fetch the image data. This may
   4764   // fail if the image host doesn't allow CORS with the domain. If it works,
   4765   // we can enable a button in the toolbar to upload the image.
   4766 
   4767   Object(external_wp_element_["useEffect"])(() => {
   4768     if (!isExternalImage(id, url) || !isSelected || externalBlob) {
   4769       return;
   4770     }
   4771 
   4772     window.fetch(url).then(response => response.blob()).then(blob => setExternalBlob(blob));
   4773   }, [id, url, isSelected, externalBlob]); // Focus the caption after inserting an image from the placeholder. This is
   4774   // done to preserve the behaviour of focussing the first tabbable element
   4775   // when a block is mounted. Previously, the image block would remount when
   4776   // the placeholder is removed. Maybe this behaviour could be removed.
   4777 
   4778   Object(external_wp_element_["useEffect"])(() => {
   4779     if (url && !prevUrl && isSelected) {
   4780       captionRef.current.focus();
   4781     }
   4782   }, [url, prevUrl]);
   4783 
   4784   function onResizeStart() {
   4785     toggleSelection(false);
   4786   }
   4787 
   4788   function onResizeStop() {
   4789     toggleSelection(true);
   4790   }
   4791 
   4792   function onImageError() {
   4793     // Check if there's an embed block that handles this URL.
   4794     const embedBlock = createUpgradedEmbedBlock({
   4795       attributes: {
   4796         url
   4797       }
   4798     });
   4799 
   4800     if (undefined !== embedBlock) {
   4801       onReplace(embedBlock);
   4802     }
   4803   }
   4804 
   4805   function onSetHref(props) {
   4806     setAttributes(props);
   4807   }
   4808 
   4809   function onSetTitle(value) {
   4810     // This is the HTML title attribute, separate from the media object
   4811     // title.
   4812     setAttributes({
   4813       title: value
   4814     });
   4815   }
   4816 
   4817   function updateAlt(newAlt) {
   4818     setAttributes({
   4819       alt: newAlt
   4820     });
   4821   }
   4822 
   4823   function updateImage(newSizeSlug) {
   4824     const newUrl = Object(external_lodash_["get"])(image, ['media_details', 'sizes', newSizeSlug, 'source_url']);
   4825 
   4826     if (!newUrl) {
   4827       return null;
   4828     }
   4829 
   4830     setAttributes({
   4831       url: newUrl,
   4832       width: undefined,
   4833       height: undefined,
   4834       sizeSlug: newSizeSlug
   4835     });
   4836   }
   4837 
   4838   function uploadExternal() {
   4839     mediaUpload({
   4840       filesList: [externalBlob],
   4841 
   4842       onFileChange([img]) {
   4843         onSelectImage(img);
   4844 
   4845         if (Object(external_wp_blob_["isBlobURL"])(img.url)) {
   4846           return;
   4847         }
   4848 
   4849         setExternalBlob();
   4850         createSuccessNotice(Object(external_wp_i18n_["__"])('Image uploaded.'), {
   4851           type: 'snackbar'
   4852         });
   4853       },
   4854 
   4855       allowedTypes: ALLOWED_MEDIA_TYPES,
   4856 
   4857       onError(message) {
   4858         createErrorNotice(message, {
   4859           type: 'snackbar'
   4860         });
   4861       }
   4862 
   4863     });
   4864   }
   4865 
   4866   function updateAlignment(nextAlign) {
   4867     const extraUpdatedAttributes = ['wide', 'full'].includes(nextAlign) ? {
   4868       width: undefined,
   4869       height: undefined
   4870     } : {};
   4871     setAttributes({ ...extraUpdatedAttributes,
   4872       align: nextAlign
   4873     });
   4874   }
   4875 
   4876   Object(external_wp_element_["useEffect"])(() => {
   4877     if (!isSelected) {
   4878       setIsEditingImage(false);
   4879     }
   4880   }, [isSelected]);
   4881   const canEditImage = id && naturalWidth && naturalHeight && imageEditing;
   4882   const allowCrop = !multiImageSelection && canEditImage && !isEditingImage;
   4883 
   4884   function switchToCover() {
   4885     replaceBlocks(clientId, Object(external_wp_blocks_["switchToBlockType"])(getBlock(clientId), 'core/cover'));
   4886   }
   4887 
   4888   const controls = Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
   4889     group: "block"
   4890   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockAlignmentControl"], {
   4891     value: align,
   4892     onChange: updateAlignment
   4893   }), !multiImageSelection && !isEditingImage && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalImageURLInputUI"], {
   4894     url: href || '',
   4895     onChangeUrl: onSetHref,
   4896     linkDestination: linkDestination,
   4897     mediaUrl: image && image.source_url || url,
   4898     mediaLink: image && image.link,
   4899     linkTarget: linkTarget,
   4900     linkClass: linkClass,
   4901     rel: rel
   4902   }), allowCrop && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   4903     onClick: () => setIsEditingImage(true),
   4904     icon: library_crop,
   4905     label: Object(external_wp_i18n_["__"])('Crop')
   4906   }), externalBlob && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   4907     onClick: uploadExternal,
   4908     icon: upload["a" /* default */],
   4909     label: Object(external_wp_i18n_["__"])('Upload external image')
   4910   }), !multiImageSelection && coverBlockExists && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   4911     icon: overlay_text,
   4912     label: Object(external_wp_i18n_["__"])('Add text over image'),
   4913     onClick: switchToCover
   4914   })), !multiImageSelection && !isEditingImage && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
   4915     group: "other"
   4916   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
   4917     mediaId: id,
   4918     mediaURL: url,
   4919     allowedTypes: ALLOWED_MEDIA_TYPES,
   4920     accept: "image/*",
   4921     onSelect: onSelectImage,
   4922     onSelectURL: onSelectURL,
   4923     onError: onUploadError
   4924   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
   4925     title: Object(external_wp_i18n_["__"])('Image settings')
   4926   }, !multiImageSelection && Object(external_wp_element_["createElement"])(external_wp_components_["TextareaControl"], {
   4927     label: Object(external_wp_i18n_["__"])('Alt text (alternative text)'),
   4928     value: alt,
   4929     onChange: updateAlt,
   4930     help: Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ExternalLink"], {
   4931       href: "https://www.w3.org/WAI/tutorials/images/decision-tree"
   4932     }, Object(external_wp_i18n_["__"])('Describe the purpose of the image')), Object(external_wp_i18n_["__"])('Leave empty if the image is purely decorative.'))
   4933   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalImageSizeControl"], {
   4934     onChangeImage: updateImage,
   4935     onChange: value => setAttributes(value),
   4936     slug: sizeSlug,
   4937     width: width,
   4938     height: height,
   4939     imageSizeOptions: imageSizeOptions,
   4940     isResizable: isResizable,
   4941     imageWidth: naturalWidth,
   4942     imageHeight: naturalHeight
   4943   }))), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorAdvancedControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
   4944     label: Object(external_wp_i18n_["__"])('Title attribute'),
   4945     value: title || '',
   4946     onChange: onSetTitle,
   4947     help: Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_i18n_["__"])('Describe the role of this image on the page.'), Object(external_wp_element_["createElement"])(external_wp_components_["ExternalLink"], {
   4948       href: "https://www.w3.org/TR/html52/dom.html#the-title-attribute"
   4949     }, Object(external_wp_i18n_["__"])('(Note: many devices and browsers do not display this text.)')))
   4950   })));
   4951   const filename = getFilename(url);
   4952   let defaultedAlt;
   4953 
   4954   if (alt) {
   4955     defaultedAlt = alt;
   4956   } else if (filename) {
   4957     defaultedAlt = Object(external_wp_i18n_["sprintf"])(
   4958     /* translators: %s: file name */
   4959     Object(external_wp_i18n_["__"])('This image has an empty alt attribute; its file name is %s'), filename);
   4960   } else {
   4961     defaultedAlt = Object(external_wp_i18n_["__"])('This image has an empty alt attribute');
   4962   }
   4963 
   4964   let img = // Disable reason: Image itself is not meant to be interactive, but
   4965   // should direct focus to block.
   4966 
   4967   /* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */
   4968   Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])("img", {
   4969     src: temporaryURL || url,
   4970     alt: defaultedAlt,
   4971     onError: () => onImageError(),
   4972     onLoad: event => {
   4973       setNaturalSize(Object(external_lodash_["pick"])(event.target, ['naturalWidth', 'naturalHeight']));
   4974     }
   4975   }), temporaryURL && Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null))
   4976   /* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */
   4977   ;
   4978   let imageWidthWithinContainer;
   4979   let imageHeightWithinContainer;
   4980 
   4981   if (clientWidth && naturalWidth && naturalHeight) {
   4982     const exceedMaxWidth = naturalWidth > clientWidth;
   4983     const ratio = naturalHeight / naturalWidth;
   4984     imageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;
   4985     imageHeightWithinContainer = exceedMaxWidth ? clientWidth * ratio : naturalHeight;
   4986   }
   4987 
   4988   if (canEditImage && isEditingImage) {
   4989     img = Object(external_wp_element_["createElement"])(ImageEditor, {
   4990       url: url,
   4991       width: width,
   4992       height: height,
   4993       clientWidth: clientWidth,
   4994       naturalHeight: naturalHeight,
   4995       naturalWidth: naturalWidth
   4996     });
   4997   } else if (!isResizable || !imageWidthWithinContainer) {
   4998     img = Object(external_wp_element_["createElement"])("div", {
   4999       style: {
   5000         width,
   5001         height
   5002       }
   5003     }, img);
   5004   } else {
   5005     const currentWidth = width || imageWidthWithinContainer;
   5006     const currentHeight = height || imageHeightWithinContainer;
   5007     const ratio = naturalWidth / naturalHeight;
   5008     const minWidth = naturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;
   5009     const minHeight = naturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio; // With the current implementation of ResizableBox, an image needs an
   5010     // explicit pixel value for the max-width. In absence of being able to
   5011     // set the content-width, this max-width is currently dictated by the
   5012     // vanilla editor style. The following variable adds a buffer to this
   5013     // vanilla style, so 3rd party themes have some wiggleroom. This does,
   5014     // in most cases, allow you to scale the image beyond the width of the
   5015     // main column, though not infinitely.
   5016     // @todo It would be good to revisit this once a content-width variable
   5017     // becomes available.
   5018 
   5019     const maxWidthBuffer = maxWidth * 2.5;
   5020     let showRightHandle = false;
   5021     let showLeftHandle = false;
   5022     /* eslint-disable no-lonely-if */
   5023     // See https://github.com/WordPress/gutenberg/issues/7584.
   5024 
   5025     if (align === 'center') {
   5026       // When the image is centered, show both handles.
   5027       showRightHandle = true;
   5028       showLeftHandle = true;
   5029     } else if (Object(external_wp_i18n_["isRTL"])()) {
   5030       // In RTL mode the image is on the right by default.
   5031       // Show the right handle and hide the left handle only when it is
   5032       // aligned left. Otherwise always show the left handle.
   5033       if (align === 'left') {
   5034         showRightHandle = true;
   5035       } else {
   5036         showLeftHandle = true;
   5037       }
   5038     } else {
   5039       // Show the left handle and hide the right handle only when the
   5040       // image is aligned right. Otherwise always show the right handle.
   5041       if (align === 'right') {
   5042         showLeftHandle = true;
   5043       } else {
   5044         showRightHandle = true;
   5045       }
   5046     }
   5047     /* eslint-enable no-lonely-if */
   5048 
   5049 
   5050     img = Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], {
   5051       size: {
   5052         width: width !== null && width !== void 0 ? width : 'auto',
   5053         height: height !== null && height !== void 0 ? height : 'auto'
   5054       },
   5055       showHandle: isSelected,
   5056       minWidth: minWidth,
   5057       maxWidth: maxWidthBuffer,
   5058       minHeight: minHeight,
   5059       maxHeight: maxWidthBuffer / ratio,
   5060       lockAspectRatio: true,
   5061       enable: {
   5062         top: false,
   5063         right: showRightHandle,
   5064         bottom: true,
   5065         left: showLeftHandle
   5066       },
   5067       onResizeStart: onResizeStart,
   5068       onResizeStop: (event, direction, elt, delta) => {
   5069         onResizeStop();
   5070         setAttributes({
   5071           width: parseInt(currentWidth + delta.width, 10),
   5072           height: parseInt(currentHeight + delta.height, 10)
   5073         });
   5074       }
   5075     }, img);
   5076   }
   5077 
   5078   return Object(external_wp_element_["createElement"])(ImageEditingProvider, {
   5079     id: id,
   5080     url: url,
   5081     naturalWidth: naturalWidth,
   5082     naturalHeight: naturalHeight,
   5083     clientWidth: clientWidth,
   5084     onSaveImage: imageAttributes => setAttributes(imageAttributes),
   5085     isEditing: isEditingImage,
   5086     onFinishEditing: () => setIsEditingImage(false)
   5087   }, !temporaryURL && controls, img, (!external_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
   5088     ref: captionRef,
   5089     tagName: "figcaption",
   5090     "aria-label": Object(external_wp_i18n_["__"])('Image caption text'),
   5091     placeholder: Object(external_wp_i18n_["__"])('Add caption'),
   5092     value: caption,
   5093     onChange: value => setAttributes({
   5094       caption: value
   5095     }),
   5096     inlineToolbar: true,
   5097     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
   5098   }));
   5099 }
   5100 
   5101 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/edit.js
   5102 
   5103 
   5104 /**
   5105  * External dependencies
   5106  */
   5107 
   5108 
   5109 /**
   5110  * WordPress dependencies
   5111  */
   5112 
   5113 
   5114 
   5115 
   5116 
   5117 
   5118 
   5119 
   5120 /* global wp */
   5121 
   5122 /**
   5123  * Internal dependencies
   5124  */
   5125 
   5126 
   5127 /**
   5128  * Module constants
   5129  */
   5130 
   5131 
   5132 const pickRelevantMediaFiles = (image, size) => {
   5133   const imageProps = Object(external_lodash_["pick"])(image, ['alt', 'id', 'link', 'caption']);
   5134   imageProps.url = Object(external_lodash_["get"])(image, ['sizes', size, 'url']) || Object(external_lodash_["get"])(image, ['media_details', 'sizes', size, 'source_url']) || image.url;
   5135   return imageProps;
   5136 };
   5137 /**
   5138  * Is the URL a temporary blob URL? A blob URL is one that is used temporarily
   5139  * while the image is being uploaded and will not have an id yet allocated.
   5140  *
   5141  * @param {number=} id The id of the image.
   5142  * @param {string=} url The url of the image.
   5143  *
   5144  * @return {boolean} Is the URL a Blob URL
   5145  */
   5146 
   5147 const isTemporaryImage = (id, url) => !id && Object(external_wp_blob_["isBlobURL"])(url);
   5148 /**
   5149  * Is the url for the image hosted externally. An externally hosted image has no
   5150  * id and is not a blob url.
   5151  *
   5152  * @param {number=} id  The id of the image.
   5153  * @param {string=} url The url of the image.
   5154  *
   5155  * @return {boolean} Is the url an externally hosted url?
   5156  */
   5157 
   5158 
   5159 const isExternalImage = (id, url) => url && !id && !Object(external_wp_blob_["isBlobURL"])(url);
   5160 /**
   5161  * Checks if WP generated default image size. Size generation is skipped
   5162  * when the image is smaller than the said size.
   5163  *
   5164  * @param {Object} image
   5165  * @param {string} defaultSize
   5166  *
   5167  * @return {boolean} Whether or not it has default image size.
   5168  */
   5169 
   5170 function hasDefaultSize(image, defaultSize) {
   5171   return Object(external_lodash_["has"])(image, ['sizes', defaultSize, 'url']) || Object(external_lodash_["has"])(image, ['media_details', 'sizes', defaultSize, 'source_url']);
   5172 }
   5173 
   5174 function ImageEdit({
   5175   attributes,
   5176   setAttributes,
   5177   isSelected,
   5178   className,
   5179   noticeUI,
   5180   insertBlocksAfter,
   5181   noticeOperations,
   5182   onReplace,
   5183   clientId
   5184 }) {
   5185   const {
   5186     url = '',
   5187     alt,
   5188     caption,
   5189     align,
   5190     id,
   5191     width,
   5192     height,
   5193     sizeSlug
   5194   } = attributes;
   5195   const [temporaryURL, setTemporaryURL] = Object(external_wp_element_["useState"])();
   5196   const altRef = Object(external_wp_element_["useRef"])();
   5197   Object(external_wp_element_["useEffect"])(() => {
   5198     altRef.current = alt;
   5199   }, [alt]);
   5200   const captionRef = Object(external_wp_element_["useRef"])();
   5201   Object(external_wp_element_["useEffect"])(() => {
   5202     captionRef.current = caption;
   5203   }, [caption]);
   5204   const ref = Object(external_wp_element_["useRef"])();
   5205   const {
   5206     imageDefaultSize,
   5207     mediaUpload
   5208   } = Object(external_wp_data_["useSelect"])(select => {
   5209     const {
   5210       getSettings
   5211     } = select(external_wp_blockEditor_["store"]);
   5212     return Object(external_lodash_["pick"])(getSettings(), ['imageDefaultSize', 'mediaUpload']);
   5213   }, []);
   5214 
   5215   function onUploadError(message) {
   5216     noticeOperations.removeAllNotices();
   5217     noticeOperations.createErrorNotice(message);
   5218   }
   5219 
   5220   function onSelectImage(media) {
   5221     var _wp, _wp$media, _wp$media$view, _wp$media$view$settin, _wp$media$view$settin2;
   5222 
   5223     if (!media || !media.url) {
   5224       setAttributes({
   5225         url: undefined,
   5226         alt: undefined,
   5227         id: undefined,
   5228         title: undefined,
   5229         caption: undefined
   5230       });
   5231       return;
   5232     }
   5233 
   5234     if (Object(external_wp_blob_["isBlobURL"])(media.url)) {
   5235       setTemporaryURL(media.url);
   5236       return;
   5237     }
   5238 
   5239     setTemporaryURL();
   5240     let mediaAttributes = pickRelevantMediaFiles(media, imageDefaultSize); // If a caption text was meanwhile written by the user,
   5241     // make sure the text is not overwritten by empty captions.
   5242 
   5243     if (captionRef.current && !Object(external_lodash_["get"])(mediaAttributes, ['caption'])) {
   5244       mediaAttributes = Object(external_lodash_["omit"])(mediaAttributes, ['caption']);
   5245     }
   5246 
   5247     let additionalAttributes; // Reset the dimension attributes if changing to a different image.
   5248 
   5249     if (!media.id || media.id !== id) {
   5250       additionalAttributes = {
   5251         width: undefined,
   5252         height: undefined,
   5253         // Fallback to size "full" if there's no default image size.
   5254         // It means the image is smaller, and the block will use a full-size URL.
   5255         sizeSlug: hasDefaultSize(media, imageDefaultSize) ? imageDefaultSize : 'full'
   5256       };
   5257     } else {
   5258       // Keep the same url when selecting the same file, so "Image Size"
   5259       // option is not changed.
   5260       additionalAttributes = {
   5261         url
   5262       };
   5263     } // Check if default link setting should be used.
   5264 
   5265 
   5266     let linkDestination = attributes.linkDestination;
   5267 
   5268     if (!linkDestination) {
   5269       // Use the WordPress option to determine the proper default.
   5270       // The constants used in Gutenberg do not match WP options so a little more complicated than ideal.
   5271       // TODO: fix this in a follow up PR, requires updating media-text and ui component.
   5272       switch (((_wp = wp) === null || _wp === void 0 ? void 0 : (_wp$media = _wp.media) === null || _wp$media === void 0 ? void 0 : (_wp$media$view = _wp$media.view) === null || _wp$media$view === void 0 ? void 0 : (_wp$media$view$settin = _wp$media$view.settings) === null || _wp$media$view$settin === void 0 ? void 0 : (_wp$media$view$settin2 = _wp$media$view$settin.defaultProps) === null || _wp$media$view$settin2 === void 0 ? void 0 : _wp$media$view$settin2.link) || LINK_DESTINATION_NONE) {
   5273         case 'file':
   5274         case LINK_DESTINATION_MEDIA:
   5275           linkDestination = LINK_DESTINATION_MEDIA;
   5276           break;
   5277 
   5278         case 'post':
   5279         case LINK_DESTINATION_ATTACHMENT:
   5280           linkDestination = LINK_DESTINATION_ATTACHMENT;
   5281           break;
   5282 
   5283         case LINK_DESTINATION_CUSTOM:
   5284           linkDestination = LINK_DESTINATION_CUSTOM;
   5285           break;
   5286 
   5287         case LINK_DESTINATION_NONE:
   5288           linkDestination = LINK_DESTINATION_NONE;
   5289           break;
   5290       }
   5291     } // Check if the image is linked to it's media.
   5292 
   5293 
   5294     let href;
   5295 
   5296     switch (linkDestination) {
   5297       case LINK_DESTINATION_MEDIA:
   5298         href = media.url;
   5299         break;
   5300 
   5301       case LINK_DESTINATION_ATTACHMENT:
   5302         href = media.link;
   5303         break;
   5304     }
   5305 
   5306     mediaAttributes.href = href;
   5307     setAttributes({ ...mediaAttributes,
   5308       ...additionalAttributes,
   5309       linkDestination
   5310     });
   5311   }
   5312 
   5313   function onSelectURL(newURL) {
   5314     if (newURL !== url) {
   5315       setAttributes({
   5316         url: newURL,
   5317         id: undefined,
   5318         width: undefined,
   5319         height: undefined,
   5320         sizeSlug: imageDefaultSize
   5321       });
   5322     }
   5323   }
   5324 
   5325   function updateAlignment(nextAlign) {
   5326     const extraUpdatedAttributes = ['wide', 'full'].includes(nextAlign) ? {
   5327       width: undefined,
   5328       height: undefined
   5329     } : {};
   5330     setAttributes({ ...extraUpdatedAttributes,
   5331       align: nextAlign
   5332     });
   5333   }
   5334 
   5335   const isTemp = isTemporaryImage(id, url); // Upload a temporary image on mount.
   5336 
   5337   Object(external_wp_element_["useEffect"])(() => {
   5338     if (!isTemp) {
   5339       return;
   5340     }
   5341 
   5342     const file = Object(external_wp_blob_["getBlobByURL"])(url);
   5343 
   5344     if (file) {
   5345       mediaUpload({
   5346         filesList: [file],
   5347         onFileChange: ([img]) => {
   5348           onSelectImage(img);
   5349         },
   5350         allowedTypes: ALLOWED_MEDIA_TYPES,
   5351         onError: message => {
   5352           noticeOperations.createErrorNotice(message);
   5353           setAttributes({
   5354             src: undefined,
   5355             id: undefined,
   5356             url: undefined
   5357           });
   5358         }
   5359       });
   5360     }
   5361   }, []); // If an image is temporary, revoke the Blob url when it is uploaded (and is
   5362   // no longer temporary).
   5363 
   5364   Object(external_wp_element_["useEffect"])(() => {
   5365     if (!temporaryURL) {
   5366       return;
   5367     }
   5368 
   5369     return () => {
   5370       Object(external_wp_blob_["revokeBlobURL"])(temporaryURL);
   5371     };
   5372   }, [temporaryURL]);
   5373   const isExternal = isExternalImage(id, url);
   5374   const src = isExternal ? url : undefined;
   5375   const mediaPreview = !!url && Object(external_wp_element_["createElement"])("img", {
   5376     alt: Object(external_wp_i18n_["__"])('Edit image'),
   5377     title: Object(external_wp_i18n_["__"])('Edit image'),
   5378     className: 'edit-image-preview',
   5379     src: url
   5380   });
   5381   const classes = classnames_default()(className, {
   5382     'is-transient': temporaryURL,
   5383     'is-resized': !!width || !!height,
   5384     [`size-${sizeSlug}`]: sizeSlug
   5385   });
   5386   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
   5387     ref,
   5388     className: classes
   5389   });
   5390   return Object(external_wp_element_["createElement"])("figure", blockProps, (temporaryURL || url) && Object(external_wp_element_["createElement"])(Image, {
   5391     temporaryURL: temporaryURL,
   5392     attributes: attributes,
   5393     setAttributes: setAttributes,
   5394     isSelected: isSelected,
   5395     insertBlocksAfter: insertBlocksAfter,
   5396     onReplace: onReplace,
   5397     onSelectImage: onSelectImage,
   5398     onSelectURL: onSelectURL,
   5399     onUploadError: onUploadError,
   5400     containerRef: ref,
   5401     clientId: clientId
   5402   }), !url && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
   5403     group: "block"
   5404   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockAlignmentControl"], {
   5405     value: align,
   5406     onChange: updateAlignment
   5407   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
   5408     icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
   5409       icon: library_image
   5410     }),
   5411     onSelect: onSelectImage,
   5412     onSelectURL: onSelectURL,
   5413     notices: noticeUI,
   5414     onError: onUploadError,
   5415     accept: "image/*",
   5416     allowedTypes: ALLOWED_MEDIA_TYPES,
   5417     value: {
   5418       id,
   5419       src
   5420     },
   5421     mediaPreview: mediaPreview,
   5422     disableMediaButtons: temporaryURL || url
   5423   }));
   5424 }
   5425 /* harmony default export */ var image_edit = (Object(external_wp_components_["withNotices"])(ImageEdit));
   5426 
   5427 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/save.js
   5428 
   5429 
   5430 /**
   5431  * External dependencies
   5432  */
   5433 
   5434 
   5435 /**
   5436  * WordPress dependencies
   5437  */
   5438 
   5439 
   5440 function save_save({
   5441   attributes
   5442 }) {
   5443   const {
   5444     url,
   5445     alt,
   5446     caption,
   5447     align,
   5448     href,
   5449     rel,
   5450     linkClass,
   5451     width,
   5452     height,
   5453     id,
   5454     linkTarget,
   5455     sizeSlug,
   5456     title
   5457   } = attributes;
   5458   const newRel = Object(external_lodash_["isEmpty"])(rel) ? undefined : rel;
   5459   const classes = classnames_default()({
   5460     [`align${align}`]: align,
   5461     [`size-${sizeSlug}`]: sizeSlug,
   5462     'is-resized': width || height
   5463   });
   5464   const image = Object(external_wp_element_["createElement"])("img", {
   5465     src: url,
   5466     alt: alt,
   5467     className: id ? `wp-image-${id}` : null,
   5468     width: width,
   5469     height: height,
   5470     title: title
   5471   });
   5472   const figure = Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, href ? Object(external_wp_element_["createElement"])("a", {
   5473     className: linkClass,
   5474     href: href,
   5475     target: linkTarget,
   5476     rel: newRel
   5477   }, image) : image, !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   5478     tagName: "figcaption",
   5479     value: caption
   5480   }));
   5481 
   5482   if ('left' === align || 'right' === align || 'center' === align) {
   5483     return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])("figure", {
   5484       className: classes
   5485     }, figure));
   5486   }
   5487 
   5488   return Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save({
   5489     className: classes
   5490   }), figure);
   5491 }
   5492 
   5493 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/transforms.js
   5494 /**
   5495  * WordPress dependencies
   5496  */
   5497 
   5498 
   5499 function stripFirstImage(attributes, {
   5500   shortcode
   5501 }) {
   5502   const {
   5503     body
   5504   } = document.implementation.createHTMLDocument('');
   5505   body.innerHTML = shortcode.content;
   5506   let nodeToRemove = body.querySelector('img'); // if an image has parents, find the topmost node to remove
   5507 
   5508   while (nodeToRemove && nodeToRemove.parentNode && nodeToRemove.parentNode !== body) {
   5509     nodeToRemove = nodeToRemove.parentNode;
   5510   }
   5511 
   5512   if (nodeToRemove) {
   5513     nodeToRemove.parentNode.removeChild(nodeToRemove);
   5514   }
   5515 
   5516   return body.innerHTML.trim();
   5517 }
   5518 
   5519 function getFirstAnchorAttributeFormHTML(html, attributeName) {
   5520   const {
   5521     body
   5522   } = document.implementation.createHTMLDocument('');
   5523   body.innerHTML = html;
   5524   const {
   5525     firstElementChild
   5526   } = body;
   5527 
   5528   if (firstElementChild && firstElementChild.nodeName === 'A') {
   5529     return firstElementChild.getAttribute(attributeName) || undefined;
   5530   }
   5531 }
   5532 
   5533 const imageSchema = {
   5534   img: {
   5535     attributes: ['src', 'alt', 'title'],
   5536     classes: ['alignleft', 'aligncenter', 'alignright', 'alignnone', /^wp-image-\d+$/]
   5537   }
   5538 };
   5539 
   5540 const schema = ({
   5541   phrasingContentSchema
   5542 }) => ({
   5543   figure: {
   5544     require: ['img'],
   5545     children: { ...imageSchema,
   5546       a: {
   5547         attributes: ['href', 'rel', 'target'],
   5548         children: imageSchema
   5549       },
   5550       figcaption: {
   5551         children: phrasingContentSchema
   5552       }
   5553     }
   5554   }
   5555 });
   5556 
   5557 const transforms_transforms = {
   5558   from: [{
   5559     type: 'raw',
   5560     isMatch: node => node.nodeName === 'FIGURE' && !!node.querySelector('img'),
   5561     schema,
   5562     transform: node => {
   5563       // Search both figure and image classes. Alignment could be
   5564       // set on either. ID is set on the image.
   5565       const className = node.className + ' ' + node.querySelector('img').className;
   5566       const alignMatches = /(?:^|\s)align(left|center|right)(?:$|\s)/.exec(className);
   5567       const anchor = node.id === '' ? undefined : node.id;
   5568       const align = alignMatches ? alignMatches[1] : undefined;
   5569       const idMatches = /(?:^|\s)wp-image-(\d+)(?:$|\s)/.exec(className);
   5570       const id = idMatches ? Number(idMatches[1]) : undefined;
   5571       const anchorElement = node.querySelector('a');
   5572       const linkDestination = anchorElement && anchorElement.href ? 'custom' : undefined;
   5573       const href = anchorElement && anchorElement.href ? anchorElement.href : undefined;
   5574       const rel = anchorElement && anchorElement.rel ? anchorElement.rel : undefined;
   5575       const linkClass = anchorElement && anchorElement.className ? anchorElement.className : undefined;
   5576       const attributes = Object(external_wp_blocks_["getBlockAttributes"])('core/image', node.outerHTML, {
   5577         align,
   5578         id,
   5579         linkDestination,
   5580         href,
   5581         rel,
   5582         linkClass,
   5583         anchor
   5584       });
   5585       return Object(external_wp_blocks_["createBlock"])('core/image', attributes);
   5586     }
   5587   }, {
   5588     type: 'files',
   5589 
   5590     isMatch(files) {
   5591       return files.length === 1 && files[0].type.indexOf('image/') === 0;
   5592     },
   5593 
   5594     transform(files) {
   5595       const file = files[0]; // We don't need to upload the media directly here
   5596       // It's already done as part of the `componentDidMount`
   5597       // int the image block
   5598 
   5599       return Object(external_wp_blocks_["createBlock"])('core/image', {
   5600         url: Object(external_wp_blob_["createBlobURL"])(file)
   5601       });
   5602     }
   5603 
   5604   }, {
   5605     type: 'shortcode',
   5606     tag: 'caption',
   5607     attributes: {
   5608       url: {
   5609         type: 'string',
   5610         source: 'attribute',
   5611         attribute: 'src',
   5612         selector: 'img'
   5613       },
   5614       alt: {
   5615         type: 'string',
   5616         source: 'attribute',
   5617         attribute: 'alt',
   5618         selector: 'img'
   5619       },
   5620       caption: {
   5621         shortcode: stripFirstImage
   5622       },
   5623       href: {
   5624         shortcode: (attributes, {
   5625           shortcode
   5626         }) => {
   5627           return getFirstAnchorAttributeFormHTML(shortcode.content, 'href');
   5628         }
   5629       },
   5630       rel: {
   5631         shortcode: (attributes, {
   5632           shortcode
   5633         }) => {
   5634           return getFirstAnchorAttributeFormHTML(shortcode.content, 'rel');
   5635         }
   5636       },
   5637       linkClass: {
   5638         shortcode: (attributes, {
   5639           shortcode
   5640         }) => {
   5641           return getFirstAnchorAttributeFormHTML(shortcode.content, 'class');
   5642         }
   5643       },
   5644       id: {
   5645         type: 'number',
   5646         shortcode: ({
   5647           named: {
   5648             id
   5649           }
   5650         }) => {
   5651           if (!id) {
   5652             return;
   5653           }
   5654 
   5655           return parseInt(id.replace('attachment_', ''), 10);
   5656         }
   5657       },
   5658       align: {
   5659         type: 'string',
   5660         shortcode: ({
   5661           named: {
   5662             align = 'alignnone'
   5663           }
   5664         }) => {
   5665           return align.replace('align', '');
   5666         }
   5667       }
   5668     }
   5669   }]
   5670 };
   5671 /* harmony default export */ var image_transforms = (transforms_transforms);
   5672 
   5673 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/image/index.js
   5674 /**
   5675  * WordPress dependencies
   5676  */
   5677 
   5678 
   5679 /**
   5680  * Internal dependencies
   5681  */
   5682 
   5683 
   5684 
   5685 const image_metadata = {
   5686   apiVersion: 2,
   5687   name: "core/image",
   5688   title: "Image",
   5689   category: "media",
   5690   description: "Insert an image to make a visual statement.",
   5691   keywords: ["img", "photo", "picture"],
   5692   textdomain: "default",
   5693   attributes: {
   5694     align: {
   5695       type: "string"
   5696     },
   5697     url: {
   5698       type: "string",
   5699       source: "attribute",
   5700       selector: "img",
   5701       attribute: "src"
   5702     },
   5703     alt: {
   5704       type: "string",
   5705       source: "attribute",
   5706       selector: "img",
   5707       attribute: "alt",
   5708       "default": ""
   5709     },
   5710     caption: {
   5711       type: "string",
   5712       source: "html",
   5713       selector: "figcaption"
   5714     },
   5715     title: {
   5716       type: "string",
   5717       source: "attribute",
   5718       selector: "img",
   5719       attribute: "title"
   5720     },
   5721     href: {
   5722       type: "string",
   5723       source: "attribute",
   5724       selector: "figure > a",
   5725       attribute: "href"
   5726     },
   5727     rel: {
   5728       type: "string",
   5729       source: "attribute",
   5730       selector: "figure > a",
   5731       attribute: "rel"
   5732     },
   5733     linkClass: {
   5734       type: "string",
   5735       source: "attribute",
   5736       selector: "figure > a",
   5737       attribute: "class"
   5738     },
   5739     id: {
   5740       type: "number"
   5741     },
   5742     width: {
   5743       type: "number"
   5744     },
   5745     height: {
   5746       type: "number"
   5747     },
   5748     sizeSlug: {
   5749       type: "string"
   5750     },
   5751     linkDestination: {
   5752       type: "string"
   5753     },
   5754     linkTarget: {
   5755       type: "string",
   5756       source: "attribute",
   5757       selector: "figure > a",
   5758       attribute: "target"
   5759     }
   5760   },
   5761   supports: {
   5762     anchor: true,
   5763     color: {
   5764       __experimentalDuotone: "img",
   5765       text: false,
   5766       background: false
   5767     },
   5768     __experimentalBorder: {
   5769       radius: true
   5770     }
   5771   },
   5772   styles: [{
   5773     name: "default",
   5774     label: "Default",
   5775     isDefault: true
   5776   }, {
   5777     name: "rounded",
   5778     label: "Rounded"
   5779   }],
   5780   editorStyle: "wp-block-image-editor",
   5781   style: "wp-block-image"
   5782 };
   5783 
   5784 
   5785 const {
   5786   name: image_name
   5787 } = image_metadata;
   5788 
   5789 const image_settings = {
   5790   icon: library_image,
   5791   example: {
   5792     attributes: {
   5793       sizeSlug: 'large',
   5794       url: 'https://s.w.org/images/core/5.3/MtBlanc1.jpg',
   5795       // translators: Caption accompanying an image of the Mont Blanc, which serves as an example for the Image block.
   5796       caption: Object(external_wp_i18n_["__"])('Mont Blanc appears—still, snowy, and serene.')
   5797     }
   5798   },
   5799 
   5800   __experimentalLabel(attributes, {
   5801     context
   5802   }) {
   5803     if (context === 'accessibility') {
   5804       const {
   5805         caption,
   5806         alt,
   5807         url
   5808       } = attributes;
   5809 
   5810       if (!url) {
   5811         return Object(external_wp_i18n_["__"])('Empty');
   5812       }
   5813 
   5814       if (!alt) {
   5815         return caption || '';
   5816       } // This is intended to be read by a screen reader.
   5817       // A period simply means a pause, no need to translate it.
   5818 
   5819 
   5820       return alt + (caption ? '. ' + caption : '');
   5821     }
   5822   },
   5823 
   5824   getEditWrapperProps(attributes) {
   5825     return {
   5826       'data-align': attributes.align
   5827     };
   5828   },
   5829 
   5830   transforms: image_transforms,
   5831   edit: image_edit,
   5832   save: save_save,
   5833   deprecated: image_deprecated
   5834 };
   5835 
   5836 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/heading.js
   5837 
   5838 
   5839 /**
   5840  * WordPress dependencies
   5841  */
   5842 
   5843 const heading = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   5844   xmlns: "http://www.w3.org/2000/svg",
   5845   viewBox: "0 0 24 24"
   5846 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   5847   d: "M6.2 5.2v13.4l5.8-4.8 5.8 4.8V5.2z"
   5848 }));
   5849 /* harmony default export */ var library_heading = (heading);
   5850 
   5851 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/deprecated.js
   5852 
   5853 
   5854 /**
   5855  * External dependencies
   5856  */
   5857 
   5858 
   5859 /**
   5860  * WordPress dependencies
   5861  */
   5862 
   5863 
   5864 const blockSupports = {
   5865   className: false,
   5866   anchor: true
   5867 };
   5868 const heading_deprecated_blockAttributes = {
   5869   align: {
   5870     type: 'string'
   5871   },
   5872   content: {
   5873     type: 'string',
   5874     source: 'html',
   5875     selector: 'h1,h2,h3,h4,h5,h6',
   5876     default: ''
   5877   },
   5878   level: {
   5879     type: 'number',
   5880     default: 2
   5881   },
   5882   placeholder: {
   5883     type: 'string'
   5884   }
   5885 };
   5886 
   5887 const migrateCustomColors = attributes => {
   5888   if (!attributes.customTextColor) {
   5889     return attributes;
   5890   }
   5891 
   5892   const style = {
   5893     color: {
   5894       text: attributes.customTextColor
   5895     }
   5896   };
   5897   return { ...Object(external_lodash_["omit"])(attributes, ['customTextColor']),
   5898     style
   5899   };
   5900 };
   5901 
   5902 const TEXT_ALIGN_OPTIONS = ['left', 'right', 'center'];
   5903 
   5904 const migrateTextAlign = attributes => {
   5905   const {
   5906     align,
   5907     ...rest
   5908   } = attributes;
   5909   return TEXT_ALIGN_OPTIONS.includes(align) ? { ...rest,
   5910     textAlign: align
   5911   } : attributes;
   5912 };
   5913 
   5914 const heading_deprecated_deprecated = [{
   5915   supports: {
   5916     align: ['wide', 'full'],
   5917     anchor: true,
   5918     className: false,
   5919     color: {
   5920       link: true
   5921     },
   5922     fontSize: true,
   5923     lineHeight: true,
   5924     __experimentalSelector: {
   5925       'core/heading/h1': 'h1',
   5926       'core/heading/h2': 'h2',
   5927       'core/heading/h3': 'h3',
   5928       'core/heading/h4': 'h4',
   5929       'core/heading/h5': 'h5',
   5930       'core/heading/h6': 'h6'
   5931     },
   5932     __unstablePasteTextInline: true
   5933   },
   5934   attributes: heading_deprecated_blockAttributes,
   5935   isEligible: ({
   5936     align
   5937   }) => TEXT_ALIGN_OPTIONS.includes(align),
   5938   migrate: migrateTextAlign,
   5939 
   5940   save({
   5941     attributes
   5942   }) {
   5943     const {
   5944       align,
   5945       content,
   5946       level
   5947     } = attributes;
   5948     const TagName = 'h' + level;
   5949     const className = classnames_default()({
   5950       [`has-text-align-${align}`]: align
   5951     });
   5952     return Object(external_wp_element_["createElement"])(TagName, external_wp_blockEditor_["useBlockProps"].save({
   5953       className
   5954     }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   5955       value: content
   5956     }));
   5957   }
   5958 
   5959 }, {
   5960   supports: blockSupports,
   5961   attributes: { ...heading_deprecated_blockAttributes,
   5962     customTextColor: {
   5963       type: 'string'
   5964     },
   5965     textColor: {
   5966       type: 'string'
   5967     }
   5968   },
   5969   migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
   5970 
   5971   save({
   5972     attributes
   5973   }) {
   5974     const {
   5975       align,
   5976       content,
   5977       customTextColor,
   5978       level,
   5979       textColor
   5980     } = attributes;
   5981     const tagName = 'h' + level;
   5982     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
   5983     const className = classnames_default()({
   5984       [textClass]: textClass,
   5985       'has-text-color': textColor || customTextColor,
   5986       [`has-text-align-${align}`]: align
   5987     });
   5988     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   5989       className: className ? className : undefined,
   5990       tagName: tagName,
   5991       style: {
   5992         color: textClass ? undefined : customTextColor
   5993       },
   5994       value: content
   5995     });
   5996   }
   5997 
   5998 }, {
   5999   attributes: { ...heading_deprecated_blockAttributes,
   6000     customTextColor: {
   6001       type: 'string'
   6002     },
   6003     textColor: {
   6004       type: 'string'
   6005     }
   6006   },
   6007   migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
   6008 
   6009   save({
   6010     attributes
   6011   }) {
   6012     const {
   6013       align,
   6014       content,
   6015       customTextColor,
   6016       level,
   6017       textColor
   6018     } = attributes;
   6019     const tagName = 'h' + level;
   6020     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
   6021     const className = classnames_default()({
   6022       [textClass]: textClass,
   6023       [`has-text-align-${align}`]: align
   6024     });
   6025     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6026       className: className ? className : undefined,
   6027       tagName: tagName,
   6028       style: {
   6029         color: textClass ? undefined : customTextColor
   6030       },
   6031       value: content
   6032     });
   6033   },
   6034 
   6035   supports: blockSupports
   6036 }, {
   6037   supports: blockSupports,
   6038   attributes: { ...heading_deprecated_blockAttributes,
   6039     customTextColor: {
   6040       type: 'string'
   6041     },
   6042     textColor: {
   6043       type: 'string'
   6044     }
   6045   },
   6046   migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
   6047 
   6048   save({
   6049     attributes
   6050   }) {
   6051     const {
   6052       align,
   6053       level,
   6054       content,
   6055       textColor,
   6056       customTextColor
   6057     } = attributes;
   6058     const tagName = 'h' + level;
   6059     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
   6060     const className = classnames_default()({
   6061       [textClass]: textClass
   6062     });
   6063     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6064       className: className ? className : undefined,
   6065       tagName: tagName,
   6066       style: {
   6067         textAlign: align,
   6068         color: textClass ? undefined : customTextColor
   6069       },
   6070       value: content
   6071     });
   6072   }
   6073 
   6074 }];
   6075 /* harmony default export */ var heading_deprecated = (heading_deprecated_deprecated);
   6076 
   6077 // EXTERNAL MODULE: external ["wp","keycodes"]
   6078 var external_wp_keycodes_ = __webpack_require__("RxS6");
   6079 
   6080 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/heading-level-icon.js
   6081 
   6082 
   6083 /**
   6084  * WordPress dependencies
   6085  */
   6086 
   6087 /** @typedef {import('@wordpress/element').WPComponent} WPComponent */
   6088 
   6089 /**
   6090  * HeadingLevelIcon props.
   6091  *
   6092  * @typedef WPHeadingLevelIconProps
   6093  *
   6094  * @property {number}   level     The heading level to show an icon for.
   6095  * @property {?boolean} isPressed Whether or not the icon should appear pressed; default: false.
   6096  */
   6097 
   6098 /**
   6099  * Heading level icon.
   6100  *
   6101  * @param {WPHeadingLevelIconProps} props Component props.
   6102  *
   6103  * @return {?WPComponent} The icon.
   6104  */
   6105 
   6106 function HeadingLevelIcon({
   6107   level,
   6108   isPressed = false
   6109 }) {
   6110   const levelToPath = {
   6111     1: 'M9 5h2v10H9v-4H5v4H3V5h2v4h4V5zm6.6 0c-.6.9-1.5 1.7-2.6 2v1h2v7h2V5h-1.4z',
   6112     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',
   6113     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',
   6114     4: 'M9 15H7v-4H3v4H1V5h2v4h4V5h2v10zm10-2h-1v2h-2v-2h-5v-2l4-6h3v6h1v2zm-3-2V7l-2.8 4H16z',
   6115     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',
   6116     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'
   6117   };
   6118 
   6119   if (!levelToPath.hasOwnProperty(level)) {
   6120     return null;
   6121   }
   6122 
   6123   return Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
   6124     width: "24",
   6125     height: "24",
   6126     viewBox: "0 0 20 20",
   6127     xmlns: "http://www.w3.org/2000/svg",
   6128     isPressed: isPressed
   6129   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
   6130     d: levelToPath[level]
   6131   }));
   6132 }
   6133 
   6134 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/heading-level-dropdown.js
   6135 
   6136 
   6137 /**
   6138  * WordPress dependencies
   6139  */
   6140 
   6141 
   6142 
   6143 /**
   6144  * Internal dependencies
   6145  */
   6146 
   6147 
   6148 const HEADING_LEVELS = [1, 2, 3, 4, 5, 6];
   6149 const heading_level_dropdown_POPOVER_PROPS = {
   6150   className: 'block-library-heading-level-dropdown',
   6151   isAlternate: true
   6152 };
   6153 /** @typedef {import('@wordpress/element').WPComponent} WPComponent */
   6154 
   6155 /**
   6156  * HeadingLevelDropdown props.
   6157  *
   6158  * @typedef WPHeadingLevelDropdownProps
   6159  *
   6160  * @property {number}                 selectedLevel The chosen heading level.
   6161  * @property {(newValue:number)=>any} onChange      Callback to run when
   6162  *                                                  toolbar value is changed.
   6163  */
   6164 
   6165 /**
   6166  * Dropdown for selecting a heading level (1 through 6).
   6167  *
   6168  * @param {WPHeadingLevelDropdownProps} props Component props.
   6169  *
   6170  * @return {WPComponent} The toolbar.
   6171  */
   6172 
   6173 function HeadingLevelDropdown({
   6174   selectedLevel,
   6175   onChange
   6176 }) {
   6177   return Object(external_wp_element_["createElement"])(external_wp_components_["Dropdown"], {
   6178     popoverProps: heading_level_dropdown_POPOVER_PROPS,
   6179     renderToggle: ({
   6180       onToggle,
   6181       isOpen
   6182     }) => {
   6183       const openOnArrowDown = event => {
   6184         if (!isOpen && event.keyCode === external_wp_keycodes_["DOWN"]) {
   6185           event.preventDefault();
   6186           event.stopPropagation();
   6187           onToggle();
   6188         }
   6189       };
   6190 
   6191       return Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
   6192         "aria-expanded": isOpen,
   6193         "aria-haspopup": "true",
   6194         icon: Object(external_wp_element_["createElement"])(HeadingLevelIcon, {
   6195           level: selectedLevel
   6196         }),
   6197         label: Object(external_wp_i18n_["__"])('Change heading level'),
   6198         onClick: onToggle,
   6199         onKeyDown: openOnArrowDown,
   6200         showTooltip: true
   6201       });
   6202     },
   6203     renderContent: () => Object(external_wp_element_["createElement"])(external_wp_components_["Toolbar"], {
   6204       className: "block-library-heading-level-toolbar",
   6205       label: Object(external_wp_i18n_["__"])('Change heading level')
   6206     }, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], {
   6207       isCollapsed: false,
   6208       controls: HEADING_LEVELS.map(targetLevel => {
   6209         const isActive = targetLevel === selectedLevel;
   6210         return {
   6211           icon: Object(external_wp_element_["createElement"])(HeadingLevelIcon, {
   6212             level: targetLevel,
   6213             isPressed: isActive
   6214           }),
   6215           title: Object(external_wp_i18n_["sprintf"])( // translators: %s: heading level e.g: "1", "2", "3"
   6216           Object(external_wp_i18n_["__"])('Heading %d'), targetLevel),
   6217           isActive,
   6218 
   6219           onClick() {
   6220             onChange(targetLevel);
   6221           }
   6222 
   6223         };
   6224       })
   6225     }))
   6226   });
   6227 }
   6228 
   6229 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/edit.js
   6230 
   6231 
   6232 
   6233 /**
   6234  * External dependencies
   6235  */
   6236 
   6237 /**
   6238  * WordPress dependencies
   6239  */
   6240 
   6241 
   6242 
   6243 
   6244 /**
   6245  * Internal dependencies
   6246  */
   6247 
   6248 
   6249 
   6250 function HeadingEdit({
   6251   attributes,
   6252   setAttributes,
   6253   mergeBlocks,
   6254   onReplace,
   6255   mergedStyle,
   6256   clientId
   6257 }) {
   6258   const {
   6259     textAlign,
   6260     content,
   6261     level,
   6262     placeholder
   6263   } = attributes;
   6264   const tagName = 'h' + level;
   6265   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
   6266     className: classnames_default()({
   6267       [`has-text-align-${textAlign}`]: textAlign
   6268     }),
   6269     style: mergedStyle
   6270   });
   6271   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
   6272     group: "block"
   6273   }, Object(external_wp_element_["createElement"])(HeadingLevelDropdown, {
   6274     selectedLevel: level,
   6275     onChange: newLevel => setAttributes({
   6276       level: newLevel
   6277     })
   6278   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
   6279     value: textAlign,
   6280     onChange: nextAlign => {
   6281       setAttributes({
   6282         textAlign: nextAlign
   6283       });
   6284     }
   6285   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], Object(esm_extends["a" /* default */])({
   6286     identifier: "content",
   6287     tagName: tagName,
   6288     value: content,
   6289     onChange: value => setAttributes({
   6290       content: value
   6291     }),
   6292     onMerge: mergeBlocks,
   6293     onSplit: (value, isOriginal) => {
   6294       let block;
   6295 
   6296       if (isOriginal || value) {
   6297         block = Object(external_wp_blocks_["createBlock"])('core/heading', { ...attributes,
   6298           content: value
   6299         });
   6300       } else {
   6301         block = Object(external_wp_blocks_["createBlock"])('core/paragraph');
   6302       }
   6303 
   6304       if (isOriginal) {
   6305         block.clientId = clientId;
   6306       }
   6307 
   6308       return block;
   6309     },
   6310     onReplace: onReplace,
   6311     onRemove: () => onReplace([]),
   6312     "aria-label": Object(external_wp_i18n_["__"])('Heading text'),
   6313     placeholder: placeholder || Object(external_wp_i18n_["__"])('Heading'),
   6314     textAlign: textAlign
   6315   }, blockProps)));
   6316 }
   6317 
   6318 /* harmony default export */ var heading_edit = (HeadingEdit);
   6319 
   6320 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/save.js
   6321 
   6322 
   6323 /**
   6324  * External dependencies
   6325  */
   6326 
   6327 /**
   6328  * WordPress dependencies
   6329  */
   6330 
   6331 
   6332 function heading_save_save({
   6333   attributes
   6334 }) {
   6335   const {
   6336     textAlign,
   6337     content,
   6338     level
   6339   } = attributes;
   6340   const TagName = 'h' + level;
   6341   const className = classnames_default()({
   6342     [`has-text-align-${textAlign}`]: textAlign
   6343   });
   6344   return Object(external_wp_element_["createElement"])(TagName, external_wp_blockEditor_["useBlockProps"].save({
   6345     className
   6346   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6347     value: content
   6348   }));
   6349 }
   6350 
   6351 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/shared.js
   6352 /**
   6353  * Given a node name string for a heading node, returns its numeric level.
   6354  *
   6355  * @param {string} nodeName Heading node name.
   6356  *
   6357  * @return {number} Heading level.
   6358  */
   6359 function getLevelFromHeadingNodeName(nodeName) {
   6360   return Number(nodeName.substr(1));
   6361 }
   6362 
   6363 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/transforms.js
   6364 /**
   6365  * WordPress dependencies
   6366  */
   6367 
   6368 /**
   6369  * Internal dependencies
   6370  */
   6371 
   6372 
   6373 const {
   6374   name: heading_transforms_name
   6375 } = {
   6376   apiVersion: 2,
   6377   name: "core/heading",
   6378   title: "Heading",
   6379   category: "text",
   6380   description: "Introduce new sections and organize content to help visitors (and search engines) understand the structure of your content.",
   6381   keywords: ["title", "subtitle"],
   6382   textdomain: "default",
   6383   attributes: {
   6384     textAlign: {
   6385       type: "string"
   6386     },
   6387     content: {
   6388       type: "string",
   6389       source: "html",
   6390       selector: "h1,h2,h3,h4,h5,h6",
   6391       "default": "",
   6392       __experimentalRole: "content"
   6393     },
   6394     level: {
   6395       type: "number",
   6396       "default": 2
   6397     },
   6398     placeholder: {
   6399       type: "string"
   6400     }
   6401   },
   6402   supports: {
   6403     align: ["wide", "full"],
   6404     anchor: true,
   6405     className: false,
   6406     color: {
   6407       link: true
   6408     },
   6409     typography: {
   6410       fontSize: true,
   6411       lineHeight: true,
   6412       __experimentalFontWeight: true
   6413     },
   6414     __experimentalSelector: "h1,h2,h3,h4,h5,h6",
   6415     __unstablePasteTextInline: true
   6416   },
   6417   editorStyle: "wp-block-heading-editor",
   6418   style: "wp-block-heading"
   6419 };
   6420 const heading_transforms_transforms = {
   6421   from: [{
   6422     type: 'block',
   6423     isMultiBlock: true,
   6424     blocks: ['core/paragraph'],
   6425     transform: attributes => attributes.map(({
   6426       content,
   6427       anchor
   6428     }) => Object(external_wp_blocks_["createBlock"])(heading_transforms_name, {
   6429       content,
   6430       anchor
   6431     }))
   6432   }, {
   6433     type: 'raw',
   6434     selector: 'h1,h2,h3,h4,h5,h6',
   6435     schema: ({
   6436       phrasingContentSchema,
   6437       isPaste
   6438     }) => {
   6439       const schema = {
   6440         children: phrasingContentSchema,
   6441         attributes: isPaste ? [] : ['style', 'id']
   6442       };
   6443       return {
   6444         h1: schema,
   6445         h2: schema,
   6446         h3: schema,
   6447         h4: schema,
   6448         h5: schema,
   6449         h6: schema
   6450       };
   6451     },
   6452 
   6453     transform(node) {
   6454       const attributes = Object(external_wp_blocks_["getBlockAttributes"])(heading_transforms_name, node.outerHTML);
   6455       const {
   6456         textAlign
   6457       } = node.style || {};
   6458       attributes.level = getLevelFromHeadingNodeName(node.nodeName);
   6459 
   6460       if (textAlign === 'left' || textAlign === 'center' || textAlign === 'right') {
   6461         attributes.align = textAlign;
   6462       }
   6463 
   6464       return Object(external_wp_blocks_["createBlock"])(heading_transforms_name, attributes);
   6465     }
   6466 
   6467   }, ...[1, 2, 3, 4, 5, 6].map(level => ({
   6468     type: 'prefix',
   6469     prefix: Array(level + 1).join('#'),
   6470 
   6471     transform(content) {
   6472       return Object(external_wp_blocks_["createBlock"])(heading_transforms_name, {
   6473         level,
   6474         content
   6475       });
   6476     }
   6477 
   6478   })), ...[1, 2, 3, 4, 5, 6].map(level => ({
   6479     type: 'enter',
   6480     regExp: new RegExp(`^/(h|H)${level}$`),
   6481 
   6482     transform(content) {
   6483       return Object(external_wp_blocks_["createBlock"])(heading_transforms_name, {
   6484         level,
   6485         content
   6486       });
   6487     }
   6488 
   6489   }))],
   6490   to: [{
   6491     type: 'block',
   6492     isMultiBlock: true,
   6493     blocks: ['core/paragraph'],
   6494     transform: attributes => attributes.map(({
   6495       content,
   6496       anchor
   6497     }) => Object(external_wp_blocks_["createBlock"])('core/paragraph', {
   6498       content,
   6499       anchor
   6500     }))
   6501   }]
   6502 };
   6503 /* harmony default export */ var heading_transforms = (heading_transforms_transforms);
   6504 
   6505 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/heading/index.js
   6506 /**
   6507  * External dependencies
   6508  */
   6509 
   6510 /**
   6511  * WordPress dependencies
   6512  */
   6513 
   6514 
   6515 
   6516 /**
   6517  * Internal dependencies
   6518  */
   6519 
   6520 
   6521 
   6522 const heading_metadata = {
   6523   apiVersion: 2,
   6524   name: "core/heading",
   6525   title: "Heading",
   6526   category: "text",
   6527   description: "Introduce new sections and organize content to help visitors (and search engines) understand the structure of your content.",
   6528   keywords: ["title", "subtitle"],
   6529   textdomain: "default",
   6530   attributes: {
   6531     textAlign: {
   6532       type: "string"
   6533     },
   6534     content: {
   6535       type: "string",
   6536       source: "html",
   6537       selector: "h1,h2,h3,h4,h5,h6",
   6538       "default": "",
   6539       __experimentalRole: "content"
   6540     },
   6541     level: {
   6542       type: "number",
   6543       "default": 2
   6544     },
   6545     placeholder: {
   6546       type: "string"
   6547     }
   6548   },
   6549   supports: {
   6550     align: ["wide", "full"],
   6551     anchor: true,
   6552     className: false,
   6553     color: {
   6554       link: true
   6555     },
   6556     typography: {
   6557       fontSize: true,
   6558       lineHeight: true,
   6559       __experimentalFontWeight: true
   6560     },
   6561     __experimentalSelector: "h1,h2,h3,h4,h5,h6",
   6562     __unstablePasteTextInline: true
   6563   },
   6564   editorStyle: "wp-block-heading-editor",
   6565   style: "wp-block-heading"
   6566 };
   6567 
   6568 
   6569 const {
   6570   name: heading_name
   6571 } = heading_metadata;
   6572 
   6573 const heading_settings = {
   6574   icon: library_heading,
   6575   example: {
   6576     attributes: {
   6577       content: Object(external_wp_i18n_["__"])('Code is Poetry'),
   6578       level: 2
   6579     }
   6580   },
   6581 
   6582   __experimentalLabel(attributes, {
   6583     context
   6584   }) {
   6585     if (context === 'accessibility') {
   6586       const {
   6587         content,
   6588         level
   6589       } = attributes;
   6590       return Object(external_lodash_["isEmpty"])(content) ? Object(external_wp_i18n_["sprintf"])(
   6591       /* translators: accessibility text. %s: heading level. */
   6592       Object(external_wp_i18n_["__"])('Level %s. Empty.'), level) : Object(external_wp_i18n_["sprintf"])(
   6593       /* translators: accessibility text. 1: heading level. 2: heading content. */
   6594       Object(external_wp_i18n_["__"])('Level %1$s. %2$s'), level, content);
   6595     }
   6596   },
   6597 
   6598   transforms: heading_transforms,
   6599   deprecated: heading_deprecated,
   6600 
   6601   merge(attributes, attributesToMerge) {
   6602     return {
   6603       content: (attributes.content || '') + (attributesToMerge.content || '')
   6604     };
   6605   },
   6606 
   6607   edit: heading_edit,
   6608   save: heading_save_save
   6609 };
   6610 
   6611 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/quote.js
   6612 
   6613 
   6614 /**
   6615  * WordPress dependencies
   6616  */
   6617 
   6618 const quote = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   6619   viewBox: "0 0 24 24",
   6620   xmlns: "http://www.w3.org/2000/svg"
   6621 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   6622   d: "M13 6v6h5.2v4c0 .8-.2 1.4-.5 1.7-.6.6-1.6.6-2.5.5h-.3v1.5h.5c1 0 2.3-.1 3.3-1 .6-.6 1-1.6 1-2.8V6H13zm-9 6h5.2v4c0 .8-.2 1.4-.5 1.7-.6.6-1.6.6-2.5.5h-.3v1.5h.5c1 0 2.3-.1 3.3-1 .6-.6 1-1.6 1-2.8V6H4v6z"
   6623 }));
   6624 /* harmony default export */ var library_quote = (quote);
   6625 
   6626 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/deprecated.js
   6627 
   6628 
   6629 /**
   6630  * External dependencies
   6631  */
   6632 
   6633 /**
   6634  * WordPress dependencies
   6635  */
   6636 
   6637 
   6638 const quote_deprecated_blockAttributes = {
   6639   value: {
   6640     type: 'string',
   6641     source: 'html',
   6642     selector: 'blockquote',
   6643     multiline: 'p',
   6644     default: ''
   6645   },
   6646   citation: {
   6647     type: 'string',
   6648     source: 'html',
   6649     selector: 'cite',
   6650     default: ''
   6651   },
   6652   align: {
   6653     type: 'string'
   6654   }
   6655 };
   6656 const quote_deprecated_deprecated = [{
   6657   attributes: quote_deprecated_blockAttributes,
   6658 
   6659   save({
   6660     attributes
   6661   }) {
   6662     const {
   6663       align,
   6664       value,
   6665       citation
   6666     } = attributes;
   6667     return Object(external_wp_element_["createElement"])("blockquote", {
   6668       style: {
   6669         textAlign: align ? align : null
   6670       }
   6671     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6672       multiline: true,
   6673       value: value
   6674     }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6675       tagName: "cite",
   6676       value: citation
   6677     }));
   6678   }
   6679 
   6680 }, {
   6681   attributes: { ...quote_deprecated_blockAttributes,
   6682     style: {
   6683       type: 'number',
   6684       default: 1
   6685     }
   6686   },
   6687 
   6688   migrate(attributes) {
   6689     if (attributes.style === 2) {
   6690       return { ...Object(external_lodash_["omit"])(attributes, ['style']),
   6691         className: attributes.className ? attributes.className + ' is-style-large' : 'is-style-large'
   6692       };
   6693     }
   6694 
   6695     return attributes;
   6696   },
   6697 
   6698   save({
   6699     attributes
   6700   }) {
   6701     const {
   6702       align,
   6703       value,
   6704       citation,
   6705       style
   6706     } = attributes;
   6707     return Object(external_wp_element_["createElement"])("blockquote", {
   6708       className: style === 2 ? 'is-large' : '',
   6709       style: {
   6710         textAlign: align ? align : null
   6711       }
   6712     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6713       multiline: true,
   6714       value: value
   6715     }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6716       tagName: "cite",
   6717       value: citation
   6718     }));
   6719   }
   6720 
   6721 }, {
   6722   attributes: { ...quote_deprecated_blockAttributes,
   6723     citation: {
   6724       type: 'string',
   6725       source: 'html',
   6726       selector: 'footer',
   6727       default: ''
   6728     },
   6729     style: {
   6730       type: 'number',
   6731       default: 1
   6732     }
   6733   },
   6734 
   6735   save({
   6736     attributes
   6737   }) {
   6738     const {
   6739       align,
   6740       value,
   6741       citation,
   6742       style
   6743     } = attributes;
   6744     return Object(external_wp_element_["createElement"])("blockquote", {
   6745       className: `blocks-quote-style-${style}`,
   6746       style: {
   6747         textAlign: align ? align : null
   6748       }
   6749     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6750       multiline: true,
   6751       value: value
   6752     }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6753       tagName: "footer",
   6754       value: citation
   6755     }));
   6756   }
   6757 
   6758 }];
   6759 /* harmony default export */ var quote_deprecated = (quote_deprecated_deprecated);
   6760 
   6761 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/edit.js
   6762 
   6763 
   6764 /**
   6765  * External dependencies
   6766  */
   6767 
   6768 /**
   6769  * WordPress dependencies
   6770  */
   6771 
   6772 
   6773 
   6774 
   6775 
   6776 
   6777 const isWebPlatform = external_wp_element_["Platform"].OS === 'web';
   6778 function QuoteEdit({
   6779   attributes,
   6780   setAttributes,
   6781   isSelected,
   6782   mergeBlocks,
   6783   onReplace,
   6784   className,
   6785   insertBlocksAfter,
   6786   mergedStyle
   6787 }) {
   6788   const {
   6789     align,
   6790     value,
   6791     citation
   6792   } = attributes;
   6793   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
   6794     className: classnames_default()(className, {
   6795       [`has-text-align-${align}`]: align
   6796     }),
   6797     style: mergedStyle
   6798   });
   6799   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
   6800     group: "block"
   6801   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
   6802     value: align,
   6803     onChange: nextAlign => {
   6804       setAttributes({
   6805         align: nextAlign
   6806       });
   6807     }
   6808   })), Object(external_wp_element_["createElement"])(external_wp_components_["BlockQuotation"], blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
   6809     identifier: "value",
   6810     multiline: true,
   6811     value: value,
   6812     onChange: nextValue => setAttributes({
   6813       value: nextValue
   6814     }),
   6815     onMerge: mergeBlocks,
   6816     onRemove: forward => {
   6817       const hasEmptyCitation = !citation || citation.length === 0;
   6818 
   6819       if (!forward && hasEmptyCitation) {
   6820         onReplace([]);
   6821       }
   6822     },
   6823     "aria-label": Object(external_wp_i18n_["__"])('Quote text'),
   6824     placeholder: // translators: placeholder text used for the quote
   6825     Object(external_wp_i18n_["__"])('Add quote'),
   6826     onReplace: onReplace,
   6827     onSplit: piece => Object(external_wp_blocks_["createBlock"])('core/quote', { ...attributes,
   6828       value: piece
   6829     }),
   6830     __unstableOnSplitMiddle: () => Object(external_wp_blocks_["createBlock"])('core/paragraph'),
   6831     textAlign: align
   6832   }), (!external_wp_blockEditor_["RichText"].isEmpty(citation) || isSelected) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
   6833     identifier: "citation",
   6834     tagName: isWebPlatform ? 'cite' : undefined,
   6835     style: {
   6836       display: 'block'
   6837     },
   6838     value: citation,
   6839     onChange: nextCitation => setAttributes({
   6840       citation: nextCitation
   6841     }),
   6842     __unstableMobileNoFocusOnMount: true,
   6843     "aria-label": Object(external_wp_i18n_["__"])('Quote citation text'),
   6844     placeholder: // translators: placeholder text used for the citation
   6845     Object(external_wp_i18n_["__"])('Add citation'),
   6846     className: "wp-block-quote__citation",
   6847     textAlign: align,
   6848     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
   6849   })));
   6850 }
   6851 
   6852 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/save.js
   6853 
   6854 
   6855 /**
   6856  * External dependencies
   6857  */
   6858 
   6859 /**
   6860  * WordPress dependencies
   6861  */
   6862 
   6863 
   6864 function quote_save_save({
   6865   attributes
   6866 }) {
   6867   const {
   6868     align,
   6869     value,
   6870     citation
   6871   } = attributes;
   6872   const className = classnames_default()({
   6873     [`has-text-align-${align}`]: align
   6874   });
   6875   return Object(external_wp_element_["createElement"])("blockquote", external_wp_blockEditor_["useBlockProps"].save({
   6876     className
   6877   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6878     multiline: true,
   6879     value: value
   6880   }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   6881     tagName: "cite",
   6882     value: citation
   6883   }));
   6884 }
   6885 
   6886 // EXTERNAL MODULE: external ["wp","richText"]
   6887 var external_wp_richText_ = __webpack_require__("qRz9");
   6888 
   6889 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/transforms.js
   6890 /**
   6891  * WordPress dependencies
   6892  */
   6893 
   6894 
   6895 const quote_transforms_transforms = {
   6896   from: [{
   6897     type: 'block',
   6898     isMultiBlock: true,
   6899     blocks: ['core/paragraph'],
   6900     transform: attributes => {
   6901       return Object(external_wp_blocks_["createBlock"])('core/quote', {
   6902         value: Object(external_wp_richText_["toHTMLString"])({
   6903           value: Object(external_wp_richText_["join"])(attributes.map(({
   6904             content
   6905           }) => Object(external_wp_richText_["create"])({
   6906             html: content
   6907           })), '\u2028'),
   6908           multilineTag: 'p'
   6909         }),
   6910         anchor: attributes.anchor
   6911       });
   6912     }
   6913   }, {
   6914     type: 'block',
   6915     blocks: ['core/heading'],
   6916     transform: ({
   6917       content,
   6918       anchor
   6919     }) => {
   6920       return Object(external_wp_blocks_["createBlock"])('core/quote', {
   6921         value: `<p>${content}</p>`,
   6922         anchor
   6923       });
   6924     }
   6925   }, {
   6926     type: 'block',
   6927     blocks: ['core/pullquote'],
   6928     transform: ({
   6929       value,
   6930       citation,
   6931       anchor
   6932     }) => Object(external_wp_blocks_["createBlock"])('core/quote', {
   6933       value,
   6934       citation,
   6935       anchor
   6936     })
   6937   }, {
   6938     type: 'prefix',
   6939     prefix: '>',
   6940     transform: content => {
   6941       return Object(external_wp_blocks_["createBlock"])('core/quote', {
   6942         value: `<p>${content}</p>`
   6943       });
   6944     }
   6945   }, {
   6946     type: 'raw',
   6947     isMatch: node => {
   6948       const isParagraphOrSingleCite = (() => {
   6949         let hasCitation = false;
   6950         return child => {
   6951           // Child is a paragraph.
   6952           if (child.nodeName === 'P') {
   6953             return true;
   6954           } // Child is a cite and no other cite child exists before it.
   6955 
   6956 
   6957           if (!hasCitation && child.nodeName === 'CITE') {
   6958             hasCitation = true;
   6959             return true;
   6960           }
   6961         };
   6962       })();
   6963 
   6964       return node.nodeName === 'BLOCKQUOTE' && // The quote block can only handle multiline paragraph
   6965       // content with an optional cite child.
   6966       Array.from(node.childNodes).every(isParagraphOrSingleCite);
   6967     },
   6968     schema: ({
   6969       phrasingContentSchema
   6970     }) => ({
   6971       blockquote: {
   6972         children: {
   6973           p: {
   6974             children: phrasingContentSchema
   6975           },
   6976           cite: {
   6977             children: phrasingContentSchema
   6978           }
   6979         }
   6980       }
   6981     })
   6982   }],
   6983   to: [{
   6984     type: 'block',
   6985     blocks: ['core/paragraph'],
   6986     transform: ({
   6987       value,
   6988       citation
   6989     }) => {
   6990       const paragraphs = [];
   6991 
   6992       if (value && value !== '<p></p>') {
   6993         paragraphs.push(...Object(external_wp_richText_["split"])(Object(external_wp_richText_["create"])({
   6994           html: value,
   6995           multilineTag: 'p'
   6996         }), '\u2028').map(piece => Object(external_wp_blocks_["createBlock"])('core/paragraph', {
   6997           content: Object(external_wp_richText_["toHTMLString"])({
   6998             value: piece
   6999           })
   7000         })));
   7001       }
   7002 
   7003       if (citation && citation !== '<p></p>') {
   7004         paragraphs.push(Object(external_wp_blocks_["createBlock"])('core/paragraph', {
   7005           content: citation
   7006         }));
   7007       }
   7008 
   7009       if (paragraphs.length === 0) {
   7010         return Object(external_wp_blocks_["createBlock"])('core/paragraph', {
   7011           content: ''
   7012         });
   7013       }
   7014 
   7015       return paragraphs;
   7016     }
   7017   }, {
   7018     type: 'block',
   7019     blocks: ['core/heading'],
   7020     transform: ({
   7021       value,
   7022       citation,
   7023       ...attrs
   7024     }) => {
   7025       // If there is no quote content, use the citation as the
   7026       // content of the resulting heading. A nonexistent citation
   7027       // will result in an empty heading.
   7028       if (value === '<p></p>') {
   7029         return Object(external_wp_blocks_["createBlock"])('core/heading', {
   7030           content: citation
   7031         });
   7032       }
   7033 
   7034       const pieces = Object(external_wp_richText_["split"])(Object(external_wp_richText_["create"])({
   7035         html: value,
   7036         multilineTag: 'p'
   7037       }), '\u2028');
   7038       const headingBlock = Object(external_wp_blocks_["createBlock"])('core/heading', {
   7039         content: Object(external_wp_richText_["toHTMLString"])({
   7040           value: pieces[0]
   7041         })
   7042       });
   7043 
   7044       if (!citation && pieces.length === 1) {
   7045         return headingBlock;
   7046       }
   7047 
   7048       const quotePieces = pieces.slice(1);
   7049       const quoteBlock = Object(external_wp_blocks_["createBlock"])('core/quote', { ...attrs,
   7050         citation,
   7051         value: Object(external_wp_richText_["toHTMLString"])({
   7052           value: quotePieces.length ? Object(external_wp_richText_["join"])(pieces.slice(1), '\u2028') : Object(external_wp_richText_["create"])(),
   7053           multilineTag: 'p'
   7054         })
   7055       });
   7056       return [headingBlock, quoteBlock];
   7057     }
   7058   }, {
   7059     type: 'block',
   7060     blocks: ['core/pullquote'],
   7061     transform: ({
   7062       value,
   7063       citation,
   7064       anchor
   7065     }) => {
   7066       return Object(external_wp_blocks_["createBlock"])('core/pullquote', {
   7067         value,
   7068         citation,
   7069         anchor
   7070       });
   7071     }
   7072   }]
   7073 };
   7074 /* harmony default export */ var quote_transforms = (quote_transforms_transforms);
   7075 
   7076 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/quote/index.js
   7077 /**
   7078  * WordPress dependencies
   7079  */
   7080 
   7081 
   7082 /**
   7083  * Internal dependencies
   7084  */
   7085 
   7086 
   7087 
   7088 const quote_metadata = {
   7089   apiVersion: 2,
   7090   name: "core/quote",
   7091   title: "Quote",
   7092   category: "text",
   7093   description: "Give quoted text visual emphasis. \"In quoting others, we cite ourselves.\" \u2014 Julio Cort\xE1zar",
   7094   keywords: ["blockquote", "cite"],
   7095   textdomain: "default",
   7096   attributes: {
   7097     value: {
   7098       type: "string",
   7099       source: "html",
   7100       selector: "blockquote",
   7101       multiline: "p",
   7102       "default": "",
   7103       __experimentalRole: "content"
   7104     },
   7105     citation: {
   7106       type: "string",
   7107       source: "html",
   7108       selector: "cite",
   7109       "default": "",
   7110       __experimentalRole: "content"
   7111     },
   7112     align: {
   7113       type: "string"
   7114     }
   7115   },
   7116   supports: {
   7117     anchor: true
   7118   },
   7119   styles: [{
   7120     name: "default",
   7121     label: "Default",
   7122     isDefault: true
   7123   }, {
   7124     name: "large",
   7125     label: "Large"
   7126   }],
   7127   editorStyle: "wp-block-quote-editor",
   7128   style: "wp-block-quote"
   7129 };
   7130 
   7131 
   7132 const {
   7133   name: quote_name
   7134 } = quote_metadata;
   7135 
   7136 const quote_settings = {
   7137   icon: library_quote,
   7138   example: {
   7139     attributes: {
   7140       value: '<p>' + Object(external_wp_i18n_["__"])('In quoting others, we cite ourselves.') + '</p>',
   7141       citation: 'Julio Cortázar',
   7142       className: 'is-style-large'
   7143     }
   7144   },
   7145   transforms: quote_transforms,
   7146   edit: QuoteEdit,
   7147   save: quote_save_save,
   7148 
   7149   merge(attributes, {
   7150     value,
   7151     citation
   7152   }) {
   7153     // Quote citations cannot be merged. Pick the second one unless it's
   7154     // empty.
   7155     if (!citation) {
   7156       citation = attributes.citation;
   7157     }
   7158 
   7159     if (!value || value === '<p></p>') {
   7160       return { ...attributes,
   7161         citation
   7162       };
   7163     }
   7164 
   7165     return { ...attributes,
   7166       value: attributes.value + value,
   7167       citation
   7168     };
   7169   },
   7170 
   7171   deprecated: quote_deprecated
   7172 };
   7173 
   7174 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/gallery.js
   7175 
   7176 
   7177 /**
   7178  * WordPress dependencies
   7179  */
   7180 
   7181 const gallery = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   7182   viewBox: "0 0 24 24",
   7183   xmlns: "http://www.w3.org/2000/svg"
   7184 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   7185   d: "M20.2 8v11c0 .7-.6 1.2-1.2 1.2H6v1.5h13c1.5 0 2.7-1.2 2.7-2.8V8h-1.5zM18 16.4V4.6c0-.9-.7-1.6-1.6-1.6H4.6C3.7 3 3 3.7 3 4.6v11.8c0 .9.7 1.6 1.6 1.6h11.8c.9 0 1.6-.7 1.6-1.6zM4.5 4.6c0-.1.1-.1.1-.1h11.8c.1 0 .1.1.1.1V12l-2.3-1.7c-.3-.2-.6-.2-.9 0l-2.9 2.1L8 11.3c-.2-.1-.5-.1-.7 0l-2.9 1.5V4.6zm0 11.8v-1.8l3.2-1.7 2.4 1.2c.2.1.5.1.8-.1l2.8-2 2.8 2v2.5c0 .1-.1.1-.1.1H4.6c0-.1-.1-.2-.1-.2z"
   7186 }));
   7187 /* harmony default export */ var library_gallery = (gallery);
   7188 
   7189 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/shared.js
   7190 /**
   7191  * External dependencies
   7192  */
   7193 
   7194 function defaultColumnsNumber(attributes) {
   7195   return Math.min(3, attributes.images.length);
   7196 }
   7197 const shared_pickRelevantMediaFiles = (image, sizeSlug = 'large') => {
   7198   const imageProps = Object(external_lodash_["pick"])(image, ['alt', 'id', 'link', 'caption']);
   7199   imageProps.url = Object(external_lodash_["get"])(image, ['sizes', sizeSlug, 'url']) || Object(external_lodash_["get"])(image, ['media_details', 'sizes', sizeSlug, 'source_url']) || image.url;
   7200   const fullUrl = Object(external_lodash_["get"])(image, ['sizes', 'full', 'url']) || Object(external_lodash_["get"])(image, ['media_details', 'sizes', 'full', 'source_url']);
   7201 
   7202   if (fullUrl) {
   7203     imageProps.fullUrl = fullUrl;
   7204   }
   7205 
   7206   return imageProps;
   7207 };
   7208 
   7209 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/deprecated.js
   7210 
   7211 
   7212 /**
   7213  * External dependencies
   7214  */
   7215 
   7216 
   7217 /**
   7218  * WordPress dependencies
   7219  */
   7220 
   7221 
   7222 /**
   7223  * Internal dependencies
   7224  */
   7225 
   7226 
   7227 const gallery_deprecated_deprecated = [{
   7228   attributes: {
   7229     images: {
   7230       type: 'array',
   7231       default: [],
   7232       source: 'query',
   7233       selector: '.blocks-gallery-item',
   7234       query: {
   7235         url: {
   7236           type: 'string',
   7237           source: 'attribute',
   7238           selector: 'img',
   7239           attribute: 'src'
   7240         },
   7241         fullUrl: {
   7242           type: 'string',
   7243           source: 'attribute',
   7244           selector: 'img',
   7245           attribute: 'data-full-url'
   7246         },
   7247         link: {
   7248           type: 'string',
   7249           source: 'attribute',
   7250           selector: 'img',
   7251           attribute: 'data-link'
   7252         },
   7253         alt: {
   7254           type: 'string',
   7255           source: 'attribute',
   7256           selector: 'img',
   7257           attribute: 'alt',
   7258           default: ''
   7259         },
   7260         id: {
   7261           type: 'string',
   7262           source: 'attribute',
   7263           selector: 'img',
   7264           attribute: 'data-id'
   7265         },
   7266         caption: {
   7267           type: 'string',
   7268           source: 'html',
   7269           selector: '.blocks-gallery-item__caption'
   7270         }
   7271       }
   7272     },
   7273     ids: {
   7274       type: 'array',
   7275       items: {
   7276         type: 'number'
   7277       },
   7278       default: []
   7279     },
   7280     columns: {
   7281       type: 'number',
   7282       minimum: 1,
   7283       maximum: 8
   7284     },
   7285     caption: {
   7286       type: 'string',
   7287       source: 'html',
   7288       selector: '.blocks-gallery-caption'
   7289     },
   7290     imageCrop: {
   7291       type: 'boolean',
   7292       default: true
   7293     },
   7294     linkTo: {
   7295       type: 'string',
   7296       default: 'none'
   7297     },
   7298     sizeSlug: {
   7299       type: 'string',
   7300       default: 'large'
   7301     }
   7302   },
   7303   supports: {
   7304     align: true
   7305   },
   7306 
   7307   isEligible({
   7308     linkTo
   7309   }) {
   7310     return !linkTo || linkTo === 'attachment' || linkTo === 'media';
   7311   },
   7312 
   7313   migrate(attributes) {
   7314     let linkTo = attributes.linkTo;
   7315 
   7316     if (!attributes.linkTo) {
   7317       linkTo = 'none';
   7318     } else if (attributes.linkTo === 'attachment') {
   7319       linkTo = 'post';
   7320     } else if (attributes.linkTo === 'media') {
   7321       linkTo = 'file';
   7322     }
   7323 
   7324     return { ...attributes,
   7325       linkTo
   7326     };
   7327   },
   7328 
   7329   save({
   7330     attributes
   7331   }) {
   7332     const {
   7333       images,
   7334       columns = defaultColumnsNumber(attributes),
   7335       imageCrop,
   7336       caption,
   7337       linkTo
   7338     } = attributes;
   7339     return Object(external_wp_element_["createElement"])("figure", {
   7340       className: `columns-${columns} ${imageCrop ? 'is-cropped' : ''}`
   7341     }, Object(external_wp_element_["createElement"])("ul", {
   7342       className: "blocks-gallery-grid"
   7343     }, images.map(image => {
   7344       let href;
   7345 
   7346       switch (linkTo) {
   7347         case 'media':
   7348           href = image.fullUrl || image.url;
   7349           break;
   7350 
   7351         case 'attachment':
   7352           href = image.link;
   7353           break;
   7354       }
   7355 
   7356       const img = Object(external_wp_element_["createElement"])("img", {
   7357         src: image.url,
   7358         alt: image.alt,
   7359         "data-id": image.id,
   7360         "data-full-url": image.fullUrl,
   7361         "data-link": image.link,
   7362         className: image.id ? `wp-image-${image.id}` : null
   7363       });
   7364       return Object(external_wp_element_["createElement"])("li", {
   7365         key: image.id || image.url,
   7366         className: "blocks-gallery-item"
   7367       }, Object(external_wp_element_["createElement"])("figure", null, href ? Object(external_wp_element_["createElement"])("a", {
   7368         href: href
   7369       }, img) : img, !external_wp_blockEditor_["RichText"].isEmpty(image.caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   7370         tagName: "figcaption",
   7371         className: "blocks-gallery-item__caption",
   7372         value: image.caption
   7373       })));
   7374     })), !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   7375       tagName: "figcaption",
   7376       className: "blocks-gallery-caption",
   7377       value: caption
   7378     }));
   7379   }
   7380 
   7381 }, {
   7382   attributes: {
   7383     images: {
   7384       type: 'array',
   7385       default: [],
   7386       source: 'query',
   7387       selector: '.blocks-gallery-item',
   7388       query: {
   7389         url: {
   7390           source: 'attribute',
   7391           selector: 'img',
   7392           attribute: 'src'
   7393         },
   7394         fullUrl: {
   7395           source: 'attribute',
   7396           selector: 'img',
   7397           attribute: 'data-full-url'
   7398         },
   7399         link: {
   7400           source: 'attribute',
   7401           selector: 'img',
   7402           attribute: 'data-link'
   7403         },
   7404         alt: {
   7405           source: 'attribute',
   7406           selector: 'img',
   7407           attribute: 'alt',
   7408           default: ''
   7409         },
   7410         id: {
   7411           source: 'attribute',
   7412           selector: 'img',
   7413           attribute: 'data-id'
   7414         },
   7415         caption: {
   7416           type: 'string',
   7417           source: 'html',
   7418           selector: '.blocks-gallery-item__caption'
   7419         }
   7420       }
   7421     },
   7422     ids: {
   7423       type: 'array',
   7424       default: []
   7425     },
   7426     columns: {
   7427       type: 'number'
   7428     },
   7429     caption: {
   7430       type: 'string',
   7431       source: 'html',
   7432       selector: '.blocks-gallery-caption'
   7433     },
   7434     imageCrop: {
   7435       type: 'boolean',
   7436       default: true
   7437     },
   7438     linkTo: {
   7439       type: 'string',
   7440       default: 'none'
   7441     }
   7442   },
   7443   supports: {
   7444     align: true
   7445   },
   7446 
   7447   isEligible({
   7448     ids
   7449   }) {
   7450     return ids && ids.some(id => typeof id === 'string');
   7451   },
   7452 
   7453   migrate(attributes) {
   7454     return { ...attributes,
   7455       ids: Object(external_lodash_["map"])(attributes.ids, id => {
   7456         const parsedId = parseInt(id, 10);
   7457         return Number.isInteger(parsedId) ? parsedId : null;
   7458       })
   7459     };
   7460   },
   7461 
   7462   save({
   7463     attributes
   7464   }) {
   7465     const {
   7466       images,
   7467       columns = defaultColumnsNumber(attributes),
   7468       imageCrop,
   7469       caption,
   7470       linkTo
   7471     } = attributes;
   7472     return Object(external_wp_element_["createElement"])("figure", {
   7473       className: `columns-${columns} ${imageCrop ? 'is-cropped' : ''}`
   7474     }, Object(external_wp_element_["createElement"])("ul", {
   7475       className: "blocks-gallery-grid"
   7476     }, images.map(image => {
   7477       let href;
   7478 
   7479       switch (linkTo) {
   7480         case 'media':
   7481           href = image.fullUrl || image.url;
   7482           break;
   7483 
   7484         case 'attachment':
   7485           href = image.link;
   7486           break;
   7487       }
   7488 
   7489       const img = Object(external_wp_element_["createElement"])("img", {
   7490         src: image.url,
   7491         alt: image.alt,
   7492         "data-id": image.id,
   7493         "data-full-url": image.fullUrl,
   7494         "data-link": image.link,
   7495         className: image.id ? `wp-image-${image.id}` : null
   7496       });
   7497       return Object(external_wp_element_["createElement"])("li", {
   7498         key: image.id || image.url,
   7499         className: "blocks-gallery-item"
   7500       }, Object(external_wp_element_["createElement"])("figure", null, href ? Object(external_wp_element_["createElement"])("a", {
   7501         href: href
   7502       }, img) : img, !external_wp_blockEditor_["RichText"].isEmpty(image.caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   7503         tagName: "figcaption",
   7504         className: "blocks-gallery-item__caption",
   7505         value: image.caption
   7506       })));
   7507     })), !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   7508       tagName: "figcaption",
   7509       className: "blocks-gallery-caption",
   7510       value: caption
   7511     }));
   7512   }
   7513 
   7514 }, {
   7515   attributes: {
   7516     images: {
   7517       type: 'array',
   7518       default: [],
   7519       source: 'query',
   7520       selector: 'ul.wp-block-gallery .blocks-gallery-item',
   7521       query: {
   7522         url: {
   7523           source: 'attribute',
   7524           selector: 'img',
   7525           attribute: 'src'
   7526         },
   7527         fullUrl: {
   7528           source: 'attribute',
   7529           selector: 'img',
   7530           attribute: 'data-full-url'
   7531         },
   7532         alt: {
   7533           source: 'attribute',
   7534           selector: 'img',
   7535           attribute: 'alt',
   7536           default: ''
   7537         },
   7538         id: {
   7539           source: 'attribute',
   7540           selector: 'img',
   7541           attribute: 'data-id'
   7542         },
   7543         link: {
   7544           source: 'attribute',
   7545           selector: 'img',
   7546           attribute: 'data-link'
   7547         },
   7548         caption: {
   7549           type: 'array',
   7550           source: 'children',
   7551           selector: 'figcaption'
   7552         }
   7553       }
   7554     },
   7555     ids: {
   7556       type: 'array',
   7557       default: []
   7558     },
   7559     columns: {
   7560       type: 'number'
   7561     },
   7562     imageCrop: {
   7563       type: 'boolean',
   7564       default: true
   7565     },
   7566     linkTo: {
   7567       type: 'string',
   7568       default: 'none'
   7569     }
   7570   },
   7571   supports: {
   7572     align: true
   7573   },
   7574 
   7575   save({
   7576     attributes
   7577   }) {
   7578     const {
   7579       images,
   7580       columns = defaultColumnsNumber(attributes),
   7581       imageCrop,
   7582       linkTo
   7583     } = attributes;
   7584     return Object(external_wp_element_["createElement"])("ul", {
   7585       className: `columns-${columns} ${imageCrop ? 'is-cropped' : ''}`
   7586     }, images.map(image => {
   7587       let href;
   7588 
   7589       switch (linkTo) {
   7590         case 'media':
   7591           href = image.fullUrl || image.url;
   7592           break;
   7593 
   7594         case 'attachment':
   7595           href = image.link;
   7596           break;
   7597       }
   7598 
   7599       const img = Object(external_wp_element_["createElement"])("img", {
   7600         src: image.url,
   7601         alt: image.alt,
   7602         "data-id": image.id,
   7603         "data-full-url": image.fullUrl,
   7604         "data-link": image.link,
   7605         className: image.id ? `wp-image-${image.id}` : null
   7606       });
   7607       return Object(external_wp_element_["createElement"])("li", {
   7608         key: image.id || image.url,
   7609         className: "blocks-gallery-item"
   7610       }, Object(external_wp_element_["createElement"])("figure", null, href ? Object(external_wp_element_["createElement"])("a", {
   7611         href: href
   7612       }, img) : img, image.caption && image.caption.length > 0 && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   7613         tagName: "figcaption",
   7614         value: image.caption
   7615       })));
   7616     }));
   7617   }
   7618 
   7619 }, {
   7620   attributes: {
   7621     images: {
   7622       type: 'array',
   7623       default: [],
   7624       source: 'query',
   7625       selector: 'ul.wp-block-gallery .blocks-gallery-item',
   7626       query: {
   7627         url: {
   7628           source: 'attribute',
   7629           selector: 'img',
   7630           attribute: 'src'
   7631         },
   7632         alt: {
   7633           source: 'attribute',
   7634           selector: 'img',
   7635           attribute: 'alt',
   7636           default: ''
   7637         },
   7638         id: {
   7639           source: 'attribute',
   7640           selector: 'img',
   7641           attribute: 'data-id'
   7642         },
   7643         link: {
   7644           source: 'attribute',
   7645           selector: 'img',
   7646           attribute: 'data-link'
   7647         },
   7648         caption: {
   7649           type: 'array',
   7650           source: 'children',
   7651           selector: 'figcaption'
   7652         }
   7653       }
   7654     },
   7655     columns: {
   7656       type: 'number'
   7657     },
   7658     imageCrop: {
   7659       type: 'boolean',
   7660       default: true
   7661     },
   7662     linkTo: {
   7663       type: 'string',
   7664       default: 'none'
   7665     }
   7666   },
   7667 
   7668   isEligible({
   7669     images,
   7670     ids
   7671   }) {
   7672     return images && images.length > 0 && (!ids && images || ids && images && ids.length !== images.length || Object(external_lodash_["some"])(images, (id, index) => {
   7673       if (!id && ids[index] !== null) {
   7674         return true;
   7675       }
   7676 
   7677       return parseInt(id, 10) !== ids[index];
   7678     }));
   7679   },
   7680 
   7681   migrate(attributes) {
   7682     return { ...attributes,
   7683       ids: Object(external_lodash_["map"])(attributes.images, ({
   7684         id
   7685       }) => {
   7686         if (!id) {
   7687           return null;
   7688         }
   7689 
   7690         return parseInt(id, 10);
   7691       })
   7692     };
   7693   },
   7694 
   7695   supports: {
   7696     align: true
   7697   },
   7698 
   7699   save({
   7700     attributes
   7701   }) {
   7702     const {
   7703       images,
   7704       columns = defaultColumnsNumber(attributes),
   7705       imageCrop,
   7706       linkTo
   7707     } = attributes;
   7708     return Object(external_wp_element_["createElement"])("ul", {
   7709       className: `columns-${columns} ${imageCrop ? 'is-cropped' : ''}`
   7710     }, images.map(image => {
   7711       let href;
   7712 
   7713       switch (linkTo) {
   7714         case 'media':
   7715           href = image.url;
   7716           break;
   7717 
   7718         case 'attachment':
   7719           href = image.link;
   7720           break;
   7721       }
   7722 
   7723       const img = Object(external_wp_element_["createElement"])("img", {
   7724         src: image.url,
   7725         alt: image.alt,
   7726         "data-id": image.id,
   7727         "data-link": image.link,
   7728         className: image.id ? `wp-image-${image.id}` : null
   7729       });
   7730       return Object(external_wp_element_["createElement"])("li", {
   7731         key: image.id || image.url,
   7732         className: "blocks-gallery-item"
   7733       }, Object(external_wp_element_["createElement"])("figure", null, href ? Object(external_wp_element_["createElement"])("a", {
   7734         href: href
   7735       }, img) : img, image.caption && image.caption.length > 0 && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   7736         tagName: "figcaption",
   7737         value: image.caption
   7738       })));
   7739     }));
   7740   }
   7741 
   7742 }, {
   7743   attributes: {
   7744     images: {
   7745       type: 'array',
   7746       default: [],
   7747       source: 'query',
   7748       selector: 'div.wp-block-gallery figure.blocks-gallery-image img',
   7749       query: {
   7750         url: {
   7751           source: 'attribute',
   7752           attribute: 'src'
   7753         },
   7754         alt: {
   7755           source: 'attribute',
   7756           attribute: 'alt',
   7757           default: ''
   7758         },
   7759         id: {
   7760           source: 'attribute',
   7761           attribute: 'data-id'
   7762         }
   7763       }
   7764     },
   7765     columns: {
   7766       type: 'number'
   7767     },
   7768     imageCrop: {
   7769       type: 'boolean',
   7770       default: true
   7771     },
   7772     linkTo: {
   7773       type: 'string',
   7774       default: 'none'
   7775     },
   7776     align: {
   7777       type: 'string',
   7778       default: 'none'
   7779     }
   7780   },
   7781   supports: {
   7782     align: true
   7783   },
   7784 
   7785   save({
   7786     attributes
   7787   }) {
   7788     const {
   7789       images,
   7790       columns = defaultColumnsNumber(attributes),
   7791       align,
   7792       imageCrop,
   7793       linkTo
   7794     } = attributes;
   7795     const className = classnames_default()(`columns-${columns}`, {
   7796       alignnone: align === 'none',
   7797       'is-cropped': imageCrop
   7798     });
   7799     return Object(external_wp_element_["createElement"])("div", {
   7800       className: className
   7801     }, images.map(image => {
   7802       let href;
   7803 
   7804       switch (linkTo) {
   7805         case 'media':
   7806           href = image.url;
   7807           break;
   7808 
   7809         case 'attachment':
   7810           href = image.link;
   7811           break;
   7812       }
   7813 
   7814       const img = Object(external_wp_element_["createElement"])("img", {
   7815         src: image.url,
   7816         alt: image.alt,
   7817         "data-id": image.id
   7818       });
   7819       return Object(external_wp_element_["createElement"])("figure", {
   7820         key: image.id || image.url,
   7821         className: "blocks-gallery-image"
   7822       }, href ? Object(external_wp_element_["createElement"])("a", {
   7823         href: href
   7824       }, img) : img);
   7825     }));
   7826   }
   7827 
   7828 }];
   7829 /* harmony default export */ var gallery_deprecated = (gallery_deprecated_deprecated);
   7830 
   7831 // EXTERNAL MODULE: external ["wp","viewport"]
   7832 var external_wp_viewport_ = __webpack_require__("KEfo");
   7833 
   7834 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/shared-icon.js
   7835 
   7836 
   7837 /**
   7838  * WordPress dependencies
   7839  */
   7840 
   7841 
   7842 const sharedIcon = Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
   7843   icon: library_gallery
   7844 });
   7845 
   7846 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/chevron-left.js
   7847 var chevron_left = __webpack_require__("2gm7");
   7848 
   7849 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/chevron-right.js
   7850 var chevron_right = __webpack_require__("1iEr");
   7851 
   7852 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/edit.js + 1 modules
   7853 var library_edit = __webpack_require__("B9Az");
   7854 
   7855 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/close-small.js
   7856 var close_small = __webpack_require__("bWcr");
   7857 
   7858 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/constants.js
   7859 const constants_LINK_DESTINATION_NONE = 'none';
   7860 const constants_LINK_DESTINATION_MEDIA = 'file';
   7861 const constants_LINK_DESTINATION_ATTACHMENT = 'post';
   7862 
   7863 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/gallery-image.js
   7864 
   7865 
   7866 /**
   7867  * External dependencies
   7868  */
   7869 
   7870 
   7871 /**
   7872  * WordPress dependencies
   7873  */
   7874 
   7875 
   7876 
   7877 
   7878 
   7879 
   7880 
   7881 
   7882 
   7883 
   7884 
   7885 /**
   7886  * Internal dependencies
   7887  */
   7888 
   7889 
   7890 
   7891 
   7892 const gallery_image_isTemporaryImage = (id, url) => !id && Object(external_wp_blob_["isBlobURL"])(url);
   7893 
   7894 class gallery_image_GalleryImage extends external_wp_element_["Component"] {
   7895   constructor() {
   7896     super(...arguments);
   7897     this.onSelectImage = this.onSelectImage.bind(this);
   7898     this.onRemoveImage = this.onRemoveImage.bind(this);
   7899     this.bindContainer = this.bindContainer.bind(this);
   7900     this.onEdit = this.onEdit.bind(this);
   7901     this.onSelectImageFromLibrary = this.onSelectImageFromLibrary.bind(this);
   7902     this.onSelectCustomURL = this.onSelectCustomURL.bind(this);
   7903     this.state = {
   7904       isEditing: false
   7905     };
   7906   }
   7907 
   7908   bindContainer(ref) {
   7909     this.container = ref;
   7910   }
   7911 
   7912   onSelectImage() {
   7913     if (!this.props.isSelected) {
   7914       this.props.onSelect();
   7915     }
   7916   }
   7917 
   7918   onRemoveImage(event) {
   7919     if (this.container === this.container.ownerDocument.activeElement && this.props.isSelected && [external_wp_keycodes_["BACKSPACE"], external_wp_keycodes_["DELETE"]].indexOf(event.keyCode) !== -1) {
   7920       event.stopPropagation();
   7921       event.preventDefault();
   7922       this.props.onRemove();
   7923     }
   7924   }
   7925 
   7926   onEdit() {
   7927     this.setState({
   7928       isEditing: true
   7929     });
   7930   }
   7931 
   7932   componentDidUpdate() {
   7933     const {
   7934       image,
   7935       url,
   7936       __unstableMarkNextChangeAsNotPersistent
   7937     } = this.props;
   7938 
   7939     if (image && !url) {
   7940       __unstableMarkNextChangeAsNotPersistent();
   7941 
   7942       this.props.setAttributes({
   7943         url: image.source_url,
   7944         alt: image.alt_text
   7945       });
   7946     }
   7947   }
   7948 
   7949   deselectOnBlur() {
   7950     this.props.onDeselect();
   7951   }
   7952 
   7953   onSelectImageFromLibrary(media) {
   7954     const {
   7955       setAttributes,
   7956       id,
   7957       url,
   7958       alt,
   7959       caption,
   7960       sizeSlug
   7961     } = this.props;
   7962 
   7963     if (!media || !media.url) {
   7964       return;
   7965     }
   7966 
   7967     let mediaAttributes = shared_pickRelevantMediaFiles(media, sizeSlug); // If the current image is temporary but an alt text was meanwhile
   7968     // written by the user, make sure the text is not overwritten.
   7969 
   7970     if (gallery_image_isTemporaryImage(id, url)) {
   7971       if (alt) {
   7972         mediaAttributes = Object(external_lodash_["omit"])(mediaAttributes, ['alt']);
   7973       }
   7974     } // If a caption text was meanwhile written by the user,
   7975     // make sure the text is not overwritten by empty captions.
   7976 
   7977 
   7978     if (caption && !Object(external_lodash_["get"])(mediaAttributes, ['caption'])) {
   7979       mediaAttributes = Object(external_lodash_["omit"])(mediaAttributes, ['caption']);
   7980     }
   7981 
   7982     setAttributes(mediaAttributes);
   7983     this.setState({
   7984       isEditing: false
   7985     });
   7986   }
   7987 
   7988   onSelectCustomURL(newURL) {
   7989     const {
   7990       setAttributes,
   7991       url
   7992     } = this.props;
   7993 
   7994     if (newURL !== url) {
   7995       setAttributes({
   7996         url: newURL,
   7997         id: undefined
   7998       });
   7999       this.setState({
   8000         isEditing: false
   8001       });
   8002     }
   8003   }
   8004 
   8005   render() {
   8006     const {
   8007       url,
   8008       alt,
   8009       id,
   8010       linkTo,
   8011       link,
   8012       isFirstItem,
   8013       isLastItem,
   8014       isSelected,
   8015       caption,
   8016       onRemove,
   8017       onMoveForward,
   8018       onMoveBackward,
   8019       setAttributes,
   8020       'aria-label': ariaLabel
   8021     } = this.props;
   8022     const {
   8023       isEditing
   8024     } = this.state;
   8025     let href;
   8026 
   8027     switch (linkTo) {
   8028       case constants_LINK_DESTINATION_MEDIA:
   8029         href = url;
   8030         break;
   8031 
   8032       case constants_LINK_DESTINATION_ATTACHMENT:
   8033         href = link;
   8034         break;
   8035     }
   8036 
   8037     const img = // Disable reason: Image itself is not meant to be interactive, but should
   8038     // direct image selection and unfocus caption fields.
   8039 
   8040     /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */
   8041     Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])("img", {
   8042       src: url,
   8043       alt: alt,
   8044       "data-id": id,
   8045       onKeyDown: this.onRemoveImage,
   8046       tabIndex: "0",
   8047       "aria-label": ariaLabel,
   8048       ref: this.bindContainer
   8049     }), Object(external_wp_blob_["isBlobURL"])(url) && Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null))
   8050     /* eslint-enable jsx-a11y/no-noninteractive-element-interactions */
   8051     ;
   8052     const className = classnames_default()({
   8053       'is-selected': isSelected,
   8054       'is-transient': Object(external_wp_blob_["isBlobURL"])(url)
   8055     });
   8056     return (// eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-noninteractive-element-interactions
   8057       Object(external_wp_element_["createElement"])("figure", {
   8058         className: className,
   8059         onClick: this.onSelectImage,
   8060         onFocus: this.onSelectImage
   8061       }, !isEditing && (href ? Object(external_wp_element_["createElement"])("a", {
   8062         href: href
   8063       }, img) : img), isEditing && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
   8064         labels: {
   8065           title: Object(external_wp_i18n_["__"])('Edit gallery image')
   8066         },
   8067         icon: library_image,
   8068         onSelect: this.onSelectImageFromLibrary,
   8069         onSelectURL: this.onSelectCustomURL,
   8070         accept: "image/*",
   8071         allowedTypes: ['image'],
   8072         value: {
   8073           id,
   8074           src: url
   8075         }
   8076       }), Object(external_wp_element_["createElement"])(external_wp_components_["ButtonGroup"], {
   8077         className: "block-library-gallery-item__inline-menu is-left"
   8078       }, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
   8079         icon: chevron_left["a" /* default */],
   8080         onClick: isFirstItem ? undefined : onMoveBackward,
   8081         label: Object(external_wp_i18n_["__"])('Move image backward'),
   8082         "aria-disabled": isFirstItem,
   8083         disabled: !isSelected
   8084       }), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
   8085         icon: chevron_right["a" /* default */],
   8086         onClick: isLastItem ? undefined : onMoveForward,
   8087         label: Object(external_wp_i18n_["__"])('Move image forward'),
   8088         "aria-disabled": isLastItem,
   8089         disabled: !isSelected
   8090       })), Object(external_wp_element_["createElement"])(external_wp_components_["ButtonGroup"], {
   8091         className: "block-library-gallery-item__inline-menu is-right"
   8092       }, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
   8093         icon: library_edit["a" /* default */],
   8094         onClick: this.onEdit,
   8095         label: Object(external_wp_i18n_["__"])('Replace image'),
   8096         disabled: !isSelected
   8097       }), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
   8098         icon: close_small["a" /* default */],
   8099         onClick: onRemove,
   8100         label: Object(external_wp_i18n_["__"])('Remove image'),
   8101         disabled: !isSelected
   8102       })), !isEditing && (isSelected || caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
   8103         tagName: "figcaption",
   8104         "aria-label": Object(external_wp_i18n_["__"])('Image caption text'),
   8105         placeholder: isSelected ? Object(external_wp_i18n_["__"])('Add caption') : null,
   8106         value: caption,
   8107         onChange: newCaption => setAttributes({
   8108           caption: newCaption
   8109         }),
   8110         inlineToolbar: true
   8111       }))
   8112     );
   8113   }
   8114 
   8115 }
   8116 
   8117 /* harmony default export */ var gallery_image = (Object(external_wp_compose_["compose"])([Object(external_wp_data_["withSelect"])((select, ownProps) => {
   8118   const {
   8119     getMedia
   8120   } = select(external_wp_coreData_["store"]);
   8121   const {
   8122     id
   8123   } = ownProps;
   8124   return {
   8125     image: id ? getMedia(parseInt(id, 10)) : null
   8126   };
   8127 }), Object(external_wp_data_["withDispatch"])(dispatch => {
   8128   const {
   8129     __unstableMarkNextChangeAsNotPersistent
   8130   } = dispatch(external_wp_blockEditor_["store"]);
   8131   return {
   8132     __unstableMarkNextChangeAsNotPersistent
   8133   };
   8134 })])(gallery_image_GalleryImage));
   8135 
   8136 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/gallery.js
   8137 
   8138 
   8139 
   8140 /**
   8141  * External dependencies
   8142  */
   8143 
   8144 /**
   8145  * WordPress dependencies
   8146  */
   8147 
   8148 
   8149 
   8150 
   8151 
   8152 /**
   8153  * Internal dependencies
   8154  */
   8155 
   8156 
   8157 
   8158 const Gallery = props => {
   8159   const {
   8160     attributes,
   8161     isSelected,
   8162     setAttributes,
   8163     selectedImage,
   8164     mediaPlaceholder,
   8165     onMoveBackward,
   8166     onMoveForward,
   8167     onRemoveImage,
   8168     onSelectImage,
   8169     onDeselectImage,
   8170     onSetImageAttributes,
   8171     insertBlocksAfter,
   8172     blockProps
   8173   } = props;
   8174   const {
   8175     align,
   8176     columns = defaultColumnsNumber(attributes),
   8177     caption,
   8178     imageCrop,
   8179     images
   8180   } = attributes;
   8181   return Object(external_wp_element_["createElement"])("figure", Object(esm_extends["a" /* default */])({}, blockProps, {
   8182     className: classnames_default()(blockProps.className, {
   8183       [`align${align}`]: align,
   8184       [`columns-${columns}`]: columns,
   8185       'is-cropped': imageCrop
   8186     })
   8187   }), Object(external_wp_element_["createElement"])("ul", {
   8188     className: "blocks-gallery-grid"
   8189   }, images.map((img, index) => {
   8190     const ariaLabel = Object(external_wp_i18n_["sprintf"])(
   8191     /* translators: 1: the order number of the image. 2: the total number of images. */
   8192     Object(external_wp_i18n_["__"])('image %1$d of %2$d in gallery'), index + 1, images.length);
   8193     return Object(external_wp_element_["createElement"])("li", {
   8194       className: "blocks-gallery-item",
   8195       key: img.id ? `${img.id}-${index}` : img.url
   8196     }, Object(external_wp_element_["createElement"])(gallery_image, {
   8197       url: img.url,
   8198       alt: img.alt,
   8199       id: img.id,
   8200       isFirstItem: index === 0,
   8201       isLastItem: index + 1 === images.length,
   8202       isSelected: isSelected && selectedImage === index,
   8203       onMoveBackward: onMoveBackward(index),
   8204       onMoveForward: onMoveForward(index),
   8205       onRemove: onRemoveImage(index),
   8206       onSelect: onSelectImage(index),
   8207       onDeselect: onDeselectImage(index),
   8208       setAttributes: attrs => onSetImageAttributes(index, attrs),
   8209       caption: img.caption,
   8210       "aria-label": ariaLabel,
   8211       sizeSlug: attributes.sizeSlug
   8212     }));
   8213   })), mediaPlaceholder, Object(external_wp_element_["createElement"])(RichTextVisibilityHelper, {
   8214     isHidden: !isSelected && external_wp_blockEditor_["RichText"].isEmpty(caption),
   8215     tagName: "figcaption",
   8216     className: "blocks-gallery-caption",
   8217     "aria-label": Object(external_wp_i18n_["__"])('Gallery caption text'),
   8218     placeholder: Object(external_wp_i18n_["__"])('Write gallery caption…'),
   8219     value: caption,
   8220     onChange: value => setAttributes({
   8221       caption: value
   8222     }),
   8223     inlineToolbar: true,
   8224     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
   8225   }));
   8226 };
   8227 
   8228 function RichTextVisibilityHelper({
   8229   isHidden,
   8230   ...richTextProps
   8231 }) {
   8232   return isHidden ? Object(external_wp_element_["createElement"])(external_wp_components_["VisuallyHidden"], Object(esm_extends["a" /* default */])({
   8233     as: external_wp_blockEditor_["RichText"]
   8234   }, richTextProps)) : Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], richTextProps);
   8235 }
   8236 
   8237 /* harmony default export */ var gallery_gallery = (Gallery);
   8238 
   8239 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/edit.js
   8240 
   8241 
   8242 
   8243 /**
   8244  * External dependencies
   8245  */
   8246 
   8247 /**
   8248  * WordPress dependencies
   8249  */
   8250 
   8251 
   8252 
   8253 
   8254 
   8255 
   8256 
   8257 
   8258 
   8259 
   8260 
   8261 /**
   8262  * Internal dependencies
   8263  */
   8264 
   8265 
   8266 
   8267 
   8268 
   8269 const MAX_COLUMNS = 8;
   8270 const linkOptions = [{
   8271   value: constants_LINK_DESTINATION_ATTACHMENT,
   8272   label: Object(external_wp_i18n_["__"])('Attachment Page')
   8273 }, {
   8274   value: constants_LINK_DESTINATION_MEDIA,
   8275   label: Object(external_wp_i18n_["__"])('Media File')
   8276 }, {
   8277   value: constants_LINK_DESTINATION_NONE,
   8278   label: Object(external_wp_i18n_["__"])('None')
   8279 }];
   8280 const edit_ALLOWED_MEDIA_TYPES = ['image'];
   8281 const PLACEHOLDER_TEXT = external_wp_element_["Platform"].select({
   8282   web: Object(external_wp_i18n_["__"])('Drag images, upload new ones or select files from your library.'),
   8283   native: Object(external_wp_i18n_["__"])('ADD MEDIA')
   8284 });
   8285 const MOBILE_CONTROL_PROPS_RANGE_CONTROL = external_wp_element_["Platform"].select({
   8286   web: {},
   8287   native: {
   8288     type: 'stepper'
   8289   }
   8290 });
   8291 
   8292 function GalleryEdit(props) {
   8293   const {
   8294     attributes,
   8295     clientId,
   8296     isSelected,
   8297     noticeUI,
   8298     noticeOperations,
   8299     onFocus
   8300   } = props;
   8301   const {
   8302     columns = defaultColumnsNumber(attributes),
   8303     imageCrop,
   8304     images,
   8305     linkTo,
   8306     sizeSlug
   8307   } = attributes;
   8308   const [selectedImage, setSelectedImage] = Object(external_wp_element_["useState"])();
   8309   const [attachmentCaptions, setAttachmentCaptions] = Object(external_wp_element_["useState"])();
   8310   const {
   8311     __unstableMarkNextChangeAsNotPersistent
   8312   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
   8313   const {
   8314     imageSizes,
   8315     mediaUpload,
   8316     getMedia,
   8317     wasBlockJustInserted
   8318   } = Object(external_wp_data_["useSelect"])(select => {
   8319     const settings = select(external_wp_blockEditor_["store"]).getSettings();
   8320     return {
   8321       imageSizes: settings.imageSizes,
   8322       mediaUpload: settings.mediaUpload,
   8323       getMedia: select(external_wp_coreData_["store"]).getMedia,
   8324       wasBlockJustInserted: select(external_wp_blockEditor_["store"]).wasBlockJustInserted(clientId, 'inserter_menu')
   8325     };
   8326   });
   8327   const resizedImages = Object(external_wp_element_["useMemo"])(() => {
   8328     if (isSelected) {
   8329       return Object(external_lodash_["reduce"])(attributes.ids, (currentResizedImages, id) => {
   8330         if (!id) {
   8331           return currentResizedImages;
   8332         }
   8333 
   8334         const image = getMedia(id);
   8335         const sizes = Object(external_lodash_["reduce"])(imageSizes, (currentSizes, size) => {
   8336           const defaultUrl = Object(external_lodash_["get"])(image, ['sizes', size.slug, 'url']);
   8337           const mediaDetailsUrl = Object(external_lodash_["get"])(image, ['media_details', 'sizes', size.slug, 'source_url']);
   8338           return { ...currentSizes,
   8339             [size.slug]: defaultUrl || mediaDetailsUrl
   8340           };
   8341         }, {});
   8342         return { ...currentResizedImages,
   8343           [parseInt(id, 10)]: sizes
   8344         };
   8345       }, {});
   8346     }
   8347 
   8348     return {};
   8349   }, [isSelected, attributes.ids, imageSizes]);
   8350 
   8351   function onFocusGalleryCaption() {
   8352     setSelectedImage();
   8353   }
   8354 
   8355   function setAttributes(newAttrs) {
   8356     if (newAttrs.ids) {
   8357       throw new Error('The "ids" attribute should not be changed directly. It is managed automatically when "images" attribute changes');
   8358     }
   8359 
   8360     if (newAttrs.images) {
   8361       newAttrs = { ...newAttrs,
   8362         // Unlike images[ n ].id which is a string, always ensure the
   8363         // ids array contains numbers as per its attribute type.
   8364         ids: Object(external_lodash_["map"])(newAttrs.images, ({
   8365           id
   8366         }) => parseInt(id, 10))
   8367       };
   8368     }
   8369 
   8370     props.setAttributes(newAttrs);
   8371   }
   8372 
   8373   function onSelectImage(index) {
   8374     return () => {
   8375       setSelectedImage(index);
   8376     };
   8377   }
   8378 
   8379   function onDeselectImage() {
   8380     return () => {
   8381       setSelectedImage();
   8382     };
   8383   }
   8384 
   8385   function onMove(oldIndex, newIndex) {
   8386     const newImages = [...images];
   8387     newImages.splice(newIndex, 1, images[oldIndex]);
   8388     newImages.splice(oldIndex, 1, images[newIndex]);
   8389     setSelectedImage(newIndex);
   8390     setAttributes({
   8391       images: newImages
   8392     });
   8393   }
   8394 
   8395   function onMoveForward(oldIndex) {
   8396     return () => {
   8397       if (oldIndex === images.length - 1) {
   8398         return;
   8399       }
   8400 
   8401       onMove(oldIndex, oldIndex + 1);
   8402     };
   8403   }
   8404 
   8405   function onMoveBackward(oldIndex) {
   8406     return () => {
   8407       if (oldIndex === 0) {
   8408         return;
   8409       }
   8410 
   8411       onMove(oldIndex, oldIndex - 1);
   8412     };
   8413   }
   8414 
   8415   function onRemoveImage(index) {
   8416     return () => {
   8417       const newImages = Object(external_lodash_["filter"])(images, (img, i) => index !== i);
   8418       setSelectedImage();
   8419       setAttributes({
   8420         images: newImages,
   8421         columns: attributes.columns ? Math.min(newImages.length, attributes.columns) : attributes.columns
   8422       });
   8423     };
   8424   }
   8425 
   8426   function selectCaption(newImage) {
   8427     // The image id in both the images and attachmentCaptions arrays is a
   8428     // string, so ensure comparison works correctly by converting the
   8429     // newImage.id to a string.
   8430     const newImageId = Object(external_lodash_["toString"])(newImage.id);
   8431     const currentImage = Object(external_lodash_["find"])(images, {
   8432       id: newImageId
   8433     });
   8434     const currentImageCaption = currentImage ? currentImage.caption : newImage.caption;
   8435 
   8436     if (!attachmentCaptions) {
   8437       return currentImageCaption;
   8438     }
   8439 
   8440     const attachment = Object(external_lodash_["find"])(attachmentCaptions, {
   8441       id: newImageId
   8442     }); // if the attachment caption is updated
   8443 
   8444     if (attachment && attachment.caption !== newImage.caption) {
   8445       return newImage.caption;
   8446     }
   8447 
   8448     return currentImageCaption;
   8449   }
   8450 
   8451   function onSelectImages(newImages) {
   8452     setAttachmentCaptions(newImages.map(newImage => ({
   8453       // Store the attachmentCaption id as a string for consistency
   8454       // with the type of the id in the images attribute.
   8455       id: Object(external_lodash_["toString"])(newImage.id),
   8456       caption: newImage.caption
   8457     })));
   8458     setAttributes({
   8459       images: newImages.map(newImage => ({ ...shared_pickRelevantMediaFiles(newImage, sizeSlug),
   8460         caption: selectCaption(newImage, images, attachmentCaptions),
   8461         // The id value is stored in a data attribute, so when the
   8462         // block is parsed it's converted to a string. Converting
   8463         // to a string here ensures it's type is consistent.
   8464         id: Object(external_lodash_["toString"])(newImage.id)
   8465       })),
   8466       columns: attributes.columns ? Math.min(newImages.length, attributes.columns) : attributes.columns
   8467     });
   8468   }
   8469 
   8470   function onUploadError(message) {
   8471     noticeOperations.removeAllNotices();
   8472     noticeOperations.createErrorNotice(message);
   8473   }
   8474 
   8475   function setLinkTo(value) {
   8476     setAttributes({
   8477       linkTo: value
   8478     });
   8479   }
   8480 
   8481   function setColumnsNumber(value) {
   8482     setAttributes({
   8483       columns: value
   8484     });
   8485   }
   8486 
   8487   function toggleImageCrop() {
   8488     setAttributes({
   8489       imageCrop: !imageCrop
   8490     });
   8491   }
   8492 
   8493   function getImageCropHelp(checked) {
   8494     return checked ? Object(external_wp_i18n_["__"])('Thumbnails are cropped to align.') : Object(external_wp_i18n_["__"])('Thumbnails are not cropped.');
   8495   }
   8496 
   8497   function setImageAttributes(index, newAttributes) {
   8498     if (!images[index]) {
   8499       return;
   8500     }
   8501 
   8502     setAttributes({
   8503       images: [...images.slice(0, index), { ...images[index],
   8504         ...newAttributes
   8505       }, ...images.slice(index + 1)]
   8506     });
   8507   }
   8508 
   8509   function getImagesSizeOptions() {
   8510     return Object(external_lodash_["map"])(Object(external_lodash_["filter"])(imageSizes, ({
   8511       slug
   8512     }) => Object(external_lodash_["some"])(resizedImages, sizes => sizes[slug])), ({
   8513       name,
   8514       slug
   8515     }) => ({
   8516       value: slug,
   8517       label: name
   8518     }));
   8519   }
   8520 
   8521   function updateImagesSize(newSizeSlug) {
   8522     const updatedImages = Object(external_lodash_["map"])(images, image => {
   8523       if (!image.id) {
   8524         return image;
   8525       }
   8526 
   8527       const url = Object(external_lodash_["get"])(resizedImages, [parseInt(image.id, 10), newSizeSlug]);
   8528       return { ...image,
   8529         ...(url && {
   8530           url
   8531         })
   8532       };
   8533     });
   8534     setAttributes({
   8535       images: updatedImages,
   8536       sizeSlug: newSizeSlug
   8537     });
   8538   }
   8539 
   8540   Object(external_wp_element_["useEffect"])(() => {
   8541     if (external_wp_element_["Platform"].OS === 'web' && images && images.length > 0 && Object(external_lodash_["every"])(images, ({
   8542       url
   8543     }) => Object(external_wp_blob_["isBlobURL"])(url))) {
   8544       const filesList = Object(external_lodash_["map"])(images, ({
   8545         url
   8546       }) => Object(external_wp_blob_["getBlobByURL"])(url));
   8547       Object(external_lodash_["forEach"])(images, ({
   8548         url
   8549       }) => Object(external_wp_blob_["revokeBlobURL"])(url));
   8550       mediaUpload({
   8551         filesList,
   8552         onFileChange: onSelectImages,
   8553         allowedTypes: ['image']
   8554       });
   8555     }
   8556   }, []);
   8557   Object(external_wp_element_["useEffect"])(() => {
   8558     // Deselect images when deselecting the block
   8559     if (!isSelected) {
   8560       setSelectedImage();
   8561     }
   8562   }, [isSelected]);
   8563   Object(external_wp_element_["useEffect"])(() => {
   8564     // linkTo attribute must be saved so blocks don't break when changing
   8565     // image_default_link_type in options.php
   8566     if (!linkTo) {
   8567       var _window, _window$wp, _window$wp$media, _window$wp$media$view, _window$wp$media$view2, _window$wp$media$view3;
   8568 
   8569       __unstableMarkNextChangeAsNotPersistent();
   8570 
   8571       setAttributes({
   8572         linkTo: ((_window = window) === null || _window === void 0 ? void 0 : (_window$wp = _window.wp) === null || _window$wp === void 0 ? void 0 : (_window$wp$media = _window$wp.media) === null || _window$wp$media === void 0 ? void 0 : (_window$wp$media$view = _window$wp$media.view) === null || _window$wp$media$view === void 0 ? void 0 : (_window$wp$media$view2 = _window$wp$media$view.settings) === null || _window$wp$media$view2 === void 0 ? void 0 : (_window$wp$media$view3 = _window$wp$media$view2.defaultProps) === null || _window$wp$media$view3 === void 0 ? void 0 : _window$wp$media$view3.link) || constants_LINK_DESTINATION_NONE
   8573       });
   8574     }
   8575   }, [linkTo]);
   8576   const hasImages = !!images.length;
   8577   const hasImageIds = hasImages && images.some(image => !!image.id);
   8578   const mediaPlaceholder = Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
   8579     addToGallery: hasImageIds,
   8580     isAppender: hasImages,
   8581     disableMediaButtons: hasImages && !isSelected,
   8582     icon: !hasImages && sharedIcon,
   8583     labels: {
   8584       title: !hasImages && Object(external_wp_i18n_["__"])('Gallery'),
   8585       instructions: !hasImages && PLACEHOLDER_TEXT
   8586     },
   8587     onSelect: onSelectImages,
   8588     accept: "image/*",
   8589     allowedTypes: edit_ALLOWED_MEDIA_TYPES,
   8590     multiple: true,
   8591     value: hasImageIds ? images : {},
   8592     onError: onUploadError,
   8593     notices: hasImages ? undefined : noticeUI,
   8594     onFocus: onFocus,
   8595     autoOpenMediaUpload: !hasImages && isSelected && wasBlockJustInserted
   8596   });
   8597   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
   8598 
   8599   if (!hasImages) {
   8600     return Object(external_wp_element_["createElement"])(external_wp_primitives_["View"], blockProps, mediaPlaceholder);
   8601   }
   8602 
   8603   const imageSizeOptions = getImagesSizeOptions();
   8604   const shouldShowSizeOptions = hasImages && !Object(external_lodash_["isEmpty"])(imageSizeOptions);
   8605   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
   8606     title: Object(external_wp_i18n_["__"])('Gallery settings')
   8607   }, images.length > 1 && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], Object(esm_extends["a" /* default */])({
   8608     label: Object(external_wp_i18n_["__"])('Columns'),
   8609     value: columns,
   8610     onChange: setColumnsNumber,
   8611     min: 1,
   8612     max: Math.min(MAX_COLUMNS, images.length)
   8613   }, MOBILE_CONTROL_PROPS_RANGE_CONTROL, {
   8614     required: true
   8615   })), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
   8616     label: Object(external_wp_i18n_["__"])('Crop images'),
   8617     checked: !!imageCrop,
   8618     onChange: toggleImageCrop,
   8619     help: getImageCropHelp
   8620   }), Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
   8621     label: Object(external_wp_i18n_["__"])('Link to'),
   8622     value: linkTo,
   8623     onChange: setLinkTo,
   8624     options: linkOptions,
   8625     hideCancelButton: true
   8626   }), shouldShowSizeOptions && Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
   8627     label: Object(external_wp_i18n_["__"])('Image size'),
   8628     value: sizeSlug,
   8629     options: imageSizeOptions,
   8630     onChange: updateImagesSize,
   8631     hideCancelButton: true
   8632   }))), noticeUI, Object(external_wp_element_["createElement"])(gallery_gallery, Object(esm_extends["a" /* default */])({}, props, {
   8633     selectedImage: selectedImage,
   8634     mediaPlaceholder: mediaPlaceholder,
   8635     onMoveBackward: onMoveBackward,
   8636     onMoveForward: onMoveForward,
   8637     onRemoveImage: onRemoveImage,
   8638     onSelectImage: onSelectImage,
   8639     onDeselectImage: onDeselectImage,
   8640     onSetImageAttributes: setImageAttributes,
   8641     blockProps: blockProps // This prop is used by gallery.native.js.
   8642     ,
   8643     onFocusGalleryCaption: onFocusGalleryCaption
   8644   })));
   8645 }
   8646 
   8647 /* harmony default export */ var gallery_edit = (Object(external_wp_compose_["compose"])([external_wp_components_["withNotices"], Object(external_wp_viewport_["withViewportMatch"])({
   8648   isNarrow: '< small'
   8649 })])(GalleryEdit));
   8650 
   8651 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/save.js
   8652 
   8653 
   8654 /**
   8655  * WordPress dependencies
   8656  */
   8657 
   8658 /**
   8659  * Internal dependencies
   8660  */
   8661 
   8662 
   8663 
   8664 function gallery_save_save({
   8665   attributes
   8666 }) {
   8667   const {
   8668     images,
   8669     columns = defaultColumnsNumber(attributes),
   8670     imageCrop,
   8671     caption,
   8672     linkTo
   8673   } = attributes;
   8674   const className = `columns-${columns} ${imageCrop ? 'is-cropped' : ''}`;
   8675   return Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save({
   8676     className
   8677   }), Object(external_wp_element_["createElement"])("ul", {
   8678     className: "blocks-gallery-grid"
   8679   }, images.map(image => {
   8680     let href;
   8681 
   8682     switch (linkTo) {
   8683       case constants_LINK_DESTINATION_MEDIA:
   8684         href = image.fullUrl || image.url;
   8685         break;
   8686 
   8687       case constants_LINK_DESTINATION_ATTACHMENT:
   8688         href = image.link;
   8689         break;
   8690     }
   8691 
   8692     const img = Object(external_wp_element_["createElement"])("img", {
   8693       src: image.url,
   8694       alt: image.alt,
   8695       "data-id": image.id,
   8696       "data-full-url": image.fullUrl,
   8697       "data-link": image.link,
   8698       className: image.id ? `wp-image-${image.id}` : null
   8699     });
   8700     return Object(external_wp_element_["createElement"])("li", {
   8701       key: image.id || image.url,
   8702       className: "blocks-gallery-item"
   8703     }, Object(external_wp_element_["createElement"])("figure", null, href ? Object(external_wp_element_["createElement"])("a", {
   8704       href: href
   8705     }, img) : img, !external_wp_blockEditor_["RichText"].isEmpty(image.caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   8706       tagName: "figcaption",
   8707       className: "blocks-gallery-item__caption",
   8708       value: image.caption
   8709     })));
   8710   })), !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   8711     tagName: "figcaption",
   8712     className: "blocks-gallery-caption",
   8713     value: caption
   8714   }));
   8715 }
   8716 
   8717 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/transforms.js
   8718 /**
   8719  * External dependencies
   8720  */
   8721 
   8722 /**
   8723  * WordPress dependencies
   8724  */
   8725 
   8726 
   8727 
   8728 /**
   8729  * Internal dependencies
   8730  */
   8731 
   8732 
   8733 
   8734 
   8735 const parseShortcodeIds = ids => {
   8736   if (!ids) {
   8737     return [];
   8738   }
   8739 
   8740   return ids.split(',').map(id => parseInt(id, 10));
   8741 };
   8742 
   8743 const gallery_transforms_transforms = {
   8744   from: [{
   8745     type: 'block',
   8746     isMultiBlock: true,
   8747     blocks: ['core/image'],
   8748     transform: attributes => {
   8749       // Init the align and size from the first item which may be either the placeholder or an image.
   8750       let {
   8751         align,
   8752         sizeSlug
   8753       } = attributes[0]; // Loop through all the images and check if they have the same align and size.
   8754 
   8755       align = Object(external_lodash_["every"])(attributes, ['align', align]) ? align : undefined;
   8756       sizeSlug = Object(external_lodash_["every"])(attributes, ['sizeSlug', sizeSlug]) ? sizeSlug : undefined;
   8757       const validImages = Object(external_lodash_["filter"])(attributes, ({
   8758         url
   8759       }) => url);
   8760       return Object(external_wp_blocks_["createBlock"])('core/gallery', {
   8761         images: validImages.map(({
   8762           id,
   8763           url,
   8764           alt,
   8765           caption
   8766         }) => ({
   8767           id: Object(external_lodash_["toString"])(id),
   8768           url,
   8769           alt,
   8770           caption
   8771         })),
   8772         ids: validImages.map(({
   8773           id
   8774         }) => parseInt(id, 10)),
   8775         align,
   8776         sizeSlug
   8777       });
   8778     }
   8779   }, {
   8780     type: 'shortcode',
   8781     tag: 'gallery',
   8782     attributes: {
   8783       images: {
   8784         type: 'array',
   8785         shortcode: ({
   8786           named: {
   8787             ids
   8788           }
   8789         }) => {
   8790           return parseShortcodeIds(ids).map(id => ({
   8791             id: Object(external_lodash_["toString"])(id)
   8792           }));
   8793         }
   8794       },
   8795       ids: {
   8796         type: 'array',
   8797         shortcode: ({
   8798           named: {
   8799             ids
   8800           }
   8801         }) => {
   8802           return parseShortcodeIds(ids);
   8803         }
   8804       },
   8805       columns: {
   8806         type: 'number',
   8807         shortcode: ({
   8808           named: {
   8809             columns = '3'
   8810           }
   8811         }) => {
   8812           return parseInt(columns, 10);
   8813         }
   8814       },
   8815       linkTo: {
   8816         type: 'string',
   8817         shortcode: ({
   8818           named: {
   8819             link = constants_LINK_DESTINATION_ATTACHMENT
   8820           }
   8821         }) => {
   8822           return link;
   8823         }
   8824       }
   8825     },
   8826 
   8827     isMatch({
   8828       named
   8829     }) {
   8830       return undefined !== named.ids;
   8831     }
   8832 
   8833   }, {
   8834     // When created by drag and dropping multiple files on an insertion point
   8835     type: 'files',
   8836 
   8837     isMatch(files) {
   8838       return files.length !== 1 && Object(external_lodash_["every"])(files, file => file.type.indexOf('image/') === 0);
   8839     },
   8840 
   8841     transform(files) {
   8842       const block = Object(external_wp_blocks_["createBlock"])('core/gallery', {
   8843         images: files.map(file => shared_pickRelevantMediaFiles({
   8844           url: Object(external_wp_blob_["createBlobURL"])(file)
   8845         }))
   8846       });
   8847       return block;
   8848     }
   8849 
   8850   }],
   8851   to: [{
   8852     type: 'block',
   8853     blocks: ['core/image'],
   8854     transform: ({
   8855       images,
   8856       align,
   8857       sizeSlug,
   8858       ids
   8859     }) => {
   8860       if (images.length > 0) {
   8861         return images.map(({
   8862           url,
   8863           alt,
   8864           caption
   8865         }, index) => Object(external_wp_blocks_["createBlock"])('core/image', {
   8866           id: ids[index],
   8867           url,
   8868           alt,
   8869           caption,
   8870           align,
   8871           sizeSlug
   8872         }));
   8873       }
   8874 
   8875       return Object(external_wp_blocks_["createBlock"])('core/image', {
   8876         align
   8877       });
   8878     }
   8879   }]
   8880 };
   8881 /* harmony default export */ var gallery_transforms = (gallery_transforms_transforms);
   8882 
   8883 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/gallery/index.js
   8884 /**
   8885  * WordPress dependencies
   8886  */
   8887 
   8888 /**
   8889  * Internal dependencies
   8890  */
   8891 
   8892 
   8893 
   8894 const gallery_metadata = {
   8895   apiVersion: 2,
   8896   name: "core/gallery",
   8897   title: "Gallery",
   8898   category: "media",
   8899   description: "Display multiple images in a rich gallery.",
   8900   keywords: ["images", "photos"],
   8901   textdomain: "default",
   8902   attributes: {
   8903     images: {
   8904       type: "array",
   8905       "default": [],
   8906       source: "query",
   8907       selector: ".blocks-gallery-item",
   8908       query: {
   8909         url: {
   8910           type: "string",
   8911           source: "attribute",
   8912           selector: "img",
   8913           attribute: "src"
   8914         },
   8915         fullUrl: {
   8916           type: "string",
   8917           source: "attribute",
   8918           selector: "img",
   8919           attribute: "data-full-url"
   8920         },
   8921         link: {
   8922           type: "string",
   8923           source: "attribute",
   8924           selector: "img",
   8925           attribute: "data-link"
   8926         },
   8927         alt: {
   8928           type: "string",
   8929           source: "attribute",
   8930           selector: "img",
   8931           attribute: "alt",
   8932           "default": ""
   8933         },
   8934         id: {
   8935           type: "string",
   8936           source: "attribute",
   8937           selector: "img",
   8938           attribute: "data-id"
   8939         },
   8940         caption: {
   8941           type: "string",
   8942           source: "html",
   8943           selector: ".blocks-gallery-item__caption"
   8944         }
   8945       }
   8946     },
   8947     ids: {
   8948       type: "array",
   8949       items: {
   8950         type: "number"
   8951       },
   8952       "default": []
   8953     },
   8954     columns: {
   8955       type: "number",
   8956       minimum: 1,
   8957       maximum: 8
   8958     },
   8959     caption: {
   8960       type: "string",
   8961       source: "html",
   8962       selector: ".blocks-gallery-caption"
   8963     },
   8964     imageCrop: {
   8965       type: "boolean",
   8966       "default": true
   8967     },
   8968     linkTo: {
   8969       type: "string"
   8970     },
   8971     sizeSlug: {
   8972       type: "string",
   8973       "default": "large"
   8974     }
   8975   },
   8976   supports: {
   8977     anchor: true,
   8978     align: true
   8979   },
   8980   editorStyle: "wp-block-gallery-editor",
   8981   style: "wp-block-gallery"
   8982 };
   8983 
   8984 
   8985 const {
   8986   name: gallery_name
   8987 } = gallery_metadata;
   8988 
   8989 const gallery_settings = {
   8990   icon: library_gallery,
   8991   example: {
   8992     attributes: {
   8993       columns: 2,
   8994       images: [{
   8995         url: 'https://s.w.org/images/core/5.3/Glacial_lakes%2C_Bhutan.jpg'
   8996       }, {
   8997         url: 'https://s.w.org/images/core/5.3/Sediment_off_the_Yucatan_Peninsula.jpg'
   8998       }]
   8999     }
   9000   },
   9001   transforms: gallery_transforms,
   9002   edit: gallery_edit,
   9003   save: gallery_save_save,
   9004   deprecated: gallery_deprecated
   9005 };
   9006 
   9007 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/archive.js
   9008 
   9009 
   9010 /**
   9011  * WordPress dependencies
   9012  */
   9013 
   9014 const archive = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   9015   viewBox: "0 0 24 24",
   9016   xmlns: "http://www.w3.org/2000/svg"
   9017 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   9018   d: "M19 6.2h-5.9l-.6-1.1c-.3-.7-1-1.1-1.8-1.1H5c-1.1 0-2 .9-2 2v11.8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V8.2c0-1.1-.9-2-2-2zm.5 11.6c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h5.8c.2 0 .4.1.4.3l1 2H19c.3 0 .5.2.5.5v9.5zM8 12.8h8v-1.5H8v1.5zm0 3h8v-1.5H8v1.5z"
   9019 }));
   9020 /* harmony default export */ var library_archive = (archive);
   9021 
   9022 // EXTERNAL MODULE: external ["wp","serverSideRender"]
   9023 var external_wp_serverSideRender_ = __webpack_require__("JREk");
   9024 var external_wp_serverSideRender_default = /*#__PURE__*/__webpack_require__.n(external_wp_serverSideRender_);
   9025 
   9026 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/archives/edit.js
   9027 
   9028 
   9029 /**
   9030  * WordPress dependencies
   9031  */
   9032 
   9033 
   9034 
   9035 
   9036 function ArchivesEdit({
   9037   attributes,
   9038   setAttributes
   9039 }) {
   9040   const {
   9041     showPostCounts,
   9042     displayAsDropdown
   9043   } = attributes;
   9044   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
   9045     title: Object(external_wp_i18n_["__"])('Archives settings')
   9046   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
   9047     label: Object(external_wp_i18n_["__"])('Display as dropdown'),
   9048     checked: displayAsDropdown,
   9049     onChange: () => setAttributes({
   9050       displayAsDropdown: !displayAsDropdown
   9051     })
   9052   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
   9053     label: Object(external_wp_i18n_["__"])('Show post counts'),
   9054     checked: showPostCounts,
   9055     onChange: () => setAttributes({
   9056       showPostCounts: !showPostCounts
   9057     })
   9058   }))), Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"], null, Object(external_wp_element_["createElement"])(external_wp_serverSideRender_default.a, {
   9059     block: "core/archives",
   9060     attributes: attributes
   9061   }))));
   9062 }
   9063 
   9064 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/archives/index.js
   9065 /**
   9066  * WordPress dependencies
   9067  */
   9068 
   9069 /**
   9070  * Internal dependencies
   9071  */
   9072 
   9073 const archives_metadata = {
   9074   apiVersion: 2,
   9075   name: "core/archives",
   9076   title: "Archives",
   9077   category: "widgets",
   9078   description: "Display a monthly archive of your posts.",
   9079   textdomain: "default",
   9080   attributes: {
   9081     displayAsDropdown: {
   9082       type: "boolean",
   9083       "default": false
   9084     },
   9085     showPostCounts: {
   9086       type: "boolean",
   9087       "default": false
   9088     }
   9089   },
   9090   supports: {
   9091     align: true,
   9092     html: false
   9093   },
   9094   editorStyle: "wp-block-archives-editor"
   9095 };
   9096 
   9097 const {
   9098   name: archives_name
   9099 } = archives_metadata;
   9100 
   9101 const archives_settings = {
   9102   icon: library_archive,
   9103   example: {},
   9104   edit: ArchivesEdit
   9105 };
   9106 
   9107 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/audio.js
   9108 
   9109 
   9110 /**
   9111  * WordPress dependencies
   9112  */
   9113 
   9114 const audio = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   9115   viewBox: "0 0 24 24",
   9116   xmlns: "http://www.w3.org/2000/svg"
   9117 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   9118   d: "M17.7 4.3c-1.2 0-2.8 0-3.8 1-.6.6-.9 1.5-.9 2.6V14c-.6-.6-1.5-1-2.5-1C8.6 13 7 14.6 7 16.5S8.6 20 10.5 20c1.5 0 2.8-1 3.3-2.3.5-.8.7-1.8.7-2.5V7.9c0-.7.2-1.2.5-1.6.6-.6 1.8-.6 2.8-.6h.3V4.3h-.4z"
   9119 }));
   9120 /* harmony default export */ var library_audio = (audio);
   9121 
   9122 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/deprecated.js
   9123 
   9124 
   9125 /**
   9126  * WordPress dependencies
   9127  */
   9128 
   9129 /* harmony default export */ var audio_deprecated = ([{
   9130   attributes: {
   9131     src: {
   9132       type: 'string',
   9133       source: 'attribute',
   9134       selector: 'audio',
   9135       attribute: 'src'
   9136     },
   9137     caption: {
   9138       type: 'string',
   9139       source: 'html',
   9140       selector: 'figcaption'
   9141     },
   9142     id: {
   9143       type: 'number'
   9144     },
   9145     autoplay: {
   9146       type: 'boolean',
   9147       source: 'attribute',
   9148       selector: 'audio',
   9149       attribute: 'autoplay'
   9150     },
   9151     loop: {
   9152       type: 'boolean',
   9153       source: 'attribute',
   9154       selector: 'audio',
   9155       attribute: 'loop'
   9156     },
   9157     preload: {
   9158       type: 'string',
   9159       source: 'attribute',
   9160       selector: 'audio',
   9161       attribute: 'preload'
   9162     }
   9163   },
   9164   supports: {
   9165     align: true
   9166   },
   9167 
   9168   save({
   9169     attributes
   9170   }) {
   9171     const {
   9172       autoplay,
   9173       caption,
   9174       loop,
   9175       preload,
   9176       src
   9177     } = attributes;
   9178     return Object(external_wp_element_["createElement"])("figure", null, Object(external_wp_element_["createElement"])("audio", {
   9179       controls: "controls",
   9180       src: src,
   9181       autoPlay: autoplay,
   9182       loop: loop,
   9183       preload: preload
   9184     }), !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   9185       tagName: "figcaption",
   9186       value: caption
   9187     }));
   9188   }
   9189 
   9190 }]);
   9191 
   9192 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/edit.js
   9193 
   9194 
   9195 /**
   9196  * WordPress dependencies
   9197  */
   9198 
   9199 
   9200 
   9201 
   9202 
   9203 
   9204 
   9205 
   9206 /**
   9207  * Internal dependencies
   9208  */
   9209 
   9210 
   9211 const audio_edit_ALLOWED_MEDIA_TYPES = ['audio'];
   9212 
   9213 function AudioEdit({
   9214   attributes,
   9215   noticeOperations,
   9216   setAttributes,
   9217   onReplace,
   9218   isSelected,
   9219   noticeUI,
   9220   insertBlocksAfter
   9221 }) {
   9222   const {
   9223     id,
   9224     autoplay,
   9225     caption,
   9226     loop,
   9227     preload,
   9228     src
   9229   } = attributes;
   9230   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
   9231   const mediaUpload = Object(external_wp_data_["useSelect"])(select => {
   9232     const {
   9233       getSettings
   9234     } = select(external_wp_blockEditor_["store"]);
   9235     return getSettings().mediaUpload;
   9236   }, []);
   9237   Object(external_wp_element_["useEffect"])(() => {
   9238     if (!id && Object(external_wp_blob_["isBlobURL"])(src)) {
   9239       const file = Object(external_wp_blob_["getBlobByURL"])(src);
   9240 
   9241       if (file) {
   9242         mediaUpload({
   9243           filesList: [file],
   9244           onFileChange: ([{
   9245             id: mediaId,
   9246             url
   9247           }]) => {
   9248             setAttributes({
   9249               id: mediaId,
   9250               src: url
   9251             });
   9252           },
   9253           onError: e => {
   9254             setAttributes({
   9255               src: undefined,
   9256               id: undefined
   9257             });
   9258             noticeOperations.createErrorNotice(e);
   9259           },
   9260           allowedTypes: audio_edit_ALLOWED_MEDIA_TYPES
   9261         });
   9262       }
   9263     }
   9264   }, []);
   9265 
   9266   function toggleAttribute(attribute) {
   9267     return newValue => {
   9268       setAttributes({
   9269         [attribute]: newValue
   9270       });
   9271     };
   9272   }
   9273 
   9274   function onSelectURL(newSrc) {
   9275     // Set the block's src from the edit component's state, and switch off
   9276     // the editing UI.
   9277     if (newSrc !== src) {
   9278       // Check if there's an embed block that handles this URL.
   9279       const embedBlock = createUpgradedEmbedBlock({
   9280         attributes: {
   9281           url: newSrc
   9282         }
   9283       });
   9284 
   9285       if (undefined !== embedBlock) {
   9286         onReplace(embedBlock);
   9287         return;
   9288       }
   9289 
   9290       setAttributes({
   9291         src: newSrc,
   9292         id: undefined
   9293       });
   9294     }
   9295   }
   9296 
   9297   function onUploadError(message) {
   9298     noticeOperations.removeAllNotices();
   9299     noticeOperations.createErrorNotice(message);
   9300   }
   9301 
   9302   function getAutoplayHelp(checked) {
   9303     return checked ? Object(external_wp_i18n_["__"])('Autoplay may cause usability issues for some users.') : null;
   9304   } // const { setAttributes, isSelected, noticeUI } = this.props;
   9305 
   9306 
   9307   function onSelectAudio(media) {
   9308     if (!media || !media.url) {
   9309       // in this case there was an error and we should continue in the editing state
   9310       // previous attributes should be removed because they may be temporary blob urls
   9311       setAttributes({
   9312         src: undefined,
   9313         id: undefined
   9314       });
   9315       return;
   9316     } // sets the block's attribute and updates the edit component from the
   9317     // selected media, then switches off the editing UI
   9318 
   9319 
   9320     setAttributes({
   9321       src: media.url,
   9322       id: media.id
   9323     });
   9324   }
   9325 
   9326   if (!src) {
   9327     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
   9328       icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
   9329         icon: library_audio
   9330       }),
   9331       onSelect: onSelectAudio,
   9332       onSelectURL: onSelectURL,
   9333       accept: "audio/*",
   9334       allowedTypes: audio_edit_ALLOWED_MEDIA_TYPES,
   9335       value: attributes,
   9336       notices: noticeUI,
   9337       onError: onUploadError
   9338     }));
   9339   }
   9340 
   9341   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
   9342     group: "other"
   9343   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
   9344     mediaId: id,
   9345     mediaURL: src,
   9346     allowedTypes: audio_edit_ALLOWED_MEDIA_TYPES,
   9347     accept: "audio/*",
   9348     onSelect: onSelectAudio,
   9349     onSelectURL: onSelectURL,
   9350     onError: onUploadError
   9351   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
   9352     title: Object(external_wp_i18n_["__"])('Audio settings')
   9353   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
   9354     label: Object(external_wp_i18n_["__"])('Autoplay'),
   9355     onChange: toggleAttribute('autoplay'),
   9356     checked: autoplay,
   9357     help: getAutoplayHelp
   9358   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
   9359     label: Object(external_wp_i18n_["__"])('Loop'),
   9360     onChange: toggleAttribute('loop'),
   9361     checked: loop
   9362   }), Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
   9363     label: Object(external_wp_i18n_["__"])('Preload'),
   9364     value: preload || '' // `undefined` is required for the preload attribute to be unset.
   9365     ,
   9366     onChange: value => setAttributes({
   9367       preload: value || undefined
   9368     }),
   9369     options: [{
   9370       value: '',
   9371       label: Object(external_wp_i18n_["__"])('Browser default')
   9372     }, {
   9373       value: 'auto',
   9374       label: Object(external_wp_i18n_["__"])('Auto')
   9375     }, {
   9376       value: 'metadata',
   9377       label: Object(external_wp_i18n_["__"])('Metadata')
   9378     }, {
   9379       value: 'none',
   9380       label: Object(external_wp_i18n_["__"])('None')
   9381     }]
   9382   }))), Object(external_wp_element_["createElement"])("figure", blockProps, Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"], {
   9383     isDisabled: !isSelected
   9384   }, Object(external_wp_element_["createElement"])("audio", {
   9385     controls: "controls",
   9386     src: src
   9387   })), (!external_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
   9388     tagName: "figcaption",
   9389     "aria-label": Object(external_wp_i18n_["__"])('Audio caption text'),
   9390     placeholder: Object(external_wp_i18n_["__"])('Add caption'),
   9391     value: caption,
   9392     onChange: value => setAttributes({
   9393       caption: value
   9394     }),
   9395     inlineToolbar: true,
   9396     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
   9397   })));
   9398 }
   9399 
   9400 /* harmony default export */ var audio_edit = (Object(external_wp_components_["withNotices"])(AudioEdit));
   9401 
   9402 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/save.js
   9403 
   9404 
   9405 /**
   9406  * WordPress dependencies
   9407  */
   9408 
   9409 function audio_save_save({
   9410   attributes
   9411 }) {
   9412   const {
   9413     autoplay,
   9414     caption,
   9415     loop,
   9416     preload,
   9417     src
   9418   } = attributes;
   9419   return src && Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])("audio", {
   9420     controls: "controls",
   9421     src: src,
   9422     autoPlay: autoplay,
   9423     loop: loop,
   9424     preload: preload
   9425   }), !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   9426     tagName: "figcaption",
   9427     value: caption
   9428   }));
   9429 }
   9430 
   9431 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/transforms.js
   9432 /**
   9433  * WordPress dependencies
   9434  */
   9435 
   9436 
   9437 const audio_transforms_transforms = {
   9438   from: [{
   9439     type: 'files',
   9440 
   9441     isMatch(files) {
   9442       return files.length === 1 && files[0].type.indexOf('audio/') === 0;
   9443     },
   9444 
   9445     transform(files) {
   9446       const file = files[0]; // We don't need to upload the media directly here
   9447       // It's already done as part of the `componentDidMount`
   9448       // in the audio block
   9449 
   9450       const block = Object(external_wp_blocks_["createBlock"])('core/audio', {
   9451         src: Object(external_wp_blob_["createBlobURL"])(file)
   9452       });
   9453       return block;
   9454     }
   9455 
   9456   }, {
   9457     type: 'shortcode',
   9458     tag: 'audio',
   9459     attributes: {
   9460       src: {
   9461         type: 'string',
   9462         shortcode: ({
   9463           named: {
   9464             src,
   9465             mp3,
   9466             m4a,
   9467             ogg,
   9468             wav,
   9469             wma
   9470           }
   9471         }) => {
   9472           return src || mp3 || m4a || ogg || wav || wma;
   9473         }
   9474       },
   9475       loop: {
   9476         type: 'string',
   9477         shortcode: ({
   9478           named: {
   9479             loop
   9480           }
   9481         }) => {
   9482           return loop;
   9483         }
   9484       },
   9485       autoplay: {
   9486         type: 'string',
   9487         shortcode: ({
   9488           named: {
   9489             autoplay
   9490           }
   9491         }) => {
   9492           return autoplay;
   9493         }
   9494       },
   9495       preload: {
   9496         type: 'string',
   9497         shortcode: ({
   9498           named: {
   9499             preload
   9500           }
   9501         }) => {
   9502           return preload;
   9503         }
   9504       }
   9505     }
   9506   }]
   9507 };
   9508 /* harmony default export */ var audio_transforms = (audio_transforms_transforms);
   9509 
   9510 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/index.js
   9511 /**
   9512  * WordPress dependencies
   9513  */
   9514 
   9515 /**
   9516  * Internal dependencies
   9517  */
   9518 
   9519 
   9520 
   9521 const audio_metadata = {
   9522   apiVersion: 2,
   9523   name: "core/audio",
   9524   title: "Audio",
   9525   category: "media",
   9526   description: "Embed a simple audio player.",
   9527   keywords: ["music", "sound", "podcast", "recording"],
   9528   textdomain: "default",
   9529   attributes: {
   9530     src: {
   9531       type: "string",
   9532       source: "attribute",
   9533       selector: "audio",
   9534       attribute: "src"
   9535     },
   9536     caption: {
   9537       type: "string",
   9538       source: "html",
   9539       selector: "figcaption"
   9540     },
   9541     id: {
   9542       type: "number"
   9543     },
   9544     autoplay: {
   9545       type: "boolean",
   9546       source: "attribute",
   9547       selector: "audio",
   9548       attribute: "autoplay"
   9549     },
   9550     loop: {
   9551       type: "boolean",
   9552       source: "attribute",
   9553       selector: "audio",
   9554       attribute: "loop"
   9555     },
   9556     preload: {
   9557       type: "string",
   9558       source: "attribute",
   9559       selector: "audio",
   9560       attribute: "preload"
   9561     }
   9562   },
   9563   supports: {
   9564     anchor: true,
   9565     align: true
   9566   },
   9567   editorStyle: "wp-block-audio-editor",
   9568   style: "wp-block-audio"
   9569 };
   9570 
   9571 
   9572 const {
   9573   name: audio_name
   9574 } = audio_metadata;
   9575 
   9576 const audio_settings = {
   9577   icon: library_audio,
   9578   transforms: audio_transforms,
   9579   deprecated: audio_deprecated,
   9580   edit: audio_edit,
   9581   save: audio_save_save
   9582 };
   9583 
   9584 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/buttons.js
   9585 
   9586 
   9587 /**
   9588  * WordPress dependencies
   9589  */
   9590 
   9591 const buttons_buttons = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
   9592   viewBox: "0 0 24 24",
   9593   xmlns: "http://www.w3.org/2000/svg"
   9594 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
   9595   d: "M17 3H7c-1.1 0-2 .9-2 2v4c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 6c0 .3-.2.5-.5.5H7c-.3 0-.5-.2-.5-.5V5c0-.3.2-.5.5-.5h10c.3 0 .5.2.5.5v4zm-8-1.2h5V6.2h-5v1.6zM17 13H7c-1.1 0-2 .9-2 2v4c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2v-4c0-1.1-.9-2-2-2zm.5 6c0 .3-.2.5-.5.5H7c-.3 0-.5-.2-.5-.5v-4c0-.3.2-.5.5-.5h10c.3 0 .5.2.5.5v4zm-8-1.2h5v-1.5h-5v1.5z"
   9596 }));
   9597 /* harmony default export */ var library_buttons = (buttons_buttons);
   9598 
   9599 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/deprecated.js
   9600 
   9601 
   9602 /**
   9603  * WordPress dependencies
   9604  */
   9605 
   9606 const buttons_deprecated_deprecated = [{
   9607   supports: {
   9608     align: ['center', 'left', 'right'],
   9609     anchor: true
   9610   },
   9611 
   9612   save() {
   9613     return Object(external_wp_element_["createElement"])("div", null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
   9614   },
   9615 
   9616   isEligible({
   9617     align
   9618   }) {
   9619     return align && ['center', 'left', 'right'].includes(align);
   9620   },
   9621 
   9622   migrate(attributes) {
   9623     return { ...attributes,
   9624       align: undefined,
   9625       // Floating Buttons blocks shouldn't have been supported in the
   9626       // first place. Most users using them probably expected them to
   9627       // act like content justification controls, so these blocks are
   9628       // migrated to use content justification.
   9629       // As for center-aligned Buttons blocks, the content justification
   9630       // equivalent will create an identical end result in most cases.
   9631       contentJustification: attributes.align
   9632     };
   9633   }
   9634 
   9635 }];
   9636 /* harmony default export */ var buttons_deprecated = (buttons_deprecated_deprecated);
   9637 
   9638 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/transforms.js
   9639 /**
   9640  * WordPress dependencies
   9641  */
   9642 
   9643 
   9644 /**
   9645  * Internal dependencies
   9646  */
   9647 
   9648 const {
   9649   name: buttons_transforms_name
   9650 } = {
   9651   apiVersion: 2,
   9652   name: "core/buttons",
   9653   title: "Buttons",
   9654   category: "design",
   9655   description: "Prompt visitors to take action with a group of button-style links.",
   9656   keywords: ["link"],
   9657   textdomain: "default",
   9658   attributes: {
   9659     contentJustification: {
   9660       type: "string"
   9661     },
   9662     orientation: {
   9663       type: "string",
   9664       "default": "horizontal"
   9665     }
   9666   },
   9667   supports: {
   9668     anchor: true,
   9669     align: ["wide", "full"]
   9670   },
   9671   editorStyle: "wp-block-buttons-editor",
   9672   style: "wp-block-buttons"
   9673 };
   9674 const buttons_transforms_transforms = {
   9675   from: [{
   9676     type: 'block',
   9677     isMultiBlock: true,
   9678     blocks: ['core/button'],
   9679     transform: buttons => // Creates the buttons block
   9680     Object(external_wp_blocks_["createBlock"])(buttons_transforms_name, {}, // Loop the selected buttons
   9681     buttons.map(attributes => // Create singular button in the buttons block
   9682     Object(external_wp_blocks_["createBlock"])('core/button', attributes)))
   9683   }, {
   9684     type: 'block',
   9685     isMultiBlock: true,
   9686     blocks: ['core/paragraph'],
   9687     transform: buttons => // Creates the buttons block
   9688     Object(external_wp_blocks_["createBlock"])(buttons_transforms_name, {}, // Loop the selected buttons
   9689     buttons.map(attributes => {
   9690       const element = Object(external_wp_richText_["__unstableCreateElement"])(document, attributes.content); // Remove any HTML tags
   9691 
   9692       const text = element.innerText || ''; // Get first url
   9693 
   9694       const link = element.querySelector('a');
   9695       const url = link === null || link === void 0 ? void 0 : link.getAttribute('href'); // Create singular button in the buttons block
   9696 
   9697       return Object(external_wp_blocks_["createBlock"])('core/button', {
   9698         text,
   9699         url
   9700       });
   9701     })),
   9702     isMatch: paragraphs => {
   9703       return paragraphs.every(attributes => {
   9704         const element = Object(external_wp_richText_["__unstableCreateElement"])(document, attributes.content);
   9705         const text = element.innerText || '';
   9706         const links = element.querySelectorAll('a');
   9707         return text.length <= 30 && links.length <= 1;
   9708       });
   9709     }
   9710   }]
   9711 };
   9712 /* harmony default export */ var buttons_transforms = (buttons_transforms_transforms);
   9713 
   9714 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/button.js
   9715 var library_button = __webpack_require__("oMoS");
   9716 
   9717 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/deprecated.js
   9718 
   9719 
   9720 /**
   9721  * External dependencies
   9722  */
   9723 
   9724 
   9725 /**
   9726  * WordPress dependencies
   9727  */
   9728 
   9729 
   9730 
   9731 
   9732 const migrateBorderRadius = attributes => {
   9733   const {
   9734     borderRadius,
   9735     ...newAttributes
   9736   } = attributes;
   9737 
   9738   if (!borderRadius && borderRadius !== 0) {
   9739     return newAttributes;
   9740   }
   9741 
   9742   return { ...newAttributes,
   9743     style: { ...newAttributes.style,
   9744       border: {
   9745         radius: borderRadius
   9746       }
   9747     }
   9748   };
   9749 };
   9750 
   9751 const migrateCustomColorsAndGradients = attributes => {
   9752   if (!attributes.customTextColor && !attributes.customBackgroundColor && !attributes.customGradient) {
   9753     return attributes;
   9754   }
   9755 
   9756   const style = {
   9757     color: {}
   9758   };
   9759 
   9760   if (attributes.customTextColor) {
   9761     style.color.text = attributes.customTextColor;
   9762   }
   9763 
   9764   if (attributes.customBackgroundColor) {
   9765     style.color.background = attributes.customBackgroundColor;
   9766   }
   9767 
   9768   if (attributes.customGradient) {
   9769     style.color.gradient = attributes.customGradient;
   9770   }
   9771 
   9772   return { ...Object(external_lodash_["omit"])(attributes, ['customTextColor', 'customBackgroundColor', 'customGradient']),
   9773     style
   9774   };
   9775 };
   9776 
   9777 const oldColorsMigration = attributes => {
   9778   return migrateCustomColorsAndGradients(Object(external_lodash_["omit"])({ ...attributes,
   9779     customTextColor: attributes.textColor && '#' === attributes.textColor[0] ? attributes.textColor : undefined,
   9780     customBackgroundColor: attributes.color && '#' === attributes.color[0] ? attributes.color : undefined
   9781   }, ['color', 'textColor']));
   9782 };
   9783 
   9784 const button_deprecated_blockAttributes = {
   9785   url: {
   9786     type: 'string',
   9787     source: 'attribute',
   9788     selector: 'a',
   9789     attribute: 'href'
   9790   },
   9791   title: {
   9792     type: 'string',
   9793     source: 'attribute',
   9794     selector: 'a',
   9795     attribute: 'title'
   9796   },
   9797   text: {
   9798     type: 'string',
   9799     source: 'html',
   9800     selector: 'a'
   9801   }
   9802 };
   9803 const button_deprecated_deprecated = [{
   9804   supports: {
   9805     anchor: true,
   9806     align: true,
   9807     alignWide: false,
   9808     color: {
   9809       __experimentalSkipSerialization: true
   9810     },
   9811     reusable: false,
   9812     __experimentalSelector: '.wp-block-button__link'
   9813   },
   9814   attributes: { ...button_deprecated_blockAttributes,
   9815     linkTarget: {
   9816       type: 'string',
   9817       source: 'attribute',
   9818       selector: 'a',
   9819       attribute: 'target'
   9820     },
   9821     rel: {
   9822       type: 'string',
   9823       source: 'attribute',
   9824       selector: 'a',
   9825       attribute: 'rel'
   9826     },
   9827     placeholder: {
   9828       type: 'string'
   9829     },
   9830     borderRadius: {
   9831       type: 'number'
   9832     },
   9833     backgroundColor: {
   9834       type: 'string'
   9835     },
   9836     textColor: {
   9837       type: 'string'
   9838     },
   9839     gradient: {
   9840       type: 'string'
   9841     },
   9842     style: {
   9843       type: 'object'
   9844     },
   9845     width: {
   9846       type: 'number'
   9847     }
   9848   },
   9849 
   9850   save({
   9851     attributes,
   9852     className
   9853   }) {
   9854     const {
   9855       borderRadius,
   9856       linkTarget,
   9857       rel,
   9858       text,
   9859       title,
   9860       url,
   9861       width
   9862     } = attributes;
   9863     const colorProps = Object(external_wp_blockEditor_["__experimentalGetColorClassesAndStyles"])(attributes);
   9864     const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, {
   9865       'no-border-radius': borderRadius === 0
   9866     });
   9867     const buttonStyle = {
   9868       borderRadius: borderRadius ? borderRadius + 'px' : undefined,
   9869       ...colorProps.style
   9870     }; // The use of a `title` attribute here is soft-deprecated, but still applied
   9871     // if it had already been assigned, for the sake of backward-compatibility.
   9872     // A title will no longer be assigned for new or updated button block links.
   9873 
   9874     const wrapperClasses = classnames_default()(className, {
   9875       [`has-custom-width wp-block-button__width-${width}`]: width
   9876     });
   9877     return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
   9878       className: wrapperClasses
   9879     }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   9880       tagName: "a",
   9881       className: buttonClasses,
   9882       href: url,
   9883       title: title,
   9884       style: buttonStyle,
   9885       value: text,
   9886       target: linkTarget,
   9887       rel: rel
   9888     }));
   9889   },
   9890 
   9891   migrate: migrateBorderRadius
   9892 }, {
   9893   supports: {
   9894     anchor: true,
   9895     align: true,
   9896     alignWide: false,
   9897     color: {
   9898       __experimentalSkipSerialization: true
   9899     },
   9900     reusable: false,
   9901     __experimentalSelector: '.wp-block-button__link'
   9902   },
   9903   attributes: { ...button_deprecated_blockAttributes,
   9904     linkTarget: {
   9905       type: 'string',
   9906       source: 'attribute',
   9907       selector: 'a',
   9908       attribute: 'target'
   9909     },
   9910     rel: {
   9911       type: 'string',
   9912       source: 'attribute',
   9913       selector: 'a',
   9914       attribute: 'rel'
   9915     },
   9916     placeholder: {
   9917       type: 'string'
   9918     },
   9919     borderRadius: {
   9920       type: 'number'
   9921     },
   9922     backgroundColor: {
   9923       type: 'string'
   9924     },
   9925     textColor: {
   9926       type: 'string'
   9927     },
   9928     gradient: {
   9929       type: 'string'
   9930     },
   9931     style: {
   9932       type: 'object'
   9933     },
   9934     width: {
   9935       type: 'number'
   9936     }
   9937   },
   9938 
   9939   save({
   9940     attributes,
   9941     className
   9942   }) {
   9943     const {
   9944       borderRadius,
   9945       linkTarget,
   9946       rel,
   9947       text,
   9948       title,
   9949       url,
   9950       width
   9951     } = attributes;
   9952     const colorProps = Object(external_wp_blockEditor_["__experimentalGetColorClassesAndStyles"])(attributes);
   9953     const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, {
   9954       'no-border-radius': borderRadius === 0
   9955     });
   9956     const buttonStyle = {
   9957       borderRadius: borderRadius ? borderRadius + 'px' : undefined,
   9958       ...colorProps.style
   9959     }; // The use of a `title` attribute here is soft-deprecated, but still applied
   9960     // if it had already been assigned, for the sake of backward-compatibility.
   9961     // A title will no longer be assigned for new or updated button block links.
   9962 
   9963     const wrapperClasses = classnames_default()(className, {
   9964       [`has-custom-width wp-block-button__width-${width}`]: width
   9965     });
   9966     return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
   9967       className: wrapperClasses
   9968     }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
   9969       tagName: "a",
   9970       className: buttonClasses,
   9971       href: url,
   9972       title: title,
   9973       style: buttonStyle,
   9974       value: text,
   9975       target: linkTarget,
   9976       rel: rel
   9977     }));
   9978   },
   9979 
   9980   migrate: migrateBorderRadius
   9981 }, {
   9982   supports: {
   9983     align: true,
   9984     alignWide: false,
   9985     color: {
   9986       gradients: true
   9987     }
   9988   },
   9989   attributes: { ...button_deprecated_blockAttributes,
   9990     linkTarget: {
   9991       type: 'string',
   9992       source: 'attribute',
   9993       selector: 'a',
   9994       attribute: 'target'
   9995     },
   9996     rel: {
   9997       type: 'string',
   9998       source: 'attribute',
   9999       selector: 'a',
  10000       attribute: 'rel'
  10001     },
  10002     placeholder: {
  10003       type: 'string'
  10004     },
  10005     borderRadius: {
  10006       type: 'number'
  10007     },
  10008     backgroundColor: {
  10009       type: 'string'
  10010     },
  10011     textColor: {
  10012       type: 'string'
  10013     },
  10014     gradient: {
  10015       type: 'string'
  10016     },
  10017     style: {
  10018       type: 'object'
  10019     }
  10020   },
  10021 
  10022   save({
  10023     attributes
  10024   }) {
  10025     const {
  10026       borderRadius,
  10027       linkTarget,
  10028       rel,
  10029       text,
  10030       title,
  10031       url
  10032     } = attributes;
  10033     const buttonClasses = classnames_default()('wp-block-button__link', {
  10034       'no-border-radius': borderRadius === 0
  10035     });
  10036     const buttonStyle = {
  10037       borderRadius: borderRadius ? borderRadius + 'px' : undefined
  10038     };
  10039     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  10040       tagName: "a",
  10041       className: buttonClasses,
  10042       href: url,
  10043       title: title,
  10044       style: buttonStyle,
  10045       value: text,
  10046       target: linkTarget,
  10047       rel: rel
  10048     });
  10049   },
  10050 
  10051   migrate: migrateBorderRadius
  10052 }, {
  10053   supports: {
  10054     align: true,
  10055     alignWide: false
  10056   },
  10057   attributes: { ...button_deprecated_blockAttributes,
  10058     linkTarget: {
  10059       type: 'string',
  10060       source: 'attribute',
  10061       selector: 'a',
  10062       attribute: 'target'
  10063     },
  10064     rel: {
  10065       type: 'string',
  10066       source: 'attribute',
  10067       selector: 'a',
  10068       attribute: 'rel'
  10069     },
  10070     placeholder: {
  10071       type: 'string'
  10072     },
  10073     borderRadius: {
  10074       type: 'number'
  10075     },
  10076     backgroundColor: {
  10077       type: 'string'
  10078     },
  10079     textColor: {
  10080       type: 'string'
  10081     },
  10082     customBackgroundColor: {
  10083       type: 'string'
  10084     },
  10085     customTextColor: {
  10086       type: 'string'
  10087     },
  10088     customGradient: {
  10089       type: 'string'
  10090     },
  10091     gradient: {
  10092       type: 'string'
  10093     }
  10094   },
  10095   isEligible: attributes => !!attributes.customTextColor || !!attributes.customBackgroundColor || !!attributes.customGradient,
  10096   migrate: Object(external_wp_compose_["compose"])(migrateBorderRadius, migrateCustomColorsAndGradients),
  10097 
  10098   save({
  10099     attributes
  10100   }) {
  10101     const {
  10102       backgroundColor,
  10103       borderRadius,
  10104       customBackgroundColor,
  10105       customTextColor,
  10106       customGradient,
  10107       linkTarget,
  10108       gradient,
  10109       rel,
  10110       text,
  10111       textColor,
  10112       title,
  10113       url
  10114     } = attributes;
  10115     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  10116     const backgroundClass = !customGradient && Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  10117 
  10118     const gradientClass = Object(external_wp_blockEditor_["__experimentalGetGradientClass"])(gradient);
  10119 
  10120     const buttonClasses = classnames_default()('wp-block-button__link', {
  10121       'has-text-color': textColor || customTextColor,
  10122       [textClass]: textClass,
  10123       'has-background': backgroundColor || customBackgroundColor || customGradient || gradient,
  10124       [backgroundClass]: backgroundClass,
  10125       'no-border-radius': borderRadius === 0,
  10126       [gradientClass]: gradientClass
  10127     });
  10128     const buttonStyle = {
  10129       background: customGradient ? customGradient : undefined,
  10130       backgroundColor: backgroundClass || customGradient || gradient ? undefined : customBackgroundColor,
  10131       color: textClass ? undefined : customTextColor,
  10132       borderRadius: borderRadius ? borderRadius + 'px' : undefined
  10133     }; // The use of a `title` attribute here is soft-deprecated, but still applied
  10134     // if it had already been assigned, for the sake of backward-compatibility.
  10135     // A title will no longer be assigned for new or updated button block links.
  10136 
  10137     return Object(external_wp_element_["createElement"])("div", null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  10138       tagName: "a",
  10139       className: buttonClasses,
  10140       href: url,
  10141       title: title,
  10142       style: buttonStyle,
  10143       value: text,
  10144       target: linkTarget,
  10145       rel: rel
  10146     }));
  10147   }
  10148 
  10149 }, {
  10150   attributes: { ...button_deprecated_blockAttributes,
  10151     align: {
  10152       type: 'string',
  10153       default: 'none'
  10154     },
  10155     backgroundColor: {
  10156       type: 'string'
  10157     },
  10158     textColor: {
  10159       type: 'string'
  10160     },
  10161     customBackgroundColor: {
  10162       type: 'string'
  10163     },
  10164     customTextColor: {
  10165       type: 'string'
  10166     },
  10167     linkTarget: {
  10168       type: 'string',
  10169       source: 'attribute',
  10170       selector: 'a',
  10171       attribute: 'target'
  10172     },
  10173     rel: {
  10174       type: 'string',
  10175       source: 'attribute',
  10176       selector: 'a',
  10177       attribute: 'rel'
  10178     },
  10179     placeholder: {
  10180       type: 'string'
  10181     }
  10182   },
  10183 
  10184   isEligible(attribute) {
  10185     return attribute.className && attribute.className.includes('is-style-squared');
  10186   },
  10187 
  10188   migrate(attributes) {
  10189     let newClassName = attributes.className;
  10190 
  10191     if (newClassName) {
  10192       newClassName = newClassName.replace(/is-style-squared[\s]?/, '').trim();
  10193     }
  10194 
  10195     return migrateBorderRadius(migrateCustomColorsAndGradients({ ...attributes,
  10196       className: newClassName ? newClassName : undefined,
  10197       borderRadius: 0
  10198     }));
  10199   },
  10200 
  10201   save({
  10202     attributes
  10203   }) {
  10204     const {
  10205       backgroundColor,
  10206       customBackgroundColor,
  10207       customTextColor,
  10208       linkTarget,
  10209       rel,
  10210       text,
  10211       textColor,
  10212       title,
  10213       url
  10214     } = attributes;
  10215     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  10216     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  10217     const buttonClasses = classnames_default()('wp-block-button__link', {
  10218       'has-text-color': textColor || customTextColor,
  10219       [textClass]: textClass,
  10220       'has-background': backgroundColor || customBackgroundColor,
  10221       [backgroundClass]: backgroundClass
  10222     });
  10223     const buttonStyle = {
  10224       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  10225       color: textClass ? undefined : customTextColor
  10226     };
  10227     return Object(external_wp_element_["createElement"])("div", null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  10228       tagName: "a",
  10229       className: buttonClasses,
  10230       href: url,
  10231       title: title,
  10232       style: buttonStyle,
  10233       value: text,
  10234       target: linkTarget,
  10235       rel: rel
  10236     }));
  10237   }
  10238 
  10239 }, {
  10240   attributes: { ...button_deprecated_blockAttributes,
  10241     align: {
  10242       type: 'string',
  10243       default: 'none'
  10244     },
  10245     backgroundColor: {
  10246       type: 'string'
  10247     },
  10248     textColor: {
  10249       type: 'string'
  10250     },
  10251     customBackgroundColor: {
  10252       type: 'string'
  10253     },
  10254     customTextColor: {
  10255       type: 'string'
  10256     }
  10257   },
  10258   migrate: oldColorsMigration,
  10259 
  10260   save({
  10261     attributes
  10262   }) {
  10263     const {
  10264       url,
  10265       text,
  10266       title,
  10267       backgroundColor,
  10268       textColor,
  10269       customBackgroundColor,
  10270       customTextColor
  10271     } = attributes;
  10272     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  10273     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  10274     const buttonClasses = classnames_default()('wp-block-button__link', {
  10275       'has-text-color': textColor || customTextColor,
  10276       [textClass]: textClass,
  10277       'has-background': backgroundColor || customBackgroundColor,
  10278       [backgroundClass]: backgroundClass
  10279     });
  10280     const buttonStyle = {
  10281       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  10282       color: textClass ? undefined : customTextColor
  10283     };
  10284     return Object(external_wp_element_["createElement"])("div", null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  10285       tagName: "a",
  10286       className: buttonClasses,
  10287       href: url,
  10288       title: title,
  10289       style: buttonStyle,
  10290       value: text
  10291     }));
  10292   }
  10293 
  10294 }, {
  10295   attributes: { ...button_deprecated_blockAttributes,
  10296     color: {
  10297       type: 'string'
  10298     },
  10299     textColor: {
  10300       type: 'string'
  10301     },
  10302     align: {
  10303       type: 'string',
  10304       default: 'none'
  10305     }
  10306   },
  10307 
  10308   save({
  10309     attributes
  10310   }) {
  10311     const {
  10312       url,
  10313       text,
  10314       title,
  10315       align,
  10316       color,
  10317       textColor
  10318     } = attributes;
  10319     const buttonStyle = {
  10320       backgroundColor: color,
  10321       color: textColor
  10322     };
  10323     const linkClass = 'wp-block-button__link';
  10324     return Object(external_wp_element_["createElement"])("div", {
  10325       className: `align${align}`
  10326     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  10327       tagName: "a",
  10328       className: linkClass,
  10329       href: url,
  10330       title: title,
  10331       style: buttonStyle,
  10332       value: text
  10333     }));
  10334   },
  10335 
  10336   migrate: oldColorsMigration
  10337 }, {
  10338   attributes: { ...button_deprecated_blockAttributes,
  10339     color: {
  10340       type: 'string'
  10341     },
  10342     textColor: {
  10343       type: 'string'
  10344     },
  10345     align: {
  10346       type: 'string',
  10347       default: 'none'
  10348     }
  10349   },
  10350 
  10351   save({
  10352     attributes
  10353   }) {
  10354     const {
  10355       url,
  10356       text,
  10357       title,
  10358       align,
  10359       color,
  10360       textColor
  10361     } = attributes;
  10362     return Object(external_wp_element_["createElement"])("div", {
  10363       className: `align${align}`,
  10364       style: {
  10365         backgroundColor: color
  10366       }
  10367     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  10368       tagName: "a",
  10369       href: url,
  10370       title: title,
  10371       style: {
  10372         color: textColor
  10373       },
  10374       value: text
  10375     }));
  10376   },
  10377 
  10378   migrate: oldColorsMigration
  10379 }];
  10380 /* harmony default export */ var button_deprecated = (button_deprecated_deprecated);
  10381 
  10382 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/link.js
  10383 var library_link = __webpack_require__("Bpkj");
  10384 
  10385 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/link-off.js
  10386 var link_off = __webpack_require__("Mp0b");
  10387 
  10388 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/edit.js
  10389 
  10390 
  10391 
  10392 /**
  10393  * External dependencies
  10394  */
  10395 
  10396 /**
  10397  * WordPress dependencies
  10398  */
  10399 
  10400 
  10401 
  10402 
  10403 
  10404 
  10405 
  10406 
  10407 const edit_NEW_TAB_REL = 'noreferrer noopener';
  10408 
  10409 function WidthPanel({
  10410   selectedWidth,
  10411   setAttributes
  10412 }) {
  10413   function handleChange(newWidth) {
  10414     // Check if we are toggling the width off
  10415     const width = selectedWidth === newWidth ? undefined : newWidth; // Update attributes
  10416 
  10417     setAttributes({
  10418       width
  10419     });
  10420   }
  10421 
  10422   return Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  10423     title: Object(external_wp_i18n_["__"])('Width settings')
  10424   }, Object(external_wp_element_["createElement"])(external_wp_components_["ButtonGroup"], {
  10425     "aria-label": Object(external_wp_i18n_["__"])('Button width')
  10426   }, [25, 50, 75, 100].map(widthValue => {
  10427     return Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  10428       key: widthValue,
  10429       isSmall: true,
  10430       isPrimary: widthValue === selectedWidth,
  10431       onClick: () => handleChange(widthValue)
  10432     }, widthValue, "%");
  10433   })));
  10434 }
  10435 
  10436 function URLPicker({
  10437   isSelected,
  10438   url,
  10439   setAttributes,
  10440   opensInNewTab,
  10441   onToggleOpenInNewTab,
  10442   anchorRef,
  10443   richTextRef
  10444 }) {
  10445   const [isEditingURL, setIsEditingURL] = Object(external_wp_element_["useState"])(false);
  10446   const isURLSet = !!url;
  10447 
  10448   const startEditing = event => {
  10449     event.preventDefault();
  10450     setIsEditingURL(true);
  10451   };
  10452 
  10453   const unlink = () => {
  10454     setAttributes({
  10455       url: undefined,
  10456       linkTarget: undefined,
  10457       rel: undefined
  10458     });
  10459     setIsEditingURL(false);
  10460   };
  10461 
  10462   Object(external_wp_element_["useEffect"])(() => {
  10463     if (!isSelected) {
  10464       setIsEditingURL(false);
  10465     }
  10466   }, [isSelected]);
  10467   const isLinkControlVisible = isSelected && (isEditingURL || isURLSet);
  10468   const linkControl = isLinkControlVisible && Object(external_wp_element_["createElement"])(external_wp_components_["Popover"], {
  10469     position: "bottom center",
  10470     onClose: () => {
  10471       var _richTextRef$current;
  10472 
  10473       setIsEditingURL(false);
  10474       (_richTextRef$current = richTextRef.current) === null || _richTextRef$current === void 0 ? void 0 : _richTextRef$current.focus();
  10475     },
  10476     anchorRef: anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current,
  10477     focusOnMount: isEditingURL ? 'firstElement' : false
  10478   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalLinkControl"], {
  10479     className: "wp-block-navigation-link__inline-link-input",
  10480     value: {
  10481       url,
  10482       opensInNewTab
  10483     },
  10484     onChange: ({
  10485       url: newURL = '',
  10486       opensInNewTab: newOpensInNewTab
  10487     }) => {
  10488       setAttributes({
  10489         url: newURL
  10490       });
  10491 
  10492       if (opensInNewTab !== newOpensInNewTab) {
  10493         onToggleOpenInNewTab(newOpensInNewTab);
  10494       }
  10495     },
  10496     onRemove: () => {
  10497       var _richTextRef$current2;
  10498 
  10499       unlink();
  10500       (_richTextRef$current2 = richTextRef.current) === null || _richTextRef$current2 === void 0 ? void 0 : _richTextRef$current2.focus();
  10501     },
  10502     forceIsEditingLink: isEditingURL
  10503   }));
  10504   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  10505     group: "block"
  10506   }, !isURLSet && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  10507     name: "link",
  10508     icon: library_link["a" /* default */],
  10509     title: Object(external_wp_i18n_["__"])('Link'),
  10510     shortcut: external_wp_keycodes_["displayShortcut"].primary('k'),
  10511     onClick: startEditing
  10512   }), isURLSet && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  10513     name: "link",
  10514     icon: link_off["a" /* default */],
  10515     title: Object(external_wp_i18n_["__"])('Unlink'),
  10516     shortcut: external_wp_keycodes_["displayShortcut"].primaryShift('k'),
  10517     onClick: unlink,
  10518     isActive: true
  10519   })), isSelected && Object(external_wp_element_["createElement"])(external_wp_components_["KeyboardShortcuts"], {
  10520     bindGlobal: true,
  10521     shortcuts: {
  10522       [external_wp_keycodes_["rawShortcut"].primary('k')]: startEditing,
  10523       [external_wp_keycodes_["rawShortcut"].primaryShift('k')]: () => {
  10524         var _richTextRef$current3;
  10525 
  10526         unlink();
  10527         (_richTextRef$current3 = richTextRef.current) === null || _richTextRef$current3 === void 0 ? void 0 : _richTextRef$current3.focus();
  10528       }
  10529     }
  10530   }), linkControl);
  10531 }
  10532 
  10533 function ButtonEdit(props) {
  10534   var _style$border;
  10535 
  10536   const {
  10537     attributes,
  10538     setAttributes,
  10539     className,
  10540     isSelected,
  10541     onReplace,
  10542     mergeBlocks
  10543   } = props;
  10544   const {
  10545     linkTarget,
  10546     placeholder,
  10547     rel,
  10548     style,
  10549     text,
  10550     url,
  10551     width
  10552   } = attributes;
  10553   const onSetLinkRel = Object(external_wp_element_["useCallback"])(value => {
  10554     setAttributes({
  10555       rel: value
  10556     });
  10557   }, [setAttributes]);
  10558   const onToggleOpenInNewTab = Object(external_wp_element_["useCallback"])(value => {
  10559     const newLinkTarget = value ? '_blank' : undefined;
  10560     let updatedRel = rel;
  10561 
  10562     if (newLinkTarget && !rel) {
  10563       updatedRel = edit_NEW_TAB_REL;
  10564     } else if (!newLinkTarget && rel === edit_NEW_TAB_REL) {
  10565       updatedRel = undefined;
  10566     }
  10567 
  10568     setAttributes({
  10569       linkTarget: newLinkTarget,
  10570       rel: updatedRel
  10571     });
  10572   }, [rel, setAttributes]);
  10573 
  10574   const setButtonText = newText => {
  10575     // Remove anchor tags from button text content.
  10576     setAttributes({
  10577       text: newText.replace(/<\/?a[^>]*>/g, '')
  10578     });
  10579   };
  10580 
  10581   const borderRadius = style === null || style === void 0 ? void 0 : (_style$border = style.border) === null || _style$border === void 0 ? void 0 : _style$border.radius;
  10582   const colorProps = Object(external_wp_blockEditor_["__experimentalUseColorProps"])(attributes);
  10583   const ref = Object(external_wp_element_["useRef"])();
  10584   const richTextRef = Object(external_wp_element_["useRef"])();
  10585   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  10586     ref
  10587   });
  10588   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({}, blockProps, {
  10589     className: classnames_default()(blockProps.className, {
  10590       [`has-custom-width wp-block-button__width-${width}`]: width,
  10591       [`has-custom-font-size`]: blockProps.style.fontSize
  10592     })
  10593   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  10594     ref: richTextRef,
  10595     "aria-label": Object(external_wp_i18n_["__"])('Button text'),
  10596     placeholder: placeholder || Object(external_wp_i18n_["__"])('Add text…'),
  10597     value: text,
  10598     onChange: value => setButtonText(value),
  10599     withoutInteractiveFormatting: true,
  10600     className: classnames_default()(className, 'wp-block-button__link', colorProps.className, {
  10601       'no-border-radius': borderRadius === 0
  10602     }),
  10603     style: {
  10604       borderRadius: borderRadius ? borderRadius + 'px' : undefined,
  10605       ...colorProps.style
  10606     },
  10607     onSplit: value => Object(external_wp_blocks_["createBlock"])('core/button', { ...attributes,
  10608       text: value
  10609     }),
  10610     onReplace: onReplace,
  10611     onMerge: mergeBlocks,
  10612     identifier: "text"
  10613   })), Object(external_wp_element_["createElement"])(URLPicker, {
  10614     url: url,
  10615     setAttributes: setAttributes,
  10616     isSelected: isSelected,
  10617     opensInNewTab: linkTarget === '_blank',
  10618     onToggleOpenInNewTab: onToggleOpenInNewTab,
  10619     anchorRef: ref,
  10620     richTextRef: richTextRef
  10621   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(WidthPanel, {
  10622     selectedWidth: width,
  10623     setAttributes: setAttributes
  10624   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorAdvancedControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  10625     label: Object(external_wp_i18n_["__"])('Link rel'),
  10626     value: rel || '',
  10627     onChange: onSetLinkRel
  10628   })));
  10629 }
  10630 
  10631 /* harmony default export */ var button_edit = (ButtonEdit);
  10632 
  10633 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/save.js
  10634 
  10635 
  10636 /**
  10637  * External dependencies
  10638  */
  10639 
  10640 /**
  10641  * WordPress dependencies
  10642  */
  10643 
  10644 
  10645 function button_save_save({
  10646   attributes,
  10647   className
  10648 }) {
  10649   var _style$border, _style$typography;
  10650 
  10651   const {
  10652     fontSize,
  10653     linkTarget,
  10654     rel,
  10655     style,
  10656     text,
  10657     title,
  10658     url,
  10659     width
  10660   } = attributes;
  10661 
  10662   if (!text) {
  10663     return null;
  10664   }
  10665 
  10666   const borderRadius = style === null || style === void 0 ? void 0 : (_style$border = style.border) === null || _style$border === void 0 ? void 0 : _style$border.radius;
  10667   const colorProps = Object(external_wp_blockEditor_["__experimentalGetColorClassesAndStyles"])(attributes);
  10668   const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, {
  10669     'no-border-radius': borderRadius === 0
  10670   });
  10671   const buttonStyle = {
  10672     borderRadius: borderRadius ? borderRadius + 'px' : undefined,
  10673     ...colorProps.style
  10674   }; // The use of a `title` attribute here is soft-deprecated, but still applied
  10675   // if it had already been assigned, for the sake of backward-compatibility.
  10676   // A title will no longer be assigned for new or updated button block links.
  10677 
  10678   const wrapperClasses = classnames_default()(className, {
  10679     [`has-custom-width wp-block-button__width-${width}`]: width,
  10680     [`has-custom-font-size`]: fontSize || (style === null || style === void 0 ? void 0 : (_style$typography = style.typography) === null || _style$typography === void 0 ? void 0 : _style$typography.fontSize)
  10681   });
  10682   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  10683     className: wrapperClasses
  10684   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  10685     tagName: "a",
  10686     className: buttonClasses,
  10687     href: url,
  10688     title: title,
  10689     style: buttonStyle,
  10690     value: text,
  10691     target: linkTarget,
  10692     rel: rel
  10693   }));
  10694 }
  10695 
  10696 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/index.js
  10697 /**
  10698  * WordPress dependencies
  10699  */
  10700 
  10701 
  10702 /**
  10703  * Internal dependencies
  10704  */
  10705 
  10706 
  10707 
  10708 const button_metadata = {
  10709   apiVersion: 2,
  10710   name: "core/button",
  10711   title: "Button",
  10712   category: "design",
  10713   parent: ["core/buttons"],
  10714   description: "Prompt visitors to take action with a button-style link.",
  10715   keywords: ["link"],
  10716   textdomain: "default",
  10717   attributes: {
  10718     url: {
  10719       type: "string",
  10720       source: "attribute",
  10721       selector: "a",
  10722       attribute: "href"
  10723     },
  10724     title: {
  10725       type: "string",
  10726       source: "attribute",
  10727       selector: "a",
  10728       attribute: "title"
  10729     },
  10730     text: {
  10731       type: "string",
  10732       source: "html",
  10733       selector: "a"
  10734     },
  10735     linkTarget: {
  10736       type: "string",
  10737       source: "attribute",
  10738       selector: "a",
  10739       attribute: "target"
  10740     },
  10741     rel: {
  10742       type: "string",
  10743       source: "attribute",
  10744       selector: "a",
  10745       attribute: "rel"
  10746     },
  10747     placeholder: {
  10748       type: "string"
  10749     },
  10750     backgroundColor: {
  10751       type: "string"
  10752     },
  10753     textColor: {
  10754       type: "string"
  10755     },
  10756     gradient: {
  10757       type: "string"
  10758     },
  10759     width: {
  10760       type: "number"
  10761     }
  10762   },
  10763   supports: {
  10764     anchor: true,
  10765     align: true,
  10766     alignWide: false,
  10767     color: {
  10768       __experimentalSkipSerialization: true,
  10769       gradients: true
  10770     },
  10771     typography: {
  10772       fontSize: true,
  10773       __experimentalFontFamily: true
  10774     },
  10775     reusable: false,
  10776     __experimentalBorder: {
  10777       radius: true,
  10778       __experimentalSkipSerialization: true
  10779     },
  10780     __experimentalSelector: ".wp-block-button__link"
  10781   },
  10782   styles: [{
  10783     name: "fill",
  10784     label: "Fill",
  10785     isDefault: true
  10786   }, {
  10787     name: "outline",
  10788     label: "Outline"
  10789   }],
  10790   editorStyle: "wp-block-button-editor",
  10791   style: "wp-block-button"
  10792 };
  10793 
  10794 const {
  10795   name: button_name
  10796 } = button_metadata;
  10797 
  10798 const button_settings = {
  10799   icon: library_button["a" /* default */],
  10800   example: {
  10801     attributes: {
  10802       className: 'is-style-fill',
  10803       backgroundColor: 'vivid-green-cyan',
  10804       text: Object(external_wp_i18n_["__"])('Call to Action')
  10805     }
  10806   },
  10807   edit: button_edit,
  10808   save: button_save_save,
  10809   deprecated: button_deprecated,
  10810   merge: (a, {
  10811     text = ''
  10812   }) => ({ ...a,
  10813     text: (a.text || '') + text
  10814   })
  10815 };
  10816 
  10817 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/edit.js
  10818 
  10819 
  10820 /**
  10821  * External dependencies
  10822  */
  10823 
  10824 /**
  10825  * WordPress dependencies
  10826  */
  10827 
  10828 
  10829 /**
  10830  * Internal dependencies
  10831  */
  10832 
  10833 
  10834 const ALLOWED_BLOCKS = [button_name];
  10835 const BUTTONS_TEMPLATE = [['core/button']];
  10836 const LAYOUT = {
  10837   type: 'default',
  10838   alignments: []
  10839 };
  10840 const VERTICAL_JUSTIFY_CONTROLS = ['left', 'center', 'right'];
  10841 const HORIZONTAL_JUSTIFY_CONTROLS = ['left', 'center', 'right', 'space-between'];
  10842 
  10843 function ButtonsEdit({
  10844   attributes: {
  10845     contentJustification,
  10846     orientation
  10847   },
  10848   setAttributes
  10849 }) {
  10850   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  10851     className: classnames_default()({
  10852       [`is-content-justification-${contentJustification}`]: contentJustification,
  10853       'is-vertical': orientation === 'vertical'
  10854     })
  10855   });
  10856   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])(blockProps, {
  10857     allowedBlocks: ALLOWED_BLOCKS,
  10858     template: BUTTONS_TEMPLATE,
  10859     orientation,
  10860     __experimentalLayout: LAYOUT,
  10861     templateInsertUpdatesSelection: true
  10862   });
  10863   const justifyControls = orientation === 'vertical' ? VERTICAL_JUSTIFY_CONTROLS : HORIZONTAL_JUSTIFY_CONTROLS;
  10864   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  10865     group: "block"
  10866   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["JustifyContentControl"], {
  10867     allowedControls: justifyControls,
  10868     value: contentJustification,
  10869     onChange: value => setAttributes({
  10870       contentJustification: value
  10871     }),
  10872     popoverProps: {
  10873       position: 'bottom right',
  10874       isAlternate: true
  10875     }
  10876   })), Object(external_wp_element_["createElement"])("div", innerBlocksProps));
  10877 }
  10878 
  10879 /* harmony default export */ var buttons_edit = (ButtonsEdit);
  10880 
  10881 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/save.js
  10882 
  10883 
  10884 /**
  10885  * External dependencies
  10886  */
  10887 
  10888 /**
  10889  * WordPress dependencies
  10890  */
  10891 
  10892 
  10893 function buttons_save_save({
  10894   attributes: {
  10895     contentJustification,
  10896     orientation
  10897   }
  10898 }) {
  10899   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  10900     className: classnames_default()({
  10901       [`is-content-justification-${contentJustification}`]: contentJustification,
  10902       'is-vertical': orientation === 'vertical'
  10903     })
  10904   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  10905 }
  10906 
  10907 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/variations.js
  10908 /**
  10909  * WordPress dependencies
  10910  */
  10911 
  10912 const variations_variations = [{
  10913   name: 'buttons-horizontal',
  10914   isDefault: true,
  10915   title: Object(external_wp_i18n_["__"])('Horizontal'),
  10916   description: Object(external_wp_i18n_["__"])('Buttons shown in a row.'),
  10917   attributes: {
  10918     orientation: 'horizontal'
  10919   },
  10920   scope: ['transform']
  10921 }, {
  10922   name: 'buttons-vertical',
  10923   title: Object(external_wp_i18n_["__"])('Vertical'),
  10924   description: Object(external_wp_i18n_["__"])('Buttons shown in a column.'),
  10925   attributes: {
  10926     orientation: 'vertical'
  10927   },
  10928   scope: ['transform']
  10929 }];
  10930 /* harmony default export */ var buttons_variations = (variations_variations);
  10931 
  10932 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/index.js
  10933 /**
  10934  * WordPress dependencies
  10935  */
  10936 
  10937 
  10938 /**
  10939  * Internal dependencies
  10940  */
  10941 
  10942 
  10943 
  10944 
  10945 const buttons_metadata = {
  10946   apiVersion: 2,
  10947   name: "core/buttons",
  10948   title: "Buttons",
  10949   category: "design",
  10950   description: "Prompt visitors to take action with a group of button-style links.",
  10951   keywords: ["link"],
  10952   textdomain: "default",
  10953   attributes: {
  10954     contentJustification: {
  10955       type: "string"
  10956     },
  10957     orientation: {
  10958       type: "string",
  10959       "default": "horizontal"
  10960     }
  10961   },
  10962   supports: {
  10963     anchor: true,
  10964     align: ["wide", "full"]
  10965   },
  10966   editorStyle: "wp-block-buttons-editor",
  10967   style: "wp-block-buttons"
  10968 };
  10969 
  10970 
  10971 const {
  10972   name: buttons_name
  10973 } = buttons_metadata;
  10974 
  10975 const buttons_settings = {
  10976   icon: library_buttons,
  10977   example: {
  10978     innerBlocks: [{
  10979       name: 'core/button',
  10980       attributes: {
  10981         text: Object(external_wp_i18n_["__"])('Find out more')
  10982       }
  10983     }, {
  10984       name: 'core/button',
  10985       attributes: {
  10986         text: Object(external_wp_i18n_["__"])('Contact us')
  10987       }
  10988     }]
  10989   },
  10990   deprecated: buttons_deprecated,
  10991   transforms: buttons_transforms,
  10992   edit: buttons_edit,
  10993   save: buttons_save_save,
  10994   variations: buttons_variations
  10995 };
  10996 
  10997 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/calendar.js
  10998 
  10999 
  11000 /**
  11001  * WordPress dependencies
  11002  */
  11003 
  11004 const calendar = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  11005   viewBox: "0 0 24 24",
  11006   xmlns: "http://www.w3.org/2000/svg"
  11007 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  11008   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V7h15v12zM9 10H7v2h2v-2zm0 4H7v2h2v-2zm4-4h-2v2h2v-2zm4 0h-2v2h2v-2zm-4 4h-2v2h2v-2zm4 0h-2v2h2v-2z"
  11009 }));
  11010 /* harmony default export */ var library_calendar = (calendar);
  11011 
  11012 // EXTERNAL MODULE: external "moment"
  11013 var external_moment_ = __webpack_require__("wy2R");
  11014 var external_moment_default = /*#__PURE__*/__webpack_require__.n(external_moment_);
  11015 
  11016 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/calendar/edit.js
  11017 
  11018 
  11019 /**
  11020  * External dependencies
  11021  */
  11022 
  11023 
  11024 /**
  11025  * WordPress dependencies
  11026  */
  11027 
  11028 
  11029 
  11030 
  11031 
  11032 const getYearMonth = memize_default()(date => {
  11033   if (!date) {
  11034     return {};
  11035   }
  11036 
  11037   const momentDate = external_moment_default()(date);
  11038   return {
  11039     year: momentDate.year(),
  11040     month: momentDate.month() + 1
  11041   };
  11042 });
  11043 function CalendarEdit({
  11044   attributes
  11045 }) {
  11046   const date = Object(external_wp_data_["useSelect"])(select => {
  11047     // FIXME: @wordpress/block-library should not depend on @wordpress/editor.
  11048     // Blocks can be loaded into a *non-post* block editor.
  11049     // eslint-disable-next-line @wordpress/data-no-store-string-literals
  11050     const editorSelectors = select('core/editor');
  11051 
  11052     let _date;
  11053 
  11054     if (editorSelectors) {
  11055       const postType = editorSelectors.getEditedPostAttribute('type'); // Dates are used to overwrite year and month used on the calendar.
  11056       // This overwrite should only happen for 'post' post types.
  11057       // For other post types the calendar always displays the current month.
  11058 
  11059       if (postType === 'post') {
  11060         _date = editorSelectors.getEditedPostAttribute('date');
  11061       }
  11062     }
  11063 
  11064     return _date;
  11065   }, []);
  11066   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"], null, Object(external_wp_element_["createElement"])(external_wp_serverSideRender_default.a, {
  11067     block: "core/calendar",
  11068     attributes: { ...attributes,
  11069       ...getYearMonth(date)
  11070     }
  11071   })));
  11072 }
  11073 
  11074 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/calendar/index.js
  11075 /**
  11076  * WordPress dependencies
  11077  */
  11078 
  11079 /**
  11080  * Internal dependencies
  11081  */
  11082 
  11083 const calendar_metadata = {
  11084   apiVersion: 2,
  11085   name: "core/calendar",
  11086   title: "Calendar",
  11087   category: "widgets",
  11088   description: "A calendar of your site\u2019s posts.",
  11089   keywords: ["posts", "archive"],
  11090   textdomain: "default",
  11091   attributes: {
  11092     month: {
  11093       type: "integer"
  11094     },
  11095     year: {
  11096       type: "integer"
  11097     }
  11098   },
  11099   supports: {
  11100     align: true
  11101   },
  11102   style: "wp-block-calendar"
  11103 };
  11104 
  11105 const {
  11106   name: calendar_name
  11107 } = calendar_metadata;
  11108 
  11109 const calendar_settings = {
  11110   icon: library_calendar,
  11111   example: {},
  11112   edit: CalendarEdit
  11113 };
  11114 
  11115 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/category.js
  11116 
  11117 
  11118 /**
  11119  * WordPress dependencies
  11120  */
  11121 
  11122 const category_category = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  11123   viewBox: "0 0 24 24",
  11124   xmlns: "http://www.w3.org/2000/svg"
  11125 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  11126   d: "M6 5.5h3a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H6a.5.5 0 01-.5-.5V6a.5.5 0 01.5-.5zM4 6a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2H6a2 2 0 01-2-2V6zm11-.5h3a.5.5 0 01.5.5v3a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V6a.5.5 0 01.5-.5zM13 6a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2h-3a2 2 0 01-2-2V6zm5 8.5h-3a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5zM15 13a2 2 0 00-2 2v3a2 2 0 002 2h3a2 2 0 002-2v-3a2 2 0 00-2-2h-3zm-9 1.5h3a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H6a.5.5 0 01-.5-.5v-3a.5.5 0 01.5-.5zM4 15a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2H6a2 2 0 01-2-2v-3z",
  11127   fillRule: "evenodd",
  11128   clipRule: "evenodd"
  11129 }));
  11130 /* harmony default export */ var library_category = (category_category);
  11131 
  11132 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pin.js
  11133 
  11134 
  11135 /**
  11136  * WordPress dependencies
  11137  */
  11138 
  11139 const pin = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  11140   xmlns: "http://www.w3.org/2000/svg",
  11141   viewBox: "-2 -2 24 24"
  11142 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  11143   d: "M10.44 3.02l1.82-1.82 6.36 6.35-1.83 1.82c-1.05-.68-2.48-.57-3.41.36l-.75.75c-.92.93-1.04 2.35-.35 3.41l-1.83 1.82-2.41-2.41-2.8 2.79c-.42.42-3.38 2.71-3.8 2.29s1.86-3.39 2.28-3.81l2.79-2.79L4.1 9.36l1.83-1.82c1.05.69 2.48.57 3.4-.36l.75-.75c.93-.92 1.05-2.35.36-3.41z"
  11144 }));
  11145 /* harmony default export */ var library_pin = (pin);
  11146 
  11147 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/categories/edit.js
  11148 
  11149 
  11150 /**
  11151  * External dependencies
  11152  */
  11153 
  11154 /**
  11155  * WordPress dependencies
  11156  */
  11157 
  11158 
  11159 
  11160 
  11161 
  11162 
  11163 
  11164 
  11165 function CategoriesEdit({
  11166   attributes: {
  11167     displayAsDropdown,
  11168     showHierarchy,
  11169     showPostCounts
  11170   },
  11171   setAttributes
  11172 }) {
  11173   const selectId = Object(external_wp_compose_["useInstanceId"])(CategoriesEdit, 'blocks-category-select');
  11174   const {
  11175     categories,
  11176     isRequesting
  11177   } = Object(external_wp_data_["useSelect"])(select => {
  11178     const {
  11179       getEntityRecords
  11180     } = select(external_wp_coreData_["store"]);
  11181     const {
  11182       isResolving
  11183     } = select('core/data');
  11184     const query = {
  11185       per_page: -1,
  11186       hide_empty: true,
  11187       context: 'view'
  11188     };
  11189     return {
  11190       categories: getEntityRecords('taxonomy', 'category', query),
  11191       isRequesting: isResolving('core', 'getEntityRecords', ['taxonomy', 'category', query])
  11192     };
  11193   }, []);
  11194 
  11195   const getCategoriesList = parentId => {
  11196     if (!(categories !== null && categories !== void 0 && categories.length)) {
  11197       return [];
  11198     }
  11199 
  11200     if (parentId === null) {
  11201       return categories;
  11202     }
  11203 
  11204     return categories.filter(({
  11205       parent
  11206     }) => parent === parentId);
  11207   };
  11208 
  11209   const getCategoryListClassName = level => {
  11210     return `wp-block-categories__list wp-block-categories__list-level-${level}`;
  11211   };
  11212 
  11213   const toggleAttribute = attributeName => newValue => setAttributes({
  11214     [attributeName]: newValue
  11215   });
  11216 
  11217   const renderCategoryName = name => !name ? Object(external_wp_i18n_["__"])('(Untitled)') : Object(external_lodash_["unescape"])(name).trim();
  11218 
  11219   const renderCategoryList = () => {
  11220     const parentId = showHierarchy ? 0 : null;
  11221     const categoriesList = getCategoriesList(parentId);
  11222     return Object(external_wp_element_["createElement"])("ul", {
  11223       className: getCategoryListClassName(0)
  11224     }, categoriesList.map(category => renderCategoryListItem(category, 0)));
  11225   };
  11226 
  11227   const renderCategoryListItem = (category, level) => {
  11228     const childCategories = getCategoriesList(category.id);
  11229     const {
  11230       id,
  11231       link,
  11232       count,
  11233       name
  11234     } = category;
  11235     return Object(external_wp_element_["createElement"])("li", {
  11236       key: id
  11237     }, Object(external_wp_element_["createElement"])("a", {
  11238       href: link,
  11239       target: "_blank",
  11240       rel: "noreferrer noopener"
  11241     }, renderCategoryName(name)), showPostCounts && Object(external_wp_element_["createElement"])("span", {
  11242       className: "wp-block-categories__post-count"
  11243     }, ` (${count})`), showHierarchy && !!childCategories.length && Object(external_wp_element_["createElement"])("ul", {
  11244       className: getCategoryListClassName(level + 1)
  11245     }, childCategories.map(childCategory => renderCategoryListItem(childCategory, level + 1))));
  11246   };
  11247 
  11248   const renderCategoryDropdown = () => {
  11249     const parentId = showHierarchy ? 0 : null;
  11250     const categoriesList = getCategoriesList(parentId);
  11251     return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["VisuallyHidden"], {
  11252       as: "label",
  11253       htmlFor: selectId
  11254     }, Object(external_wp_i18n_["__"])('Categories')), Object(external_wp_element_["createElement"])("select", {
  11255       id: selectId,
  11256       className: "wp-block-categories__dropdown"
  11257     }, categoriesList.map(category => renderCategoryDropdownItem(category, 0))));
  11258   };
  11259 
  11260   const renderCategoryDropdownItem = (category, level) => {
  11261     const {
  11262       id,
  11263       count,
  11264       name
  11265     } = category;
  11266     const childCategories = getCategoriesList(id);
  11267     return [Object(external_wp_element_["createElement"])("option", {
  11268       key: id
  11269     }, Object(external_lodash_["times"])(level * 3, () => '\xa0'), renderCategoryName(name), showPostCounts && ` (${count})`), showHierarchy && !!childCategories.length && childCategories.map(childCategory => renderCategoryDropdownItem(childCategory, level + 1))];
  11270   };
  11271 
  11272   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  11273     title: Object(external_wp_i18n_["__"])('Categories settings')
  11274   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  11275     label: Object(external_wp_i18n_["__"])('Display as dropdown'),
  11276     checked: displayAsDropdown,
  11277     onChange: toggleAttribute('displayAsDropdown')
  11278   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  11279     label: Object(external_wp_i18n_["__"])('Show hierarchy'),
  11280     checked: showHierarchy,
  11281     onChange: toggleAttribute('showHierarchy')
  11282   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  11283     label: Object(external_wp_i18n_["__"])('Show post counts'),
  11284     checked: showPostCounts,
  11285     onChange: toggleAttribute('showPostCounts')
  11286   }))), isRequesting && Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], {
  11287     icon: library_pin,
  11288     label: Object(external_wp_i18n_["__"])('Categories')
  11289   }, Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null)), !isRequesting && (categories === null || categories === void 0 ? void 0 : categories.length) === 0 && Object(external_wp_element_["createElement"])("p", null, Object(external_wp_i18n_["__"])('Your site does not have any posts, so there is nothing to display here at the moment.')), !isRequesting && (categories === null || categories === void 0 ? void 0 : categories.length) > 0 && (displayAsDropdown ? renderCategoryDropdown() : renderCategoryList()));
  11290 }
  11291 
  11292 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/categories/index.js
  11293 /**
  11294  * WordPress dependencies
  11295  */
  11296 
  11297 /**
  11298  * Internal dependencies
  11299  */
  11300 
  11301 const categories_metadata = {
  11302   apiVersion: 2,
  11303   name: "core/categories",
  11304   title: "Categories",
  11305   category: "widgets",
  11306   description: "Display a list of all categories.",
  11307   textdomain: "default",
  11308   attributes: {
  11309     displayAsDropdown: {
  11310       type: "boolean",
  11311       "default": false
  11312     },
  11313     showHierarchy: {
  11314       type: "boolean",
  11315       "default": false
  11316     },
  11317     showPostCounts: {
  11318       type: "boolean",
  11319       "default": false
  11320     }
  11321   },
  11322   supports: {
  11323     align: true,
  11324     html: false
  11325   },
  11326   editorStyle: "wp-block-categories-editor",
  11327   style: "wp-block-categories"
  11328 };
  11329 
  11330 const {
  11331   name: categories_name
  11332 } = categories_metadata;
  11333 
  11334 const categories_settings = {
  11335   icon: library_category,
  11336   example: {},
  11337   edit: CategoriesEdit
  11338 };
  11339 
  11340 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/code.js
  11341 var code = __webpack_require__("1Yn1");
  11342 
  11343 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/edit.js
  11344 
  11345 
  11346 /**
  11347  * WordPress dependencies
  11348  */
  11349 
  11350 
  11351 function CodeEdit({
  11352   attributes,
  11353   setAttributes,
  11354   onRemove
  11355 }) {
  11356   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  11357   return Object(external_wp_element_["createElement"])("pre", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  11358     tagName: "code",
  11359     value: attributes.content,
  11360     onChange: content => setAttributes({
  11361       content
  11362     }),
  11363     onRemove: onRemove,
  11364     placeholder: Object(external_wp_i18n_["__"])('Write code…'),
  11365     "aria-label": Object(external_wp_i18n_["__"])('Code'),
  11366     preserveWhiteSpace: true,
  11367     __unstablePastePlainText: true
  11368   }));
  11369 }
  11370 
  11371 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/utils.js
  11372 /**
  11373  * External dependencies
  11374  */
  11375 
  11376 /**
  11377  * Escapes ampersands, shortcodes, and links.
  11378  *
  11379  * @param {string} content The content of a code block.
  11380  * @return {string} The given content with some characters escaped.
  11381  */
  11382 
  11383 function utils_escape(content) {
  11384   return Object(external_lodash_["flow"])(escapeOpeningSquareBrackets, escapeProtocolInIsolatedUrls)(content || '');
  11385 }
  11386 /**
  11387  * Returns the given content with all opening shortcode characters converted
  11388  * into their HTML entity counterpart (i.e. [ => &#91;). For instance, a
  11389  * shortcode like [embed] becomes &#91;embed]
  11390  *
  11391  * This function replicates the escaping of HTML tags, where a tag like
  11392  * <strong> becomes &lt;strong>.
  11393  *
  11394  * @param {string}  content The content of a code block.
  11395  * @return {string} The given content with its opening shortcode characters
  11396  *                  converted into their HTML entity counterpart
  11397  *                  (i.e. [ => &#91;)
  11398  */
  11399 
  11400 function escapeOpeningSquareBrackets(content) {
  11401   return content.replace(/\[/g, '&#91;');
  11402 }
  11403 /**
  11404  * Converts the first two forward slashes of any isolated URL into their HTML
  11405  * counterparts (i.e. // => &#47;&#47;). For instance, https://youtube.com/watch?x
  11406  * becomes https:&#47;&#47;youtube.com/watch?x.
  11407  *
  11408  * An isolated URL is a URL that sits in its own line, surrounded only by spacing
  11409  * characters.
  11410  *
  11411  * See https://github.com/WordPress/wordpress-develop/blob/5.1.1/src/wp-includes/class-wp-embed.php#L403
  11412  *
  11413  * @param {string}  content The content of a code block.
  11414  * @return {string} The given content with its ampersands converted into
  11415  *                  their HTML entity counterpart (i.e. & => &amp;)
  11416  */
  11417 
  11418 
  11419 function escapeProtocolInIsolatedUrls(content) {
  11420   return content.replace(/^(\s*https?:)\/\/([^\s<>"]+\s*)$/m, '$1&#47;&#47;$2');
  11421 }
  11422 
  11423 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/save.js
  11424 
  11425 
  11426 /**
  11427  * WordPress dependencies
  11428  */
  11429 
  11430 /**
  11431  * Internal dependencies
  11432  */
  11433 
  11434 
  11435 function code_save_save({
  11436   attributes
  11437 }) {
  11438   return Object(external_wp_element_["createElement"])("pre", external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  11439     tagName: "code",
  11440     value: utils_escape(attributes.content)
  11441   }));
  11442 }
  11443 
  11444 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/transforms.js
  11445 /**
  11446  * WordPress dependencies
  11447  */
  11448 
  11449 const code_transforms_transforms = {
  11450   from: [{
  11451     type: 'enter',
  11452     regExp: /^```$/,
  11453     transform: () => Object(external_wp_blocks_["createBlock"])('core/code')
  11454   }, {
  11455     type: 'block',
  11456     blocks: ['core/html'],
  11457     transform: ({
  11458       content
  11459     }) => {
  11460       return Object(external_wp_blocks_["createBlock"])('core/code', {
  11461         content
  11462       });
  11463     }
  11464   }, {
  11465     type: 'raw',
  11466     isMatch: node => node.nodeName === 'PRE' && node.children.length === 1 && node.firstChild.nodeName === 'CODE',
  11467     schema: {
  11468       pre: {
  11469         children: {
  11470           code: {
  11471             children: {
  11472               '#text': {}
  11473             }
  11474           }
  11475         }
  11476       }
  11477     }
  11478   }]
  11479 };
  11480 /* harmony default export */ var code_transforms = (code_transforms_transforms);
  11481 
  11482 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/index.js
  11483 /**
  11484  * WordPress dependencies
  11485  */
  11486 
  11487 
  11488 /**
  11489  * Internal dependencies
  11490  */
  11491 
  11492 
  11493 const code_metadata = {
  11494   apiVersion: 2,
  11495   name: "core/code",
  11496   title: "Code",
  11497   category: "text",
  11498   description: "Display code snippets that respect your spacing and tabs.",
  11499   textdomain: "default",
  11500   attributes: {
  11501     content: {
  11502       type: "string",
  11503       source: "html",
  11504       selector: "code"
  11505     }
  11506   },
  11507   supports: {
  11508     anchor: true,
  11509     typography: {
  11510       fontSize: true
  11511     }
  11512   },
  11513   style: "wp-block-code"
  11514 };
  11515 
  11516 
  11517 const {
  11518   name: code_name
  11519 } = code_metadata;
  11520 
  11521 const code_settings = {
  11522   icon: code["a" /* default */],
  11523   example: {
  11524     attributes: {
  11525       /* eslint-disable @wordpress/i18n-no-collapsible-whitespace */
  11526       // translators: Preserve \n markers for line breaks
  11527       content: Object(external_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 );')
  11528       /* eslint-enable @wordpress/i18n-no-collapsible-whitespace */
  11529 
  11530     }
  11531   },
  11532   transforms: code_transforms,
  11533   edit: CodeEdit,
  11534   save: code_save_save
  11535 };
  11536 
  11537 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/columns.js
  11538 
  11539 
  11540 /**
  11541  * WordPress dependencies
  11542  */
  11543 
  11544 const columns_columns = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  11545   viewBox: "0 0 24 24",
  11546   xmlns: "http://www.w3.org/2000/svg"
  11547 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  11548   d: "M19 6H6c-1.1 0-2 .9-2 2v9c0 1.1.9 2 2 2h13c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-4.1 1.5v10H10v-10h4.9zM5.5 17V8c0-.3.2-.5.5-.5h2.5v10H6c-.3 0-.5-.2-.5-.5zm14 0c0 .3-.2.5-.5.5h-2.6v-10H19c.3 0 .5.2.5.5v9z"
  11549 }));
  11550 /* harmony default export */ var library_columns = (columns_columns);
  11551 
  11552 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/deprecated.js
  11553 
  11554 
  11555 /**
  11556  * External dependencies
  11557  */
  11558 
  11559 
  11560 /**
  11561  * WordPress dependencies
  11562  */
  11563 
  11564 
  11565 
  11566 /**
  11567  * Given an HTML string for a deprecated columns inner block, returns the
  11568  * column index to which the migrated inner block should be assigned. Returns
  11569  * undefined if the inner block was not assigned to a column.
  11570  *
  11571  * @param {string} originalContent Deprecated Columns inner block HTML.
  11572  *
  11573  * @return {?number} Column to which inner block is to be assigned.
  11574  */
  11575 
  11576 function getDeprecatedLayoutColumn(originalContent) {
  11577   let {
  11578     doc
  11579   } = getDeprecatedLayoutColumn;
  11580 
  11581   if (!doc) {
  11582     doc = document.implementation.createHTMLDocument('');
  11583     getDeprecatedLayoutColumn.doc = doc;
  11584   }
  11585 
  11586   let columnMatch;
  11587   doc.body.innerHTML = originalContent;
  11588 
  11589   for (const classListItem of doc.body.firstChild.classList) {
  11590     if (columnMatch = classListItem.match(/^layout-column-(\d+)$/)) {
  11591       return Number(columnMatch[1]) - 1;
  11592     }
  11593   }
  11594 }
  11595 
  11596 const deprecated_migrateCustomColors = attributes => {
  11597   if (!attributes.customTextColor && !attributes.customBackgroundColor) {
  11598     return attributes;
  11599   }
  11600 
  11601   const style = {
  11602     color: {}
  11603   };
  11604 
  11605   if (attributes.customTextColor) {
  11606     style.color.text = attributes.customTextColor;
  11607   }
  11608 
  11609   if (attributes.customBackgroundColor) {
  11610     style.color.background = attributes.customBackgroundColor;
  11611   }
  11612 
  11613   return { ...Object(external_lodash_["omit"])(attributes, ['customTextColor', 'customBackgroundColor']),
  11614     style
  11615   };
  11616 };
  11617 
  11618 /* harmony default export */ var columns_deprecated = ([{
  11619   attributes: {
  11620     verticalAlignment: {
  11621       type: 'string'
  11622     },
  11623     backgroundColor: {
  11624       type: 'string'
  11625     },
  11626     customBackgroundColor: {
  11627       type: 'string'
  11628     },
  11629     customTextColor: {
  11630       type: 'string'
  11631     },
  11632     textColor: {
  11633       type: 'string'
  11634     }
  11635   },
  11636   migrate: deprecated_migrateCustomColors,
  11637 
  11638   save({
  11639     attributes
  11640   }) {
  11641     const {
  11642       verticalAlignment,
  11643       backgroundColor,
  11644       customBackgroundColor,
  11645       textColor,
  11646       customTextColor
  11647     } = attributes;
  11648     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  11649     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  11650     const className = classnames_default()({
  11651       'has-background': backgroundColor || customBackgroundColor,
  11652       'has-text-color': textColor || customTextColor,
  11653       [backgroundClass]: backgroundClass,
  11654       [textClass]: textClass,
  11655       [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment
  11656     });
  11657     const style = {
  11658       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  11659       color: textClass ? undefined : customTextColor
  11660     };
  11661     return Object(external_wp_element_["createElement"])("div", {
  11662       className: className ? className : undefined,
  11663       style: style
  11664     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  11665   }
  11666 
  11667 }, {
  11668   attributes: {
  11669     columns: {
  11670       type: 'number',
  11671       default: 2
  11672     }
  11673   },
  11674 
  11675   isEligible(attributes, innerBlocks) {
  11676     // Since isEligible is called on every valid instance of the
  11677     // Columns block and a deprecation is the unlikely case due to
  11678     // its subsequent migration, optimize for the `false` condition
  11679     // by performing a naive, inaccurate pass at inner blocks.
  11680     const isFastPassEligible = innerBlocks.some(innerBlock => /layout-column-\d+/.test(innerBlock.originalContent));
  11681 
  11682     if (!isFastPassEligible) {
  11683       return false;
  11684     } // Only if the fast pass is considered eligible is the more
  11685     // accurate, durable, slower condition performed.
  11686 
  11687 
  11688     return innerBlocks.some(innerBlock => getDeprecatedLayoutColumn(innerBlock.originalContent) !== undefined);
  11689   },
  11690 
  11691   migrate(attributes, innerBlocks) {
  11692     const columns = innerBlocks.reduce((accumulator, innerBlock) => {
  11693       const {
  11694         originalContent
  11695       } = innerBlock;
  11696       let columnIndex = getDeprecatedLayoutColumn(originalContent);
  11697 
  11698       if (columnIndex === undefined) {
  11699         columnIndex = 0;
  11700       }
  11701 
  11702       if (!accumulator[columnIndex]) {
  11703         accumulator[columnIndex] = [];
  11704       }
  11705 
  11706       accumulator[columnIndex].push(innerBlock);
  11707       return accumulator;
  11708     }, []);
  11709     const migratedInnerBlocks = columns.map(columnBlocks => Object(external_wp_blocks_["createBlock"])('core/column', {}, columnBlocks));
  11710     return [Object(external_lodash_["omit"])(attributes, ['columns']), migratedInnerBlocks];
  11711   },
  11712 
  11713   save({
  11714     attributes
  11715   }) {
  11716     const {
  11717       columns
  11718     } = attributes;
  11719     return Object(external_wp_element_["createElement"])("div", {
  11720       className: `has-${columns}-columns`
  11721     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  11722   }
  11723 
  11724 }, {
  11725   attributes: {
  11726     columns: {
  11727       type: 'number',
  11728       default: 2
  11729     }
  11730   },
  11731 
  11732   migrate(attributes, innerBlocks) {
  11733     attributes = Object(external_lodash_["omit"])(attributes, ['columns']);
  11734     return [attributes, innerBlocks];
  11735   },
  11736 
  11737   save({
  11738     attributes
  11739   }) {
  11740     const {
  11741       verticalAlignment,
  11742       columns
  11743     } = attributes;
  11744     const wrapperClasses = classnames_default()(`has-${columns}-columns`, {
  11745       [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment
  11746     });
  11747     return Object(external_wp_element_["createElement"])("div", {
  11748       className: wrapperClasses
  11749     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  11750   }
  11751 
  11752 }]);
  11753 
  11754 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/utils.js
  11755 /**
  11756  * External dependencies
  11757  */
  11758 
  11759 /**
  11760  * Returns a column width attribute value rounded to standard precision.
  11761  * Returns `undefined` if the value is not a valid finite number.
  11762  *
  11763  * @param {?number} value Raw value.
  11764  *
  11765  * @return {number} Value rounded to standard precision.
  11766  */
  11767 
  11768 const toWidthPrecision = value => {
  11769   const unitlessValue = parseFloat(value);
  11770   return Number.isFinite(unitlessValue) ? parseFloat(unitlessValue.toFixed(2)) : undefined;
  11771 };
  11772 /**
  11773  * Returns an effective width for a given block. An effective width is equal to
  11774  * its attribute value if set, or a computed value assuming equal distribution.
  11775  *
  11776  * @param {WPBlock} block           Block object.
  11777  * @param {number}  totalBlockCount Total number of blocks in Columns.
  11778  *
  11779  * @return {number} Effective column width.
  11780  */
  11781 
  11782 function getEffectiveColumnWidth(block, totalBlockCount) {
  11783   const {
  11784     width = 100 / totalBlockCount
  11785   } = block.attributes;
  11786   return toWidthPrecision(width);
  11787 }
  11788 /**
  11789  * Returns the total width occupied by the given set of column blocks.
  11790  *
  11791  * @param {WPBlock[]} blocks          Block objects.
  11792  * @param {?number}   totalBlockCount Total number of blocks in Columns.
  11793  *                                    Defaults to number of blocks passed.
  11794  *
  11795  * @return {number} Total width occupied by blocks.
  11796  */
  11797 
  11798 function getTotalColumnsWidth(blocks, totalBlockCount = blocks.length) {
  11799   return Object(external_lodash_["sumBy"])(blocks, block => getEffectiveColumnWidth(block, totalBlockCount));
  11800 }
  11801 /**
  11802  * Returns an object of `clientId` → `width` of effective column widths.
  11803  *
  11804  * @param {WPBlock[]} blocks          Block objects.
  11805  * @param {?number}   totalBlockCount Total number of blocks in Columns.
  11806  *                                    Defaults to number of blocks passed.
  11807  *
  11808  * @return {Object<string,number>} Column widths.
  11809  */
  11810 
  11811 function getColumnWidths(blocks, totalBlockCount = blocks.length) {
  11812   return blocks.reduce((accumulator, block) => {
  11813     const width = getEffectiveColumnWidth(block, totalBlockCount);
  11814     return Object.assign(accumulator, {
  11815       [block.clientId]: width
  11816     });
  11817   }, {});
  11818 }
  11819 /**
  11820  * Returns an object of `clientId` → `width` of column widths as redistributed
  11821  * proportional to their current widths, constrained or expanded to fit within
  11822  * the given available width.
  11823  *
  11824  * @param {WPBlock[]} blocks          Block objects.
  11825  * @param {number}    availableWidth  Maximum width to fit within.
  11826  * @param {?number}   totalBlockCount Total number of blocks in Columns.
  11827  *                                    Defaults to number of blocks passed.
  11828  *
  11829  * @return {Object<string,number>} Redistributed column widths.
  11830  */
  11831 
  11832 function getRedistributedColumnWidths(blocks, availableWidth, totalBlockCount = blocks.length) {
  11833   const totalWidth = getTotalColumnsWidth(blocks, totalBlockCount);
  11834   return Object(external_lodash_["mapValues"])(getColumnWidths(blocks, totalBlockCount), width => {
  11835     const newWidth = availableWidth * width / totalWidth;
  11836     return toWidthPrecision(newWidth);
  11837   });
  11838 }
  11839 /**
  11840  * Returns true if column blocks within the provided set are assigned with
  11841  * explicit widths, or false otherwise.
  11842  *
  11843  * @param {WPBlock[]} blocks Block objects.
  11844  *
  11845  * @return {boolean} Whether columns have explicit widths.
  11846  */
  11847 
  11848 function hasExplicitPercentColumnWidths(blocks) {
  11849   return blocks.every(block => {
  11850     var _blockWidth$endsWith;
  11851 
  11852     const blockWidth = block.attributes.width;
  11853     return Number.isFinite(blockWidth !== null && blockWidth !== void 0 && (_blockWidth$endsWith = blockWidth.endsWith) !== null && _blockWidth$endsWith !== void 0 && _blockWidth$endsWith.call(blockWidth, '%') ? parseFloat(blockWidth) : blockWidth);
  11854   });
  11855 }
  11856 /**
  11857  * Returns a copy of the given set of blocks with new widths assigned from the
  11858  * provided object of redistributed column widths.
  11859  *
  11860  * @param {WPBlock[]}             blocks Block objects.
  11861  * @param {Object<string,number>} widths Redistributed column widths.
  11862  *
  11863  * @return {WPBlock[]} blocks Mapped block objects.
  11864  */
  11865 
  11866 function getMappedColumnWidths(blocks, widths) {
  11867   return blocks.map(block => Object(external_lodash_["merge"])({}, block, {
  11868     attributes: {
  11869       width: widths[block.clientId]
  11870     }
  11871   }));
  11872 }
  11873 /**
  11874  * Returns an array with columns widths values, parsed or no depends on `withParsing` flag.
  11875  *
  11876  * @param {WPBlock[]} blocks			Block objects.
  11877  * @param {?boolean} withParsing 	Whether value has to be parsed.
  11878  *
  11879  * @return {Array<number,string>} Column widths.
  11880  */
  11881 
  11882 function getWidths(blocks, withParsing = true) {
  11883   return blocks.map(innerColumn => {
  11884     const innerColumnWidth = innerColumn.attributes.width || 100 / blocks.length;
  11885     return withParsing ? parseFloat(innerColumnWidth) : innerColumnWidth;
  11886   });
  11887 }
  11888 /**
  11889  * Returns a column width with unit.
  11890  *
  11891  * @param {string} width	Column width.
  11892  * @param {string} unit 	Column width unit.
  11893  *
  11894  * @return {string} Column width with unit.
  11895  */
  11896 
  11897 function getWidthWithUnit(width, unit) {
  11898   width = 0 > parseFloat(width) ? '0' : width;
  11899 
  11900   if (isPercentageUnit(unit)) {
  11901     width = Math.min(width, 100);
  11902   }
  11903 
  11904   return `${width}${unit}`;
  11905 }
  11906 /**
  11907  * Returns a boolean whether passed unit is percentage
  11908  *
  11909  * @param {string} unit Column width unit.
  11910  *
  11911  * @return {boolean} 	Whether unit is '%'.
  11912  */
  11913 
  11914 function isPercentageUnit(unit) {
  11915   return unit === '%';
  11916 }
  11917 
  11918 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/edit.js
  11919 
  11920 
  11921 /**
  11922  * External dependencies
  11923  */
  11924 
  11925 
  11926 /**
  11927  * WordPress dependencies
  11928  */
  11929 
  11930 
  11931 
  11932 
  11933 
  11934 
  11935 /**
  11936  * Internal dependencies
  11937  */
  11938 
  11939 
  11940 /**
  11941  * Allowed blocks constant is passed to InnerBlocks precisely as specified here.
  11942  * The contents of the array should never change.
  11943  * The array should contain the name of each block that is allowed.
  11944  * In columns block, the only block we allow is 'core/column'.
  11945  *
  11946  * @constant
  11947  * @type {string[]}
  11948  */
  11949 
  11950 const edit_ALLOWED_BLOCKS = ['core/column'];
  11951 
  11952 function ColumnsEditContainer({
  11953   attributes,
  11954   updateAlignment,
  11955   updateColumns,
  11956   clientId
  11957 }) {
  11958   const {
  11959     verticalAlignment
  11960   } = attributes;
  11961   const {
  11962     count
  11963   } = Object(external_wp_data_["useSelect"])(select => {
  11964     return {
  11965       count: select(external_wp_blockEditor_["store"]).getBlockCount(clientId)
  11966     };
  11967   }, [clientId]);
  11968   const classes = classnames_default()({
  11969     [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment
  11970   });
  11971   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  11972     className: classes
  11973   });
  11974   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])(blockProps, {
  11975     allowedBlocks: edit_ALLOWED_BLOCKS,
  11976     orientation: 'horizontal',
  11977     renderAppender: false
  11978   });
  11979   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockVerticalAlignmentToolbar"], {
  11980     onChange: updateAlignment,
  11981     value: verticalAlignment
  11982   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], null, Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  11983     label: Object(external_wp_i18n_["__"])('Columns'),
  11984     value: count,
  11985     onChange: value => updateColumns(count, value),
  11986     min: 1,
  11987     max: Math.max(6, count)
  11988   }), count > 6 && Object(external_wp_element_["createElement"])(external_wp_components_["Notice"], {
  11989     status: "warning",
  11990     isDismissible: false
  11991   }, Object(external_wp_i18n_["__"])('This column count exceeds the recommended amount and may cause visual breakage.')))), Object(external_wp_element_["createElement"])("div", innerBlocksProps));
  11992 }
  11993 
  11994 const ColumnsEditContainerWrapper = Object(external_wp_data_["withDispatch"])((dispatch, ownProps, registry) => ({
  11995   /**
  11996    * Update all child Column blocks with a new vertical alignment setting
  11997    * based on whatever alignment is passed in. This allows change to parent
  11998    * to overide anything set on a individual column basis.
  11999    *
  12000    * @param {string} verticalAlignment the vertical alignment setting
  12001    */
  12002   updateAlignment(verticalAlignment) {
  12003     const {
  12004       clientId,
  12005       setAttributes
  12006     } = ownProps;
  12007     const {
  12008       updateBlockAttributes
  12009     } = dispatch(external_wp_blockEditor_["store"]);
  12010     const {
  12011       getBlockOrder
  12012     } = registry.select(external_wp_blockEditor_["store"]); // Update own alignment.
  12013 
  12014     setAttributes({
  12015       verticalAlignment
  12016     }); // Update all child Column Blocks to match
  12017 
  12018     const innerBlockClientIds = getBlockOrder(clientId);
  12019     innerBlockClientIds.forEach(innerBlockClientId => {
  12020       updateBlockAttributes(innerBlockClientId, {
  12021         verticalAlignment
  12022       });
  12023     });
  12024   },
  12025 
  12026   /**
  12027    * Updates the column count, including necessary revisions to child Column
  12028    * blocks to grant required or redistribute available space.
  12029    *
  12030    * @param {number} previousColumns Previous column count.
  12031    * @param {number} newColumns      New column count.
  12032    */
  12033   updateColumns(previousColumns, newColumns) {
  12034     const {
  12035       clientId
  12036     } = ownProps;
  12037     const {
  12038       replaceInnerBlocks
  12039     } = dispatch(external_wp_blockEditor_["store"]);
  12040     const {
  12041       getBlocks
  12042     } = registry.select(external_wp_blockEditor_["store"]);
  12043     let innerBlocks = getBlocks(clientId);
  12044     const hasExplicitWidths = hasExplicitPercentColumnWidths(innerBlocks); // Redistribute available width for existing inner blocks.
  12045 
  12046     const isAddingColumn = newColumns > previousColumns;
  12047 
  12048     if (isAddingColumn && hasExplicitWidths) {
  12049       // If adding a new column, assign width to the new column equal to
  12050       // as if it were `1 / columns` of the total available space.
  12051       const newColumnWidth = toWidthPrecision(100 / newColumns); // Redistribute in consideration of pending block insertion as
  12052       // constraining the available working width.
  12053 
  12054       const widths = getRedistributedColumnWidths(innerBlocks, 100 - newColumnWidth);
  12055       innerBlocks = [...getMappedColumnWidths(innerBlocks, widths), ...Object(external_lodash_["times"])(newColumns - previousColumns, () => {
  12056         return Object(external_wp_blocks_["createBlock"])('core/column', {
  12057           width: newColumnWidth
  12058         });
  12059       })];
  12060     } else if (isAddingColumn) {
  12061       innerBlocks = [...innerBlocks, ...Object(external_lodash_["times"])(newColumns - previousColumns, () => {
  12062         return Object(external_wp_blocks_["createBlock"])('core/column');
  12063       })];
  12064     } else {
  12065       // The removed column will be the last of the inner blocks.
  12066       innerBlocks = Object(external_lodash_["dropRight"])(innerBlocks, previousColumns - newColumns);
  12067 
  12068       if (hasExplicitWidths) {
  12069         // Redistribute as if block is already removed.
  12070         const widths = getRedistributedColumnWidths(innerBlocks, 100);
  12071         innerBlocks = getMappedColumnWidths(innerBlocks, widths);
  12072       }
  12073     }
  12074 
  12075     replaceInnerBlocks(clientId, innerBlocks);
  12076   }
  12077 
  12078 }))(ColumnsEditContainer);
  12079 
  12080 function Placeholder({
  12081   clientId,
  12082   name,
  12083   setAttributes
  12084 }) {
  12085   const {
  12086     blockType,
  12087     defaultVariation,
  12088     variations
  12089   } = Object(external_wp_data_["useSelect"])(select => {
  12090     const {
  12091       getBlockVariations,
  12092       getBlockType,
  12093       getDefaultBlockVariation
  12094     } = select(external_wp_blocks_["store"]);
  12095     return {
  12096       blockType: getBlockType(name),
  12097       defaultVariation: getDefaultBlockVariation(name, 'block'),
  12098       variations: getBlockVariations(name, 'block')
  12099     };
  12100   }, [name]);
  12101   const {
  12102     replaceInnerBlocks
  12103   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  12104   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  12105   return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalBlockVariationPicker"], {
  12106     icon: Object(external_lodash_["get"])(blockType, ['icon', 'src']),
  12107     label: Object(external_lodash_["get"])(blockType, ['title']),
  12108     variations: variations,
  12109     onSelect: (nextVariation = defaultVariation) => {
  12110       if (nextVariation.attributes) {
  12111         setAttributes(nextVariation.attributes);
  12112       }
  12113 
  12114       if (nextVariation.innerBlocks) {
  12115         replaceInnerBlocks(clientId, Object(external_wp_blocks_["createBlocksFromInnerBlocksTemplate"])(nextVariation.innerBlocks), true);
  12116       }
  12117     },
  12118     allowSkip: true
  12119   }));
  12120 }
  12121 
  12122 const ColumnsEdit = props => {
  12123   const {
  12124     clientId
  12125   } = props;
  12126   const hasInnerBlocks = Object(external_wp_data_["useSelect"])(select => select(external_wp_blockEditor_["store"]).getBlocks(clientId).length > 0, [clientId]);
  12127   const Component = hasInnerBlocks ? ColumnsEditContainerWrapper : Placeholder;
  12128   return Object(external_wp_element_["createElement"])(Component, props);
  12129 };
  12130 
  12131 /* harmony default export */ var columns_edit = (ColumnsEdit);
  12132 
  12133 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/save.js
  12134 
  12135 
  12136 /**
  12137  * External dependencies
  12138  */
  12139 
  12140 /**
  12141  * WordPress dependencies
  12142  */
  12143 
  12144 
  12145 function columns_save_save({
  12146   attributes
  12147 }) {
  12148   const {
  12149     verticalAlignment
  12150   } = attributes;
  12151   const className = classnames_default()({
  12152     [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment
  12153   });
  12154   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  12155     className
  12156   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  12157 }
  12158 
  12159 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/variations.js
  12160 
  12161 
  12162 /**
  12163  * WordPress dependencies
  12164  */
  12165 
  12166 
  12167 /** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */
  12168 
  12169 /**
  12170  * Template option choices for predefined columns layouts.
  12171  *
  12172  * @type {WPBlockVariation[]}
  12173  */
  12174 
  12175 const columns_variations_variations = [{
  12176   name: 'one-column-full',
  12177   title: Object(external_wp_i18n_["__"])('100'),
  12178   description: Object(external_wp_i18n_["__"])('One column'),
  12179   icon: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  12180     width: "48",
  12181     height: "48",
  12182     viewBox: "0 0 48 48",
  12183     xmlns: "http://www.w3.org/2000/svg"
  12184   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  12185     fillRule: "evenodd",
  12186     clipRule: "evenodd",
  12187     d: "m39.0625 14h-30.0625v20.0938h30.0625zm-30.0625-2c-1.10457 0-2 .8954-2 2v20.0938c0 1.1045.89543 2 2 2h30.0625c1.1046 0 2-.8955 2-2v-20.0938c0-1.1046-.8954-2-2-2z"
  12188   })),
  12189   innerBlocks: [['core/column']],
  12190   scope: ['block']
  12191 }, {
  12192   name: 'two-columns-equal',
  12193   title: Object(external_wp_i18n_["__"])('50 / 50'),
  12194   description: Object(external_wp_i18n_["__"])('Two columns; equal split'),
  12195   icon: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  12196     width: "48",
  12197     height: "48",
  12198     viewBox: "0 0 48 48",
  12199     xmlns: "http://www.w3.org/2000/svg"
  12200   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  12201     fillRule: "evenodd",
  12202     clipRule: "evenodd",
  12203     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"
  12204   })),
  12205   isDefault: true,
  12206   innerBlocks: [['core/column'], ['core/column']],
  12207   scope: ['block']
  12208 }, {
  12209   name: 'two-columns-one-third-two-thirds',
  12210   title: Object(external_wp_i18n_["__"])('30 / 70'),
  12211   description: Object(external_wp_i18n_["__"])('Two columns; one-third, two-thirds split'),
  12212   icon: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  12213     width: "48",
  12214     height: "48",
  12215     viewBox: "0 0 48 48",
  12216     xmlns: "http://www.w3.org/2000/svg"
  12217   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  12218     fillRule: "evenodd",
  12219     clipRule: "evenodd",
  12220     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"
  12221   })),
  12222   innerBlocks: [['core/column', {
  12223     width: '33.33%'
  12224   }], ['core/column', {
  12225     width: '66.66%'
  12226   }]],
  12227   scope: ['block']
  12228 }, {
  12229   name: 'two-columns-two-thirds-one-third',
  12230   title: Object(external_wp_i18n_["__"])('70 / 30'),
  12231   description: Object(external_wp_i18n_["__"])('Two columns; two-thirds, one-third split'),
  12232   icon: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  12233     width: "48",
  12234     height: "48",
  12235     viewBox: "0 0 48 48",
  12236     xmlns: "http://www.w3.org/2000/svg"
  12237   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  12238     fillRule: "evenodd",
  12239     clipRule: "evenodd",
  12240     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"
  12241   })),
  12242   innerBlocks: [['core/column', {
  12243     width: '66.66%'
  12244   }], ['core/column', {
  12245     width: '33.33%'
  12246   }]],
  12247   scope: ['block']
  12248 }, {
  12249   name: 'three-columns-equal',
  12250   title: Object(external_wp_i18n_["__"])('33 / 33 / 33'),
  12251   description: Object(external_wp_i18n_["__"])('Three columns; equal split'),
  12252   icon: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  12253     width: "48",
  12254     height: "48",
  12255     viewBox: "0 0 48 48",
  12256     xmlns: "http://www.w3.org/2000/svg"
  12257   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  12258     fillRule: "evenodd",
  12259     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"
  12260   })),
  12261   innerBlocks: [['core/column'], ['core/column'], ['core/column']],
  12262   scope: ['block']
  12263 }, {
  12264   name: 'three-columns-wider-center',
  12265   title: Object(external_wp_i18n_["__"])('25 / 50 / 25'),
  12266   description: Object(external_wp_i18n_["__"])('Three columns; wide center column'),
  12267   icon: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  12268     width: "48",
  12269     height: "48",
  12270     viewBox: "0 0 48 48",
  12271     xmlns: "http://www.w3.org/2000/svg"
  12272   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  12273     fillRule: "evenodd",
  12274     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"
  12275   })),
  12276   innerBlocks: [['core/column', {
  12277     width: '25%'
  12278   }], ['core/column', {
  12279     width: '50%'
  12280   }], ['core/column', {
  12281     width: '25%'
  12282   }]],
  12283   scope: ['block']
  12284 }];
  12285 /* harmony default export */ var columns_variations = (columns_variations_variations);
  12286 
  12287 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/transforms.js
  12288 /**
  12289  * WordPress dependencies
  12290  */
  12291 
  12292 const MAXIMUM_SELECTED_BLOCKS = 6;
  12293 const columns_transforms_transforms = {
  12294   from: [{
  12295     type: 'block',
  12296     isMultiBlock: true,
  12297     blocks: ['*'],
  12298     __experimentalConvert: blocks => {
  12299       const columnWidth = +(100 / blocks.length).toFixed(2);
  12300       const innerBlocksTemplate = blocks.map(({
  12301         name,
  12302         attributes,
  12303         innerBlocks
  12304       }) => ['core/column', {
  12305         width: `${columnWidth}%`
  12306       }, [[name, { ...attributes
  12307       }, innerBlocks]]]);
  12308       return Object(external_wp_blocks_["createBlock"])('core/columns', {}, Object(external_wp_blocks_["createBlocksFromInnerBlocksTemplate"])(innerBlocksTemplate));
  12309     },
  12310     isMatch: ({
  12311       length: selectedBlocksLength
  12312     }) => selectedBlocksLength && selectedBlocksLength <= MAXIMUM_SELECTED_BLOCKS
  12313   }, {
  12314     type: 'block',
  12315     blocks: ['core/media-text'],
  12316     priority: 1,
  12317     transform: (attributes, innerBlocks) => {
  12318       const {
  12319         align,
  12320         backgroundColor,
  12321         textColor,
  12322         style,
  12323         mediaAlt: alt,
  12324         mediaId: id,
  12325         mediaPosition,
  12326         mediaSizeSlug: sizeSlug,
  12327         mediaType,
  12328         mediaUrl: url,
  12329         mediaWidth,
  12330         verticalAlignment
  12331       } = attributes;
  12332       let media;
  12333 
  12334       if (mediaType === 'image' || !mediaType) {
  12335         const imageAttrs = {
  12336           id,
  12337           alt,
  12338           url,
  12339           sizeSlug
  12340         };
  12341         const linkAttrs = {
  12342           href: attributes.href,
  12343           linkClass: attributes.linkClass,
  12344           linkDestination: attributes.linkDestination,
  12345           linkTarget: attributes.linkTarget,
  12346           rel: attributes.rel
  12347         };
  12348         media = ['core/image', { ...imageAttrs,
  12349           ...linkAttrs
  12350         }];
  12351       } else {
  12352         media = ['core/video', {
  12353           id,
  12354           src: url
  12355         }];
  12356       }
  12357 
  12358       const innerBlocksTemplate = [['core/column', {
  12359         width: `${mediaWidth}%`
  12360       }, [media]], ['core/column', {
  12361         width: `${100 - mediaWidth}%`
  12362       }, innerBlocks]];
  12363 
  12364       if (mediaPosition === 'right') {
  12365         innerBlocksTemplate.reverse();
  12366       }
  12367 
  12368       return Object(external_wp_blocks_["createBlock"])('core/columns', {
  12369         align,
  12370         backgroundColor,
  12371         textColor,
  12372         style,
  12373         verticalAlignment
  12374       }, Object(external_wp_blocks_["createBlocksFromInnerBlocksTemplate"])(innerBlocksTemplate));
  12375     }
  12376   }]
  12377 };
  12378 /* harmony default export */ var columns_transforms = (columns_transforms_transforms);
  12379 
  12380 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/index.js
  12381 /**
  12382  * WordPress dependencies
  12383  */
  12384 
  12385 
  12386 /**
  12387  * Internal dependencies
  12388  */
  12389 
  12390 
  12391 
  12392 const columns_metadata = {
  12393   apiVersion: 2,
  12394   name: "core/columns",
  12395   title: "Columns",
  12396   category: "design",
  12397   description: "Add a block that displays content in multiple columns, then add whatever content blocks you\u2019d like.",
  12398   textdomain: "default",
  12399   attributes: {
  12400     verticalAlignment: {
  12401       type: "string"
  12402     }
  12403   },
  12404   supports: {
  12405     anchor: true,
  12406     align: ["wide", "full"],
  12407     html: false,
  12408     color: {
  12409       gradients: true,
  12410       link: true
  12411     }
  12412   },
  12413   editorStyle: "wp-block-columns-editor",
  12414   style: "wp-block-columns"
  12415 };
  12416 
  12417 
  12418 
  12419 const {
  12420   name: columns_name
  12421 } = columns_metadata;
  12422 
  12423 const columns_settings = {
  12424   icon: library_columns,
  12425   variations: columns_variations,
  12426   example: {
  12427     innerBlocks: [{
  12428       name: 'core/column',
  12429       innerBlocks: [{
  12430         name: 'core/paragraph',
  12431         attributes: {
  12432           /* translators: example text. */
  12433           content: Object(external_wp_i18n_["__"])('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et eros eu felis.')
  12434         }
  12435       }, {
  12436         name: 'core/image',
  12437         attributes: {
  12438           url: 'https://s.w.org/images/core/5.3/Windbuchencom.jpg'
  12439         }
  12440       }, {
  12441         name: 'core/paragraph',
  12442         attributes: {
  12443           /* translators: example text. */
  12444           content: Object(external_wp_i18n_["__"])('Suspendisse commodo neque lacus, a dictum orci interdum et.')
  12445         }
  12446       }]
  12447     }, {
  12448       name: 'core/column',
  12449       innerBlocks: [{
  12450         name: 'core/paragraph',
  12451         attributes: {
  12452           /* translators: example text. */
  12453           content: Object(external_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.')
  12454         }
  12455       }, {
  12456         name: 'core/paragraph',
  12457         attributes: {
  12458           /* translators: example text. */
  12459           content: Object(external_wp_i18n_["__"])('Nam risus massa, ullamcorper consectetur eros fermentum, porta aliquet ligula. Sed vel mauris nec enim.')
  12460         }
  12461       }]
  12462     }]
  12463   },
  12464   deprecated: columns_deprecated,
  12465   edit: columns_edit,
  12466   save: columns_save_save,
  12467   transforms: columns_transforms
  12468 };
  12469 
  12470 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/column.js
  12471 
  12472 
  12473 /**
  12474  * WordPress dependencies
  12475  */
  12476 
  12477 const column = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  12478   xmlns: "http://www.w3.org/2000/svg",
  12479   viewBox: "0 0 24 24"
  12480 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  12481   d: "M19 6H6c-1.1 0-2 .9-2 2v9c0 1.1.9 2 2 2h13c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zM6 17.5c-.3 0-.5-.2-.5-.5V8c0-.3.2-.5.5-.5h3v10H6zm13.5-.5c0 .3-.2.5-.5.5h-3v-10h3c.3 0 .5.2.5.5v9z"
  12482 }));
  12483 /* harmony default export */ var library_column = (column);
  12484 
  12485 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/deprecated.js
  12486 
  12487 
  12488 /**
  12489  * External dependencies
  12490  */
  12491 
  12492 /**
  12493  * WordPress dependencies
  12494  */
  12495 
  12496 
  12497 const column_deprecated_deprecated = [{
  12498   attributes: {
  12499     verticalAlignment: {
  12500       type: 'string'
  12501     },
  12502     width: {
  12503       type: 'number',
  12504       min: 0,
  12505       max: 100
  12506     }
  12507   },
  12508 
  12509   isEligible({
  12510     width
  12511   }) {
  12512     return isFinite(width);
  12513   },
  12514 
  12515   migrate(attributes) {
  12516     return { ...attributes,
  12517       width: `${attributes.width}%`
  12518     };
  12519   },
  12520 
  12521   save({
  12522     attributes
  12523   }) {
  12524     const {
  12525       verticalAlignment,
  12526       width
  12527     } = attributes;
  12528     const wrapperClasses = classnames_default()({
  12529       [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment
  12530     });
  12531     const style = {
  12532       flexBasis: width + '%'
  12533     };
  12534     return Object(external_wp_element_["createElement"])("div", {
  12535       className: wrapperClasses,
  12536       style: style
  12537     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  12538   }
  12539 
  12540 }];
  12541 /* harmony default export */ var column_deprecated = (column_deprecated_deprecated);
  12542 
  12543 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/edit.js
  12544 
  12545 
  12546 /**
  12547  * External dependencies
  12548  */
  12549 
  12550 /**
  12551  * WordPress dependencies
  12552  */
  12553 
  12554 
  12555 
  12556 
  12557 
  12558 
  12559 function ColumnEdit({
  12560   attributes: {
  12561     verticalAlignment,
  12562     width,
  12563     templateLock = false
  12564   },
  12565   setAttributes,
  12566   clientId
  12567 }) {
  12568   const classes = classnames_default()('block-core-columns', {
  12569     [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment
  12570   });
  12571   const units = Object(external_wp_components_["__experimentalUseCustomUnits"])({
  12572     availableUnits: Object(external_wp_blockEditor_["useSetting"])('spacing.units') || ['%', 'px', 'em', 'rem', 'vw']
  12573   });
  12574   const {
  12575     columnsIds,
  12576     hasChildBlocks,
  12577     rootClientId
  12578   } = Object(external_wp_data_["useSelect"])(select => {
  12579     const {
  12580       getBlockOrder,
  12581       getBlockRootClientId
  12582     } = select(external_wp_blockEditor_["store"]);
  12583     const rootId = getBlockRootClientId(clientId);
  12584     return {
  12585       hasChildBlocks: getBlockOrder(clientId).length > 0,
  12586       rootClientId: rootId,
  12587       columnsIds: getBlockOrder(rootId)
  12588     };
  12589   }, [clientId]);
  12590   const {
  12591     updateBlockAttributes
  12592   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  12593 
  12594   const updateAlignment = value => {
  12595     // Update own alignment.
  12596     setAttributes({
  12597       verticalAlignment: value
  12598     }); // Reset parent Columns block.
  12599 
  12600     updateBlockAttributes(rootClientId, {
  12601       verticalAlignment: null
  12602     });
  12603   };
  12604 
  12605   const widthWithUnit = Number.isFinite(width) ? width + '%' : width;
  12606   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  12607     className: classes,
  12608     style: widthWithUnit ? {
  12609       flexBasis: widthWithUnit
  12610     } : undefined
  12611   });
  12612   const columnsCount = columnsIds.length;
  12613   const currentColumnPosition = columnsIds.indexOf(clientId) + 1;
  12614   const label = Object(external_wp_i18n_["sprintf"])(
  12615   /* translators: 1: Block label (i.e. "Block: Column"), 2: Position of the selected block, 3: Total number of sibling blocks of the same type */
  12616   Object(external_wp_i18n_["__"])('%1$s (%2$d of %3$d)'), blockProps['aria-label'], currentColumnPosition, columnsCount);
  12617   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])({ ...blockProps,
  12618     'aria-label': label
  12619   }, {
  12620     templateLock,
  12621     renderAppender: hasChildBlocks ? undefined : external_wp_blockEditor_["InnerBlocks"].ButtonBlockAppender
  12622   });
  12623   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockVerticalAlignmentToolbar"], {
  12624     onChange: updateAlignment,
  12625     value: verticalAlignment
  12626   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  12627     title: Object(external_wp_i18n_["__"])('Column settings')
  12628   }, Object(external_wp_element_["createElement"])(external_wp_components_["__experimentalUnitControl"], {
  12629     label: Object(external_wp_i18n_["__"])('Width'),
  12630     labelPosition: "edge",
  12631     __unstableInputWidth: "80px",
  12632     value: width || '',
  12633     onChange: nextWidth => {
  12634       nextWidth = 0 > parseFloat(nextWidth) ? '0' : nextWidth;
  12635       setAttributes({
  12636         width: nextWidth
  12637       });
  12638     },
  12639     units: units
  12640   }))), Object(external_wp_element_["createElement"])("div", innerBlocksProps));
  12641 }
  12642 
  12643 /* harmony default export */ var column_edit = (ColumnEdit);
  12644 
  12645 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/save.js
  12646 
  12647 
  12648 /**
  12649  * External dependencies
  12650  */
  12651 
  12652 /**
  12653  * WordPress dependencies
  12654  */
  12655 
  12656 
  12657 function column_save_save({
  12658   attributes
  12659 }) {
  12660   const {
  12661     verticalAlignment,
  12662     width
  12663   } = attributes;
  12664   const wrapperClasses = classnames_default()({
  12665     [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment
  12666   });
  12667   let style;
  12668 
  12669   if (width) {
  12670     // Numbers are handled for backward compatibility as they can be still provided with templates.
  12671     style = {
  12672       flexBasis: Number.isFinite(width) ? width + '%' : width
  12673     };
  12674   }
  12675 
  12676   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  12677     className: wrapperClasses,
  12678     style
  12679   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  12680 }
  12681 
  12682 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/index.js
  12683 /**
  12684  * WordPress dependencies
  12685  */
  12686 
  12687 /**
  12688  * Internal dependencies
  12689  */
  12690 
  12691 
  12692 
  12693 const column_metadata = {
  12694   apiVersion: 2,
  12695   name: "core/column",
  12696   title: "Column",
  12697   category: "text",
  12698   parent: ["core/columns"],
  12699   description: "A single column within a columns block.",
  12700   textdomain: "default",
  12701   attributes: {
  12702     verticalAlignment: {
  12703       type: "string"
  12704     },
  12705     width: {
  12706       type: "string"
  12707     },
  12708     templateLock: {
  12709       "enum": ["all", "insert", false]
  12710     }
  12711   },
  12712   supports: {
  12713     anchor: true,
  12714     reusable: false,
  12715     html: false,
  12716     color: {
  12717       gradients: true,
  12718       link: true
  12719     },
  12720     spacing: {
  12721       padding: true
  12722     }
  12723   }
  12724 };
  12725 
  12726 const {
  12727   name: column_name
  12728 } = column_metadata;
  12729 
  12730 const column_settings = {
  12731   icon: library_column,
  12732   edit: column_edit,
  12733   save: column_save_save,
  12734   deprecated: column_deprecated
  12735 };
  12736 
  12737 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/cover.js
  12738 
  12739 
  12740 /**
  12741  * WordPress dependencies
  12742  */
  12743 
  12744 const cover = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  12745   xmlns: "http://www.w3.org/2000/svg",
  12746   viewBox: "0 0 24 24"
  12747 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  12748   d: "M18.7 3H5.3C4 3 3 4 3 5.3v13.4C3 20 4 21 5.3 21h13.4c1.3 0 2.3-1 2.3-2.3V5.3C21 4 20 3 18.7 3zm.8 15.7c0 .4-.4.8-.8.8H5.3c-.4 0-.8-.4-.8-.8V5.3c0-.4.4-.8.8-.8h6.2v8.9l2.5-3.1 2.5 3.1V4.5h2.2c.4 0 .8.4.8.8v13.4z"
  12749 }));
  12750 /* harmony default export */ var library_cover = (cover);
  12751 
  12752 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/shared.js
  12753 /**
  12754  * WordPress dependencies
  12755  */
  12756 
  12757 const POSITION_CLASSNAMES = {
  12758   'top left': 'is-position-top-left',
  12759   'top center': 'is-position-top-center',
  12760   'top right': 'is-position-top-right',
  12761   'center left': 'is-position-center-left',
  12762   'center center': 'is-position-center-center',
  12763   center: 'is-position-center-center',
  12764   'center right': 'is-position-center-right',
  12765   'bottom left': 'is-position-bottom-left',
  12766   'bottom center': 'is-position-bottom-center',
  12767   'bottom right': 'is-position-bottom-right'
  12768 };
  12769 const IMAGE_BACKGROUND_TYPE = 'image';
  12770 const VIDEO_BACKGROUND_TYPE = 'video';
  12771 const COVER_MIN_HEIGHT = 50;
  12772 const COVER_MAX_HEIGHT = 1000;
  12773 const COVER_DEFAULT_HEIGHT = 300;
  12774 function backgroundImageStyles(url) {
  12775   return url ? {
  12776     backgroundImage: `url(${url})`
  12777   } : {};
  12778 }
  12779 const shared_ALLOWED_MEDIA_TYPES = ['image', 'video'];
  12780 function dimRatioToClass(ratio) {
  12781   return ratio === 0 || ratio === 50 || !ratio ? null : 'has-background-dim-' + 10 * Math.round(ratio / 10);
  12782 }
  12783 function attributesFromMedia(setAttributes) {
  12784   return media => {
  12785     if (!media || !media.url) {
  12786       setAttributes({
  12787         url: undefined,
  12788         id: undefined
  12789       });
  12790       return;
  12791     }
  12792 
  12793     if (Object(external_wp_blob_["isBlobURL"])(media.url)) {
  12794       media.type = Object(external_wp_blob_["getBlobTypeByURL"])(media.url);
  12795     }
  12796 
  12797     let mediaType; // for media selections originated from a file upload.
  12798 
  12799     if (media.media_type) {
  12800       if (media.media_type === IMAGE_BACKGROUND_TYPE) {
  12801         mediaType = IMAGE_BACKGROUND_TYPE;
  12802       } else {
  12803         // only images and videos are accepted so if the media_type is not an image we can assume it is a video.
  12804         // Videos contain the media type of 'file' in the object returned from the rest api.
  12805         mediaType = VIDEO_BACKGROUND_TYPE;
  12806       }
  12807     } else {
  12808       // for media selections originated from existing files in the media library.
  12809       if (media.type !== IMAGE_BACKGROUND_TYPE && media.type !== VIDEO_BACKGROUND_TYPE) {
  12810         return;
  12811       }
  12812 
  12813       mediaType = media.type;
  12814     }
  12815 
  12816     setAttributes({
  12817       url: media.url,
  12818       id: media.id,
  12819       backgroundType: mediaType,
  12820       ...(mediaType === VIDEO_BACKGROUND_TYPE ? {
  12821         focalPoint: undefined,
  12822         hasParallax: undefined
  12823       } : {})
  12824     });
  12825   };
  12826 }
  12827 /**
  12828  * Checks of the contentPosition is the center (default) position.
  12829  *
  12830  * @param {string} contentPosition The current content position.
  12831  * @return {boolean} Whether the contentPosition is center.
  12832  */
  12833 
  12834 function isContentPositionCenter(contentPosition) {
  12835   return !contentPosition || contentPosition === 'center center' || contentPosition === 'center';
  12836 }
  12837 /**
  12838  * Retrieves the className for the current contentPosition.
  12839  * The default position (center) will not have a className.
  12840  *
  12841  * @param {string} contentPosition The current content position.
  12842  * @return {string} The className assigned to the contentPosition.
  12843  */
  12844 
  12845 function getPositionClassName(contentPosition) {
  12846   /*
  12847    * Only render a className if the contentPosition is not center (the default).
  12848    */
  12849   if (isContentPositionCenter(contentPosition)) return '';
  12850   return POSITION_CLASSNAMES[contentPosition];
  12851 }
  12852 
  12853 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/deprecated.js
  12854 
  12855 
  12856 /**
  12857  * External dependencies
  12858  */
  12859 
  12860 
  12861 /**
  12862  * WordPress dependencies
  12863  */
  12864 
  12865 
  12866 
  12867 
  12868 /**
  12869  * Internal dependencies
  12870  */
  12871 
  12872 
  12873 const cover_deprecated_blockAttributes = {
  12874   url: {
  12875     type: 'string'
  12876   },
  12877   id: {
  12878     type: 'number'
  12879   },
  12880   hasParallax: {
  12881     type: 'boolean',
  12882     default: false
  12883   },
  12884   dimRatio: {
  12885     type: 'number',
  12886     default: 50
  12887   },
  12888   overlayColor: {
  12889     type: 'string'
  12890   },
  12891   customOverlayColor: {
  12892     type: 'string'
  12893   },
  12894   backgroundType: {
  12895     type: 'string',
  12896     default: 'image'
  12897   },
  12898   focalPoint: {
  12899     type: 'object'
  12900   }
  12901 };
  12902 const cover_deprecated_deprecated = [{
  12903   attributes: { ...cover_deprecated_blockAttributes,
  12904     title: {
  12905       type: 'string',
  12906       source: 'html',
  12907       selector: 'p'
  12908     },
  12909     contentAlign: {
  12910       type: 'string',
  12911       default: 'center'
  12912     },
  12913     isRepeated: {
  12914       type: 'boolean',
  12915       default: false
  12916     },
  12917     minHeight: {
  12918       type: 'number'
  12919     },
  12920     minHeightUnit: {
  12921       type: 'string'
  12922     },
  12923     gradient: {
  12924       type: 'string'
  12925     },
  12926     customGradient: {
  12927       type: 'string'
  12928     },
  12929     contentPosition: {
  12930       type: 'string'
  12931     }
  12932   },
  12933   supports: {
  12934     align: true
  12935   },
  12936 
  12937   save({
  12938     attributes
  12939   }) {
  12940     const {
  12941       backgroundType,
  12942       gradient,
  12943       contentPosition,
  12944       customGradient,
  12945       customOverlayColor,
  12946       dimRatio,
  12947       focalPoint,
  12948       hasParallax,
  12949       isRepeated,
  12950       overlayColor,
  12951       url,
  12952       minHeight: minHeightProp,
  12953       minHeightUnit
  12954     } = attributes;
  12955     const overlayColorClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', overlayColor);
  12956 
  12957     const gradientClass = Object(external_wp_blockEditor_["__experimentalGetGradientClass"])(gradient);
  12958 
  12959     const minHeight = minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
  12960     const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
  12961     const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
  12962     const style = isImageBackground ? backgroundImageStyles(url) : {};
  12963     const videoStyle = {};
  12964 
  12965     if (!overlayColorClass) {
  12966       style.backgroundColor = customOverlayColor;
  12967     }
  12968 
  12969     if (customGradient && !url) {
  12970       style.background = customGradient;
  12971     }
  12972 
  12973     style.minHeight = minHeight || undefined;
  12974     let positionValue;
  12975 
  12976     if (focalPoint) {
  12977       positionValue = `${Math.round(focalPoint.x * 100)}% ${Math.round(focalPoint.y * 100)}%`;
  12978 
  12979       if (isImageBackground && !hasParallax) {
  12980         style.backgroundPosition = positionValue;
  12981       }
  12982 
  12983       if (isVideoBackground) {
  12984         videoStyle.objectPosition = positionValue;
  12985       }
  12986     }
  12987 
  12988     const classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, {
  12989       'has-background-dim': dimRatio !== 0,
  12990       'has-parallax': hasParallax,
  12991       'is-repeated': isRepeated,
  12992       'has-background-gradient': gradient || customGradient,
  12993       [gradientClass]: !url && gradientClass,
  12994       'has-custom-content-position': !isContentPositionCenter(contentPosition)
  12995     }, getPositionClassName(contentPosition));
  12996     return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  12997       className: classes,
  12998       style
  12999     }), url && (gradient || customGradient) && dimRatio !== 0 && Object(external_wp_element_["createElement"])("span", {
  13000       "aria-hidden": "true",
  13001       className: classnames_default()('wp-block-cover__gradient-background', gradientClass),
  13002       style: customGradient ? {
  13003         background: customGradient
  13004       } : undefined
  13005     }), isVideoBackground && url && Object(external_wp_element_["createElement"])("video", {
  13006       className: "wp-block-cover__video-background",
  13007       autoPlay: true,
  13008       muted: true,
  13009       loop: true,
  13010       playsInline: true,
  13011       src: url,
  13012       style: videoStyle
  13013     }), Object(external_wp_element_["createElement"])("div", {
  13014       className: "wp-block-cover__inner-container"
  13015     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  13016   }
  13017 
  13018 }, {
  13019   attributes: { ...cover_deprecated_blockAttributes,
  13020     title: {
  13021       type: 'string',
  13022       source: 'html',
  13023       selector: 'p'
  13024     },
  13025     contentAlign: {
  13026       type: 'string',
  13027       default: 'center'
  13028     },
  13029     minHeight: {
  13030       type: 'number'
  13031     },
  13032     gradient: {
  13033       type: 'string'
  13034     },
  13035     customGradient: {
  13036       type: 'string'
  13037     }
  13038   },
  13039   supports: {
  13040     align: true
  13041   },
  13042 
  13043   save({
  13044     attributes
  13045   }) {
  13046     const {
  13047       backgroundType,
  13048       gradient,
  13049       customGradient,
  13050       customOverlayColor,
  13051       dimRatio,
  13052       focalPoint,
  13053       hasParallax,
  13054       overlayColor,
  13055       url,
  13056       minHeight
  13057     } = attributes;
  13058     const overlayColorClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', overlayColor);
  13059 
  13060     const gradientClass = Object(external_wp_blockEditor_["__experimentalGetGradientClass"])(gradient);
  13061 
  13062     const style = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {};
  13063 
  13064     if (!overlayColorClass) {
  13065       style.backgroundColor = customOverlayColor;
  13066     }
  13067 
  13068     if (focalPoint && !hasParallax) {
  13069       style.backgroundPosition = `${Math.round(focalPoint.x * 100)}% ${Math.round(focalPoint.y * 100)}%`;
  13070     }
  13071 
  13072     if (customGradient && !url) {
  13073       style.background = customGradient;
  13074     }
  13075 
  13076     style.minHeight = minHeight || undefined;
  13077     const classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, {
  13078       'has-background-dim': dimRatio !== 0,
  13079       'has-parallax': hasParallax,
  13080       'has-background-gradient': customGradient,
  13081       [gradientClass]: !url && gradientClass
  13082     });
  13083     return Object(external_wp_element_["createElement"])("div", {
  13084       className: classes,
  13085       style: style
  13086     }, url && (gradient || customGradient) && dimRatio !== 0 && Object(external_wp_element_["createElement"])("span", {
  13087       "aria-hidden": "true",
  13088       className: classnames_default()('wp-block-cover__gradient-background', gradientClass),
  13089       style: customGradient ? {
  13090         background: customGradient
  13091       } : undefined
  13092     }), VIDEO_BACKGROUND_TYPE === backgroundType && url && Object(external_wp_element_["createElement"])("video", {
  13093       className: "wp-block-cover__video-background",
  13094       autoPlay: true,
  13095       muted: true,
  13096       loop: true,
  13097       src: url
  13098     }), Object(external_wp_element_["createElement"])("div", {
  13099       className: "wp-block-cover__inner-container"
  13100     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  13101   }
  13102 
  13103 }, {
  13104   attributes: { ...cover_deprecated_blockAttributes,
  13105     title: {
  13106       type: 'string',
  13107       source: 'html',
  13108       selector: 'p'
  13109     },
  13110     contentAlign: {
  13111       type: 'string',
  13112       default: 'center'
  13113     },
  13114     minHeight: {
  13115       type: 'number'
  13116     },
  13117     gradient: {
  13118       type: 'string'
  13119     },
  13120     customGradient: {
  13121       type: 'string'
  13122     }
  13123   },
  13124   supports: {
  13125     align: true
  13126   },
  13127 
  13128   save({
  13129     attributes
  13130   }) {
  13131     const {
  13132       backgroundType,
  13133       gradient,
  13134       customGradient,
  13135       customOverlayColor,
  13136       dimRatio,
  13137       focalPoint,
  13138       hasParallax,
  13139       overlayColor,
  13140       url,
  13141       minHeight
  13142     } = attributes;
  13143     const overlayColorClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', overlayColor);
  13144 
  13145     const gradientClass = Object(external_wp_blockEditor_["__experimentalGetGradientClass"])(gradient);
  13146 
  13147     const style = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {};
  13148 
  13149     if (!overlayColorClass) {
  13150       style.backgroundColor = customOverlayColor;
  13151     }
  13152 
  13153     if (focalPoint && !hasParallax) {
  13154       style.backgroundPosition = `${focalPoint.x * 100}% ${focalPoint.y * 100}%`;
  13155     }
  13156 
  13157     if (customGradient && !url) {
  13158       style.background = customGradient;
  13159     }
  13160 
  13161     style.minHeight = minHeight || undefined;
  13162     const classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, {
  13163       'has-background-dim': dimRatio !== 0,
  13164       'has-parallax': hasParallax,
  13165       'has-background-gradient': customGradient,
  13166       [gradientClass]: !url && gradientClass
  13167     });
  13168     return Object(external_wp_element_["createElement"])("div", {
  13169       className: classes,
  13170       style: style
  13171     }, url && (gradient || customGradient) && dimRatio !== 0 && Object(external_wp_element_["createElement"])("span", {
  13172       "aria-hidden": "true",
  13173       className: classnames_default()('wp-block-cover__gradient-background', gradientClass),
  13174       style: customGradient ? {
  13175         background: customGradient
  13176       } : undefined
  13177     }), VIDEO_BACKGROUND_TYPE === backgroundType && url && Object(external_wp_element_["createElement"])("video", {
  13178       className: "wp-block-cover__video-background",
  13179       autoPlay: true,
  13180       muted: true,
  13181       loop: true,
  13182       src: url
  13183     }), Object(external_wp_element_["createElement"])("div", {
  13184       className: "wp-block-cover__inner-container"
  13185     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  13186   }
  13187 
  13188 }, {
  13189   attributes: { ...cover_deprecated_blockAttributes,
  13190     title: {
  13191       type: 'string',
  13192       source: 'html',
  13193       selector: 'p'
  13194     },
  13195     contentAlign: {
  13196       type: 'string',
  13197       default: 'center'
  13198     }
  13199   },
  13200   supports: {
  13201     align: true
  13202   },
  13203 
  13204   save({
  13205     attributes
  13206   }) {
  13207     const {
  13208       backgroundType,
  13209       contentAlign,
  13210       customOverlayColor,
  13211       dimRatio,
  13212       focalPoint,
  13213       hasParallax,
  13214       overlayColor,
  13215       title,
  13216       url
  13217     } = attributes;
  13218     const overlayColorClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', overlayColor);
  13219     const style = backgroundType === IMAGE_BACKGROUND_TYPE ? backgroundImageStyles(url) : {};
  13220 
  13221     if (!overlayColorClass) {
  13222       style.backgroundColor = customOverlayColor;
  13223     }
  13224 
  13225     if (focalPoint && !hasParallax) {
  13226       style.backgroundPosition = `${focalPoint.x * 100}% ${focalPoint.y * 100}%`;
  13227     }
  13228 
  13229     const classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, {
  13230       'has-background-dim': dimRatio !== 0,
  13231       'has-parallax': hasParallax,
  13232       [`has-${contentAlign}-content`]: contentAlign !== 'center'
  13233     });
  13234     return Object(external_wp_element_["createElement"])("div", {
  13235       className: classes,
  13236       style: style
  13237     }, VIDEO_BACKGROUND_TYPE === backgroundType && url && Object(external_wp_element_["createElement"])("video", {
  13238       className: "wp-block-cover__video-background",
  13239       autoPlay: true,
  13240       muted: true,
  13241       loop: true,
  13242       src: url
  13243     }), !external_wp_blockEditor_["RichText"].isEmpty(title) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  13244       tagName: "p",
  13245       className: "wp-block-cover-text",
  13246       value: title
  13247     }));
  13248   },
  13249 
  13250   migrate(attributes) {
  13251     return [Object(external_lodash_["omit"])(attributes, ['title', 'contentAlign']), [Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  13252       content: attributes.title,
  13253       align: attributes.contentAlign,
  13254       fontSize: 'large',
  13255       placeholder: Object(external_wp_i18n_["__"])('Write title…')
  13256     })]];
  13257   }
  13258 
  13259 }, {
  13260   attributes: { ...cover_deprecated_blockAttributes,
  13261     title: {
  13262       type: 'string',
  13263       source: 'html',
  13264       selector: 'p'
  13265     },
  13266     contentAlign: {
  13267       type: 'string',
  13268       default: 'center'
  13269     },
  13270     align: {
  13271       type: 'string'
  13272     }
  13273   },
  13274   supports: {
  13275     className: false
  13276   },
  13277 
  13278   save({
  13279     attributes
  13280   }) {
  13281     const {
  13282       url,
  13283       title,
  13284       hasParallax,
  13285       dimRatio,
  13286       align,
  13287       contentAlign,
  13288       overlayColor,
  13289       customOverlayColor
  13290     } = attributes;
  13291     const overlayColorClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', overlayColor);
  13292     const style = backgroundImageStyles(url);
  13293 
  13294     if (!overlayColorClass) {
  13295       style.backgroundColor = customOverlayColor;
  13296     }
  13297 
  13298     const classes = classnames_default()('wp-block-cover-image', dimRatioToClass(dimRatio), overlayColorClass, {
  13299       'has-background-dim': dimRatio !== 0,
  13300       'has-parallax': hasParallax,
  13301       [`has-${contentAlign}-content`]: contentAlign !== 'center'
  13302     }, align ? `align${align}` : null);
  13303     return Object(external_wp_element_["createElement"])("div", {
  13304       className: classes,
  13305       style: style
  13306     }, !external_wp_blockEditor_["RichText"].isEmpty(title) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  13307       tagName: "p",
  13308       className: "wp-block-cover-image-text",
  13309       value: title
  13310     }));
  13311   },
  13312 
  13313   migrate(attributes) {
  13314     return [Object(external_lodash_["omit"])(attributes, ['title', 'contentAlign', 'align']), [Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  13315       content: attributes.title,
  13316       align: attributes.contentAlign,
  13317       fontSize: 'large',
  13318       placeholder: Object(external_wp_i18n_["__"])('Write title…')
  13319     })]];
  13320   }
  13321 
  13322 }, {
  13323   attributes: { ...cover_deprecated_blockAttributes,
  13324     title: {
  13325       type: 'string',
  13326       source: 'html',
  13327       selector: 'h2'
  13328     },
  13329     align: {
  13330       type: 'string'
  13331     },
  13332     contentAlign: {
  13333       type: 'string',
  13334       default: 'center'
  13335     }
  13336   },
  13337   supports: {
  13338     className: false
  13339   },
  13340 
  13341   save({
  13342     attributes
  13343   }) {
  13344     const {
  13345       url,
  13346       title,
  13347       hasParallax,
  13348       dimRatio,
  13349       align
  13350     } = attributes;
  13351     const style = backgroundImageStyles(url);
  13352     const classes = classnames_default()('wp-block-cover-image', dimRatioToClass(dimRatio), {
  13353       'has-background-dim': dimRatio !== 0,
  13354       'has-parallax': hasParallax
  13355     }, align ? `align${align}` : null);
  13356     return Object(external_wp_element_["createElement"])("section", {
  13357       className: classes,
  13358       style: style
  13359     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  13360       tagName: "h2",
  13361       value: title
  13362     }));
  13363   },
  13364 
  13365   migrate(attributes) {
  13366     return [Object(external_lodash_["omit"])(attributes, ['title', 'contentAlign', 'align']), [Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  13367       content: attributes.title,
  13368       align: attributes.contentAlign,
  13369       fontSize: 'large',
  13370       placeholder: Object(external_wp_i18n_["__"])('Write title…')
  13371     })]];
  13372   }
  13373 
  13374 }];
  13375 /* harmony default export */ var cover_deprecated = (cover_deprecated_deprecated);
  13376 
  13377 // EXTERNAL MODULE: ./node_modules/fast-average-color/dist/index.js
  13378 var dist = __webpack_require__("FEKF");
  13379 var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
  13380 
  13381 // EXTERNAL MODULE: ./node_modules/tinycolor2/tinycolor.js
  13382 var tinycolor = __webpack_require__("Zss7");
  13383 var tinycolor_default = /*#__PURE__*/__webpack_require__.n(tinycolor);
  13384 
  13385 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/edit.js
  13386 
  13387 
  13388 
  13389 /**
  13390  * External dependencies
  13391  */
  13392 
  13393 
  13394 
  13395 /**
  13396  * WordPress dependencies
  13397  */
  13398 
  13399 
  13400 
  13401 
  13402 
  13403 
  13404 
  13405 
  13406 
  13407 /**
  13408  * Internal dependencies
  13409  */
  13410 
  13411 
  13412 /**
  13413  * Module Constants
  13414  */
  13415 
  13416 const INNER_BLOCKS_TEMPLATE = [['core/paragraph', {
  13417   align: 'center',
  13418   fontSize: 'large',
  13419   placeholder: Object(external_wp_i18n_["__"])('Write title…')
  13420 }]];
  13421 const {
  13422   __Visualizer: BoxControlVisualizer
  13423 } = external_wp_components_["__experimentalBoxControl"];
  13424 
  13425 function retrieveFastAverageColor() {
  13426   if (!retrieveFastAverageColor.fastAverageColor) {
  13427     retrieveFastAverageColor.fastAverageColor = new dist_default.a();
  13428   }
  13429 
  13430   return retrieveFastAverageColor.fastAverageColor;
  13431 }
  13432 
  13433 function CoverHeightInput({
  13434   onChange,
  13435   onUnitChange,
  13436   unit = 'px',
  13437   value = ''
  13438 }) {
  13439   const [temporaryInput, setTemporaryInput] = Object(external_wp_element_["useState"])(null);
  13440   const instanceId = Object(external_wp_compose_["useInstanceId"])(external_wp_blockEditor_["__experimentalUnitControl"]);
  13441   const inputId = `block-cover-height-input-${instanceId}`;
  13442   const isPx = unit === 'px';
  13443   const units = Object(external_wp_components_["__experimentalUseCustomUnits"])({
  13444     availableUnits: Object(external_wp_blockEditor_["useSetting"])('spacing.units') || ['px', 'em', 'rem', 'vw', 'vh'],
  13445     defaultValues: {
  13446       px: '430',
  13447       em: '20',
  13448       rem: '20',
  13449       vw: '20',
  13450       vh: '50'
  13451     }
  13452   });
  13453 
  13454   const handleOnChange = unprocessedValue => {
  13455     const inputValue = unprocessedValue !== '' ? parseInt(unprocessedValue, 10) : undefined;
  13456 
  13457     if (isNaN(inputValue) && inputValue !== undefined) {
  13458       setTemporaryInput(unprocessedValue);
  13459       return;
  13460     }
  13461 
  13462     setTemporaryInput(null);
  13463     onChange(inputValue);
  13464 
  13465     if (inputValue === undefined) {
  13466       onUnitChange();
  13467     }
  13468   };
  13469 
  13470   const handleOnBlur = () => {
  13471     if (temporaryInput !== null) {
  13472       setTemporaryInput(null);
  13473     }
  13474   };
  13475 
  13476   const inputValue = temporaryInput !== null ? temporaryInput : value;
  13477   const min = isPx ? COVER_MIN_HEIGHT : 0;
  13478   return Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"], {
  13479     label: Object(external_wp_i18n_["__"])('Minimum height of cover'),
  13480     id: inputId
  13481   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalUnitControl"], {
  13482     id: inputId,
  13483     isResetValueOnUnitChange: true,
  13484     min: min,
  13485     onBlur: handleOnBlur,
  13486     onChange: handleOnChange,
  13487     onUnitChange: onUnitChange,
  13488     step: "1",
  13489     style: {
  13490       maxWidth: 80
  13491     },
  13492     unit: unit,
  13493     units: units,
  13494     value: inputValue
  13495   }));
  13496 }
  13497 
  13498 const RESIZABLE_BOX_ENABLE_OPTION = {
  13499   top: false,
  13500   right: false,
  13501   bottom: true,
  13502   left: false,
  13503   topRight: false,
  13504   bottomRight: false,
  13505   bottomLeft: false,
  13506   topLeft: false
  13507 };
  13508 
  13509 function ResizableCover({
  13510   className,
  13511   onResizeStart,
  13512   onResize,
  13513   onResizeStop,
  13514   ...props
  13515 }) {
  13516   const [isResizing, setIsResizing] = Object(external_wp_element_["useState"])(false);
  13517   return Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], Object(esm_extends["a" /* default */])({
  13518     className: classnames_default()(className, {
  13519       'is-resizing': isResizing
  13520     }),
  13521     enable: RESIZABLE_BOX_ENABLE_OPTION,
  13522     onResizeStart: (_event, _direction, elt) => {
  13523       onResizeStart(elt.clientHeight);
  13524       onResize(elt.clientHeight);
  13525     },
  13526     onResize: (_event, _direction, elt) => {
  13527       onResize(elt.clientHeight);
  13528 
  13529       if (!isResizing) {
  13530         setIsResizing(true);
  13531       }
  13532     },
  13533     onResizeStop: (_event, _direction, elt) => {
  13534       onResizeStop(elt.clientHeight);
  13535       setIsResizing(false);
  13536     },
  13537     minHeight: COVER_MIN_HEIGHT
  13538   }, props));
  13539 }
  13540 /**
  13541  * useCoverIsDark is a hook that returns a boolean variable specifying if the cover
  13542  * background is dark or not.
  13543  *
  13544  * @param {?string} url          Url of the media background.
  13545  * @param {?number} dimRatio     Transparency of the overlay color. If an image and
  13546  *                               color are set, dimRatio is used to decide what is used
  13547  *                               for background darkness checking purposes.
  13548  * @param {?string} overlayColor String containing the overlay color value if one exists.
  13549  * @param {?Object} elementRef   If a media background is set, elementRef should contain a reference to a
  13550  *                               dom element that renders that media.
  13551  *
  13552  * @return {boolean} True if the cover background is considered "dark" and false otherwise.
  13553  */
  13554 
  13555 
  13556 function useCoverIsDark(url, dimRatio = 50, overlayColor, elementRef) {
  13557   const [isDark, setIsDark] = Object(external_wp_element_["useState"])(false);
  13558   Object(external_wp_element_["useEffect"])(() => {
  13559     // If opacity is lower than 50 the dominant color is the image or video color,
  13560     // so use that color for the dark mode computation.
  13561     if (url && dimRatio <= 50 && elementRef.current) {
  13562       retrieveFastAverageColor().getColorAsync(elementRef.current, color => {
  13563         setIsDark(color.isDark);
  13564       });
  13565     }
  13566   }, [url, url && dimRatio <= 50 && elementRef.current, setIsDark]);
  13567   Object(external_wp_element_["useEffect"])(() => {
  13568     // If opacity is greater than 50 the dominant color is the overlay color,
  13569     // so use that color for the dark mode computation.
  13570     if (dimRatio > 50 || !url) {
  13571       if (!overlayColor) {
  13572         // If no overlay color exists the overlay color is black (isDark )
  13573         setIsDark(true);
  13574         return;
  13575       }
  13576 
  13577       setIsDark(tinycolor_default()(overlayColor).isDark());
  13578     }
  13579   }, [overlayColor, dimRatio > 50 || !url, setIsDark]);
  13580   Object(external_wp_element_["useEffect"])(() => {
  13581     if (!url && !overlayColor) {
  13582       // Reset isDark
  13583       setIsDark(false);
  13584     }
  13585   }, [!url && !overlayColor, setIsDark]);
  13586   return isDark;
  13587 }
  13588 
  13589 function edit_mediaPosition({
  13590   x,
  13591   y
  13592 }) {
  13593   return `${Math.round(x * 100)}% ${Math.round(y * 100)}%`;
  13594 }
  13595 /**
  13596  * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while
  13597  * the media (image or video) is being uploaded and will not have an id allocated yet.
  13598  *
  13599  * @param {number} id  The id of the media.
  13600  * @param {string} url The url of the media.
  13601  *
  13602  * @return {boolean} Is the URL a Blob URL.
  13603  */
  13604 
  13605 
  13606 const isTemporaryMedia = (id, url) => !id && Object(external_wp_blob_["isBlobURL"])(url);
  13607 
  13608 function CoverPlaceholder({
  13609   disableMediaButtons = false,
  13610   children,
  13611   noticeUI,
  13612   noticeOperations,
  13613   onSelectMedia
  13614 }) {
  13615   const {
  13616     removeAllNotices,
  13617     createErrorNotice
  13618   } = noticeOperations;
  13619   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
  13620     icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  13621       icon: library_cover
  13622     }),
  13623     labels: {
  13624       title: Object(external_wp_i18n_["__"])('Cover'),
  13625       instructions: Object(external_wp_i18n_["__"])('Upload an image or video file, or pick one from your media library.')
  13626     },
  13627     onSelect: onSelectMedia,
  13628     accept: "image/*,video/*",
  13629     allowedTypes: shared_ALLOWED_MEDIA_TYPES,
  13630     notices: noticeUI,
  13631     disableMediaButtons: disableMediaButtons,
  13632     onError: message => {
  13633       removeAllNotices();
  13634       createErrorNotice(message);
  13635     }
  13636   }, children);
  13637 }
  13638 
  13639 function CoverEdit({
  13640   attributes,
  13641   clientId,
  13642   isSelected,
  13643   noticeUI,
  13644   noticeOperations,
  13645   overlayColor,
  13646   setAttributes,
  13647   setOverlayColor,
  13648   toggleSelection
  13649 }) {
  13650   var _styleAttribute$spaci, _styleAttribute$visua;
  13651 
  13652   const {
  13653     contentPosition,
  13654     id,
  13655     backgroundType,
  13656     dimRatio,
  13657     focalPoint,
  13658     hasParallax,
  13659     isRepeated,
  13660     minHeight,
  13661     minHeightUnit,
  13662     style: styleAttribute,
  13663     url
  13664   } = attributes;
  13665 
  13666   const {
  13667     gradientClass,
  13668     gradientValue,
  13669     setGradient
  13670   } = Object(external_wp_blockEditor_["__experimentalUseGradient"])();
  13671 
  13672   const onSelectMedia = attributesFromMedia(setAttributes);
  13673   const isUploadingMedia = isTemporaryMedia(id, url);
  13674   const [prevMinHeightValue, setPrevMinHeightValue] = Object(external_wp_element_["useState"])(minHeight);
  13675   const [prevMinHeightUnit, setPrevMinHeightUnit] = Object(external_wp_element_["useState"])(minHeightUnit);
  13676   const isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;
  13677 
  13678   const toggleMinFullHeight = () => {
  13679     if (isMinFullHeight) {
  13680       // If there aren't previous values, take the default ones.
  13681       if (prevMinHeightUnit === 'vh' && prevMinHeightValue === 100) {
  13682         return setAttributes({
  13683           minHeight: undefined,
  13684           minHeightUnit: undefined
  13685         });
  13686       } // Set the previous values of height.
  13687 
  13688 
  13689       return setAttributes({
  13690         minHeight: prevMinHeightValue,
  13691         minHeightUnit: prevMinHeightUnit
  13692       });
  13693     }
  13694 
  13695     setPrevMinHeightValue(minHeight);
  13696     setPrevMinHeightUnit(minHeightUnit); // Set full height.
  13697 
  13698     return setAttributes({
  13699       minHeight: 100,
  13700       minHeightUnit: 'vh'
  13701     });
  13702   };
  13703 
  13704   const toggleParallax = () => {
  13705     setAttributes({
  13706       hasParallax: !hasParallax,
  13707       ...(!hasParallax ? {
  13708         focalPoint: undefined
  13709       } : {})
  13710     });
  13711   };
  13712 
  13713   const toggleIsRepeated = () => {
  13714     setAttributes({
  13715       isRepeated: !isRepeated
  13716     });
  13717   };
  13718 
  13719   const isDarkElement = Object(external_wp_element_["useRef"])();
  13720   const isDark = useCoverIsDark(url, dimRatio, overlayColor.color, isDarkElement);
  13721   const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
  13722   const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
  13723   const [temporaryMinHeight, setTemporaryMinHeight] = Object(external_wp_element_["useState"])(null);
  13724   const minHeightWithUnit = minHeightUnit ? `${minHeight}${minHeightUnit}` : minHeight;
  13725   const isImgElement = !(hasParallax || isRepeated);
  13726   const style = { ...(isImageBackground && !isImgElement ? backgroundImageStyles(url) : {
  13727       backgroundImage: gradientValue ? gradientValue : undefined
  13728     }),
  13729     backgroundColor: overlayColor.color,
  13730     minHeight: temporaryMinHeight || minHeightWithUnit || undefined
  13731   };
  13732   const mediaStyle = {
  13733     objectPosition: focalPoint && isImgElement ? edit_mediaPosition(focalPoint) : undefined
  13734   };
  13735   const hasBackground = !!(url || overlayColor.color || gradientValue);
  13736   const showFocalPointPicker = isVideoBackground || isImageBackground && (!hasParallax || isRepeated);
  13737 
  13738   const imperativeFocalPointPreview = value => {
  13739     const [styleOfRef, property] = isDarkElement.current ? [isDarkElement.current.style, 'objectPosition'] : [ref.current.style, 'backgroundPosition'];
  13740     styleOfRef[property] = edit_mediaPosition(value);
  13741   };
  13742 
  13743   const hasInnerBlocks = Object(external_wp_data_["useSelect"])(select => select(external_wp_blockEditor_["store"]).getBlock(clientId).innerBlocks.length > 0, [clientId]);
  13744   const controls = Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  13745     group: "block"
  13746   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalBlockAlignmentMatrixControl"], {
  13747     label: Object(external_wp_i18n_["__"])('Change content position'),
  13748     value: contentPosition,
  13749     onChange: nextPosition => setAttributes({
  13750       contentPosition: nextPosition
  13751     }),
  13752     isDisabled: !hasInnerBlocks
  13753   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalBlockFullHeightAligmentControl"], {
  13754     isActive: isMinFullHeight,
  13755     onToggle: toggleMinFullHeight,
  13756     isDisabled: !hasInnerBlocks
  13757   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  13758     group: "other"
  13759   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
  13760     mediaId: id,
  13761     mediaURL: url,
  13762     allowedTypes: shared_ALLOWED_MEDIA_TYPES,
  13763     accept: "image/*,video/*",
  13764     onSelect: onSelectMedia,
  13765     name: !url ? Object(external_wp_i18n_["__"])('Add Media') : Object(external_wp_i18n_["__"])('Replace')
  13766   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, !!url && Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  13767     title: Object(external_wp_i18n_["__"])('Media settings')
  13768   }, isImageBackground && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  13769     label: Object(external_wp_i18n_["__"])('Fixed background'),
  13770     checked: hasParallax,
  13771     onChange: toggleParallax
  13772   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  13773     label: Object(external_wp_i18n_["__"])('Repeated background'),
  13774     checked: isRepeated,
  13775     onChange: toggleIsRepeated
  13776   })), showFocalPointPicker && Object(external_wp_element_["createElement"])(external_wp_components_["FocalPointPicker"], {
  13777     label: Object(external_wp_i18n_["__"])('Focal point picker'),
  13778     url: url,
  13779     value: focalPoint,
  13780     onDragStart: imperativeFocalPointPreview,
  13781     onDrag: imperativeFocalPointPreview,
  13782     onChange: newFocalPoint => setAttributes({
  13783       focalPoint: newFocalPoint
  13784     })
  13785   }), Object(external_wp_element_["createElement"])(external_wp_components_["PanelRow"], null, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  13786     isSecondary: true,
  13787     isSmall: true,
  13788     className: "block-library-cover__reset-button",
  13789     onClick: () => setAttributes({
  13790       url: undefined,
  13791       id: undefined,
  13792       backgroundType: undefined,
  13793       dimRatio: undefined,
  13794       focalPoint: undefined,
  13795       hasParallax: undefined,
  13796       isRepeated: undefined
  13797     })
  13798   }, Object(external_wp_i18n_["__"])('Clear Media')))), Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  13799     title: Object(external_wp_i18n_["__"])('Dimensions')
  13800   }, Object(external_wp_element_["createElement"])(CoverHeightInput, {
  13801     value: temporaryMinHeight || minHeight,
  13802     unit: minHeightUnit,
  13803     onChange: newMinHeight => setAttributes({
  13804       minHeight: newMinHeight
  13805     }),
  13806     onUnitChange: nextUnit => setAttributes({
  13807       minHeightUnit: nextUnit
  13808     })
  13809   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalPanelColorGradientSettings"], {
  13810     title: Object(external_wp_i18n_["__"])('Overlay'),
  13811     initialOpen: true,
  13812     settings: [{
  13813       colorValue: overlayColor.color,
  13814       gradientValue,
  13815       onColorChange: setOverlayColor,
  13816       onGradientChange: setGradient,
  13817       label: Object(external_wp_i18n_["__"])('Color')
  13818     }]
  13819   }, !!url && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  13820     label: Object(external_wp_i18n_["__"])('Opacity'),
  13821     value: dimRatio,
  13822     onChange: newDimRation => setAttributes({
  13823       dimRatio: newDimRation
  13824     }),
  13825     min: 0,
  13826     max: 100,
  13827     step: 10,
  13828     required: true
  13829   }))));
  13830   const ref = Object(external_wp_element_["useRef"])();
  13831   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  13832     ref
  13833   });
  13834   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])({
  13835     className: 'wp-block-cover__inner-container'
  13836   }, {
  13837     template: INNER_BLOCKS_TEMPLATE,
  13838     templateInsertUpdatesSelection: true
  13839   });
  13840 
  13841   if (!hasInnerBlocks && !hasBackground) {
  13842     return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, controls, Object(external_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({}, blockProps, {
  13843       className: classnames_default()('is-placeholder', blockProps.className)
  13844     }), Object(external_wp_element_["createElement"])(CoverPlaceholder, {
  13845       noticeUI: noticeUI,
  13846       onSelectMedia: onSelectMedia,
  13847       noticeOperations: noticeOperations
  13848     }, Object(external_wp_element_["createElement"])("div", {
  13849       className: "wp-block-cover__placeholder-background-options"
  13850     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["ColorPalette"], {
  13851       disableCustomColors: true,
  13852       value: overlayColor.color,
  13853       onChange: setOverlayColor,
  13854       clearable: false
  13855     })))));
  13856   }
  13857 
  13858   const classes = classnames_default()(dimRatioToClass(dimRatio), {
  13859     'is-dark-theme': isDark,
  13860     'has-background-dim': dimRatio !== 0,
  13861     'is-transient': isUploadingMedia,
  13862     'has-parallax': hasParallax,
  13863     'is-repeated': isRepeated,
  13864     [overlayColor.class]: overlayColor.class,
  13865     'has-background-gradient': gradientValue,
  13866     [gradientClass]: !url && gradientClass,
  13867     'has-custom-content-position': !isContentPositionCenter(contentPosition)
  13868   }, getPositionClassName(contentPosition));
  13869   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, controls, Object(external_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({}, blockProps, {
  13870     className: classnames_default()(classes, blockProps.className),
  13871     style: { ...style,
  13872       ...blockProps.style
  13873     },
  13874     "data-url": url
  13875   }), Object(external_wp_element_["createElement"])(BoxControlVisualizer, {
  13876     values: styleAttribute === null || styleAttribute === void 0 ? void 0 : (_styleAttribute$spaci = styleAttribute.spacing) === null || _styleAttribute$spaci === void 0 ? void 0 : _styleAttribute$spaci.padding,
  13877     showValues: styleAttribute === null || styleAttribute === void 0 ? void 0 : (_styleAttribute$visua = styleAttribute.visualizers) === null || _styleAttribute$visua === void 0 ? void 0 : _styleAttribute$visua.padding
  13878   }), Object(external_wp_element_["createElement"])(ResizableCover, {
  13879     className: "block-library-cover__resize-container",
  13880     onResizeStart: () => {
  13881       setAttributes({
  13882         minHeightUnit: 'px'
  13883       });
  13884       toggleSelection(false);
  13885     },
  13886     onResize: setTemporaryMinHeight,
  13887     onResizeStop: newMinHeight => {
  13888       toggleSelection(true);
  13889       setAttributes({
  13890         minHeight: newMinHeight
  13891       });
  13892       setTemporaryMinHeight(null);
  13893     },
  13894     showHandle: isSelected
  13895   }), url && gradientValue && dimRatio !== 0 && Object(external_wp_element_["createElement"])("span", {
  13896     "aria-hidden": "true",
  13897     className: classnames_default()('wp-block-cover__gradient-background', gradientClass),
  13898     style: {
  13899       backgroundImage: gradientValue
  13900     }
  13901   }), url && isImageBackground && isImgElement && Object(external_wp_element_["createElement"])("img", {
  13902     ref: isDarkElement,
  13903     className: "wp-block-cover__image-background",
  13904     alt: "",
  13905     src: url,
  13906     style: mediaStyle
  13907   }), url && isVideoBackground && Object(external_wp_element_["createElement"])("video", {
  13908     ref: isDarkElement,
  13909     className: "wp-block-cover__video-background",
  13910     autoPlay: true,
  13911     muted: true,
  13912     loop: true,
  13913     src: url,
  13914     style: mediaStyle
  13915   }), isUploadingMedia && Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null), Object(external_wp_element_["createElement"])(CoverPlaceholder, {
  13916     disableMediaButtons: true,
  13917     noticeUI: noticeUI,
  13918     onSelectMedia: onSelectMedia,
  13919     noticeOperations: noticeOperations
  13920   }), Object(external_wp_element_["createElement"])("div", innerBlocksProps)));
  13921 }
  13922 
  13923 /* harmony default export */ var cover_edit = (Object(external_wp_compose_["compose"])([Object(external_wp_data_["withDispatch"])(dispatch => {
  13924   const {
  13925     toggleSelection
  13926   } = dispatch(external_wp_blockEditor_["store"]);
  13927   return {
  13928     toggleSelection
  13929   };
  13930 }), Object(external_wp_blockEditor_["withColors"])({
  13931   overlayColor: 'background-color'
  13932 }), external_wp_components_["withNotices"], external_wp_compose_["withInstanceId"]])(CoverEdit));
  13933 
  13934 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/save.js
  13935 
  13936 
  13937 /**
  13938  * External dependencies
  13939  */
  13940 
  13941 /**
  13942  * WordPress dependencies
  13943  */
  13944 
  13945 
  13946 /**
  13947  * Internal dependencies
  13948  */
  13949 
  13950 
  13951 function cover_save_save({
  13952   attributes
  13953 }) {
  13954   const {
  13955     backgroundType,
  13956     gradient,
  13957     contentPosition,
  13958     customGradient,
  13959     customOverlayColor,
  13960     dimRatio,
  13961     focalPoint,
  13962     hasParallax,
  13963     isRepeated,
  13964     overlayColor,
  13965     url,
  13966     id,
  13967     minHeight: minHeightProp,
  13968     minHeightUnit
  13969   } = attributes;
  13970   const overlayColorClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', overlayColor);
  13971 
  13972   const gradientClass = Object(external_wp_blockEditor_["__experimentalGetGradientClass"])(gradient);
  13973 
  13974   const minHeight = minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
  13975   const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
  13976   const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
  13977   const isImgElement = !(hasParallax || isRepeated);
  13978   const style = { ...(isImageBackground && !isImgElement ? backgroundImageStyles(url) : {}),
  13979     backgroundColor: !overlayColorClass ? customOverlayColor : undefined,
  13980     background: customGradient && !url ? customGradient : undefined,
  13981     minHeight: minHeight || undefined
  13982   };
  13983   const objectPosition = // prettier-ignore
  13984   focalPoint && isImgElement ? `${Math.round(focalPoint.x * 100)}% ${Math.round(focalPoint.y * 100)}%` : undefined;
  13985   const classes = classnames_default()(dimRatioToClass(dimRatio), overlayColorClass, {
  13986     'has-background-dim': dimRatio !== 0,
  13987     'has-parallax': hasParallax,
  13988     'is-repeated': isRepeated,
  13989     'has-background-gradient': gradient || customGradient,
  13990     [gradientClass]: !url && gradientClass,
  13991     'has-custom-content-position': !isContentPositionCenter(contentPosition)
  13992   }, getPositionClassName(contentPosition));
  13993   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  13994     className: classes,
  13995     style
  13996   }), url && (gradient || customGradient) && dimRatio !== 0 && Object(external_wp_element_["createElement"])("span", {
  13997     "aria-hidden": "true",
  13998     className: classnames_default()('wp-block-cover__gradient-background', gradientClass),
  13999     style: customGradient ? {
  14000       background: customGradient
  14001     } : undefined
  14002   }), isImageBackground && isImgElement && url && Object(external_wp_element_["createElement"])("img", {
  14003     className: classnames_default()('wp-block-cover__image-background', id ? `wp-image-${id}` : null),
  14004     alt: "",
  14005     src: url,
  14006     style: {
  14007       objectPosition
  14008     },
  14009     "data-object-fit": "cover",
  14010     "data-object-position": objectPosition
  14011   }), isVideoBackground && url && Object(external_wp_element_["createElement"])("video", {
  14012     className: classnames_default()('wp-block-cover__video-background', 'intrinsic-ignore'),
  14013     autoPlay: true,
  14014     muted: true,
  14015     loop: true,
  14016     playsInline: true,
  14017     src: url,
  14018     style: {
  14019       objectPosition
  14020     },
  14021     "data-object-fit": "cover",
  14022     "data-object-position": objectPosition
  14023   }), Object(external_wp_element_["createElement"])("div", {
  14024     className: "wp-block-cover__inner-container"
  14025   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  14026 }
  14027 
  14028 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/transforms.js
  14029 /**
  14030  * WordPress dependencies
  14031  */
  14032 
  14033 /**
  14034  * Internal dependencies
  14035  */
  14036 
  14037 
  14038 const cover_transforms_transforms = {
  14039   from: [{
  14040     type: 'block',
  14041     blocks: ['core/image'],
  14042     transform: ({
  14043       caption,
  14044       url,
  14045       align,
  14046       id,
  14047       anchor,
  14048       style
  14049     }) => {
  14050       var _style$color;
  14051 
  14052       return Object(external_wp_blocks_["createBlock"])('core/cover', {
  14053         url,
  14054         align,
  14055         id,
  14056         anchor,
  14057         style: {
  14058           color: {
  14059             duotone: style === null || style === void 0 ? void 0 : (_style$color = style.color) === null || _style$color === void 0 ? void 0 : _style$color.duotone
  14060           }
  14061         }
  14062       }, [Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  14063         content: caption,
  14064         fontSize: 'large'
  14065       })]);
  14066     }
  14067   }, {
  14068     type: 'block',
  14069     blocks: ['core/video'],
  14070     transform: ({
  14071       caption,
  14072       src,
  14073       align,
  14074       id,
  14075       anchor
  14076     }) => Object(external_wp_blocks_["createBlock"])('core/cover', {
  14077       url: src,
  14078       align,
  14079       id,
  14080       backgroundType: VIDEO_BACKGROUND_TYPE,
  14081       anchor
  14082     }, [Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  14083       content: caption,
  14084       fontSize: 'large'
  14085     })])
  14086   }, {
  14087     type: 'block',
  14088     blocks: ['core/group'],
  14089     isMatch: ({
  14090       backgroundColor,
  14091       gradient,
  14092       style
  14093     }) => {
  14094       var _style$color2, _style$color3;
  14095 
  14096       /*
  14097        * Make this transformation available only if the Group has background
  14098        * or gradient set, because otherwise `Cover` block displays a Placeholder.
  14099        *
  14100        * This helps avoid arbitrary decisions about the Cover block's background
  14101        * and user confusion about the existence of previous content.
  14102        */
  14103       return backgroundColor || (style === null || style === void 0 ? void 0 : (_style$color2 = style.color) === null || _style$color2 === void 0 ? void 0 : _style$color2.background) || (style === null || style === void 0 ? void 0 : (_style$color3 = style.color) === null || _style$color3 === void 0 ? void 0 : _style$color3.gradient) || gradient;
  14104     },
  14105     transform: ({
  14106       align,
  14107       anchor,
  14108       backgroundColor,
  14109       gradient,
  14110       style
  14111     }, innerBlocks) => {
  14112       var _style$color4, _style$color5;
  14113 
  14114       return Object(external_wp_blocks_["createBlock"])('core/cover', {
  14115         align,
  14116         anchor,
  14117         overlayColor: backgroundColor,
  14118         customOverlayColor: style === null || style === void 0 ? void 0 : (_style$color4 = style.color) === null || _style$color4 === void 0 ? void 0 : _style$color4.background,
  14119         gradient,
  14120         customGradient: style === null || style === void 0 ? void 0 : (_style$color5 = style.color) === null || _style$color5 === void 0 ? void 0 : _style$color5.gradient
  14121       }, innerBlocks);
  14122     }
  14123   }],
  14124   to: [{
  14125     type: 'block',
  14126     blocks: ['core/image'],
  14127     isMatch: ({
  14128       backgroundType,
  14129       url,
  14130       overlayColor,
  14131       customOverlayColor,
  14132       gradient,
  14133       customGradient
  14134     }) => {
  14135       if (url) {
  14136         // If a url exists the transform could happen if that URL represents an image background.
  14137         return backgroundType === IMAGE_BACKGROUND_TYPE;
  14138       } // If a url is not set the transform could happen if the cover has no background color or gradient;
  14139 
  14140 
  14141       return !overlayColor && !customOverlayColor && !gradient && !customGradient;
  14142     },
  14143     transform: ({
  14144       title,
  14145       url,
  14146       align,
  14147       id,
  14148       anchor,
  14149       style
  14150     }) => {
  14151       var _style$color6;
  14152 
  14153       return Object(external_wp_blocks_["createBlock"])('core/image', {
  14154         caption: title,
  14155         url,
  14156         align,
  14157         id,
  14158         anchor,
  14159         style: {
  14160           color: {
  14161             duotone: style === null || style === void 0 ? void 0 : (_style$color6 = style.color) === null || _style$color6 === void 0 ? void 0 : _style$color6.duotone
  14162           }
  14163         }
  14164       });
  14165     }
  14166   }, {
  14167     type: 'block',
  14168     blocks: ['core/video'],
  14169     isMatch: ({
  14170       backgroundType,
  14171       url,
  14172       overlayColor,
  14173       customOverlayColor,
  14174       gradient,
  14175       customGradient
  14176     }) => {
  14177       if (url) {
  14178         // If a url exists the transform could happen if that URL represents a video background.
  14179         return backgroundType === VIDEO_BACKGROUND_TYPE;
  14180       } // If a url is not set the transform could happen if the cover has no background color or gradient;
  14181 
  14182 
  14183       return !overlayColor && !customOverlayColor && !gradient && !customGradient;
  14184     },
  14185     transform: ({
  14186       title,
  14187       url,
  14188       align,
  14189       id,
  14190       anchor
  14191     }) => Object(external_wp_blocks_["createBlock"])('core/video', {
  14192       caption: title,
  14193       src: url,
  14194       id,
  14195       align,
  14196       anchor
  14197     })
  14198   }]
  14199 };
  14200 /* harmony default export */ var cover_transforms = (cover_transforms_transforms);
  14201 
  14202 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/cover/index.js
  14203 /**
  14204  * WordPress dependencies
  14205  */
  14206 
  14207 
  14208 /**
  14209  * Internal dependencies
  14210  */
  14211 
  14212 
  14213 
  14214 const cover_metadata = {
  14215   apiVersion: 2,
  14216   name: "core/cover",
  14217   title: "Cover",
  14218   category: "media",
  14219   description: "Add an image or video with a text overlay \u2014 great for headers.",
  14220   textdomain: "default",
  14221   attributes: {
  14222     url: {
  14223       type: "string"
  14224     },
  14225     id: {
  14226       type: "number"
  14227     },
  14228     hasParallax: {
  14229       type: "boolean",
  14230       "default": false
  14231     },
  14232     isRepeated: {
  14233       type: "boolean",
  14234       "default": false
  14235     },
  14236     dimRatio: {
  14237       type: "number",
  14238       "default": 50
  14239     },
  14240     overlayColor: {
  14241       type: "string"
  14242     },
  14243     customOverlayColor: {
  14244       type: "string"
  14245     },
  14246     backgroundType: {
  14247       type: "string",
  14248       "default": "image"
  14249     },
  14250     focalPoint: {
  14251       type: "object"
  14252     },
  14253     minHeight: {
  14254       type: "number"
  14255     },
  14256     minHeightUnit: {
  14257       type: "string"
  14258     },
  14259     gradient: {
  14260       type: "string"
  14261     },
  14262     customGradient: {
  14263       type: "string"
  14264     },
  14265     contentPosition: {
  14266       type: "string"
  14267     }
  14268   },
  14269   supports: {
  14270     anchor: true,
  14271     align: true,
  14272     html: false,
  14273     spacing: {
  14274       padding: true
  14275     },
  14276     color: {
  14277       __experimentalDuotone: "> .wp-block-cover__image-background, > .wp-block-cover__video-background",
  14278       text: false,
  14279       background: false
  14280     }
  14281   },
  14282   editorStyle: "wp-block-cover-editor",
  14283   style: "wp-block-cover"
  14284 };
  14285 
  14286 
  14287 const {
  14288   name: cover_name
  14289 } = cover_metadata;
  14290 
  14291 const cover_settings = {
  14292   icon: library_cover,
  14293   example: {
  14294     attributes: {
  14295       customOverlayColor: '#065174',
  14296       dimRatio: 40,
  14297       url: 'https://s.w.org/images/core/5.3/Windbuchencom.jpg'
  14298     },
  14299     innerBlocks: [{
  14300       name: 'core/paragraph',
  14301       attributes: {
  14302         customFontSize: 48,
  14303         content: Object(external_wp_i18n_["__"])('<strong>Snow Patrol</strong>'),
  14304         align: 'center'
  14305       }
  14306     }]
  14307   },
  14308   transforms: cover_transforms,
  14309   save: cover_save_save,
  14310   edit: cover_edit,
  14311   deprecated: cover_deprecated
  14312 };
  14313 
  14314 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-controls.js
  14315 
  14316 
  14317 /**
  14318  * WordPress dependencies
  14319  */
  14320 
  14321 
  14322 
  14323 
  14324 
  14325 const EmbedControls = ({
  14326   blockSupportsResponsive,
  14327   showEditButton,
  14328   themeSupportsResponsive,
  14329   allowResponsive,
  14330   getResponsiveHelp,
  14331   toggleResponsive,
  14332   switchBackToURLInput
  14333 }) => Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, showEditButton && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  14334   className: "components-toolbar__control",
  14335   label: Object(external_wp_i18n_["__"])('Edit URL'),
  14336   icon: library_edit["a" /* default */],
  14337   onClick: switchBackToURLInput
  14338 }))), themeSupportsResponsive && blockSupportsResponsive && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  14339   title: Object(external_wp_i18n_["__"])('Media settings'),
  14340   className: "blocks-responsive"
  14341 }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  14342   label: Object(external_wp_i18n_["__"])('Resize for smaller devices'),
  14343   checked: allowResponsive,
  14344   help: getResponsiveHelp,
  14345   onChange: toggleResponsive
  14346 }))));
  14347 
  14348 /* harmony default export */ var embed_controls = (EmbedControls);
  14349 
  14350 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/icons.js
  14351 
  14352 
  14353 /**
  14354  * WordPress dependencies
  14355  */
  14356 
  14357 const embedContentIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14358   viewBox: "0 0 24 24",
  14359   xmlns: "http://www.w3.org/2000/svg"
  14360 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14361   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V9.8l4.7-5.3H19c.3 0 .5.2.5.5v14zm-6-9.5L16 12l-2.5 2.8 1.1 1L18 12l-3.5-3.5-1 1zm-3 0l-1-1L6 12l3.5 3.8 1.1-1L8 12l2.5-2.5z"
  14362 }));
  14363 const embedAudioIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14364   viewBox: "0 0 24 24",
  14365   xmlns: "http://www.w3.org/2000/svg"
  14366 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14367   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V9.8l4.7-5.3H19c.3 0 .5.2.5.5v14zM13.2 7.7c-.4.4-.7 1.1-.7 1.9v3.7c-.4-.3-.8-.4-1.3-.4-1.2 0-2.2 1-2.2 2.2 0 1.2 1 2.2 2.2 2.2.5 0 1-.2 1.4-.5.9-.6 1.4-1.6 1.4-2.6V9.6c0-.4.1-.6.2-.8.3-.3 1-.3 1.6-.3h.2V7h-.2c-.7 0-1.8 0-2.6.7z"
  14368 }));
  14369 const embedPhotoIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14370   viewBox: "0 0 24 24",
  14371   xmlns: "http://www.w3.org/2000/svg"
  14372 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14373   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9.2 4.5H19c.3 0 .5.2.5.5v8.4l-3-2.9c-.3-.3-.8-.3-1 0L11.9 14 9 12c-.3-.2-.6-.2-.8 0l-3.6 2.6V9.8l4.6-5.3zm9.8 15H5c-.3 0-.5-.2-.5-.5v-2.4l4.1-3 3 1.9c.3.2.7.2.9-.1L16 12l3.5 3.4V19c0 .3-.2.5-.5.5z"
  14374 }));
  14375 const embedVideoIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14376   viewBox: "0 0 24 24",
  14377   xmlns: "http://www.w3.org/2000/svg"
  14378 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14379   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm.5 16c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V9.8l4.7-5.3H19c.3 0 .5.2.5.5v14zM10 15l5-3-5-3v6z"
  14380 }));
  14381 const embedTwitterIcon = {
  14382   foreground: '#1da1f2',
  14383   src: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14384     xmlns: "http://www.w3.org/2000/svg",
  14385     viewBox: "0 0 24 24"
  14386   }, Object(external_wp_element_["createElement"])(external_wp_components_["G"], null, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14387     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"
  14388   })))
  14389 };
  14390 const embedYouTubeIcon = {
  14391   foreground: '#ff0000',
  14392   src: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14393     viewBox: "0 0 24 24"
  14394   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14395     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"
  14396   }))
  14397 };
  14398 const embedFacebookIcon = {
  14399   foreground: '#3b5998',
  14400   src: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14401     viewBox: "0 0 24 24"
  14402   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14403     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"
  14404   }))
  14405 };
  14406 const embedInstagramIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14407   viewBox: "0 0 24 24"
  14408 }, Object(external_wp_element_["createElement"])(external_wp_components_["G"], null, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14409   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"
  14410 })));
  14411 const embedWordPressIcon = {
  14412   foreground: '#0073AA',
  14413   src: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14414     viewBox: "0 0 24 24"
  14415   }, Object(external_wp_element_["createElement"])(external_wp_components_["G"], null, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14416     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"
  14417   })))
  14418 };
  14419 const embedSpotifyIcon = {
  14420   foreground: '#1db954',
  14421   src: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14422     viewBox: "0 0 24 24"
  14423   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14424     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"
  14425   }))
  14426 };
  14427 const embedFlickrIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14428   viewBox: "0 0 24 24"
  14429 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14430   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"
  14431 }));
  14432 const embedVimeoIcon = {
  14433   foreground: '#1ab7ea',
  14434   src: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14435     xmlns: "http://www.w3.org/2000/svg",
  14436     viewBox: "0 0 24 24"
  14437   }, Object(external_wp_element_["createElement"])(external_wp_components_["G"], null, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14438     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"
  14439   })))
  14440 };
  14441 const embedRedditIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14442   viewBox: "0 0 24 24"
  14443 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14444   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"
  14445 }));
  14446 const embedTumblrIcon = {
  14447   foreground: '#35465c',
  14448   src: Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14449     viewBox: "0 0 24 24"
  14450   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14451     d: "M19 3H5a2 2 0 00-2 2v14c0 1.1.9 2 2 2h14a2 2 0 002-2V5a2 2 0 00-2-2zm-5.69 14.66c-2.72 0-3.1-1.9-3.1-3.16v-3.56H8.49V8.99c1.7-.62 2.54-1.99 2.64-2.87 0-.06.06-.41.06-.58h1.9v3.1h2.17v2.3h-2.18v3.1c0 .47.13 1.3 1.2 1.26h1.1v2.36c-1.01.02-2.07 0-2.07 0z"
  14452   }))
  14453 };
  14454 const embedAmazonIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14455   viewBox: "0 0 24 24"
  14456 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14457   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"
  14458 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14459   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"
  14460 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14461   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"
  14462 }));
  14463 const embedAnimotoIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14464   viewBox: "0 0 24 24"
  14465 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14466   d: "m.0206909 21 19.8160091-13.07806 3.5831 6.20826z",
  14467   fill: "#4bc7ee"
  14468 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14469   d: "m23.7254 19.0205-10.1074-17.18468c-.6421-1.114428-1.7087-1.114428-2.3249 0l-11.2931 19.16418h22.5655c1.279 0 1.8019-.8905 1.1599-1.9795z",
  14470   fill: "#d4cdcb"
  14471 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14472   d: "m.0206909 21 15.2439091-16.38571 4.3029 7.32271z",
  14473   fill: "#c3d82e"
  14474 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14475   d: "m13.618 1.83582c-.6421-1.114428-1.7087-1.114428-2.3249 0l-11.2931 19.16418 15.2646-16.38573z",
  14476   fill: "#e4ecb0"
  14477 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14478   d: "m.0206909 21 19.5468091-9.063 1.6621 2.8344z",
  14479   fill: "#209dbd"
  14480 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14481   d: "m.0206909 21 17.9209091-11.82623 1.6259 2.76323z",
  14482   fill: "#7cb3c9"
  14483 }));
  14484 const embedDailymotionIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  14485   viewBox: "0 0 24 24"
  14486 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  14487   d: "m12.1479 18.5957c-2.4949 0-4.28131-1.7558-4.28131-4.0658 0-2.2176 1.78641-4.0965 4.09651-4.0965 2.2793 0 4.0349 1.7864 4.0349 4.1581 0 2.2794-1.7556 4.0042-3.8501 4.0042zm8.3521-18.5957-4.5329 1v7c-1.1088-1.41691-2.8028-1.8787-4.8049-1.8787-2.09443 0-3.97329.76993-5.5133 2.27917-1.72483 1.66323-2.6489 3.78863-2.6489 6.16033 0 2.5873.98562 4.8049 2.89526 6.499 1.44763 1.2936 3.17251 1.9402 5.17454 1.9402 1.9713 0 3.4498-.5236 4.8973-1.9402v1.9402h4.5329c0-7.6359 0-15.3641 0-23z",
  14488   fill: "#333436"
  14489 }));
  14490 
  14491 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-loading.js
  14492 
  14493 
  14494 /**
  14495  * WordPress dependencies
  14496  */
  14497 
  14498 
  14499 
  14500 const EmbedLoading = () => Object(external_wp_element_["createElement"])("div", {
  14501   className: "wp-block-embed is-loading"
  14502 }, Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null), Object(external_wp_element_["createElement"])("p", null, Object(external_wp_i18n_["__"])('Embedding…')));
  14503 
  14504 /* harmony default export */ var embed_loading = (EmbedLoading);
  14505 
  14506 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-placeholder.js
  14507 
  14508 
  14509 /**
  14510  * WordPress dependencies
  14511  */
  14512 
  14513 
  14514 
  14515 
  14516 const EmbedPlaceholder = ({
  14517   icon,
  14518   label,
  14519   value,
  14520   onSubmit,
  14521   onChange,
  14522   cannotEmbed,
  14523   fallback,
  14524   tryAgain
  14525 }) => {
  14526   return Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], {
  14527     icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  14528       icon: icon,
  14529       showColors: true
  14530     }),
  14531     label: label,
  14532     className: "wp-block-embed",
  14533     instructions: Object(external_wp_i18n_["__"])('Paste a link to the content you want to display on your site.')
  14534   }, Object(external_wp_element_["createElement"])("form", {
  14535     onSubmit: onSubmit
  14536   }, Object(external_wp_element_["createElement"])("input", {
  14537     type: "url",
  14538     value: value || '',
  14539     className: "components-placeholder__input",
  14540     "aria-label": label,
  14541     placeholder: Object(external_wp_i18n_["__"])('Enter URL to embed here…'),
  14542     onChange: onChange
  14543   }), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  14544     isPrimary: true,
  14545     type: "submit"
  14546   }, Object(external_wp_i18n_["_x"])('Embed', 'button label'))), Object(external_wp_element_["createElement"])("div", {
  14547     className: "components-placeholder__learn-more"
  14548   }, Object(external_wp_element_["createElement"])(external_wp_components_["ExternalLink"], {
  14549     href: Object(external_wp_i18n_["__"])('https://wordpress.org/support/article/embeds/')
  14550   }, Object(external_wp_i18n_["__"])('Learn more about embeds'))), cannotEmbed && Object(external_wp_element_["createElement"])("div", {
  14551     className: "components-placeholder__error"
  14552   }, Object(external_wp_element_["createElement"])("div", {
  14553     className: "components-placeholder__instructions"
  14554   }, Object(external_wp_i18n_["__"])('Sorry, this content could not be embedded.')), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  14555     isSecondary: true,
  14556     onClick: tryAgain
  14557   }, Object(external_wp_i18n_["_x"])('Try again', 'button label')), ' ', Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  14558     isSecondary: true,
  14559     onClick: fallback
  14560   }, Object(external_wp_i18n_["_x"])('Convert to link', 'button label'))));
  14561 };
  14562 
  14563 /* harmony default export */ var embed_placeholder = (EmbedPlaceholder);
  14564 
  14565 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/wp-embed-preview.js
  14566 
  14567 
  14568 /**
  14569  * WordPress dependencies
  14570  */
  14571 
  14572 /** @typedef {import('@wordpress/element').WPSyntheticEvent} WPSyntheticEvent */
  14573 
  14574 function WpEmbedPreview({
  14575   html
  14576 }) {
  14577   const ref = Object(external_wp_element_["useRef"])();
  14578   Object(external_wp_element_["useEffect"])(() => {
  14579     const {
  14580       ownerDocument
  14581     } = ref.current;
  14582     const {
  14583       defaultView
  14584     } = ownerDocument;
  14585     /**
  14586      * Checks for WordPress embed events signaling the height change when iframe
  14587      * content loads or iframe's window is resized.  The event is sent from
  14588      * WordPress core via the window.postMessage API.
  14589      *
  14590      * References:
  14591      * window.postMessage: https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage
  14592      * WordPress core embed-template on load: https://github.com/WordPress/WordPress/blob/HEAD/wp-includes/js/wp-embed-template.js#L143
  14593      * WordPress core embed-template on resize: https://github.com/WordPress/WordPress/blob/HEAD/wp-includes/js/wp-embed-template.js#L187
  14594      *
  14595      * @param {WPSyntheticEvent} event Message event.
  14596      */
  14597 
  14598     function resizeWPembeds({
  14599       data: {
  14600         secret,
  14601         message,
  14602         value
  14603       } = {}
  14604     }) {
  14605       if ([secret, message, value].some(attribute => !attribute) || message !== 'height') {
  14606         return;
  14607       }
  14608 
  14609       ownerDocument.querySelectorAll(`iframe[data-secret="${secret}"`).forEach(iframe => {
  14610         if (+iframe.height !== value) {
  14611           iframe.height = value;
  14612         }
  14613       });
  14614     }
  14615     /**
  14616      * Checks whether the wp embed iframe is the activeElement,
  14617      * if it is dispatch a focus event.
  14618      */
  14619 
  14620 
  14621     function checkFocus() {
  14622       const {
  14623         activeElement
  14624       } = ownerDocument;
  14625 
  14626       if (activeElement.tagName !== 'IFRAME' || activeElement.parentNode !== ref.current) {
  14627         return;
  14628       }
  14629 
  14630       activeElement.focus();
  14631     }
  14632 
  14633     defaultView.addEventListener('message', resizeWPembeds);
  14634     defaultView.addEventListener('blur', checkFocus);
  14635     return () => {
  14636       defaultView.removeEventListener('message', resizeWPembeds);
  14637       defaultView.removeEventListener('blur', checkFocus);
  14638     };
  14639   }, []);
  14640 
  14641   const __html = Object(external_wp_element_["useMemo"])(() => {
  14642     const doc = new window.DOMParser().parseFromString(html, 'text/html');
  14643     const iframe = doc.querySelector('iframe');
  14644 
  14645     if (iframe) {
  14646       iframe.removeAttribute('style');
  14647     }
  14648 
  14649     const blockQuote = doc.querySelector('blockquote');
  14650 
  14651     if (blockQuote) {
  14652       blockQuote.style.display = 'none';
  14653     }
  14654 
  14655     return doc.body.innerHTML;
  14656   }, [html]);
  14657 
  14658   return Object(external_wp_element_["createElement"])("div", {
  14659     ref: ref,
  14660     className: "wp-block-embed__wrapper",
  14661     dangerouslySetInnerHTML: {
  14662       __html
  14663     }
  14664   });
  14665 }
  14666 
  14667 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/embed-preview.js
  14668 
  14669 
  14670 /**
  14671  * Internal dependencies
  14672  */
  14673 
  14674 /**
  14675  * External dependencies
  14676  */
  14677 
  14678 
  14679 /**
  14680  * WordPress dependencies
  14681  */
  14682 
  14683 
  14684 
  14685 
  14686 
  14687 
  14688 /**
  14689  * Internal dependencies
  14690  */
  14691 
  14692 
  14693 
  14694 class embed_preview_EmbedPreview extends external_wp_element_["Component"] {
  14695   constructor() {
  14696     super(...arguments);
  14697     this.hideOverlay = this.hideOverlay.bind(this);
  14698     this.state = {
  14699       interactive: false
  14700     };
  14701   }
  14702 
  14703   static getDerivedStateFromProps(nextProps, state) {
  14704     if (!nextProps.isSelected && state.interactive) {
  14705       // We only want to change this when the block is not selected, because changing it when
  14706       // the block becomes selected makes the overlap disappear too early. Hiding the overlay
  14707       // happens on mouseup when the overlay is clicked.
  14708       return {
  14709         interactive: false
  14710       };
  14711     }
  14712 
  14713     return null;
  14714   }
  14715 
  14716   hideOverlay() {
  14717     // This is called onMouseUp on the overlay. We can't respond to the `isSelected` prop
  14718     // changing, because that happens on mouse down, and the overlay immediately disappears,
  14719     // and the mouse event can end up in the preview content. We can't use onClick on
  14720     // the overlay to hide it either, because then the editor misses the mouseup event, and
  14721     // thinks we're multi-selecting blocks.
  14722     this.setState({
  14723       interactive: true
  14724     });
  14725   }
  14726 
  14727   render() {
  14728     const {
  14729       preview,
  14730       previewable,
  14731       url,
  14732       type,
  14733       caption,
  14734       onCaptionChange,
  14735       isSelected,
  14736       className,
  14737       icon,
  14738       label,
  14739       insertBlocksAfter
  14740     } = this.props;
  14741     const {
  14742       scripts
  14743     } = preview;
  14744     const {
  14745       interactive
  14746     } = this.state;
  14747     const html = 'photo' === type ? getPhotoHtml(preview) : preview.html;
  14748     const parsedHost = new URL(url).host.split('.');
  14749     const parsedHostBaseUrl = parsedHost.splice(parsedHost.length - 2, parsedHost.length - 1).join('.');
  14750     const iframeTitle = Object(external_wp_i18n_["sprintf"])( // translators: %s: host providing embed content e.g: www.youtube.com
  14751     Object(external_wp_i18n_["__"])('Embedded content from %s'), parsedHostBaseUrl);
  14752     const sandboxClassnames = dedupe_default()(type, className, 'wp-block-embed__wrapper'); // Disabled because the overlay div doesn't actually have a role or functionality
  14753     // as far as the user is concerned. We're just catching the first click so that
  14754     // the block can be selected without interacting with the embed preview that the overlay covers.
  14755 
  14756     /* eslint-disable jsx-a11y/no-static-element-interactions */
  14757 
  14758     const embedWrapper = 'wp-embed' === type ? Object(external_wp_element_["createElement"])(WpEmbedPreview, {
  14759       html: html
  14760     }) : Object(external_wp_element_["createElement"])("div", {
  14761       className: "wp-block-embed__wrapper"
  14762     }, Object(external_wp_element_["createElement"])(external_wp_components_["SandBox"], {
  14763       html: html,
  14764       scripts: scripts,
  14765       title: iframeTitle,
  14766       type: sandboxClassnames,
  14767       onFocus: this.hideOverlay
  14768     }), !interactive && Object(external_wp_element_["createElement"])("div", {
  14769       className: "block-library-embed__interactive-overlay",
  14770       onMouseUp: this.hideOverlay
  14771     }));
  14772     /* eslint-enable jsx-a11y/no-static-element-interactions */
  14773 
  14774     return Object(external_wp_element_["createElement"])("figure", {
  14775       className: dedupe_default()(className, 'wp-block-embed', {
  14776         'is-type-video': 'video' === type
  14777       })
  14778     }, previewable ? embedWrapper : Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], {
  14779       icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  14780         icon: icon,
  14781         showColors: true
  14782       }),
  14783       label: label
  14784     }, Object(external_wp_element_["createElement"])("p", {
  14785       className: "components-placeholder__error"
  14786     }, Object(external_wp_element_["createElement"])("a", {
  14787       href: url
  14788     }, url)), Object(external_wp_element_["createElement"])("p", {
  14789       className: "components-placeholder__error"
  14790     }, Object(external_wp_i18n_["sprintf"])(
  14791     /* translators: %s: host providing embed content e.g: www.youtube.com */
  14792     Object(external_wp_i18n_["__"])("Embedded content from %s can't be previewed in the editor."), parsedHostBaseUrl))), (!external_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  14793       tagName: "figcaption",
  14794       placeholder: Object(external_wp_i18n_["__"])('Add caption'),
  14795       value: caption,
  14796       onChange: onCaptionChange,
  14797       inlineToolbar: true,
  14798       __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
  14799     }));
  14800   }
  14801 
  14802 }
  14803 
  14804 /* harmony default export */ var embed_preview = (embed_preview_EmbedPreview);
  14805 
  14806 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/edit.js
  14807 
  14808 
  14809 /**
  14810  * Internal dependencies
  14811  */
  14812 
  14813 
  14814 
  14815 
  14816 
  14817 
  14818 /**
  14819  * External dependencies
  14820  */
  14821 
  14822 
  14823 /**
  14824  * WordPress dependencies
  14825  */
  14826 
  14827 
  14828 
  14829 
  14830 
  14831 
  14832 
  14833 
  14834 function edit_getResponsiveHelp(checked) {
  14835   return checked ? Object(external_wp_i18n_["__"])('This embed will preserve its aspect ratio when the browser is resized.') : Object(external_wp_i18n_["__"])('This embed may not preserve its aspect ratio when the browser is resized.');
  14836 }
  14837 
  14838 const EmbedEdit = props => {
  14839   const {
  14840     attributes: {
  14841       providerNameSlug,
  14842       previewable,
  14843       responsive,
  14844       url: attributesUrl
  14845     },
  14846     attributes,
  14847     isSelected,
  14848     onReplace,
  14849     setAttributes,
  14850     insertBlocksAfter,
  14851     onFocus
  14852   } = props;
  14853   const defaultEmbedInfo = {
  14854     title: Object(external_wp_i18n_["_x"])('Embed', 'block title'),
  14855     icon: embedContentIcon
  14856   };
  14857   const {
  14858     icon,
  14859     title
  14860   } = getEmbedInfoByProvider(providerNameSlug) || defaultEmbedInfo;
  14861   const [url, setURL] = Object(external_wp_element_["useState"])(attributesUrl);
  14862   const [isEditingURL, setIsEditingURL] = Object(external_wp_element_["useState"])(false);
  14863   const {
  14864     invalidateResolution
  14865   } = Object(external_wp_data_["useDispatch"])('core/data');
  14866   const {
  14867     preview,
  14868     fetching,
  14869     themeSupportsResponsive,
  14870     cannotEmbed
  14871   } = Object(external_wp_data_["useSelect"])(select => {
  14872     var _embedPreview$data;
  14873 
  14874     const {
  14875       getEmbedPreview,
  14876       isPreviewEmbedFallback,
  14877       isRequestingEmbedPreview,
  14878       getThemeSupports
  14879     } = select(external_wp_coreData_["store"]);
  14880 
  14881     if (!attributesUrl) {
  14882       return {
  14883         fetching: false,
  14884         cannotEmbed: false
  14885       };
  14886     }
  14887 
  14888     const embedPreview = getEmbedPreview(attributesUrl);
  14889     const previewIsFallback = isPreviewEmbedFallback(attributesUrl); // The external oEmbed provider does not exist. We got no type info and no html.
  14890 
  14891     const badEmbedProvider = (embedPreview === null || embedPreview === void 0 ? void 0 : embedPreview.html) === false && (embedPreview === null || embedPreview === void 0 ? void 0 : embedPreview.type) === undefined; // Some WordPress URLs that can't be embedded will cause the API to return
  14892     // a valid JSON response with no HTML and `data.status` set to 404, rather
  14893     // than generating a fallback response as other embeds do.
  14894 
  14895     const wordpressCantEmbed = (embedPreview === null || embedPreview === void 0 ? void 0 : (_embedPreview$data = embedPreview.data) === null || _embedPreview$data === void 0 ? void 0 : _embedPreview$data.status) === 404;
  14896     const validPreview = !!embedPreview && !badEmbedProvider && !wordpressCantEmbed;
  14897     return {
  14898       preview: validPreview ? embedPreview : undefined,
  14899       fetching: isRequestingEmbedPreview(attributesUrl),
  14900       themeSupportsResponsive: getThemeSupports()['responsive-embeds'],
  14901       cannotEmbed: !validPreview || previewIsFallback
  14902     };
  14903   }, [attributesUrl]);
  14904   /**
  14905    * @return {Object} Attributes derived from the preview, merged with the current attributes.
  14906    */
  14907 
  14908   const getMergedAttributes = () => {
  14909     const {
  14910       allowResponsive,
  14911       className
  14912     } = attributes;
  14913     return { ...attributes,
  14914       ...getAttributesFromPreview(preview, title, className, responsive, allowResponsive)
  14915     };
  14916   };
  14917 
  14918   const toggleResponsive = () => {
  14919     const {
  14920       allowResponsive,
  14921       className
  14922     } = attributes;
  14923     const {
  14924       html
  14925     } = preview;
  14926     const newAllowResponsive = !allowResponsive;
  14927     setAttributes({
  14928       allowResponsive: newAllowResponsive,
  14929       className: getClassNames(html, className, responsive && newAllowResponsive)
  14930     });
  14931   };
  14932 
  14933   Object(external_wp_element_["useEffect"])(() => {
  14934     if (!(preview !== null && preview !== void 0 && preview.html) || !cannotEmbed || fetching) {
  14935       return;
  14936     } // At this stage, we're not fetching the preview and know it can't be embedded,
  14937     // so try removing any trailing slash, and resubmit.
  14938 
  14939 
  14940     const newURL = attributesUrl.replace(/\/$/, '');
  14941     setURL(newURL);
  14942     setIsEditingURL(false);
  14943     setAttributes({
  14944       url: newURL
  14945     });
  14946   }, [preview === null || preview === void 0 ? void 0 : preview.html, attributesUrl]); // Handle incoming preview
  14947 
  14948   Object(external_wp_element_["useEffect"])(() => {
  14949     if (preview && !isEditingURL) {
  14950       // Even though we set attributes that get derived from the preview,
  14951       // we don't access them directly because for the initial render,
  14952       // the `setAttributes` call will not have taken effect. If we're
  14953       // rendering responsive content, setting the responsive classes
  14954       // after the preview has been rendered can result in unwanted
  14955       // clipping or scrollbars. The `getAttributesFromPreview` function
  14956       // that `getMergedAttributes` uses is memoized so that we're not
  14957       // calculating them on every render.
  14958       setAttributes(getMergedAttributes());
  14959 
  14960       if (onReplace) {
  14961         const upgradedBlock = createUpgradedEmbedBlock(props, getMergedAttributes());
  14962 
  14963         if (upgradedBlock) {
  14964           onReplace(upgradedBlock);
  14965         }
  14966       }
  14967     }
  14968   }, [preview, isEditingURL]);
  14969   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  14970 
  14971   if (fetching) {
  14972     return Object(external_wp_element_["createElement"])(external_wp_primitives_["View"], blockProps, Object(external_wp_element_["createElement"])(embed_loading, null));
  14973   }
  14974 
  14975   const label = external_wp_element_["Platform"].select({
  14976     // translators: %s: type of embed e.g: "YouTube", "Twitter", etc. "Embed" is used when no specific type exists
  14977     web: Object(external_wp_i18n_["sprintf"])(Object(external_wp_i18n_["__"])('%s URL'), title),
  14978     native: title
  14979   }); // No preview, or we can't embed the current URL, or we've clicked the edit button.
  14980 
  14981   const showEmbedPlaceholder = !preview || cannotEmbed || isEditingURL;
  14982 
  14983   if (showEmbedPlaceholder) {
  14984     return Object(external_wp_element_["createElement"])(external_wp_primitives_["View"], blockProps, Object(external_wp_element_["createElement"])(embed_placeholder, {
  14985       icon: icon,
  14986       label: label,
  14987       onFocus: onFocus,
  14988       onSubmit: event => {
  14989         if (event) {
  14990           event.preventDefault();
  14991         }
  14992 
  14993         setIsEditingURL(false);
  14994         setAttributes({
  14995           url
  14996         });
  14997       },
  14998       value: url,
  14999       cannotEmbed: cannotEmbed,
  15000       onChange: event => setURL(event.target.value),
  15001       fallback: () => util_fallback(url, onReplace),
  15002       tryAgain: () => {
  15003         invalidateResolution('core', 'getEmbedPreview', [url]);
  15004       }
  15005     }));
  15006   } // Even though we set attributes that get derived from the preview,
  15007   // we don't access them directly because for the initial render,
  15008   // the `setAttributes` call will not have taken effect. If we're
  15009   // rendering responsive content, setting the responsive classes
  15010   // after the preview has been rendered can result in unwanted
  15011   // clipping or scrollbars. The `getAttributesFromPreview` function
  15012   // that `getMergedAttributes` uses is memoized so that we're not
  15013 
  15014 
  15015   const {
  15016     caption,
  15017     type,
  15018     allowResponsive,
  15019     className: classFromPreview
  15020   } = getMergedAttributes();
  15021   const className = classnames_default()(classFromPreview, props.className);
  15022   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(embed_controls, {
  15023     showEditButton: preview && !cannotEmbed,
  15024     themeSupportsResponsive: themeSupportsResponsive,
  15025     blockSupportsResponsive: responsive,
  15026     allowResponsive: allowResponsive,
  15027     getResponsiveHelp: edit_getResponsiveHelp,
  15028     toggleResponsive: toggleResponsive,
  15029     switchBackToURLInput: () => setIsEditingURL(true)
  15030   }), Object(external_wp_element_["createElement"])(external_wp_primitives_["View"], blockProps, Object(external_wp_element_["createElement"])(embed_preview, {
  15031     preview: preview,
  15032     previewable: previewable,
  15033     className: className,
  15034     url: url,
  15035     type: type,
  15036     caption: caption,
  15037     onCaptionChange: value => setAttributes({
  15038       caption: value
  15039     }),
  15040     isSelected: isSelected,
  15041     icon: icon,
  15042     label: label,
  15043     insertBlocksAfter: insertBlocksAfter
  15044   })));
  15045 };
  15046 
  15047 /* harmony default export */ var embed_edit = (EmbedEdit);
  15048 
  15049 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/save.js
  15050 
  15051 
  15052 /**
  15053  * External dependencies
  15054  */
  15055 
  15056 /**
  15057  * WordPress dependencies
  15058  */
  15059 
  15060 
  15061 function embed_save_save({
  15062   attributes
  15063 }) {
  15064   const {
  15065     url,
  15066     caption,
  15067     type,
  15068     providerNameSlug
  15069   } = attributes;
  15070 
  15071   if (!url) {
  15072     return null;
  15073   }
  15074 
  15075   const className = dedupe_default()('wp-block-embed', {
  15076     [`is-type-${type}`]: type,
  15077     [`is-provider-${providerNameSlug}`]: providerNameSlug,
  15078     [`wp-block-embed-${providerNameSlug}`]: providerNameSlug
  15079   });
  15080   return Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save({
  15081     className
  15082   }), Object(external_wp_element_["createElement"])("div", {
  15083     className: "wp-block-embed__wrapper"
  15084   }, `\n${url}\n`
  15085   /* URL needs to be on its own line. */
  15086   ), !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  15087     tagName: "figcaption",
  15088     value: caption
  15089   }));
  15090 }
  15091 
  15092 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/transforms.js
  15093 
  15094 
  15095 /**
  15096  * WordPress dependencies
  15097  */
  15098 
  15099 
  15100 /**
  15101  * Internal dependencies
  15102  */
  15103 
  15104 const transforms_metadata = {
  15105   apiVersion: 2,
  15106   name: "core/embed",
  15107   title: "Embed",
  15108   category: "embed",
  15109   description: "Add a block that displays content pulled from other sites, like Twitter, Instagram or YouTube.",
  15110   textdomain: "default",
  15111   attributes: {
  15112     url: {
  15113       type: "string"
  15114     },
  15115     caption: {
  15116       type: "string",
  15117       source: "html",
  15118       selector: "figcaption"
  15119     },
  15120     type: {
  15121       type: "string"
  15122     },
  15123     providerNameSlug: {
  15124       type: "string"
  15125     },
  15126     allowResponsive: {
  15127       type: "boolean",
  15128       "default": true
  15129     },
  15130     responsive: {
  15131       type: "boolean",
  15132       "default": false
  15133     },
  15134     previewable: {
  15135       type: "boolean",
  15136       "default": true
  15137     }
  15138   },
  15139   supports: {
  15140     align: true
  15141   },
  15142   editorStyle: "wp-block-embed-editor",
  15143   style: "wp-block-embed"
  15144 };
  15145 const {
  15146   name: EMBED_BLOCK
  15147 } = transforms_metadata;
  15148 /**
  15149  * Default transforms for generic embeds.
  15150  */
  15151 
  15152 const embed_transforms_transforms = {
  15153   from: [{
  15154     type: 'raw',
  15155     isMatch: node => {
  15156       var _node$textContent, _node$textContent$mat;
  15157 
  15158       return node.nodeName === 'P' && /^\s*(https?:\/\/\S+)\s*$/i.test(node.textContent) && ((_node$textContent = node.textContent) === null || _node$textContent === void 0 ? void 0 : (_node$textContent$mat = _node$textContent.match(/https/gi)) === null || _node$textContent$mat === void 0 ? void 0 : _node$textContent$mat.length) === 1;
  15159     },
  15160     transform: node => {
  15161       return Object(external_wp_blocks_["createBlock"])(EMBED_BLOCK, {
  15162         url: node.textContent.trim()
  15163       });
  15164     }
  15165   }],
  15166   to: [{
  15167     type: 'block',
  15168     blocks: ['core/paragraph'],
  15169     transform: ({
  15170       url,
  15171       caption
  15172     }) => {
  15173       const link = Object(external_wp_element_["createElement"])("a", {
  15174         href: url
  15175       }, caption || url);
  15176       return Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  15177         content: Object(external_wp_element_["renderToString"])(link)
  15178       });
  15179     }
  15180   }]
  15181 };
  15182 /* harmony default export */ var embed_transforms = (embed_transforms_transforms);
  15183 
  15184 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/variations.js
  15185 /**
  15186  * WordPress dependencies
  15187  */
  15188 
  15189 /**
  15190  * Internal dependencies
  15191  */
  15192 
  15193 
  15194 /** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */
  15195 
  15196 /**
  15197  * Template option choices for predefined columns layouts.
  15198  *
  15199  * @type {WPBlockVariation[]}
  15200  */
  15201 
  15202 const embed_variations_variations = [{
  15203   name: 'twitter',
  15204   title: 'Twitter',
  15205   icon: embedTwitterIcon,
  15206   keywords: ['tweet', Object(external_wp_i18n_["__"])('social')],
  15207   description: Object(external_wp_i18n_["__"])('Embed a tweet.'),
  15208   patterns: [/^https?:\/\/(www\.)?twitter\.com\/.+/i],
  15209   attributes: {
  15210     providerNameSlug: 'twitter',
  15211     responsive: true
  15212   }
  15213 }, {
  15214   name: 'youtube',
  15215   title: 'YouTube',
  15216   icon: embedYouTubeIcon,
  15217   keywords: [Object(external_wp_i18n_["__"])('music'), Object(external_wp_i18n_["__"])('video')],
  15218   description: Object(external_wp_i18n_["__"])('Embed a YouTube video.'),
  15219   patterns: [/^https?:\/\/((m|www)\.)?youtube\.com\/.+/i, /^https?:\/\/youtu\.be\/.+/i],
  15220   attributes: {
  15221     providerNameSlug: 'youtube',
  15222     responsive: true
  15223   }
  15224 }, {
  15225   // Deprecate Facebook Embed per FB policy
  15226   // See: https://developers.facebook.com/docs/plugins/oembed-legacy
  15227   name: 'facebook',
  15228   title: 'Facebook',
  15229   icon: embedFacebookIcon,
  15230   keywords: [Object(external_wp_i18n_["__"])('social')],
  15231   description: Object(external_wp_i18n_["__"])('Embed a Facebook post.'),
  15232   scope: ['block'],
  15233   patterns: [],
  15234   attributes: {
  15235     providerNameSlug: 'facebook',
  15236     previewable: false,
  15237     responsive: true
  15238   }
  15239 }, {
  15240   // Deprecate Instagram per FB policy
  15241   // See: https://developers.facebook.com/docs/instagram/oembed-legacy
  15242   name: 'instagram',
  15243   title: 'Instagram',
  15244   icon: embedInstagramIcon,
  15245   keywords: [Object(external_wp_i18n_["__"])('image'), Object(external_wp_i18n_["__"])('social')],
  15246   description: Object(external_wp_i18n_["__"])('Embed an Instagram post.'),
  15247   scope: ['block'],
  15248   patterns: [],
  15249   attributes: {
  15250     providerNameSlug: 'instagram',
  15251     responsive: true
  15252   }
  15253 }, {
  15254   name: 'wordpress',
  15255   title: 'WordPress',
  15256   icon: embedWordPressIcon,
  15257   keywords: [Object(external_wp_i18n_["__"])('post'), Object(external_wp_i18n_["__"])('blog')],
  15258   description: Object(external_wp_i18n_["__"])('Embed a WordPress post.'),
  15259   attributes: {
  15260     providerNameSlug: 'wordpress'
  15261   }
  15262 }, {
  15263   name: 'soundcloud',
  15264   title: 'SoundCloud',
  15265   icon: embedAudioIcon,
  15266   keywords: [Object(external_wp_i18n_["__"])('music'), Object(external_wp_i18n_["__"])('audio')],
  15267   description: Object(external_wp_i18n_["__"])('Embed SoundCloud content.'),
  15268   patterns: [/^https?:\/\/(www\.)?soundcloud\.com\/.+/i],
  15269   attributes: {
  15270     providerNameSlug: 'soundcloud',
  15271     responsive: true
  15272   }
  15273 }, {
  15274   name: 'spotify',
  15275   title: 'Spotify',
  15276   icon: embedSpotifyIcon,
  15277   keywords: [Object(external_wp_i18n_["__"])('music'), Object(external_wp_i18n_["__"])('audio')],
  15278   description: Object(external_wp_i18n_["__"])('Embed Spotify content.'),
  15279   patterns: [/^https?:\/\/(open|play)\.spotify\.com\/.+/i],
  15280   attributes: {
  15281     providerNameSlug: 'spotify',
  15282     responsive: true
  15283   }
  15284 }, {
  15285   name: 'flickr',
  15286   title: 'Flickr',
  15287   icon: embedFlickrIcon,
  15288   keywords: [Object(external_wp_i18n_["__"])('image')],
  15289   description: Object(external_wp_i18n_["__"])('Embed Flickr content.'),
  15290   patterns: [/^https?:\/\/(www\.)?flickr\.com\/.+/i, /^https?:\/\/flic\.kr\/.+/i],
  15291   attributes: {
  15292     providerNameSlug: 'flickr',
  15293     responsive: true
  15294   }
  15295 }, {
  15296   name: 'vimeo',
  15297   title: 'Vimeo',
  15298   icon: embedVimeoIcon,
  15299   keywords: [Object(external_wp_i18n_["__"])('video')],
  15300   description: Object(external_wp_i18n_["__"])('Embed a Vimeo video.'),
  15301   patterns: [/^https?:\/\/(www\.)?vimeo\.com\/.+/i],
  15302   attributes: {
  15303     providerNameSlug: 'vimeo',
  15304     responsive: true
  15305   }
  15306 }, {
  15307   name: 'animoto',
  15308   title: 'Animoto',
  15309   icon: embedAnimotoIcon,
  15310   description: Object(external_wp_i18n_["__"])('Embed an Animoto video.'),
  15311   patterns: [/^https?:\/\/(www\.)?(animoto|video214)\.com\/.+/i],
  15312   attributes: {
  15313     providerNameSlug: 'animoto',
  15314     responsive: true
  15315   }
  15316 }, {
  15317   name: 'cloudup',
  15318   title: 'Cloudup',
  15319   icon: embedContentIcon,
  15320   description: Object(external_wp_i18n_["__"])('Embed Cloudup content.'),
  15321   patterns: [/^https?:\/\/cloudup\.com\/.+/i],
  15322   attributes: {
  15323     providerNameSlug: 'cloudup',
  15324     responsive: true
  15325   }
  15326 }, {
  15327   // Deprecated since CollegeHumor content is now powered by YouTube
  15328   name: 'collegehumor',
  15329   title: 'CollegeHumor',
  15330   icon: embedVideoIcon,
  15331   description: Object(external_wp_i18n_["__"])('Embed CollegeHumor content.'),
  15332   scope: ['block'],
  15333   patterns: [],
  15334   attributes: {
  15335     providerNameSlug: 'collegehumor',
  15336     responsive: true
  15337   }
  15338 }, {
  15339   name: 'crowdsignal',
  15340   title: 'Crowdsignal',
  15341   icon: embedContentIcon,
  15342   keywords: ['polldaddy', Object(external_wp_i18n_["__"])('survey')],
  15343   description: Object(external_wp_i18n_["__"])('Embed Crowdsignal (formerly Polldaddy) content.'),
  15344   patterns: [/^https?:\/\/((.+\.)?polldaddy\.com|poll\.fm|.+\.survey\.fm)\/.+/i],
  15345   attributes: {
  15346     providerNameSlug: 'crowdsignal',
  15347     responsive: true
  15348   }
  15349 }, {
  15350   name: 'dailymotion',
  15351   title: 'Dailymotion',
  15352   icon: embedDailymotionIcon,
  15353   keywords: [Object(external_wp_i18n_["__"])('video')],
  15354   description: Object(external_wp_i18n_["__"])('Embed a Dailymotion video.'),
  15355   patterns: [/^https?:\/\/(www\.)?dailymotion\.com\/.+/i],
  15356   attributes: {
  15357     providerNameSlug: 'dailymotion',
  15358     responsive: true
  15359   }
  15360 }, {
  15361   name: 'imgur',
  15362   title: 'Imgur',
  15363   icon: embedPhotoIcon,
  15364   description: Object(external_wp_i18n_["__"])('Embed Imgur content.'),
  15365   patterns: [/^https?:\/\/(.+\.)?imgur\.com\/.+/i],
  15366   attributes: {
  15367     providerNameSlug: 'imgur',
  15368     responsive: true
  15369   }
  15370 }, {
  15371   name: 'issuu',
  15372   title: 'Issuu',
  15373   icon: embedContentIcon,
  15374   description: Object(external_wp_i18n_["__"])('Embed Issuu content.'),
  15375   patterns: [/^https?:\/\/(www\.)?issuu\.com\/.+/i],
  15376   attributes: {
  15377     providerNameSlug: 'issuu',
  15378     responsive: true
  15379   }
  15380 }, {
  15381   name: 'kickstarter',
  15382   title: 'Kickstarter',
  15383   icon: embedContentIcon,
  15384   description: Object(external_wp_i18n_["__"])('Embed Kickstarter content.'),
  15385   patterns: [/^https?:\/\/(www\.)?kickstarter\.com\/.+/i, /^https?:\/\/kck\.st\/.+/i],
  15386   attributes: {
  15387     providerNameSlug: 'kickstarter',
  15388     responsive: true
  15389   }
  15390 }, {
  15391   name: 'meetup-com',
  15392   title: 'Meetup.com',
  15393   icon: embedContentIcon,
  15394   description: Object(external_wp_i18n_["__"])('Embed Meetup.com content.'),
  15395   patterns: [/^https?:\/\/(www\.)?meetu(\.ps|p\.com)\/.+/i],
  15396   attributes: {
  15397     providerNameSlug: 'meetup-com',
  15398     responsive: true
  15399   }
  15400 }, {
  15401   name: 'mixcloud',
  15402   title: 'Mixcloud',
  15403   icon: embedAudioIcon,
  15404   keywords: [Object(external_wp_i18n_["__"])('music'), Object(external_wp_i18n_["__"])('audio')],
  15405   description: Object(external_wp_i18n_["__"])('Embed Mixcloud content.'),
  15406   patterns: [/^https?:\/\/(www\.)?mixcloud\.com\/.+/i],
  15407   attributes: {
  15408     providerNameSlug: 'mixcloud',
  15409     responsive: true
  15410   }
  15411 }, {
  15412   name: 'reddit',
  15413   title: 'Reddit',
  15414   icon: embedRedditIcon,
  15415   description: Object(external_wp_i18n_["__"])('Embed a Reddit thread.'),
  15416   patterns: [/^https?:\/\/(www\.)?reddit\.com\/.+/i],
  15417   attributes: {
  15418     providerNameSlug: 'reddit',
  15419     responsive: true
  15420   }
  15421 }, {
  15422   name: 'reverbnation',
  15423   title: 'ReverbNation',
  15424   icon: embedAudioIcon,
  15425   description: Object(external_wp_i18n_["__"])('Embed ReverbNation content.'),
  15426   patterns: [/^https?:\/\/(www\.)?reverbnation\.com\/.+/i],
  15427   attributes: {
  15428     providerNameSlug: 'reverbnation',
  15429     responsive: true
  15430   }
  15431 }, {
  15432   name: 'screencast',
  15433   title: 'Screencast',
  15434   icon: embedVideoIcon,
  15435   description: Object(external_wp_i18n_["__"])('Embed Screencast content.'),
  15436   patterns: [/^https?:\/\/(www\.)?screencast\.com\/.+/i],
  15437   attributes: {
  15438     providerNameSlug: 'screencast',
  15439     responsive: true
  15440   }
  15441 }, {
  15442   name: 'scribd',
  15443   title: 'Scribd',
  15444   icon: embedContentIcon,
  15445   description: Object(external_wp_i18n_["__"])('Embed Scribd content.'),
  15446   patterns: [/^https?:\/\/(www\.)?scribd\.com\/.+/i],
  15447   attributes: {
  15448     providerNameSlug: 'scribd',
  15449     responsive: true
  15450   }
  15451 }, {
  15452   name: 'slideshare',
  15453   title: 'Slideshare',
  15454   icon: embedContentIcon,
  15455   description: Object(external_wp_i18n_["__"])('Embed Slideshare content.'),
  15456   patterns: [/^https?:\/\/(.+?\.)?slideshare\.net\/.+/i],
  15457   attributes: {
  15458     providerNameSlug: 'slideshare',
  15459     responsive: true
  15460   }
  15461 }, {
  15462   name: 'smugmug',
  15463   title: 'SmugMug',
  15464   icon: embedPhotoIcon,
  15465   description: Object(external_wp_i18n_["__"])('Embed SmugMug content.'),
  15466   patterns: [/^https?:\/\/(.+\.)?smugmug\.com\/.*/i],
  15467   attributes: {
  15468     providerNameSlug: 'smugmug',
  15469     previewable: false,
  15470     responsive: true
  15471   }
  15472 }, {
  15473   name: 'speaker-deck',
  15474   title: 'Speaker Deck',
  15475   icon: embedContentIcon,
  15476   description: Object(external_wp_i18n_["__"])('Embed Speaker Deck content.'),
  15477   patterns: [/^https?:\/\/(www\.)?speakerdeck\.com\/.+/i],
  15478   attributes: {
  15479     providerNameSlug: 'speaker-deck',
  15480     responsive: true
  15481   }
  15482 }, {
  15483   name: 'tiktok',
  15484   title: 'TikTok',
  15485   icon: embedVideoIcon,
  15486   keywords: [Object(external_wp_i18n_["__"])('video')],
  15487   description: Object(external_wp_i18n_["__"])('Embed a TikTok video.'),
  15488   patterns: [/^https?:\/\/(www\.)?tiktok\.com\/.+/i],
  15489   attributes: {
  15490     providerNameSlug: 'tiktok',
  15491     responsive: true
  15492   }
  15493 }, {
  15494   name: 'ted',
  15495   title: 'TED',
  15496   icon: embedVideoIcon,
  15497   description: Object(external_wp_i18n_["__"])('Embed a TED video.'),
  15498   patterns: [/^https?:\/\/(www\.|embed\.)?ted\.com\/.+/i],
  15499   attributes: {
  15500     providerNameSlug: 'ted',
  15501     responsive: true
  15502   }
  15503 }, {
  15504   name: 'tumblr',
  15505   title: 'Tumblr',
  15506   icon: embedTumblrIcon,
  15507   keywords: [Object(external_wp_i18n_["__"])('social')],
  15508   description: Object(external_wp_i18n_["__"])('Embed a Tumblr post.'),
  15509   patterns: [/^https?:\/\/(www\.)?tumblr\.com\/.+/i],
  15510   attributes: {
  15511     providerNameSlug: 'tumblr',
  15512     responsive: true
  15513   }
  15514 }, {
  15515   name: 'videopress',
  15516   title: 'VideoPress',
  15517   icon: embedVideoIcon,
  15518   keywords: [Object(external_wp_i18n_["__"])('video')],
  15519   description: Object(external_wp_i18n_["__"])('Embed a VideoPress video.'),
  15520   patterns: [/^https?:\/\/videopress\.com\/.+/i],
  15521   attributes: {
  15522     providerNameSlug: 'videopress',
  15523     responsive: true
  15524   }
  15525 }, {
  15526   name: 'wordpress-tv',
  15527   title: 'WordPress.tv',
  15528   icon: embedVideoIcon,
  15529   description: Object(external_wp_i18n_["__"])('Embed a WordPress.tv video.'),
  15530   patterns: [/^https?:\/\/wordpress\.tv\/.+/i],
  15531   attributes: {
  15532     providerNameSlug: 'wordpress-tv',
  15533     responsive: true
  15534   }
  15535 }, {
  15536   name: 'amazon-kindle',
  15537   title: 'Amazon Kindle',
  15538   icon: embedAmazonIcon,
  15539   keywords: [Object(external_wp_i18n_["__"])('ebook')],
  15540   description: Object(external_wp_i18n_["__"])('Embed Amazon Kindle content.'),
  15541   patterns: [/^https?:\/\/([a-z0-9-]+\.)?(amazon|amzn)(\.[a-z]{2,4})+\/.+/i, /^https?:\/\/(www\.)?(a\.co|z\.cn)\/.+/i],
  15542   attributes: {
  15543     providerNameSlug: 'amazon-kindle'
  15544   }
  15545 }];
  15546 /**
  15547  * Add `isActive` function to all `embed` variations, if not defined.
  15548  * `isActive` function is used to find a variation match from a created
  15549  *  Block by providing its attributes.
  15550  */
  15551 
  15552 embed_variations_variations.forEach(variation => {
  15553   if (variation.isActive) return;
  15554 
  15555   variation.isActive = (blockAttributes, variationAttributes) => blockAttributes.providerNameSlug === variationAttributes.providerNameSlug;
  15556 });
  15557 /* harmony default export */ var embed_variations = (embed_variations_variations);
  15558 
  15559 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/deprecated.js
  15560 
  15561 
  15562 /**
  15563  * External dependencies
  15564  */
  15565 
  15566 /**
  15567  * Internal dependencies
  15568  */
  15569 
  15570 const deprecated_metadata = {
  15571   apiVersion: 2,
  15572   name: "core/embed",
  15573   title: "Embed",
  15574   category: "embed",
  15575   description: "Add a block that displays content pulled from other sites, like Twitter, Instagram or YouTube.",
  15576   textdomain: "default",
  15577   attributes: {
  15578     url: {
  15579       type: "string"
  15580     },
  15581     caption: {
  15582       type: "string",
  15583       source: "html",
  15584       selector: "figcaption"
  15585     },
  15586     type: {
  15587       type: "string"
  15588     },
  15589     providerNameSlug: {
  15590       type: "string"
  15591     },
  15592     allowResponsive: {
  15593       type: "boolean",
  15594       "default": true
  15595     },
  15596     responsive: {
  15597       type: "boolean",
  15598       "default": false
  15599     },
  15600     previewable: {
  15601       type: "boolean",
  15602       "default": true
  15603     }
  15604   },
  15605   supports: {
  15606     align: true
  15607   },
  15608   editorStyle: "wp-block-embed-editor",
  15609   style: "wp-block-embed"
  15610 };
  15611 /**
  15612  * WordPress dependencies
  15613  */
  15614 
  15615 
  15616 const {
  15617   attributes: embed_deprecated_blockAttributes
  15618 } = deprecated_metadata;
  15619 const embed_deprecated_deprecated = [{
  15620   attributes: embed_deprecated_blockAttributes,
  15621 
  15622   save({
  15623     attributes: {
  15624       url,
  15625       caption,
  15626       type,
  15627       providerNameSlug
  15628     }
  15629   }) {
  15630     if (!url) {
  15631       return null;
  15632     }
  15633 
  15634     const embedClassName = classnames_default()('wp-block-embed', {
  15635       [`is-type-${type}`]: type,
  15636       [`is-provider-${providerNameSlug}`]: providerNameSlug
  15637     });
  15638     return Object(external_wp_element_["createElement"])("figure", {
  15639       className: embedClassName
  15640     }, `\n${url}\n`
  15641     /* URL needs to be on its own line. */
  15642     , !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  15643       tagName: "figcaption",
  15644       value: caption
  15645     }));
  15646   }
  15647 
  15648 }];
  15649 /* harmony default export */ var embed_deprecated = (embed_deprecated_deprecated);
  15650 
  15651 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/index.js
  15652 /**
  15653  * Internal dependencies
  15654  */
  15655 
  15656 
  15657 const embed_metadata = {
  15658   apiVersion: 2,
  15659   name: "core/embed",
  15660   title: "Embed",
  15661   category: "embed",
  15662   description: "Add a block that displays content pulled from other sites, like Twitter, Instagram or YouTube.",
  15663   textdomain: "default",
  15664   attributes: {
  15665     url: {
  15666       type: "string"
  15667     },
  15668     caption: {
  15669       type: "string",
  15670       source: "html",
  15671       selector: "figcaption"
  15672     },
  15673     type: {
  15674       type: "string"
  15675     },
  15676     providerNameSlug: {
  15677       type: "string"
  15678     },
  15679     allowResponsive: {
  15680       type: "boolean",
  15681       "default": true
  15682     },
  15683     responsive: {
  15684       type: "boolean",
  15685       "default": false
  15686     },
  15687     previewable: {
  15688       type: "boolean",
  15689       "default": true
  15690     }
  15691   },
  15692   supports: {
  15693     align: true
  15694   },
  15695   editorStyle: "wp-block-embed-editor",
  15696   style: "wp-block-embed"
  15697 };
  15698 
  15699 
  15700 
  15701 
  15702 const {
  15703   name: embed_name
  15704 } = embed_metadata;
  15705 
  15706 const embed_settings = {
  15707   icon: embedContentIcon,
  15708   edit: embed_edit,
  15709   save: embed_save_save,
  15710   transforms: embed_transforms,
  15711   variations: embed_variations,
  15712   deprecated: embed_deprecated
  15713 };
  15714 
  15715 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/file.js
  15716 
  15717 
  15718 /**
  15719  * WordPress dependencies
  15720  */
  15721 
  15722 const file_file = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  15723   viewBox: "0 0 24 24",
  15724   xmlns: "http://www.w3.org/2000/svg"
  15725 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  15726   d: "M19 6.2h-5.9l-.6-1.1c-.3-.7-1-1.1-1.8-1.1H5c-1.1 0-2 .9-2 2v11.8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V8.2c0-1.1-.9-2-2-2zm.5 11.6c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h5.8c.2 0 .4.1.4.3l1 2H19c.3 0 .5.2.5.5v9.5z"
  15727 }));
  15728 /* harmony default export */ var library_file = (file_file);
  15729 
  15730 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/inspector.js
  15731 
  15732 
  15733 /**
  15734  * WordPress dependencies
  15735  */
  15736 
  15737 
  15738 
  15739 /**
  15740  * Internal dependencies
  15741  */
  15742 
  15743 
  15744 function FileBlockInspector({
  15745   hrefs,
  15746   openInNewWindow,
  15747   showDownloadButton,
  15748   changeLinkDestinationOption,
  15749   changeOpenInNewWindow,
  15750   changeShowDownloadButton,
  15751   displayPreview,
  15752   changeDisplayPreview,
  15753   previewHeight,
  15754   changePreviewHeight
  15755 }) {
  15756   const {
  15757     href,
  15758     textLinkHref,
  15759     attachmentPage
  15760   } = hrefs;
  15761   let linkDestinationOptions = [{
  15762     value: href,
  15763     label: Object(external_wp_i18n_["__"])('URL')
  15764   }];
  15765 
  15766   if (attachmentPage) {
  15767     linkDestinationOptions = [{
  15768       value: href,
  15769       label: Object(external_wp_i18n_["__"])('Media file')
  15770     }, {
  15771       value: attachmentPage,
  15772       label: Object(external_wp_i18n_["__"])('Attachment page')
  15773     }];
  15774   }
  15775 
  15776   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, href.endsWith('.pdf') && Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  15777     title: Object(external_wp_i18n_["__"])('PDF settings')
  15778   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  15779     label: Object(external_wp_i18n_["__"])('Show inline embed'),
  15780     help: displayPreview ? Object(external_wp_i18n_["__"])("Note: Most phone and tablet browsers won't display embedded PDFs.") : null,
  15781     checked: !!displayPreview,
  15782     onChange: changeDisplayPreview
  15783   }), Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  15784     label: Object(external_wp_i18n_["__"])('Height in pixels'),
  15785     min: MIN_PREVIEW_HEIGHT,
  15786     max: Math.max(MAX_PREVIEW_HEIGHT, previewHeight),
  15787     value: previewHeight,
  15788     onChange: changePreviewHeight
  15789   })), Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  15790     title: Object(external_wp_i18n_["__"])('Text link settings')
  15791   }, Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  15792     label: Object(external_wp_i18n_["__"])('Link to'),
  15793     value: textLinkHref,
  15794     options: linkDestinationOptions,
  15795     onChange: changeLinkDestinationOption
  15796   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  15797     label: Object(external_wp_i18n_["__"])('Open in new tab'),
  15798     checked: openInNewWindow,
  15799     onChange: changeOpenInNewWindow
  15800   })), Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  15801     title: Object(external_wp_i18n_["__"])('Download button settings')
  15802   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  15803     label: Object(external_wp_i18n_["__"])('Show download button'),
  15804     checked: showDownloadButton,
  15805     onChange: changeShowDownloadButton
  15806   }))));
  15807 }
  15808 
  15809 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/utils.js
  15810 /**
  15811  * Uses a combination of user agent matching and feature detection to determine whether
  15812  * the current browser supports rendering PDFs inline.
  15813  *
  15814  * @return {boolean} Whether or not the browser supports inline PDFs.
  15815  */
  15816 const browserSupportsPdfs = () => {
  15817   // Most mobile devices include "Mobi" in their UA.
  15818   if (window.navigator.userAgent.indexOf('Mobi') > -1) {
  15819     return false;
  15820   } // Android tablets are the noteable exception.
  15821 
  15822 
  15823   if (window.navigator.userAgent.indexOf('Android') > -1) {
  15824     return false;
  15825   } // iPad pretends to be a Mac.
  15826 
  15827 
  15828   if (window.navigator.userAgent.indexOf('Macintosh') > -1 && window.navigator.maxTouchPoints && window.navigator.maxTouchPoints > 2) {
  15829     return false;
  15830   } // IE only supports PDFs when there's an ActiveX object available for it.
  15831 
  15832 
  15833   if (!!(window.ActiveXObject || 'ActiveXObject' in window) && !(createActiveXObject('AcroPDF.PDF') || createActiveXObject('PDF.PdfCtrl'))) {
  15834     return false;
  15835   }
  15836 
  15837   return true;
  15838 };
  15839 /**
  15840  * Helper function for creating ActiveX objects, catching any errors that are thrown
  15841  * when it's generated.
  15842  *
  15843  * @param {string} type The name of the ActiveX object to create.
  15844  * @return {window.ActiveXObject|undefined} The generated ActiveXObject, or null if it failed.
  15845  */
  15846 
  15847 const createActiveXObject = type => {
  15848   let ax;
  15849 
  15850   try {
  15851     ax = new window.ActiveXObject(type);
  15852   } catch (e) {
  15853     ax = undefined;
  15854   }
  15855 
  15856   return ax;
  15857 };
  15858 /**
  15859  * Hides all .wp-block-file__embed elements on the document. This function is only intended
  15860  * to be run on the front-end, it may have weird side effects running in the block editor.
  15861  */
  15862 
  15863 
  15864 const hidePdfEmbedsOnUnsupportedBrowsers = () => {
  15865   if (!browserSupportsPdfs()) {
  15866     const embeds = document.getElementsByClassName('wp-block-file__embed');
  15867     Array.from(embeds).forEach(embed => {
  15868       embed.style.display = 'none';
  15869     });
  15870   }
  15871 };
  15872 
  15873 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/edit.js
  15874 
  15875 
  15876 /**
  15877  * External dependencies
  15878  */
  15879 
  15880 /**
  15881  * WordPress dependencies
  15882  */
  15883 
  15884 
  15885 
  15886 
  15887 
  15888 
  15889 
  15890 
  15891 
  15892 
  15893 
  15894 /**
  15895  * Internal dependencies
  15896  */
  15897 
  15898 
  15899 
  15900 const MIN_PREVIEW_HEIGHT = 200;
  15901 const MAX_PREVIEW_HEIGHT = 2000;
  15902 
  15903 function ClipboardToolbarButton({
  15904   text,
  15905   disabled
  15906 }) {
  15907   const {
  15908     createNotice
  15909   } = Object(external_wp_data_["useDispatch"])(external_wp_notices_["store"]);
  15910   const ref = Object(external_wp_compose_["useCopyToClipboard"])(text, () => {
  15911     createNotice('info', Object(external_wp_i18n_["__"])('Copied URL to clipboard.'), {
  15912       isDismissible: true,
  15913       type: 'snackbar'
  15914     });
  15915   });
  15916   return Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  15917     className: "components-clipboard-toolbar-button",
  15918     ref: ref,
  15919     disabled: disabled
  15920   }, Object(external_wp_i18n_["__"])('Copy URL'));
  15921 }
  15922 
  15923 function FileEdit({
  15924   attributes,
  15925   isSelected,
  15926   setAttributes,
  15927   noticeUI,
  15928   noticeOperations
  15929 }) {
  15930   const {
  15931     id,
  15932     fileName,
  15933     href,
  15934     textLinkHref,
  15935     textLinkTarget,
  15936     showDownloadButton,
  15937     downloadButtonText,
  15938     displayPreview,
  15939     previewHeight
  15940   } = attributes;
  15941   const [hasError, setHasError] = Object(external_wp_element_["useState"])(false);
  15942   const {
  15943     media,
  15944     mediaUpload
  15945   } = Object(external_wp_data_["useSelect"])(select => ({
  15946     media: id === undefined ? undefined : select(external_wp_coreData_["store"]).getMedia(id),
  15947     mediaUpload: select(external_wp_blockEditor_["store"]).getSettings().mediaUpload
  15948   }), [id]);
  15949   const {
  15950     toggleSelection
  15951   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  15952   Object(external_wp_element_["useEffect"])(() => {
  15953     // Upload a file drag-and-dropped into the editor
  15954     if (Object(external_wp_blob_["isBlobURL"])(href)) {
  15955       const file = Object(external_wp_blob_["getBlobByURL"])(href);
  15956       mediaUpload({
  15957         filesList: [file],
  15958         onFileChange: ([newMedia]) => onSelectFile(newMedia),
  15959         onError: message => {
  15960           setHasError(true);
  15961           noticeOperations.createErrorNotice(message);
  15962         }
  15963       });
  15964       Object(external_wp_blob_["revokeBlobURL"])(href);
  15965     }
  15966 
  15967     if (downloadButtonText === undefined) {
  15968       changeDownloadButtonText(Object(external_wp_i18n_["_x"])('Download', 'button label'));
  15969     }
  15970   }, []);
  15971 
  15972   function onSelectFile(newMedia) {
  15973     if (newMedia && newMedia.url) {
  15974       setHasError(false);
  15975       const isPdf = newMedia.url.endsWith('.pdf');
  15976       setAttributes({
  15977         href: newMedia.url,
  15978         fileName: newMedia.title,
  15979         textLinkHref: newMedia.url,
  15980         id: newMedia.id,
  15981         displayPreview: isPdf ? true : undefined,
  15982         previewHeight: isPdf ? 600 : undefined
  15983       });
  15984     }
  15985   }
  15986 
  15987   function onUploadError(message) {
  15988     setHasError(true);
  15989     noticeOperations.removeAllNotices();
  15990     noticeOperations.createErrorNotice(message);
  15991   }
  15992 
  15993   function changeLinkDestinationOption(newHref) {
  15994     // Choose Media File or Attachment Page (when file is in Media Library)
  15995     setAttributes({
  15996       textLinkHref: newHref
  15997     });
  15998   }
  15999 
  16000   function changeOpenInNewWindow(newValue) {
  16001     setAttributes({
  16002       textLinkTarget: newValue ? '_blank' : false
  16003     });
  16004   }
  16005 
  16006   function changeShowDownloadButton(newValue) {
  16007     setAttributes({
  16008       showDownloadButton: newValue
  16009     });
  16010   }
  16011 
  16012   function changeDownloadButtonText(newValue) {
  16013     // Remove anchor tags from button text content.
  16014     setAttributes({
  16015       downloadButtonText: newValue.replace(/<\/?a[^>]*>/g, '')
  16016     });
  16017   }
  16018 
  16019   function changeDisplayPreview(newValue) {
  16020     setAttributes({
  16021       displayPreview: newValue
  16022     });
  16023   }
  16024 
  16025   function handleOnResizeStop(event, direction, elt, delta) {
  16026     toggleSelection(true);
  16027     const newHeight = parseInt(previewHeight + delta.height, 10);
  16028     setAttributes({
  16029       previewHeight: newHeight
  16030     });
  16031   }
  16032 
  16033   function changePreviewHeight(newValue) {
  16034     const newHeight = Math.max(parseInt(newValue, 10), MIN_PREVIEW_HEIGHT);
  16035     setAttributes({
  16036       previewHeight: newHeight
  16037     });
  16038   }
  16039 
  16040   const attachmentPage = media && media.link;
  16041   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  16042     className: classnames_default()(Object(external_wp_blob_["isBlobURL"])(href) && Object(external_wp_components_["__unstableGetAnimateClassName"])({
  16043       type: 'loading'
  16044     }), {
  16045       'is-transient': Object(external_wp_blob_["isBlobURL"])(href)
  16046     })
  16047   });
  16048   const displayPreviewInEditor = browserSupportsPdfs() && displayPreview;
  16049 
  16050   if (!href || hasError) {
  16051     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
  16052       icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  16053         icon: library_file
  16054       }),
  16055       labels: {
  16056         title: Object(external_wp_i18n_["__"])('File'),
  16057         instructions: Object(external_wp_i18n_["__"])('Upload a file or pick one from your media library.')
  16058       },
  16059       onSelect: onSelectFile,
  16060       notices: noticeUI,
  16061       onError: onUploadError,
  16062       accept: "*"
  16063     }));
  16064   }
  16065 
  16066   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(FileBlockInspector, {
  16067     hrefs: {
  16068       href,
  16069       textLinkHref,
  16070       attachmentPage
  16071     },
  16072     openInNewWindow: !!textLinkTarget,
  16073     showDownloadButton,
  16074     changeLinkDestinationOption,
  16075     changeOpenInNewWindow,
  16076     changeShowDownloadButton,
  16077     displayPreview,
  16078     changeDisplayPreview,
  16079     previewHeight,
  16080     changePreviewHeight
  16081   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  16082     group: "other"
  16083   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
  16084     mediaId: id,
  16085     mediaURL: href,
  16086     accept: "*",
  16087     onSelect: onSelectFile,
  16088     onError: onUploadError
  16089   }), Object(external_wp_element_["createElement"])(ClipboardToolbarButton, {
  16090     text: href,
  16091     disabled: Object(external_wp_blob_["isBlobURL"])(href)
  16092   })), Object(external_wp_element_["createElement"])("div", blockProps, displayPreviewInEditor && Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], {
  16093     size: {
  16094       height: previewHeight
  16095     },
  16096     minHeight: MIN_PREVIEW_HEIGHT,
  16097     maxHeight: MAX_PREVIEW_HEIGHT,
  16098     minWidth: "100%",
  16099     grid: [10, 10],
  16100     enable: {
  16101       top: false,
  16102       right: false,
  16103       bottom: true,
  16104       left: false,
  16105       topRight: false,
  16106       bottomRight: false,
  16107       bottomLeft: false,
  16108       topLeft: false
  16109     },
  16110     onResizeStart: () => toggleSelection(false),
  16111     onResizeStop: handleOnResizeStop,
  16112     showHandle: isSelected
  16113   }, Object(external_wp_element_["createElement"])("object", {
  16114     className: "wp-block-file__preview",
  16115     data: href,
  16116     type: "application/pdf",
  16117     "aria-label": Object(external_wp_i18n_["__"])('Embed of the selected PDF file.')
  16118   }), !isSelected && Object(external_wp_element_["createElement"])("div", {
  16119     className: "wp-block-file__preview-overlay"
  16120   })), Object(external_wp_element_["createElement"])("div", {
  16121     className: 'wp-block-file__content-wrapper'
  16122   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  16123     style: {
  16124       display: 'inline-block'
  16125     },
  16126     tagName: "a" // must be block-level or else cursor disappears
  16127     ,
  16128     value: fileName,
  16129     placeholder: Object(external_wp_i18n_["__"])('Write file name…'),
  16130     withoutInteractiveFormatting: true,
  16131     onChange: text => setAttributes({
  16132       fileName: text
  16133     }),
  16134     href: textLinkHref
  16135   }), showDownloadButton && Object(external_wp_element_["createElement"])("div", {
  16136     className: 'wp-block-file__button-richtext-wrapper'
  16137   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  16138     tagName: "div" // must be block-level or else cursor disappears
  16139     ,
  16140     "aria-label": Object(external_wp_i18n_["__"])('Download button text'),
  16141     className: 'wp-block-file__button',
  16142     value: downloadButtonText,
  16143     withoutInteractiveFormatting: true,
  16144     placeholder: Object(external_wp_i18n_["__"])('Add text…'),
  16145     onChange: text => changeDownloadButtonText(text)
  16146   })))));
  16147 }
  16148 
  16149 /* harmony default export */ var file_edit = (Object(external_wp_components_["withNotices"])(FileEdit));
  16150 
  16151 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/save.js
  16152 
  16153 
  16154 /**
  16155  * WordPress dependencies
  16156  */
  16157 
  16158 
  16159 function file_save_save({
  16160   attributes
  16161 }) {
  16162   const {
  16163     href,
  16164     fileName,
  16165     textLinkHref,
  16166     textLinkTarget,
  16167     showDownloadButton,
  16168     downloadButtonText,
  16169     displayPreview,
  16170     previewHeight
  16171   } = attributes;
  16172   const pdfEmbedLabel = external_wp_blockEditor_["RichText"].isEmpty(fileName) ? Object(external_wp_i18n_["__"])('PDF embed') : Object(external_wp_i18n_["sprintf"])(
  16173   /* translators: %s: filename. */
  16174   Object(external_wp_i18n_["__"])('Embed of %s.'), fileName);
  16175   return href && Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save(), displayPreview && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])("object", {
  16176     className: "wp-block-file__embed",
  16177     data: href,
  16178     type: "application/pdf",
  16179     style: {
  16180       width: '100%',
  16181       height: `${previewHeight}px`
  16182     },
  16183     "aria-label": pdfEmbedLabel
  16184   })), !external_wp_blockEditor_["RichText"].isEmpty(fileName) && Object(external_wp_element_["createElement"])("a", {
  16185     href: textLinkHref,
  16186     target: textLinkTarget,
  16187     rel: textLinkTarget ? 'noreferrer noopener' : undefined
  16188   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  16189     value: fileName
  16190   })), showDownloadButton && Object(external_wp_element_["createElement"])("a", {
  16191     href: href,
  16192     className: "wp-block-file__button",
  16193     download: true
  16194   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  16195     value: downloadButtonText
  16196   })));
  16197 }
  16198 
  16199 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/transforms.js
  16200 /**
  16201  * External dependencies
  16202  */
  16203 
  16204 /**
  16205  * WordPress dependencies
  16206  */
  16207 
  16208 
  16209 
  16210 
  16211 
  16212 const file_transforms_transforms = {
  16213   from: [{
  16214     type: 'files',
  16215 
  16216     isMatch(files) {
  16217       return files.length > 0;
  16218     },
  16219 
  16220     // We define a lower priorty (higher number) than the default of 10. This
  16221     // ensures that the File block is only created as a fallback.
  16222     priority: 15,
  16223     transform: files => {
  16224       const blocks = [];
  16225       files.forEach(file => {
  16226         const blobURL = Object(external_wp_blob_["createBlobURL"])(file); // File will be uploaded in componentDidMount()
  16227 
  16228         blocks.push(Object(external_wp_blocks_["createBlock"])('core/file', {
  16229           href: blobURL,
  16230           fileName: file.name,
  16231           textLinkHref: blobURL
  16232         }));
  16233       });
  16234       return blocks;
  16235     }
  16236   }, {
  16237     type: 'block',
  16238     blocks: ['core/audio'],
  16239     transform: attributes => {
  16240       return Object(external_wp_blocks_["createBlock"])('core/file', {
  16241         href: attributes.src,
  16242         fileName: attributes.caption,
  16243         textLinkHref: attributes.src,
  16244         id: attributes.id,
  16245         anchor: attributes.anchor
  16246       });
  16247     }
  16248   }, {
  16249     type: 'block',
  16250     blocks: ['core/video'],
  16251     transform: attributes => {
  16252       return Object(external_wp_blocks_["createBlock"])('core/file', {
  16253         href: attributes.src,
  16254         fileName: attributes.caption,
  16255         textLinkHref: attributes.src,
  16256         id: attributes.id,
  16257         anchor: attributes.anchor
  16258       });
  16259     }
  16260   }, {
  16261     type: 'block',
  16262     blocks: ['core/image'],
  16263     transform: attributes => {
  16264       return Object(external_wp_blocks_["createBlock"])('core/file', {
  16265         href: attributes.url,
  16266         fileName: attributes.caption,
  16267         textLinkHref: attributes.url,
  16268         id: attributes.id,
  16269         anchor: attributes.anchor
  16270       });
  16271     }
  16272   }],
  16273   to: [{
  16274     type: 'block',
  16275     blocks: ['core/audio'],
  16276     isMatch: ({
  16277       id
  16278     }) => {
  16279       if (!id) {
  16280         return false;
  16281       }
  16282 
  16283       const {
  16284         getMedia
  16285       } = Object(external_wp_data_["select"])(external_wp_coreData_["store"]);
  16286       const media = getMedia(id);
  16287       return !!media && Object(external_lodash_["includes"])(media.mime_type, 'audio');
  16288     },
  16289     transform: attributes => {
  16290       return Object(external_wp_blocks_["createBlock"])('core/audio', {
  16291         src: attributes.href,
  16292         caption: attributes.fileName,
  16293         id: attributes.id,
  16294         anchor: attributes.anchor
  16295       });
  16296     }
  16297   }, {
  16298     type: 'block',
  16299     blocks: ['core/video'],
  16300     isMatch: ({
  16301       id
  16302     }) => {
  16303       if (!id) {
  16304         return false;
  16305       }
  16306 
  16307       const {
  16308         getMedia
  16309       } = Object(external_wp_data_["select"])(external_wp_coreData_["store"]);
  16310       const media = getMedia(id);
  16311       return !!media && Object(external_lodash_["includes"])(media.mime_type, 'video');
  16312     },
  16313     transform: attributes => {
  16314       return Object(external_wp_blocks_["createBlock"])('core/video', {
  16315         src: attributes.href,
  16316         caption: attributes.fileName,
  16317         id: attributes.id,
  16318         anchor: attributes.anchor
  16319       });
  16320     }
  16321   }, {
  16322     type: 'block',
  16323     blocks: ['core/image'],
  16324     isMatch: ({
  16325       id
  16326     }) => {
  16327       if (!id) {
  16328         return false;
  16329       }
  16330 
  16331       const {
  16332         getMedia
  16333       } = Object(external_wp_data_["select"])(external_wp_coreData_["store"]);
  16334       const media = getMedia(id);
  16335       return !!media && Object(external_lodash_["includes"])(media.mime_type, 'image');
  16336     },
  16337     transform: attributes => {
  16338       return Object(external_wp_blocks_["createBlock"])('core/image', {
  16339         url: attributes.href,
  16340         caption: attributes.fileName,
  16341         id: attributes.id,
  16342         anchor: attributes.anchor
  16343       });
  16344     }
  16345   }]
  16346 };
  16347 /* harmony default export */ var file_transforms = (file_transforms_transforms);
  16348 
  16349 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/file/index.js
  16350 /**
  16351  * WordPress dependencies
  16352  */
  16353 
  16354 /**
  16355  * Internal dependencies
  16356  */
  16357 
  16358 
  16359 const file_metadata = {
  16360   apiVersion: 2,
  16361   name: "core/file",
  16362   title: "File",
  16363   category: "media",
  16364   description: "Add a link to a downloadable file.",
  16365   keywords: ["document", "pdf", "download"],
  16366   textdomain: "default",
  16367   attributes: {
  16368     id: {
  16369       type: "number"
  16370     },
  16371     href: {
  16372       type: "string"
  16373     },
  16374     fileName: {
  16375       type: "string",
  16376       source: "html",
  16377       selector: "a:not([download])"
  16378     },
  16379     textLinkHref: {
  16380       type: "string",
  16381       source: "attribute",
  16382       selector: "a:not([download])",
  16383       attribute: "href"
  16384     },
  16385     textLinkTarget: {
  16386       type: "string",
  16387       source: "attribute",
  16388       selector: "a:not([download])",
  16389       attribute: "target"
  16390     },
  16391     showDownloadButton: {
  16392       type: "boolean",
  16393       "default": true
  16394     },
  16395     downloadButtonText: {
  16396       type: "string",
  16397       source: "html",
  16398       selector: "a[download]"
  16399     },
  16400     displayPreview: {
  16401       type: "boolean"
  16402     },
  16403     previewHeight: {
  16404       type: "number",
  16405       "default": 600
  16406     }
  16407   },
  16408   supports: {
  16409     anchor: true,
  16410     align: true
  16411   },
  16412   viewScript: "file:./view.min.js",
  16413   editorStyle: "wp-block-file-editor",
  16414   style: "wp-block-file"
  16415 };
  16416 
  16417 
  16418 const {
  16419   name: file_name
  16420 } = file_metadata;
  16421 
  16422 const file_settings = {
  16423   icon: library_file,
  16424   transforms: file_transforms,
  16425   edit: file_edit,
  16426   save: file_save_save
  16427 };
  16428 
  16429 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/html.js
  16430 
  16431 
  16432 /**
  16433  * WordPress dependencies
  16434  */
  16435 
  16436 const html_html = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  16437   viewBox: "0 0 24 24",
  16438   xmlns: "http://www.w3.org/2000/svg"
  16439 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  16440   d: "M4.8 11.4H2.1V9H1v6h1.1v-2.6h2.7V15h1.1V9H4.8v2.4zm1.9-1.3h1.7V15h1.1v-4.9h1.7V9H6.7v1.1zM16.2 9l-1.5 2.7L13.3 9h-.9l-.8 6h1.1l.5-4 1.5 2.8 1.5-2.8.5 4h1.1L17 9h-.8zm3.8 5V9h-1.1v6h3.6v-1H20z"
  16441 }));
  16442 /* harmony default export */ var library_html = (html_html);
  16443 
  16444 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/edit.js
  16445 
  16446 
  16447 /**
  16448  * WordPress dependencies
  16449  */
  16450 
  16451 
  16452 
  16453 
  16454 
  16455 function HTMLEdit({
  16456   attributes,
  16457   setAttributes,
  16458   isSelected
  16459 }) {
  16460   const [isPreview, setIsPreview] = Object(external_wp_element_["useState"])();
  16461   const styles = Object(external_wp_data_["useSelect"])(select => {
  16462     // Default styles used to unset some of the styles
  16463     // that might be inherited from the editor style.
  16464     const defaultStyles = `
  16465 			html,body,:root {
  16466 				margin: 0 !important;
  16467 				padding: 0 !important;
  16468 				overflow: visible !important;
  16469 				min-height: auto !important;
  16470 			}
  16471 		`;
  16472     return [defaultStyles, ...Object(external_wp_blockEditor_["transformStyles"])(select(external_wp_blockEditor_["store"]).getSettings().styles)];
  16473   }, []);
  16474 
  16475   function switchToPreview() {
  16476     setIsPreview(true);
  16477   }
  16478 
  16479   function switchToHTML() {
  16480     setIsPreview(false);
  16481   }
  16482 
  16483   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])({
  16484     className: 'block-library-html__edit'
  16485   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  16486     className: "components-tab-button",
  16487     isPressed: !isPreview,
  16488     onClick: switchToHTML
  16489   }, Object(external_wp_element_["createElement"])("span", null, "HTML")), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  16490     className: "components-tab-button",
  16491     isPressed: isPreview,
  16492     onClick: switchToPreview
  16493   }, Object(external_wp_element_["createElement"])("span", null, Object(external_wp_i18n_["__"])('Preview'))))), Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"].Consumer, null, isDisabled => isPreview || isDisabled ? Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["SandBox"], {
  16494     html: attributes.content,
  16495     styles: styles
  16496   }), !isSelected && Object(external_wp_element_["createElement"])("div", {
  16497     className: "block-library-html__preview-overlay"
  16498   })) : Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PlainText"], {
  16499     value: attributes.content,
  16500     onChange: content => setAttributes({
  16501       content
  16502     }),
  16503     placeholder: Object(external_wp_i18n_["__"])('Write HTML…'),
  16504     "aria-label": Object(external_wp_i18n_["__"])('HTML')
  16505   })));
  16506 }
  16507 
  16508 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/save.js
  16509 
  16510 
  16511 /**
  16512  * WordPress dependencies
  16513  */
  16514 
  16515 function html_save_save({
  16516   attributes
  16517 }) {
  16518   return Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, attributes.content);
  16519 }
  16520 
  16521 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/transforms.js
  16522 /**
  16523  * WordPress dependencies
  16524  */
  16525 
  16526 const html_transforms_transforms = {
  16527   from: [{
  16528     type: 'block',
  16529     blocks: ['core/code'],
  16530     transform: ({
  16531       content
  16532     }) => {
  16533       return Object(external_wp_blocks_["createBlock"])('core/html', {
  16534         content
  16535       });
  16536     }
  16537   }]
  16538 };
  16539 /* harmony default export */ var html_transforms = (html_transforms_transforms);
  16540 
  16541 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/html/index.js
  16542 /**
  16543  * WordPress dependencies
  16544  */
  16545 
  16546 
  16547 /**
  16548  * Internal dependencies
  16549  */
  16550 
  16551 
  16552 const html_metadata = {
  16553   apiVersion: 2,
  16554   name: "core/html",
  16555   title: "Custom HTML",
  16556   category: "widgets",
  16557   description: "Add custom HTML code and preview it as you edit.",
  16558   keywords: ["embed"],
  16559   textdomain: "default",
  16560   attributes: {
  16561     content: {
  16562       type: "string",
  16563       source: "html"
  16564     }
  16565   },
  16566   supports: {
  16567     customClassName: false,
  16568     className: false,
  16569     html: false
  16570   },
  16571   editorStyle: "wp-block-html-editor"
  16572 };
  16573 
  16574 
  16575 const {
  16576   name: html_name
  16577 } = html_metadata;
  16578 
  16579 const html_settings = {
  16580   icon: library_html,
  16581   example: {
  16582     attributes: {
  16583       content: '<marquee>' + Object(external_wp_i18n_["__"])('Welcome to the wonderful world of blocks…') + '</marquee>'
  16584     }
  16585   },
  16586   edit: HTMLEdit,
  16587   save: html_save_save,
  16588   transforms: html_transforms
  16589 };
  16590 
  16591 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/media-and-text.js
  16592 
  16593 
  16594 /**
  16595  * WordPress dependencies
  16596  */
  16597 
  16598 const mediaAndText = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  16599   xmlns: "http://www.w3.org/2000/svg",
  16600   viewBox: "0 0 24 24"
  16601 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  16602   d: "M3 18h8V6H3v12zM14 7.5V9h7V7.5h-7zm0 5.3h7v-1.5h-7v1.5zm0 3.7h7V15h-7v1.5z"
  16603 }));
  16604 /* harmony default export */ var media_and_text = (mediaAndText);
  16605 
  16606 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/media-container-icon.js
  16607 
  16608 
  16609 /**
  16610  * WordPress dependencies
  16611  */
  16612 
  16613 /* harmony default export */ var media_container_icon = (Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  16614   xmlns: "http://www.w3.org/2000/svg",
  16615   viewBox: "0 0 24 24"
  16616 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  16617   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"
  16618 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  16619   d: "M14 20H4V10h3V8H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-3h-2z"
  16620 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  16621   d: "M5 19h8l-1.59-2H9.24l-.84 1.1L7 16.3 5 19z"
  16622 })));
  16623 
  16624 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/media-container.js
  16625 
  16626 
  16627 
  16628 /**
  16629  * External dependencies
  16630  */
  16631 
  16632 
  16633 /**
  16634  * WordPress dependencies
  16635  */
  16636 
  16637 
  16638 
  16639 
  16640 
  16641 
  16642 
  16643 /**
  16644  * Internal dependencies
  16645  */
  16646 
  16647 
  16648 /**
  16649  * Constants
  16650  */
  16651 
  16652 const media_container_ALLOWED_MEDIA_TYPES = ['image', 'video'];
  16653 function imageFillStyles(url, focalPoint) {
  16654   return url ? {
  16655     backgroundImage: `url(${url})`,
  16656     backgroundPosition: focalPoint ? `${focalPoint.x * 100}% ${focalPoint.y * 100}%` : `50% 50%`
  16657   } : {};
  16658 }
  16659 const ResizableBoxContainer = Object(external_wp_element_["forwardRef"])(({
  16660   isSelected,
  16661   isStackedOnMobile,
  16662   ...props
  16663 }, ref) => {
  16664   const isMobile = Object(external_wp_compose_["useViewportMatch"])('small', '<');
  16665   return Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], Object(esm_extends["a" /* default */])({
  16666     ref: ref,
  16667     showHandle: isSelected && (!isMobile || !isStackedOnMobile)
  16668   }, props));
  16669 });
  16670 
  16671 function ToolbarEditButton({
  16672   mediaId,
  16673   mediaUrl,
  16674   onSelectMedia
  16675 }) {
  16676   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  16677     group: "other"
  16678   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
  16679     mediaId: mediaId,
  16680     mediaURL: mediaUrl,
  16681     allowedTypes: media_container_ALLOWED_MEDIA_TYPES,
  16682     accept: "image/*,video/*",
  16683     onSelect: onSelectMedia
  16684   }));
  16685 }
  16686 
  16687 function PlaceholderContainer({
  16688   className,
  16689   noticeOperations,
  16690   noticeUI,
  16691   onSelectMedia
  16692 }) {
  16693   const onUploadError = message => {
  16694     noticeOperations.removeAllNotices();
  16695     noticeOperations.createErrorNotice(message);
  16696   };
  16697 
  16698   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
  16699     icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  16700       icon: media_container_icon
  16701     }),
  16702     labels: {
  16703       title: Object(external_wp_i18n_["__"])('Media area')
  16704     },
  16705     className: className,
  16706     onSelect: onSelectMedia,
  16707     accept: "image/*,video/*",
  16708     allowedTypes: media_container_ALLOWED_MEDIA_TYPES,
  16709     notices: noticeUI,
  16710     onError: onUploadError
  16711   });
  16712 }
  16713 
  16714 function MediaContainer(props, ref) {
  16715   const {
  16716     className,
  16717     commitWidthChange,
  16718     focalPoint,
  16719     imageFill,
  16720     isSelected,
  16721     isStackedOnMobile,
  16722     mediaAlt,
  16723     mediaId,
  16724     mediaPosition,
  16725     mediaType,
  16726     mediaUrl,
  16727     mediaWidth,
  16728     onSelectMedia,
  16729     onWidthChange
  16730   } = props;
  16731   const {
  16732     toggleSelection
  16733   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  16734 
  16735   if (mediaType && mediaUrl) {
  16736     const onResizeStart = () => {
  16737       toggleSelection(false);
  16738     };
  16739 
  16740     const onResize = (event, direction, elt) => {
  16741       onWidthChange(parseInt(elt.style.width));
  16742     };
  16743 
  16744     const onResizeStop = (event, direction, elt) => {
  16745       toggleSelection(true);
  16746       commitWidthChange(parseInt(elt.style.width));
  16747     };
  16748 
  16749     const enablePositions = {
  16750       right: mediaPosition === 'left',
  16751       left: mediaPosition === 'right'
  16752     };
  16753     const backgroundStyles = mediaType === 'image' && imageFill ? imageFillStyles(mediaUrl, focalPoint) : {};
  16754     const mediaTypeRenderers = {
  16755       image: () => Object(external_wp_element_["createElement"])("img", {
  16756         src: mediaUrl,
  16757         alt: mediaAlt
  16758       }),
  16759       video: () => Object(external_wp_element_["createElement"])("video", {
  16760         controls: true,
  16761         src: mediaUrl
  16762       })
  16763     };
  16764     return Object(external_wp_element_["createElement"])(ResizableBoxContainer, {
  16765       as: "figure",
  16766       className: classnames_default()(className, 'editor-media-container__resizer'),
  16767       style: backgroundStyles,
  16768       size: {
  16769         width: mediaWidth + '%'
  16770       },
  16771       minWidth: "10%",
  16772       maxWidth: "100%",
  16773       enable: enablePositions,
  16774       onResizeStart: onResizeStart,
  16775       onResize: onResize,
  16776       onResizeStop: onResizeStop,
  16777       axis: "x",
  16778       isSelected: isSelected,
  16779       isStackedOnMobile: isStackedOnMobile,
  16780       ref: ref
  16781     }, Object(external_wp_element_["createElement"])(ToolbarEditButton, {
  16782       onSelectMedia: onSelectMedia,
  16783       mediaUrl: mediaUrl,
  16784       mediaId: mediaId
  16785     }), (mediaTypeRenderers[mediaType] || external_lodash_["noop"])());
  16786   }
  16787 
  16788   return Object(external_wp_element_["createElement"])(PlaceholderContainer, props);
  16789 }
  16790 
  16791 /* harmony default export */ var media_container = (Object(external_wp_components_["withNotices"])(Object(external_wp_element_["forwardRef"])(MediaContainer)));
  16792 
  16793 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/deprecated.js
  16794 
  16795 
  16796 /**
  16797  * External dependencies
  16798  */
  16799 
  16800 
  16801 /**
  16802  * WordPress dependencies
  16803  */
  16804 
  16805 
  16806 /**
  16807  * Internal dependencies
  16808  */
  16809 
  16810 
  16811 const DEFAULT_MEDIA_WIDTH = 50;
  16812 
  16813 const media_text_deprecated_migrateCustomColors = attributes => {
  16814   if (!attributes.customBackgroundColor) {
  16815     return attributes;
  16816   }
  16817 
  16818   const style = {
  16819     color: {
  16820       background: attributes.customBackgroundColor
  16821     }
  16822   };
  16823   return { ...Object(external_lodash_["omit"])(attributes, ['customBackgroundColor']),
  16824     style
  16825   };
  16826 };
  16827 
  16828 const baseAttributes = {
  16829   align: {
  16830     type: 'string',
  16831     default: 'wide'
  16832   },
  16833   backgroundColor: {
  16834     type: 'string'
  16835   },
  16836   mediaAlt: {
  16837     type: 'string',
  16838     source: 'attribute',
  16839     selector: 'figure img',
  16840     attribute: 'alt',
  16841     default: ''
  16842   },
  16843   mediaPosition: {
  16844     type: 'string',
  16845     default: 'left'
  16846   },
  16847   mediaId: {
  16848     type: 'number'
  16849   },
  16850   mediaType: {
  16851     type: 'string'
  16852   },
  16853   mediaWidth: {
  16854     type: 'number',
  16855     default: 50
  16856   },
  16857   isStackedOnMobile: {
  16858     type: 'boolean',
  16859     default: true
  16860   }
  16861 };
  16862 /* harmony default export */ var media_text_deprecated = ([{
  16863   attributes: { ...baseAttributes,
  16864     customBackgroundColor: {
  16865       type: 'string'
  16866     },
  16867     mediaLink: {
  16868       type: 'string'
  16869     },
  16870     linkDestination: {
  16871       type: 'string'
  16872     },
  16873     linkTarget: {
  16874       type: 'string',
  16875       source: 'attribute',
  16876       selector: 'figure a',
  16877       attribute: 'target'
  16878     },
  16879     href: {
  16880       type: 'string',
  16881       source: 'attribute',
  16882       selector: 'figure a',
  16883       attribute: 'href'
  16884     },
  16885     rel: {
  16886       type: 'string',
  16887       source: 'attribute',
  16888       selector: 'figure a',
  16889       attribute: 'rel'
  16890     },
  16891     linkClass: {
  16892       type: 'string',
  16893       source: 'attribute',
  16894       selector: 'figure a',
  16895       attribute: 'class'
  16896     },
  16897     verticalAlignment: {
  16898       type: 'string'
  16899     },
  16900     imageFill: {
  16901       type: 'boolean'
  16902     },
  16903     focalPoint: {
  16904       type: 'object'
  16905     }
  16906   },
  16907   migrate: media_text_deprecated_migrateCustomColors,
  16908 
  16909   save({
  16910     attributes
  16911   }) {
  16912     const {
  16913       backgroundColor,
  16914       customBackgroundColor,
  16915       isStackedOnMobile,
  16916       mediaAlt,
  16917       mediaPosition,
  16918       mediaType,
  16919       mediaUrl,
  16920       mediaWidth,
  16921       mediaId,
  16922       verticalAlignment,
  16923       imageFill,
  16924       focalPoint,
  16925       linkClass,
  16926       href,
  16927       linkTarget,
  16928       rel
  16929     } = attributes;
  16930     const newRel = Object(external_lodash_["isEmpty"])(rel) ? undefined : rel;
  16931     let image = Object(external_wp_element_["createElement"])("img", {
  16932       src: mediaUrl,
  16933       alt: mediaAlt,
  16934       className: mediaId && mediaType === 'image' ? `wp-image-${mediaId}` : null
  16935     });
  16936 
  16937     if (href) {
  16938       image = Object(external_wp_element_["createElement"])("a", {
  16939         className: linkClass,
  16940         href: href,
  16941         target: linkTarget,
  16942         rel: newRel
  16943       }, image);
  16944     }
  16945 
  16946     const mediaTypeRenders = {
  16947       image: () => image,
  16948       video: () => Object(external_wp_element_["createElement"])("video", {
  16949         controls: true,
  16950         src: mediaUrl
  16951       })
  16952     };
  16953     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  16954     const className = classnames_default()({
  16955       'has-media-on-the-right': 'right' === mediaPosition,
  16956       'has-background': backgroundClass || customBackgroundColor,
  16957       [backgroundClass]: backgroundClass,
  16958       'is-stacked-on-mobile': isStackedOnMobile,
  16959       [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
  16960       'is-image-fill': imageFill
  16961     });
  16962     const backgroundStyles = imageFill ? imageFillStyles(mediaUrl, focalPoint) : {};
  16963     let gridTemplateColumns;
  16964 
  16965     if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
  16966       gridTemplateColumns = 'right' === mediaPosition ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
  16967     }
  16968 
  16969     const style = {
  16970       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  16971       gridTemplateColumns
  16972     };
  16973     return Object(external_wp_element_["createElement"])("div", {
  16974       className: className,
  16975       style: style
  16976     }, Object(external_wp_element_["createElement"])("figure", {
  16977       className: "wp-block-media-text__media",
  16978       style: backgroundStyles
  16979     }, (mediaTypeRenders[mediaType] || external_lodash_["noop"])()), Object(external_wp_element_["createElement"])("div", {
  16980       className: "wp-block-media-text__content"
  16981     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  16982   }
  16983 
  16984 }, {
  16985   attributes: { ...baseAttributes,
  16986     customBackgroundColor: {
  16987       type: 'string'
  16988     },
  16989     mediaUrl: {
  16990       type: 'string',
  16991       source: 'attribute',
  16992       selector: 'figure video,figure img',
  16993       attribute: 'src'
  16994     },
  16995     verticalAlignment: {
  16996       type: 'string'
  16997     },
  16998     imageFill: {
  16999       type: 'boolean'
  17000     },
  17001     focalPoint: {
  17002       type: 'object'
  17003     }
  17004   },
  17005   migrate: media_text_deprecated_migrateCustomColors,
  17006 
  17007   save({
  17008     attributes
  17009   }) {
  17010     const {
  17011       backgroundColor,
  17012       customBackgroundColor,
  17013       isStackedOnMobile,
  17014       mediaAlt,
  17015       mediaPosition,
  17016       mediaType,
  17017       mediaUrl,
  17018       mediaWidth,
  17019       mediaId,
  17020       verticalAlignment,
  17021       imageFill,
  17022       focalPoint
  17023     } = attributes;
  17024     const mediaTypeRenders = {
  17025       image: () => Object(external_wp_element_["createElement"])("img", {
  17026         src: mediaUrl,
  17027         alt: mediaAlt,
  17028         className: mediaId && mediaType === 'image' ? `wp-image-${mediaId}` : null
  17029       }),
  17030       video: () => Object(external_wp_element_["createElement"])("video", {
  17031         controls: true,
  17032         src: mediaUrl
  17033       })
  17034     };
  17035     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  17036     const className = classnames_default()({
  17037       'has-media-on-the-right': 'right' === mediaPosition,
  17038       [backgroundClass]: backgroundClass,
  17039       'is-stacked-on-mobile': isStackedOnMobile,
  17040       [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
  17041       'is-image-fill': imageFill
  17042     });
  17043     const backgroundStyles = imageFill ? imageFillStyles(mediaUrl, focalPoint) : {};
  17044     let gridTemplateColumns;
  17045 
  17046     if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
  17047       gridTemplateColumns = 'right' === mediaPosition ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
  17048     }
  17049 
  17050     const style = {
  17051       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  17052       gridTemplateColumns
  17053     };
  17054     return Object(external_wp_element_["createElement"])("div", {
  17055       className: className,
  17056       style: style
  17057     }, Object(external_wp_element_["createElement"])("figure", {
  17058       className: "wp-block-media-text__media",
  17059       style: backgroundStyles
  17060     }, (mediaTypeRenders[mediaType] || external_lodash_["noop"])()), Object(external_wp_element_["createElement"])("div", {
  17061       className: "wp-block-media-text__content"
  17062     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  17063   }
  17064 
  17065 }, {
  17066   attributes: { ...baseAttributes,
  17067     customBackgroundColor: {
  17068       type: 'string'
  17069     },
  17070     mediaUrl: {
  17071       type: 'string',
  17072       source: 'attribute',
  17073       selector: 'figure video,figure img',
  17074       attribute: 'src'
  17075     }
  17076   },
  17077 
  17078   save({
  17079     attributes
  17080   }) {
  17081     const {
  17082       backgroundColor,
  17083       customBackgroundColor,
  17084       isStackedOnMobile,
  17085       mediaAlt,
  17086       mediaPosition,
  17087       mediaType,
  17088       mediaUrl,
  17089       mediaWidth
  17090     } = attributes;
  17091     const mediaTypeRenders = {
  17092       image: () => Object(external_wp_element_["createElement"])("img", {
  17093         src: mediaUrl,
  17094         alt: mediaAlt
  17095       }),
  17096       video: () => Object(external_wp_element_["createElement"])("video", {
  17097         controls: true,
  17098         src: mediaUrl
  17099       })
  17100     };
  17101     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  17102     const className = classnames_default()({
  17103       'has-media-on-the-right': 'right' === mediaPosition,
  17104       [backgroundClass]: backgroundClass,
  17105       'is-stacked-on-mobile': isStackedOnMobile
  17106     });
  17107     let gridTemplateColumns;
  17108 
  17109     if (mediaWidth !== DEFAULT_MEDIA_WIDTH) {
  17110       gridTemplateColumns = 'right' === mediaPosition ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
  17111     }
  17112 
  17113     const style = {
  17114       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  17115       gridTemplateColumns
  17116     };
  17117     return Object(external_wp_element_["createElement"])("div", {
  17118       className: className,
  17119       style: style
  17120     }, Object(external_wp_element_["createElement"])("figure", {
  17121       className: "wp-block-media-text__media"
  17122     }, (mediaTypeRenders[mediaType] || external_lodash_["noop"])()), Object(external_wp_element_["createElement"])("div", {
  17123       className: "wp-block-media-text__content"
  17124     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  17125   }
  17126 
  17127 }]);
  17128 
  17129 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pull-left.js
  17130 
  17131 
  17132 /**
  17133  * WordPress dependencies
  17134  */
  17135 
  17136 const pullLeft = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  17137   xmlns: "http://www.w3.org/2000/svg",
  17138   viewBox: "0 0 24 24"
  17139 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  17140   d: "M4 18h6V6H4v12zm9-9.5V10h7V8.5h-7zm0 7h7V14h-7v1.5z"
  17141 }));
  17142 /* harmony default export */ var pull_left = (pullLeft);
  17143 
  17144 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pull-right.js
  17145 
  17146 
  17147 /**
  17148  * WordPress dependencies
  17149  */
  17150 
  17151 const pullRight = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  17152   xmlns: "http://www.w3.org/2000/svg",
  17153   viewBox: "0 0 24 24"
  17154 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  17155   d: "M14 6v12h6V6h-6zM4 10h7V8.5H4V10zm0 5.5h7V14H4v1.5z"
  17156 }));
  17157 /* harmony default export */ var pull_right = (pullRight);
  17158 
  17159 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/constants.js
  17160 const DEFAULT_MEDIA_SIZE_SLUG = 'full';
  17161 
  17162 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/edit.js
  17163 
  17164 
  17165 /**
  17166  * External dependencies
  17167  */
  17168 
  17169 
  17170 /**
  17171  * WordPress dependencies
  17172  */
  17173 
  17174 
  17175 
  17176 
  17177 
  17178 
  17179 
  17180 
  17181 /**
  17182  * Internal dependencies
  17183  */
  17184 
  17185 
  17186 
  17187 /**
  17188  * Constants
  17189  */
  17190 
  17191 const TEMPLATE = [['core/paragraph', {
  17192   fontSize: 'large',
  17193   placeholder: Object(external_wp_i18n_["_x"])('Content…', 'content placeholder')
  17194 }]]; // this limits the resize to a safe zone to avoid making broken layouts
  17195 
  17196 const WIDTH_CONSTRAINT_PERCENTAGE = 15;
  17197 
  17198 const applyWidthConstraints = width => Math.max(WIDTH_CONSTRAINT_PERCENTAGE, Math.min(width, 100 - WIDTH_CONSTRAINT_PERCENTAGE));
  17199 
  17200 const edit_LINK_DESTINATION_MEDIA = 'media';
  17201 const edit_LINK_DESTINATION_ATTACHMENT = 'attachment';
  17202 
  17203 function getImageSourceUrlBySizeSlug(image, slug) {
  17204   var _image$media_details, _image$media_details$, _image$media_details$2;
  17205 
  17206   // eslint-disable-next-line camelcase
  17207   return image === null || image === void 0 ? void 0 : (_image$media_details = image.media_details) === null || _image$media_details === void 0 ? void 0 : (_image$media_details$ = _image$media_details.sizes) === null || _image$media_details$ === void 0 ? void 0 : (_image$media_details$2 = _image$media_details$[slug]) === null || _image$media_details$2 === void 0 ? void 0 : _image$media_details$2.source_url;
  17208 }
  17209 
  17210 function edit_attributesFromMedia({
  17211   attributes: {
  17212     linkDestination,
  17213     href
  17214   },
  17215   setAttributes
  17216 }) {
  17217   return media => {
  17218     let mediaType;
  17219     let src; // for media selections originated from a file upload.
  17220 
  17221     if (media.media_type) {
  17222       if (media.media_type === 'image') {
  17223         mediaType = 'image';
  17224       } else {
  17225         // only images and videos are accepted so if the media_type is not an image we can assume it is a video.
  17226         // video contain the media type of 'file' in the object returned from the rest api.
  17227         mediaType = 'video';
  17228       }
  17229     } else {
  17230       // for media selections originated from existing files in the media library.
  17231       mediaType = media.type;
  17232     }
  17233 
  17234     if (mediaType === 'image') {
  17235       var _media$sizes, _media$sizes$large, _media$media_details, _media$media_details$, _media$media_details$2;
  17236 
  17237       // Try the "large" size URL, falling back to the "full" size URL below.
  17238       src = ((_media$sizes = media.sizes) === null || _media$sizes === void 0 ? void 0 : (_media$sizes$large = _media$sizes.large) === null || _media$sizes$large === void 0 ? void 0 : _media$sizes$large.url) || ( // eslint-disable-next-line camelcase
  17239       (_media$media_details = media.media_details) === null || _media$media_details === void 0 ? void 0 : (_media$media_details$ = _media$media_details.sizes) === null || _media$media_details$ === void 0 ? void 0 : (_media$media_details$2 = _media$media_details$.large) === null || _media$media_details$2 === void 0 ? void 0 : _media$media_details$2.source_url);
  17240     }
  17241 
  17242     let newHref = href;
  17243 
  17244     if (linkDestination === edit_LINK_DESTINATION_MEDIA) {
  17245       // Update the media link.
  17246       newHref = media.url;
  17247     } // Check if the image is linked to the attachment page.
  17248 
  17249 
  17250     if (linkDestination === edit_LINK_DESTINATION_ATTACHMENT) {
  17251       // Update the media link.
  17252       newHref = media.link;
  17253     }
  17254 
  17255     setAttributes({
  17256       mediaAlt: media.alt,
  17257       mediaId: media.id,
  17258       mediaType,
  17259       mediaUrl: src || media.url,
  17260       mediaLink: media.link || undefined,
  17261       href: newHref,
  17262       focalPoint: undefined
  17263     });
  17264   };
  17265 }
  17266 
  17267 function MediaTextEdit({
  17268   attributes,
  17269   isSelected,
  17270   setAttributes
  17271 }) {
  17272   const {
  17273     focalPoint,
  17274     href,
  17275     imageFill,
  17276     isStackedOnMobile,
  17277     linkClass,
  17278     linkDestination,
  17279     linkTarget,
  17280     mediaAlt,
  17281     mediaId,
  17282     mediaPosition,
  17283     mediaType,
  17284     mediaUrl,
  17285     mediaWidth,
  17286     rel,
  17287     verticalAlignment
  17288   } = attributes;
  17289   const mediaSizeSlug = attributes.mediaSizeSlug || DEFAULT_MEDIA_SIZE_SLUG;
  17290   const image = Object(external_wp_data_["useSelect"])(select => mediaId && isSelected ? select(external_wp_coreData_["store"]).getMedia(mediaId) : null, [isSelected, mediaId]);
  17291   const refMediaContainer = Object(external_wp_element_["useRef"])();
  17292 
  17293   const imperativeFocalPointPreview = value => {
  17294     const {
  17295       style
  17296     } = refMediaContainer.current.resizable;
  17297     const {
  17298       x,
  17299       y
  17300     } = value;
  17301     style.backgroundPosition = `${x * 100}% ${y * 100}%`;
  17302   };
  17303 
  17304   const [temporaryMediaWidth, setTemporaryMediaWidth] = Object(external_wp_element_["useState"])(null);
  17305   const onSelectMedia = edit_attributesFromMedia({
  17306     attributes,
  17307     setAttributes
  17308   });
  17309 
  17310   const onSetHref = props => {
  17311     setAttributes(props);
  17312   };
  17313 
  17314   const onWidthChange = width => {
  17315     setTemporaryMediaWidth(applyWidthConstraints(width));
  17316   };
  17317 
  17318   const commitWidthChange = width => {
  17319     setAttributes({
  17320       mediaWidth: applyWidthConstraints(width)
  17321     });
  17322     setTemporaryMediaWidth(applyWidthConstraints(width));
  17323   };
  17324 
  17325   const classNames = classnames_default()({
  17326     'has-media-on-the-right': 'right' === mediaPosition,
  17327     'is-selected': isSelected,
  17328     'is-stacked-on-mobile': isStackedOnMobile,
  17329     [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
  17330     'is-image-fill': imageFill
  17331   });
  17332   const widthString = `${temporaryMediaWidth || mediaWidth}%`;
  17333   const gridTemplateColumns = 'right' === mediaPosition ? `1fr ${widthString}` : `${widthString} 1fr`;
  17334   const style = {
  17335     gridTemplateColumns,
  17336     msGridColumns: gridTemplateColumns
  17337   };
  17338 
  17339   const onMediaAltChange = newMediaAlt => {
  17340     setAttributes({
  17341       mediaAlt: newMediaAlt
  17342     });
  17343   };
  17344 
  17345   const onVerticalAlignmentChange = alignment => {
  17346     setAttributes({
  17347       verticalAlignment: alignment
  17348     });
  17349   };
  17350 
  17351   const imageSizes = Object(external_wp_data_["useSelect"])(select => {
  17352     const settings = select(external_wp_blockEditor_["store"]).getSettings();
  17353     return settings === null || settings === void 0 ? void 0 : settings.imageSizes;
  17354   });
  17355   const imageSizeOptions = Object(external_lodash_["map"])(Object(external_lodash_["filter"])(imageSizes, ({
  17356     slug
  17357   }) => getImageSourceUrlBySizeSlug(image, slug)), ({
  17358     name,
  17359     slug
  17360   }) => ({
  17361     value: slug,
  17362     label: name
  17363   }));
  17364 
  17365   const updateImage = newMediaSizeSlug => {
  17366     const newUrl = getImageSourceUrlBySizeSlug(image, newMediaSizeSlug);
  17367 
  17368     if (!newUrl) {
  17369       return null;
  17370     }
  17371 
  17372     setAttributes({
  17373       mediaUrl: newUrl,
  17374       mediaSizeSlug: newMediaSizeSlug
  17375     });
  17376   };
  17377 
  17378   const mediaTextGeneralSettings = Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  17379     title: Object(external_wp_i18n_["__"])('Media & Text settings')
  17380   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  17381     label: Object(external_wp_i18n_["__"])('Stack on mobile'),
  17382     checked: isStackedOnMobile,
  17383     onChange: () => setAttributes({
  17384       isStackedOnMobile: !isStackedOnMobile
  17385     })
  17386   }), mediaType === 'image' && Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  17387     label: Object(external_wp_i18n_["__"])('Crop image to fill entire column'),
  17388     checked: imageFill,
  17389     onChange: () => setAttributes({
  17390       imageFill: !imageFill
  17391     })
  17392   }), imageFill && mediaUrl && mediaType === 'image' && Object(external_wp_element_["createElement"])(external_wp_components_["FocalPointPicker"], {
  17393     label: Object(external_wp_i18n_["__"])('Focal point picker'),
  17394     url: mediaUrl,
  17395     value: focalPoint,
  17396     onChange: value => setAttributes({
  17397       focalPoint: value
  17398     }),
  17399     onDragStart: imperativeFocalPointPreview,
  17400     onDrag: imperativeFocalPointPreview
  17401   }), mediaType === 'image' && Object(external_wp_element_["createElement"])(external_wp_components_["TextareaControl"], {
  17402     label: Object(external_wp_i18n_["__"])('Alt text (alternative text)'),
  17403     value: mediaAlt,
  17404     onChange: onMediaAltChange,
  17405     help: Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ExternalLink"], {
  17406       href: "https://www.w3.org/WAI/tutorials/images/decision-tree"
  17407     }, Object(external_wp_i18n_["__"])('Describe the purpose of the image')), Object(external_wp_i18n_["__"])('Leave empty if the image is purely decorative.'))
  17408   }), mediaType === 'image' && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalImageSizeControl"], {
  17409     onChangeImage: updateImage,
  17410     slug: mediaSizeSlug,
  17411     imageSizeOptions: imageSizeOptions,
  17412     isResizable: false
  17413   }), mediaUrl && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  17414     label: Object(external_wp_i18n_["__"])('Media width'),
  17415     value: temporaryMediaWidth || mediaWidth,
  17416     onChange: commitWidthChange,
  17417     min: WIDTH_CONSTRAINT_PERCENTAGE,
  17418     max: 100 - WIDTH_CONSTRAINT_PERCENTAGE
  17419   }));
  17420   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  17421     className: classNames,
  17422     style
  17423   });
  17424   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])({
  17425     className: 'wp-block-media-text__content'
  17426   }, {
  17427     template: TEMPLATE
  17428   });
  17429   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, mediaTextGeneralSettings), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  17430     group: "block"
  17431   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockVerticalAlignmentControl"], {
  17432     onChange: onVerticalAlignmentChange,
  17433     value: verticalAlignment
  17434   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  17435     icon: pull_left,
  17436     title: Object(external_wp_i18n_["__"])('Show media on left'),
  17437     isActive: mediaPosition === 'left',
  17438     onClick: () => setAttributes({
  17439       mediaPosition: 'left'
  17440     })
  17441   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  17442     icon: pull_right,
  17443     title: Object(external_wp_i18n_["__"])('Show media on right'),
  17444     isActive: mediaPosition === 'right',
  17445     onClick: () => setAttributes({
  17446       mediaPosition: 'right'
  17447     })
  17448   }), mediaType === 'image' && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalImageURLInputUI"], {
  17449     url: href || '',
  17450     onChangeUrl: onSetHref,
  17451     linkDestination: linkDestination,
  17452     mediaType: mediaType,
  17453     mediaUrl: image && image.source_url,
  17454     mediaLink: image && image.link,
  17455     linkTarget: linkTarget,
  17456     linkClass: linkClass,
  17457     rel: rel
  17458   })), Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(media_container, {
  17459     className: "wp-block-media-text__media",
  17460     onSelectMedia: onSelectMedia,
  17461     onWidthChange: onWidthChange,
  17462     commitWidthChange: commitWidthChange,
  17463     ref: refMediaContainer,
  17464     focalPoint,
  17465     imageFill,
  17466     isSelected,
  17467     isStackedOnMobile,
  17468     mediaAlt,
  17469     mediaId,
  17470     mediaPosition,
  17471     mediaType,
  17472     mediaUrl,
  17473     mediaWidth
  17474   }), Object(external_wp_element_["createElement"])("div", innerBlocksProps)));
  17475 }
  17476 
  17477 /* harmony default export */ var media_text_edit = (MediaTextEdit);
  17478 
  17479 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/save.js
  17480 
  17481 
  17482 /**
  17483  * External dependencies
  17484  */
  17485 
  17486 
  17487 /**
  17488  * WordPress dependencies
  17489  */
  17490 
  17491 
  17492 /**
  17493  * Internal dependencies
  17494  */
  17495 
  17496 
  17497 
  17498 const save_DEFAULT_MEDIA_WIDTH = 50;
  17499 function media_text_save_save({
  17500   attributes
  17501 }) {
  17502   const {
  17503     isStackedOnMobile,
  17504     mediaAlt,
  17505     mediaPosition,
  17506     mediaType,
  17507     mediaUrl,
  17508     mediaWidth,
  17509     mediaId,
  17510     verticalAlignment,
  17511     imageFill,
  17512     focalPoint,
  17513     linkClass,
  17514     href,
  17515     linkTarget,
  17516     rel
  17517   } = attributes;
  17518   const mediaSizeSlug = attributes.mediaSizeSlug || DEFAULT_MEDIA_SIZE_SLUG;
  17519   const newRel = Object(external_lodash_["isEmpty"])(rel) ? undefined : rel;
  17520   const imageClasses = classnames_default()({
  17521     [`wp-image-${mediaId}`]: mediaId && mediaType === 'image',
  17522     [`size-${mediaSizeSlug}`]: mediaId && mediaType === 'image'
  17523   });
  17524   let image = Object(external_wp_element_["createElement"])("img", {
  17525     src: mediaUrl,
  17526     alt: mediaAlt,
  17527     className: imageClasses || null
  17528   });
  17529 
  17530   if (href) {
  17531     image = Object(external_wp_element_["createElement"])("a", {
  17532       className: linkClass,
  17533       href: href,
  17534       target: linkTarget,
  17535       rel: newRel
  17536     }, image);
  17537   }
  17538 
  17539   const mediaTypeRenders = {
  17540     image: () => image,
  17541     video: () => Object(external_wp_element_["createElement"])("video", {
  17542       controls: true,
  17543       src: mediaUrl
  17544     })
  17545   };
  17546   const className = classnames_default()({
  17547     'has-media-on-the-right': 'right' === mediaPosition,
  17548     'is-stacked-on-mobile': isStackedOnMobile,
  17549     [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment,
  17550     'is-image-fill': imageFill
  17551   });
  17552   const backgroundStyles = imageFill ? imageFillStyles(mediaUrl, focalPoint) : {};
  17553   let gridTemplateColumns;
  17554 
  17555   if (mediaWidth !== save_DEFAULT_MEDIA_WIDTH) {
  17556     gridTemplateColumns = 'right' === mediaPosition ? `auto ${mediaWidth}%` : `${mediaWidth}% auto`;
  17557   }
  17558 
  17559   const style = {
  17560     gridTemplateColumns
  17561   };
  17562   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  17563     className,
  17564     style
  17565   }), Object(external_wp_element_["createElement"])("figure", {
  17566     className: "wp-block-media-text__media",
  17567     style: backgroundStyles
  17568   }, (mediaTypeRenders[mediaType] || external_lodash_["noop"])()), Object(external_wp_element_["createElement"])("div", {
  17569     className: "wp-block-media-text__content"
  17570   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  17571 }
  17572 
  17573 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/transforms.js
  17574 /**
  17575  * WordPress dependencies
  17576  */
  17577 
  17578 const media_text_transforms_transforms = {
  17579   from: [{
  17580     type: 'block',
  17581     blocks: ['core/image'],
  17582     transform: ({
  17583       alt,
  17584       url,
  17585       id,
  17586       anchor
  17587     }) => Object(external_wp_blocks_["createBlock"])('core/media-text', {
  17588       mediaAlt: alt,
  17589       mediaId: id,
  17590       mediaUrl: url,
  17591       mediaType: 'image',
  17592       anchor
  17593     })
  17594   }, {
  17595     type: 'block',
  17596     blocks: ['core/video'],
  17597     transform: ({
  17598       src,
  17599       id,
  17600       anchor
  17601     }) => Object(external_wp_blocks_["createBlock"])('core/media-text', {
  17602       mediaId: id,
  17603       mediaUrl: src,
  17604       mediaType: 'video',
  17605       anchor
  17606     })
  17607   }],
  17608   to: [{
  17609     type: 'block',
  17610     blocks: ['core/image'],
  17611     isMatch: ({
  17612       mediaType,
  17613       mediaUrl
  17614     }) => {
  17615       return !mediaUrl || mediaType === 'image';
  17616     },
  17617     transform: ({
  17618       mediaAlt,
  17619       mediaId,
  17620       mediaUrl,
  17621       anchor
  17622     }) => {
  17623       return Object(external_wp_blocks_["createBlock"])('core/image', {
  17624         alt: mediaAlt,
  17625         id: mediaId,
  17626         url: mediaUrl,
  17627         anchor
  17628       });
  17629     }
  17630   }, {
  17631     type: 'block',
  17632     blocks: ['core/video'],
  17633     isMatch: ({
  17634       mediaType,
  17635       mediaUrl
  17636     }) => {
  17637       return !mediaUrl || mediaType === 'video';
  17638     },
  17639     transform: ({
  17640       mediaId,
  17641       mediaUrl,
  17642       anchor
  17643     }) => {
  17644       return Object(external_wp_blocks_["createBlock"])('core/video', {
  17645         id: mediaId,
  17646         src: mediaUrl,
  17647         anchor
  17648       });
  17649     }
  17650   }]
  17651 };
  17652 /* harmony default export */ var media_text_transforms = (media_text_transforms_transforms);
  17653 
  17654 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/media-text/index.js
  17655 /**
  17656  * WordPress dependencies
  17657  */
  17658 
  17659 
  17660 /**
  17661  * Internal dependencies
  17662  */
  17663 
  17664 
  17665 
  17666 const media_text_metadata = {
  17667   apiVersion: 2,
  17668   name: "core/media-text",
  17669   title: "Media & Text",
  17670   category: "media",
  17671   description: "Set media and words side-by-side for a richer layout.",
  17672   keywords: ["image", "video"],
  17673   textdomain: "default",
  17674   attributes: {
  17675     align: {
  17676       type: "string",
  17677       "default": "wide"
  17678     },
  17679     mediaAlt: {
  17680       type: "string",
  17681       source: "attribute",
  17682       selector: "figure img",
  17683       attribute: "alt",
  17684       "default": ""
  17685     },
  17686     mediaPosition: {
  17687       type: "string",
  17688       "default": "left"
  17689     },
  17690     mediaId: {
  17691       type: "number"
  17692     },
  17693     mediaUrl: {
  17694       type: "string",
  17695       source: "attribute",
  17696       selector: "figure video,figure img",
  17697       attribute: "src"
  17698     },
  17699     mediaLink: {
  17700       type: "string"
  17701     },
  17702     linkDestination: {
  17703       type: "string"
  17704     },
  17705     linkTarget: {
  17706       type: "string",
  17707       source: "attribute",
  17708       selector: "figure a",
  17709       attribute: "target"
  17710     },
  17711     href: {
  17712       type: "string",
  17713       source: "attribute",
  17714       selector: "figure a",
  17715       attribute: "href"
  17716     },
  17717     rel: {
  17718       type: "string",
  17719       source: "attribute",
  17720       selector: "figure a",
  17721       attribute: "rel"
  17722     },
  17723     linkClass: {
  17724       type: "string",
  17725       source: "attribute",
  17726       selector: "figure a",
  17727       attribute: "class"
  17728     },
  17729     mediaType: {
  17730       type: "string"
  17731     },
  17732     mediaWidth: {
  17733       type: "number",
  17734       "default": 50
  17735     },
  17736     mediaSizeSlug: {
  17737       type: "string"
  17738     },
  17739     isStackedOnMobile: {
  17740       type: "boolean",
  17741       "default": true
  17742     },
  17743     verticalAlignment: {
  17744       type: "string"
  17745     },
  17746     imageFill: {
  17747       type: "boolean"
  17748     },
  17749     focalPoint: {
  17750       type: "object"
  17751     }
  17752   },
  17753   supports: {
  17754     anchor: true,
  17755     align: ["wide", "full"],
  17756     html: false,
  17757     color: {
  17758       gradients: true,
  17759       link: true
  17760     }
  17761   },
  17762   editorStyle: "wp-block-media-text-editor",
  17763   style: "wp-block-media-text"
  17764 };
  17765 
  17766 
  17767 const {
  17768   name: media_text_name
  17769 } = media_text_metadata;
  17770 
  17771 const media_text_settings = {
  17772   icon: media_and_text,
  17773   example: {
  17774     attributes: {
  17775       mediaType: 'image',
  17776       mediaUrl: 'https://s.w.org/images/core/5.3/Biologia_Centrali-Americana_-_Cantorchilus_semibadius_1902.jpg'
  17777     },
  17778     innerBlocks: [{
  17779       name: 'core/paragraph',
  17780       attributes: {
  17781         content: Object(external_wp_i18n_["__"])('The wren<br>Earns his living<br>Noiselessly.')
  17782       }
  17783     }, {
  17784       name: 'core/paragraph',
  17785       attributes: {
  17786         content: Object(external_wp_i18n_["__"])('— Kobayashi Issa (一茶)')
  17787       }
  17788     }]
  17789   },
  17790   transforms: media_text_transforms,
  17791   edit: media_text_edit,
  17792   save: media_text_save_save,
  17793   deprecated: media_text_deprecated
  17794 };
  17795 
  17796 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/comment.js
  17797 
  17798 
  17799 /**
  17800  * WordPress dependencies
  17801  */
  17802 
  17803 const comment = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  17804   viewBox: "0 0 24 24",
  17805   xmlns: "http://www.w3.org/2000/svg"
  17806 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  17807   d: "M18 4H6c-1.1 0-2 .9-2 2v12.9c0 .6.5 1.1 1.1 1.1.3 0 .5-.1.8-.3L8.5 17H18c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 11c0 .3-.2.5-.5.5H7.9l-2.4 2.4V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v9z"
  17808 }));
  17809 /* harmony default export */ var library_comment = (comment);
  17810 
  17811 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-comments/edit.js
  17812 
  17813 
  17814 /**
  17815  * WordPress dependencies
  17816  */
  17817 
  17818 
  17819 
  17820 
  17821 /**
  17822  * Minimum number of comments a user can show using this block.
  17823  *
  17824  * @type {number}
  17825  */
  17826 
  17827 const MIN_COMMENTS = 1;
  17828 /**
  17829  * Maximum number of comments a user can show using this block.
  17830  *
  17831  * @type {number}
  17832  */
  17833 
  17834 const MAX_COMMENTS = 100;
  17835 function LatestComments({
  17836   attributes,
  17837   setAttributes
  17838 }) {
  17839   const {
  17840     commentsToShow,
  17841     displayAvatar,
  17842     displayDate,
  17843     displayExcerpt
  17844   } = attributes;
  17845   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  17846     title: Object(external_wp_i18n_["__"])('Latest comments settings')
  17847   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  17848     label: Object(external_wp_i18n_["__"])('Display avatar'),
  17849     checked: displayAvatar,
  17850     onChange: () => setAttributes({
  17851       displayAvatar: !displayAvatar
  17852     })
  17853   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  17854     label: Object(external_wp_i18n_["__"])('Display date'),
  17855     checked: displayDate,
  17856     onChange: () => setAttributes({
  17857       displayDate: !displayDate
  17858     })
  17859   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  17860     label: Object(external_wp_i18n_["__"])('Display excerpt'),
  17861     checked: displayExcerpt,
  17862     onChange: () => setAttributes({
  17863       displayExcerpt: !displayExcerpt
  17864     })
  17865   }), Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  17866     label: Object(external_wp_i18n_["__"])('Number of comments'),
  17867     value: commentsToShow,
  17868     onChange: value => setAttributes({
  17869       commentsToShow: value
  17870     }),
  17871     min: MIN_COMMENTS,
  17872     max: MAX_COMMENTS,
  17873     required: true
  17874   }))), Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"], null, Object(external_wp_element_["createElement"])(external_wp_serverSideRender_default.a, {
  17875     block: "core/latest-comments",
  17876     attributes: attributes
  17877   })));
  17878 }
  17879 
  17880 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-comments/index.js
  17881 /**
  17882  * WordPress dependencies
  17883  */
  17884 
  17885 /**
  17886  * Internal dependencies
  17887  */
  17888 
  17889 const latest_comments_metadata = {
  17890   apiVersion: 2,
  17891   name: "core/latest-comments",
  17892   title: "Latest Comments",
  17893   category: "widgets",
  17894   description: "Display a list of your most recent comments.",
  17895   keywords: ["recent comments"],
  17896   textdomain: "default",
  17897   attributes: {
  17898     commentsToShow: {
  17899       type: "number",
  17900       "default": 5,
  17901       minimum: 1,
  17902       maximum: 100
  17903     },
  17904     displayAvatar: {
  17905       type: "boolean",
  17906       "default": true
  17907     },
  17908     displayDate: {
  17909       type: "boolean",
  17910       "default": true
  17911     },
  17912     displayExcerpt: {
  17913       type: "boolean",
  17914       "default": true
  17915     }
  17916   },
  17917   supports: {
  17918     align: true,
  17919     html: false
  17920   },
  17921   editorStyle: "wp-block-latest-comments-editor",
  17922   style: "wp-block-latest-comments"
  17923 };
  17924 
  17925 const {
  17926   name: latest_comments_name
  17927 } = latest_comments_metadata;
  17928 
  17929 const latest_comments_settings = {
  17930   icon: library_comment,
  17931   example: {},
  17932   edit: LatestComments
  17933 };
  17934 
  17935 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-list.js
  17936 
  17937 
  17938 /**
  17939  * WordPress dependencies
  17940  */
  17941 
  17942 const postList = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  17943   viewBox: "0 0 24 24",
  17944   xmlns: "http://www.w3.org/2000/svg"
  17945 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  17946   d: "M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12zM7 11h2V9H7v2zm0 4h2v-2H7v2zm3-4h7V9h-7v2zm0 4h7v-2h-7v2z"
  17947 }));
  17948 /* harmony default export */ var post_list = (postList);
  17949 
  17950 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-posts/deprecated.js
  17951 /**
  17952  * Internal dependencies
  17953  */
  17954 const latest_posts_deprecated_metadata = {
  17955   apiVersion: 2,
  17956   name: "core/latest-posts",
  17957   title: "Latest Posts",
  17958   category: "widgets",
  17959   description: "Display a list of your most recent posts.",
  17960   keywords: ["recent posts"],
  17961   textdomain: "default",
  17962   attributes: {
  17963     categories: {
  17964       type: "array",
  17965       items: {
  17966         type: "object"
  17967       }
  17968     },
  17969     selectedAuthor: {
  17970       type: "number"
  17971     },
  17972     postsToShow: {
  17973       type: "number",
  17974       "default": 5
  17975     },
  17976     displayPostContent: {
  17977       type: "boolean",
  17978       "default": false
  17979     },
  17980     displayPostContentRadio: {
  17981       type: "string",
  17982       "default": "excerpt"
  17983     },
  17984     excerptLength: {
  17985       type: "number",
  17986       "default": 55
  17987     },
  17988     displayAuthor: {
  17989       type: "boolean",
  17990       "default": false
  17991     },
  17992     displayPostDate: {
  17993       type: "boolean",
  17994       "default": false
  17995     },
  17996     postLayout: {
  17997       type: "string",
  17998       "default": "list"
  17999     },
  18000     columns: {
  18001       type: "number",
  18002       "default": 3
  18003     },
  18004     order: {
  18005       type: "string",
  18006       "default": "desc"
  18007     },
  18008     orderBy: {
  18009       type: "string",
  18010       "default": "date"
  18011     },
  18012     displayFeaturedImage: {
  18013       type: "boolean",
  18014       "default": false
  18015     },
  18016     featuredImageAlign: {
  18017       type: "string",
  18018       "enum": ["left", "center", "right"]
  18019     },
  18020     featuredImageSizeSlug: {
  18021       type: "string",
  18022       "default": "thumbnail"
  18023     },
  18024     featuredImageSizeWidth: {
  18025       type: "number",
  18026       "default": null
  18027     },
  18028     featuredImageSizeHeight: {
  18029       type: "number",
  18030       "default": null
  18031     },
  18032     addLinkToFeaturedImage: {
  18033       type: "boolean",
  18034       "default": false
  18035     }
  18036   },
  18037   supports: {
  18038     align: true,
  18039     html: false
  18040   },
  18041   editorStyle: "wp-block-latest-posts-editor",
  18042   style: "wp-block-latest-posts"
  18043 };
  18044 const {
  18045   attributes: deprecated_attributes
  18046 } = latest_posts_deprecated_metadata;
  18047 /* harmony default export */ var latest_posts_deprecated = ([{
  18048   attributes: { ...deprecated_attributes,
  18049     categories: {
  18050       type: 'string'
  18051     }
  18052   },
  18053   supports: {
  18054     align: true,
  18055     html: false
  18056   },
  18057   migrate: oldAttributes => {
  18058     // This needs the full category object, not just the ID.
  18059     return { ...oldAttributes,
  18060       categories: [{
  18061         id: Number(oldAttributes.categories)
  18062       }]
  18063     };
  18064   },
  18065   isEligible: ({
  18066     categories
  18067   }) => categories && 'string' === typeof categories,
  18068   save: () => null
  18069 }]);
  18070 
  18071 // EXTERNAL MODULE: external ["wp","date"]
  18072 var external_wp_date_ = __webpack_require__("FqII");
  18073 
  18074 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/list.js
  18075 
  18076 
  18077 /**
  18078  * WordPress dependencies
  18079  */
  18080 
  18081 const list = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18082   viewBox: "0 0 24 24",
  18083   xmlns: "http://www.w3.org/2000/svg"
  18084 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18085   d: "M4 4v1.5h16V4H4zm8 8.5h8V11h-8v1.5zM4 20h16v-1.5H4V20zm4-8c0-1.1-.9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2z"
  18086 }));
  18087 /* harmony default export */ var library_list = (list);
  18088 
  18089 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/grid.js
  18090 var grid = __webpack_require__("b2RC");
  18091 
  18092 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-posts/constants.js
  18093 const MIN_EXCERPT_LENGTH = 10;
  18094 const MAX_EXCERPT_LENGTH = 100;
  18095 const MAX_POSTS_COLUMNS = 6;
  18096 
  18097 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-posts/edit.js
  18098 
  18099 
  18100 /**
  18101  * External dependencies
  18102  */
  18103 
  18104 
  18105 /**
  18106  * WordPress dependencies
  18107  */
  18108 
  18109 
  18110 
  18111 
  18112 
  18113 
  18114 
  18115 
  18116 
  18117 
  18118 
  18119 /**
  18120  * Internal dependencies
  18121  */
  18122 
  18123 
  18124 /**
  18125  * Module Constants
  18126  */
  18127 
  18128 const CATEGORIES_LIST_QUERY = {
  18129   per_page: -1
  18130 };
  18131 const USERS_LIST_QUERY = {
  18132   per_page: -1
  18133 };
  18134 function LatestPostsEdit({
  18135   attributes,
  18136   setAttributes
  18137 }) {
  18138   const {
  18139     postsToShow,
  18140     order,
  18141     orderBy,
  18142     categories,
  18143     selectedAuthor,
  18144     displayFeaturedImage,
  18145     displayPostContentRadio,
  18146     displayPostContent,
  18147     displayPostDate,
  18148     displayAuthor,
  18149     postLayout,
  18150     columns,
  18151     excerptLength,
  18152     featuredImageAlign,
  18153     featuredImageSizeSlug,
  18154     featuredImageSizeWidth,
  18155     featuredImageSizeHeight,
  18156     addLinkToFeaturedImage
  18157   } = attributes;
  18158   const {
  18159     imageSizeOptions,
  18160     latestPosts,
  18161     defaultImageWidth,
  18162     defaultImageHeight
  18163   } = Object(external_wp_data_["useSelect"])(select => {
  18164     const {
  18165       getEntityRecords,
  18166       getMedia
  18167     } = select(external_wp_coreData_["store"]);
  18168     const {
  18169       getSettings
  18170     } = select(external_wp_blockEditor_["store"]);
  18171     const {
  18172       imageSizes,
  18173       imageDimensions
  18174     } = getSettings();
  18175     const catIds = categories && categories.length > 0 ? categories.map(cat => cat.id) : [];
  18176     const latestPostsQuery = Object(external_lodash_["pickBy"])({
  18177       categories: catIds,
  18178       author: selectedAuthor,
  18179       order,
  18180       orderby: orderBy,
  18181       per_page: postsToShow
  18182     }, value => !Object(external_lodash_["isUndefined"])(value));
  18183     const posts = getEntityRecords('postType', 'post', latestPostsQuery);
  18184     return {
  18185       defaultImageWidth: Object(external_lodash_["get"])(imageDimensions, [featuredImageSizeSlug, 'width'], 0),
  18186       defaultImageHeight: Object(external_lodash_["get"])(imageDimensions, [featuredImageSizeSlug, 'height'], 0),
  18187       imageSizeOptions: imageSizes.filter(({
  18188         slug
  18189       }) => slug !== 'full').map(({
  18190         name,
  18191         slug
  18192       }) => ({
  18193         value: slug,
  18194         label: name
  18195       })),
  18196       latestPosts: !Array.isArray(posts) ? posts : posts.map(post => {
  18197         if (!post.featured_media) return post;
  18198         const image = getMedia(post.featured_media);
  18199         let url = Object(external_lodash_["get"])(image, ['media_details', 'sizes', featuredImageSizeSlug, 'source_url'], null);
  18200 
  18201         if (!url) {
  18202           url = Object(external_lodash_["get"])(image, 'source_url', null);
  18203         }
  18204 
  18205         const featuredImageInfo = {
  18206           url,
  18207           // eslint-disable-next-line camelcase
  18208           alt: image === null || image === void 0 ? void 0 : image.alt_text
  18209         };
  18210         return { ...post,
  18211           featuredImageInfo
  18212         };
  18213       })
  18214     };
  18215   }, [featuredImageSizeSlug, postsToShow, order, orderBy, categories, selectedAuthor]);
  18216   const [categoriesList, setCategoriesList] = Object(external_wp_element_["useState"])([]);
  18217   const [authorList, setAuthorList] = Object(external_wp_element_["useState"])([]);
  18218   const categorySuggestions = categoriesList.reduce((accumulator, category) => ({ ...accumulator,
  18219     [category.name]: category
  18220   }), {});
  18221 
  18222   const selectCategories = tokens => {
  18223     const hasNoSuggestion = tokens.some(token => typeof token === 'string' && !categorySuggestions[token]);
  18224 
  18225     if (hasNoSuggestion) {
  18226       return;
  18227     } // Categories that are already will be objects, while new additions will be strings (the name).
  18228     // allCategories nomalizes the array so that they are all objects.
  18229 
  18230 
  18231     const allCategories = tokens.map(token => {
  18232       return typeof token === 'string' ? categorySuggestions[token] : token;
  18233     }); // We do nothing if the category is not selected
  18234     // from suggestions.
  18235 
  18236     if (Object(external_lodash_["includes"])(allCategories, null)) {
  18237       return false;
  18238     }
  18239 
  18240     setAttributes({
  18241       categories: allCategories
  18242     });
  18243   };
  18244 
  18245   const isStillMounted = Object(external_wp_element_["useRef"])();
  18246   Object(external_wp_element_["useEffect"])(() => {
  18247     isStillMounted.current = true;
  18248     external_wp_apiFetch_default()({
  18249       path: Object(external_wp_url_["addQueryArgs"])(`/wp/v2/categories`, CATEGORIES_LIST_QUERY)
  18250     }).then(data => {
  18251       if (isStillMounted.current) {
  18252         setCategoriesList(data);
  18253       }
  18254     }).catch(() => {
  18255       if (isStillMounted.current) {
  18256         setCategoriesList([]);
  18257       }
  18258     });
  18259     external_wp_apiFetch_default()({
  18260       path: Object(external_wp_url_["addQueryArgs"])(`/wp/v2/users`, USERS_LIST_QUERY)
  18261     }).then(data => {
  18262       if (isStillMounted.current) {
  18263         setAuthorList(data);
  18264       }
  18265     }).catch(() => {
  18266       if (isStillMounted.current) {
  18267         setAuthorList([]);
  18268       }
  18269     });
  18270     return () => {
  18271       isStillMounted.current = false;
  18272     };
  18273   }, []);
  18274   const hasPosts = !!(latestPosts !== null && latestPosts !== void 0 && latestPosts.length);
  18275   const inspectorControls = Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  18276     title: Object(external_wp_i18n_["__"])('Post content settings')
  18277   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18278     label: Object(external_wp_i18n_["__"])('Post content'),
  18279     checked: displayPostContent,
  18280     onChange: value => setAttributes({
  18281       displayPostContent: value
  18282     })
  18283   }), displayPostContent && Object(external_wp_element_["createElement"])(external_wp_components_["RadioControl"], {
  18284     label: Object(external_wp_i18n_["__"])('Show:'),
  18285     selected: displayPostContentRadio,
  18286     options: [{
  18287       label: Object(external_wp_i18n_["__"])('Excerpt'),
  18288       value: 'excerpt'
  18289     }, {
  18290       label: Object(external_wp_i18n_["__"])('Full post'),
  18291       value: 'full_post'
  18292     }],
  18293     onChange: value => setAttributes({
  18294       displayPostContentRadio: value
  18295     })
  18296   }), displayPostContent && displayPostContentRadio === 'excerpt' && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  18297     label: Object(external_wp_i18n_["__"])('Max number of words in excerpt'),
  18298     value: excerptLength,
  18299     onChange: value => setAttributes({
  18300       excerptLength: value
  18301     }),
  18302     min: MIN_EXCERPT_LENGTH,
  18303     max: MAX_EXCERPT_LENGTH
  18304   })), Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  18305     title: Object(external_wp_i18n_["__"])('Post meta settings')
  18306   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18307     label: Object(external_wp_i18n_["__"])('Display author name'),
  18308     checked: displayAuthor,
  18309     onChange: value => setAttributes({
  18310       displayAuthor: value
  18311     })
  18312   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18313     label: Object(external_wp_i18n_["__"])('Display post date'),
  18314     checked: displayPostDate,
  18315     onChange: value => setAttributes({
  18316       displayPostDate: value
  18317     })
  18318   })), Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  18319     title: Object(external_wp_i18n_["__"])('Featured image settings')
  18320   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18321     label: Object(external_wp_i18n_["__"])('Display featured image'),
  18322     checked: displayFeaturedImage,
  18323     onChange: value => setAttributes({
  18324       displayFeaturedImage: value
  18325     })
  18326   }), displayFeaturedImage && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalImageSizeControl"], {
  18327     onChange: value => {
  18328       const newAttrs = {};
  18329 
  18330       if (value.hasOwnProperty('width')) {
  18331         newAttrs.featuredImageSizeWidth = value.width;
  18332       }
  18333 
  18334       if (value.hasOwnProperty('height')) {
  18335         newAttrs.featuredImageSizeHeight = value.height;
  18336       }
  18337 
  18338       setAttributes(newAttrs);
  18339     },
  18340     slug: featuredImageSizeSlug,
  18341     width: featuredImageSizeWidth,
  18342     height: featuredImageSizeHeight,
  18343     imageWidth: defaultImageWidth,
  18344     imageHeight: defaultImageHeight,
  18345     imageSizeOptions: imageSizeOptions,
  18346     onChangeImage: value => setAttributes({
  18347       featuredImageSizeSlug: value,
  18348       featuredImageSizeWidth: undefined,
  18349       featuredImageSizeHeight: undefined
  18350     })
  18351   }), Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"], {
  18352     className: "block-editor-image-alignment-control__row"
  18353   }, Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"].VisualLabel, null, Object(external_wp_i18n_["__"])('Image alignment')), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockAlignmentToolbar"], {
  18354     value: featuredImageAlign,
  18355     onChange: value => setAttributes({
  18356       featuredImageAlign: value
  18357     }),
  18358     controls: ['left', 'center', 'right'],
  18359     isCollapsed: false
  18360   })), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18361     label: Object(external_wp_i18n_["__"])('Add link to featured image'),
  18362     checked: addLinkToFeaturedImage,
  18363     onChange: value => setAttributes({
  18364       addLinkToFeaturedImage: value
  18365     })
  18366   }))), Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  18367     title: Object(external_wp_i18n_["__"])('Sorting and filtering')
  18368   }, Object(external_wp_element_["createElement"])(external_wp_components_["QueryControls"], {
  18369     order,
  18370     orderBy,
  18371     numberOfItems: postsToShow,
  18372     onOrderChange: value => setAttributes({
  18373       order: value
  18374     }),
  18375     onOrderByChange: value => setAttributes({
  18376       orderBy: value
  18377     }),
  18378     onNumberOfItemsChange: value => setAttributes({
  18379       postsToShow: value
  18380     }),
  18381     categorySuggestions: categorySuggestions,
  18382     onCategoryChange: selectCategories,
  18383     selectedCategories: categories,
  18384     onAuthorChange: value => setAttributes({
  18385       selectedAuthor: '' !== value ? Number(value) : undefined
  18386     }),
  18387     authorList: authorList,
  18388     selectedAuthorId: selectedAuthor
  18389   }), postLayout === 'grid' && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  18390     label: Object(external_wp_i18n_["__"])('Columns'),
  18391     value: columns,
  18392     onChange: value => setAttributes({
  18393       columns: value
  18394     }),
  18395     min: 2,
  18396     max: !hasPosts ? MAX_POSTS_COLUMNS : Math.min(MAX_POSTS_COLUMNS, latestPosts.length),
  18397     required: true
  18398   })));
  18399   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  18400     className: classnames_default()({
  18401       'wp-block-latest-posts__list': true,
  18402       'is-grid': postLayout === 'grid',
  18403       'has-dates': displayPostDate,
  18404       'has-author': displayAuthor,
  18405       [`columns-${columns}`]: postLayout === 'grid'
  18406     })
  18407   });
  18408 
  18409   if (!hasPosts) {
  18410     return Object(external_wp_element_["createElement"])("div", blockProps, inspectorControls, Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], {
  18411       icon: library_pin,
  18412       label: Object(external_wp_i18n_["__"])('Latest Posts')
  18413     }, !Array.isArray(latestPosts) ? Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null) : Object(external_wp_i18n_["__"])('No posts found.')));
  18414   } // Removing posts from display should be instant.
  18415 
  18416 
  18417   const displayPosts = latestPosts.length > postsToShow ? latestPosts.slice(0, postsToShow) : latestPosts;
  18418   const layoutControls = [{
  18419     icon: library_list,
  18420     title: Object(external_wp_i18n_["__"])('List view'),
  18421     onClick: () => setAttributes({
  18422       postLayout: 'list'
  18423     }),
  18424     isActive: postLayout === 'list'
  18425   }, {
  18426     icon: grid["a" /* default */],
  18427     title: Object(external_wp_i18n_["__"])('Grid view'),
  18428     onClick: () => setAttributes({
  18429       postLayout: 'grid'
  18430     }),
  18431     isActive: postLayout === 'grid'
  18432   }];
  18433 
  18434   const dateFormat = Object(external_wp_date_["__experimentalGetSettings"])().formats.date;
  18435 
  18436   return Object(external_wp_element_["createElement"])("div", null, inspectorControls, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], {
  18437     controls: layoutControls
  18438   })), Object(external_wp_element_["createElement"])("ul", blockProps, displayPosts.map((post, i) => {
  18439     const titleTrimmed = Object(external_lodash_["invoke"])(post, ['title', 'rendered', 'trim']);
  18440     let excerpt = post.excerpt.rendered;
  18441     const currentAuthor = authorList.find(author => author.id === post.author);
  18442     const excerptElement = document.createElement('div');
  18443     excerptElement.innerHTML = excerpt;
  18444     excerpt = excerptElement.textContent || excerptElement.innerText || '';
  18445     const {
  18446       featuredImageInfo: {
  18447         url: imageSourceUrl,
  18448         alt: featuredImageAlt
  18449       } = {}
  18450     } = post;
  18451     const imageClasses = classnames_default()({
  18452       'wp-block-latest-posts__featured-image': true,
  18453       [`align${featuredImageAlign}`]: !!featuredImageAlign
  18454     });
  18455     const renderFeaturedImage = displayFeaturedImage && imageSourceUrl;
  18456     const featuredImage = renderFeaturedImage && Object(external_wp_element_["createElement"])("img", {
  18457       src: imageSourceUrl,
  18458       alt: featuredImageAlt,
  18459       style: {
  18460         maxWidth: featuredImageSizeWidth,
  18461         maxHeight: featuredImageSizeHeight
  18462       }
  18463     });
  18464     const needsReadMore = excerptLength < excerpt.trim().split(' ').length && post.excerpt.raw === '';
  18465     const postExcerpt = needsReadMore ? Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, excerpt.trim().split(' ', excerptLength).join(' '), Object(external_wp_i18n_["__"])(' … '), Object(external_wp_element_["createElement"])("a", {
  18466       href: post.link,
  18467       rel: "noopener noreferrer"
  18468     }, Object(external_wp_i18n_["__"])('Read more'))) : excerpt;
  18469     return Object(external_wp_element_["createElement"])("li", {
  18470       key: i
  18471     }, renderFeaturedImage && Object(external_wp_element_["createElement"])("div", {
  18472       className: imageClasses
  18473     }, addLinkToFeaturedImage ? Object(external_wp_element_["createElement"])("a", {
  18474       href: post.link,
  18475       rel: "noreferrer noopener"
  18476     }, featuredImage) : featuredImage), Object(external_wp_element_["createElement"])("a", {
  18477       href: post.link,
  18478       rel: "noreferrer noopener"
  18479     }, titleTrimmed ? Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, titleTrimmed) : Object(external_wp_i18n_["__"])('(no title)')), displayAuthor && currentAuthor && Object(external_wp_element_["createElement"])("div", {
  18480       className: "wp-block-latest-posts__post-author"
  18481     }, Object(external_wp_i18n_["sprintf"])(
  18482     /* translators: byline. %s: current author. */
  18483     Object(external_wp_i18n_["__"])('by %s'), currentAuthor.name)), displayPostDate && post.date_gmt && Object(external_wp_element_["createElement"])("time", {
  18484       dateTime: Object(external_wp_date_["format"])('c', post.date_gmt),
  18485       className: "wp-block-latest-posts__post-date"
  18486     }, Object(external_wp_date_["dateI18n"])(dateFormat, post.date_gmt)), displayPostContent && displayPostContentRadio === 'excerpt' && Object(external_wp_element_["createElement"])("div", {
  18487       className: "wp-block-latest-posts__post-excerpt"
  18488     }, postExcerpt), displayPostContent && displayPostContentRadio === 'full_post' && Object(external_wp_element_["createElement"])("div", {
  18489       className: "wp-block-latest-posts__post-full-content"
  18490     }, Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], {
  18491       key: "html"
  18492     }, post.content.raw.trim())));
  18493   })));
  18494 }
  18495 
  18496 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/latest-posts/index.js
  18497 /**
  18498  * WordPress dependencies
  18499  */
  18500 
  18501 /**
  18502  * Internal dependencies
  18503  */
  18504 
  18505 
  18506 
  18507 const latest_posts_metadata = {
  18508   apiVersion: 2,
  18509   name: "core/latest-posts",
  18510   title: "Latest Posts",
  18511   category: "widgets",
  18512   description: "Display a list of your most recent posts.",
  18513   keywords: ["recent posts"],
  18514   textdomain: "default",
  18515   attributes: {
  18516     categories: {
  18517       type: "array",
  18518       items: {
  18519         type: "object"
  18520       }
  18521     },
  18522     selectedAuthor: {
  18523       type: "number"
  18524     },
  18525     postsToShow: {
  18526       type: "number",
  18527       "default": 5
  18528     },
  18529     displayPostContent: {
  18530       type: "boolean",
  18531       "default": false
  18532     },
  18533     displayPostContentRadio: {
  18534       type: "string",
  18535       "default": "excerpt"
  18536     },
  18537     excerptLength: {
  18538       type: "number",
  18539       "default": 55
  18540     },
  18541     displayAuthor: {
  18542       type: "boolean",
  18543       "default": false
  18544     },
  18545     displayPostDate: {
  18546       type: "boolean",
  18547       "default": false
  18548     },
  18549     postLayout: {
  18550       type: "string",
  18551       "default": "list"
  18552     },
  18553     columns: {
  18554       type: "number",
  18555       "default": 3
  18556     },
  18557     order: {
  18558       type: "string",
  18559       "default": "desc"
  18560     },
  18561     orderBy: {
  18562       type: "string",
  18563       "default": "date"
  18564     },
  18565     displayFeaturedImage: {
  18566       type: "boolean",
  18567       "default": false
  18568     },
  18569     featuredImageAlign: {
  18570       type: "string",
  18571       "enum": ["left", "center", "right"]
  18572     },
  18573     featuredImageSizeSlug: {
  18574       type: "string",
  18575       "default": "thumbnail"
  18576     },
  18577     featuredImageSizeWidth: {
  18578       type: "number",
  18579       "default": null
  18580     },
  18581     featuredImageSizeHeight: {
  18582       type: "number",
  18583       "default": null
  18584     },
  18585     addLinkToFeaturedImage: {
  18586       type: "boolean",
  18587       "default": false
  18588     }
  18589   },
  18590   supports: {
  18591     align: true,
  18592     html: false
  18593   },
  18594   editorStyle: "wp-block-latest-posts-editor",
  18595   style: "wp-block-latest-posts"
  18596 };
  18597 const {
  18598   name: latest_posts_name
  18599 } = latest_posts_metadata;
  18600 
  18601 const latest_posts_settings = {
  18602   icon: post_list,
  18603   example: {},
  18604   edit: LatestPostsEdit,
  18605   deprecated: latest_posts_deprecated
  18606 };
  18607 
  18608 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/login.js
  18609 
  18610 
  18611 /**
  18612  * WordPress dependencies
  18613  */
  18614 
  18615 const login = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18616   xmlns: "http://www.w3.org/2000/svg",
  18617   viewBox: "0 0 24 24"
  18618 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18619   d: "M11 14.5l1.1 1.1 3-3 .5-.5-.6-.6-3-3-1 1 1.7 1.7H5v1.5h7.7L11 14.5zM16.8 5h-7c-1.1 0-2 .9-2 2v1.5h1.5V7c0-.3.2-.5.5-.5h7c.3 0 .5.2.5.5v10c0 .3-.2.5-.5.5h-7c-.3 0-.5-.2-.5-.5v-1.5H7.8V17c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2z"
  18620 }));
  18621 /* harmony default export */ var library_login = (login);
  18622 
  18623 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/loginout/edit.js
  18624 
  18625 
  18626 /**
  18627  * WordPress dependencies
  18628  */
  18629 
  18630 
  18631 
  18632 function LoginOutEdit({
  18633   attributes,
  18634   setAttributes
  18635 }) {
  18636   const {
  18637     displayLoginAsForm,
  18638     redirectToCurrent
  18639   } = attributes;
  18640   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  18641     title: Object(external_wp_i18n_["__"])('Login/out settings')
  18642   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18643     label: Object(external_wp_i18n_["__"])('Display login as form'),
  18644     checked: displayLoginAsForm,
  18645     onChange: () => setAttributes({
  18646       displayLoginAsForm: !displayLoginAsForm
  18647     })
  18648   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18649     label: Object(external_wp_i18n_["__"])('Redirect to current URL'),
  18650     checked: redirectToCurrent,
  18651     onChange: () => setAttributes({
  18652       redirectToCurrent: !redirectToCurrent
  18653     })
  18654   }))), Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])({
  18655     className: 'logged-in'
  18656   }), Object(external_wp_element_["createElement"])("a", {
  18657     href: "#login-pseudo-link"
  18658   }, Object(external_wp_i18n_["__"])('Log out'))));
  18659 }
  18660 
  18661 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/loginout/index.js
  18662 /**
  18663  * WordPress dependencies
  18664  */
  18665 
  18666 /**
  18667  * Internal dependencies
  18668  */
  18669 
  18670 
  18671 const loginout_metadata = {
  18672   apiVersion: 2,
  18673   name: "core/loginout",
  18674   title: "Login/out",
  18675   category: "theme",
  18676   description: "Show login & logout links.",
  18677   keywords: ["login", "logout", "form"],
  18678   textdomain: "default",
  18679   attributes: {
  18680     displayLoginAsForm: {
  18681       type: "boolean",
  18682       "default": false
  18683     },
  18684     redirectToCurrent: {
  18685       type: "boolean",
  18686       "default": true
  18687     }
  18688   },
  18689   supports: {
  18690     className: true,
  18691     typography: {
  18692       fontSize: false
  18693     }
  18694   }
  18695 };
  18696 const {
  18697   name: loginout_name
  18698 } = loginout_metadata;
  18699 
  18700 const loginout_settings = {
  18701   icon: library_login,
  18702   edit: LoginOutEdit
  18703 };
  18704 
  18705 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-list-bullets-rtl.js
  18706 
  18707 
  18708 /**
  18709  * WordPress dependencies
  18710  */
  18711 
  18712 const formatListBulletsRTL = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18713   xmlns: "http://www.w3.org/2000/svg",
  18714   viewBox: "0 0 24 24"
  18715 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18716   d: "M4 8.8h8.9V7.2H4v1.6zm0 7h8.9v-1.5H4v1.5zM18 13c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-3c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z"
  18717 }));
  18718 /* harmony default export */ var format_list_bullets_rtl = (formatListBulletsRTL);
  18719 
  18720 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-list-bullets.js
  18721 
  18722 
  18723 /**
  18724  * WordPress dependencies
  18725  */
  18726 
  18727 const formatListBullets = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18728   xmlns: "http://www.w3.org/2000/svg",
  18729   viewBox: "0 0 24 24"
  18730 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18731   d: "M11.1 15.8H20v-1.5h-8.9v1.5zm0-8.6v1.5H20V7.2h-8.9zM6 13c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-7c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"
  18732 }));
  18733 /* harmony default export */ var format_list_bullets = (formatListBullets);
  18734 
  18735 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-list-numbered-rtl.js
  18736 
  18737 
  18738 /**
  18739  * WordPress dependencies
  18740  */
  18741 
  18742 const formatListNumberedRTL = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18743   xmlns: "http://www.w3.org/2000/svg",
  18744   viewBox: "0 0 24 24"
  18745 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18746   d: "M3.8 15.8h8.9v-1.5H3.8v1.5zm0-7h8.9V7.2H3.8v1.6zm14.7-2.1V10h1V5.3l-2.2.7.3 1 .9-.3zm1.2 6.1c-.5-.6-1.2-.5-1.7-.4-.3.1-.5.2-.7.3l.1 1.1c.2-.2.5-.4.8-.5.3-.1.6 0 .7.1.2.3 0 .8-.2 1.1-.5.8-.9 1.6-1.4 2.5H20v-1h-.9c.3-.6.8-1.4.9-2.1 0-.3 0-.8-.3-1.1z"
  18747 }));
  18748 /* harmony default export */ var format_list_numbered_rtl = (formatListNumberedRTL);
  18749 
  18750 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-list-numbered.js
  18751 
  18752 
  18753 /**
  18754  * WordPress dependencies
  18755  */
  18756 
  18757 const formatListNumbered = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18758   xmlns: "http://www.w3.org/2000/svg",
  18759   viewBox: "0 0 24 24"
  18760 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18761   d: "M11.1 15.8H20v-1.5h-8.9v1.5zm0-8.6v1.5H20V7.2h-8.9zM5 6.7V10h1V5.3L3.8 6l.4 1 .8-.3zm-.4 5.7c-.3.1-.5.2-.7.3l.1 1.1c.2-.2.5-.4.8-.5.3-.1.6 0 .7.1.2.3 0 .8-.2 1.1-.5.8-.9 1.6-1.4 2.5h2.7v-1h-1c.3-.6.8-1.4.9-2.1.1-.3 0-.8-.2-1.1-.5-.6-1.3-.5-1.7-.4z"
  18762 }));
  18763 /* harmony default export */ var format_list_numbered = (formatListNumbered);
  18764 
  18765 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-outdent-rtl.js
  18766 
  18767 
  18768 /**
  18769  * WordPress dependencies
  18770  */
  18771 
  18772 const formatOutdentRTL = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18773   xmlns: "http://www.w3.org/2000/svg",
  18774   viewBox: "0 0 24 24"
  18775 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18776   d: "M20 5.5H4V4H20V5.5ZM12 12.5H4V11H12V12.5ZM20 20V18.5H4V20H20ZM15.4697 14.9697L18.4393 12L15.4697 9.03033L16.5303 7.96967L20.0303 11.4697L20.5607 12L20.0303 12.5303L16.5303 16.0303L15.4697 14.9697Z"
  18777 }));
  18778 /* harmony default export */ var format_outdent_rtl = (formatOutdentRTL);
  18779 
  18780 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-outdent.js
  18781 
  18782 
  18783 /**
  18784  * WordPress dependencies
  18785  */
  18786 
  18787 const formatOutdent = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18788   xmlns: "http://www.w3.org/2000/svg",
  18789   viewBox: "0 0 24 24"
  18790 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18791   d: "M4 7.2v1.5h16V7.2H4zm8 8.6h8v-1.5h-8v1.5zm-4-4.6l-4 4 4 4 1-1-3-3 3-3-1-1z"
  18792 }));
  18793 /* harmony default export */ var format_outdent = (formatOutdent);
  18794 
  18795 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-indent-rtl.js
  18796 
  18797 
  18798 /**
  18799  * WordPress dependencies
  18800  */
  18801 
  18802 const formatIndentRTL = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18803   xmlns: "http://www.w3.org/2000/svg",
  18804   viewBox: "0 0 24 24"
  18805 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18806   d: "M20 5.5H4V4H20V5.5ZM12 12.5H4V11H12V12.5ZM20 20V18.5H4V20H20ZM20.0303 9.03033L17.0607 12L20.0303 14.9697L18.9697 16.0303L15.4697 12.5303L14.9393 12L15.4697 11.4697L18.9697 7.96967L20.0303 9.03033Z"
  18807 }));
  18808 /* harmony default export */ var format_indent_rtl = (formatIndentRTL);
  18809 
  18810 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/format-indent.js
  18811 
  18812 
  18813 /**
  18814  * WordPress dependencies
  18815  */
  18816 
  18817 const formatIndent = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  18818   xmlns: "http://www.w3.org/2000/svg",
  18819   viewBox: "0 0 24 24"
  18820 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  18821   d: "M4 7.2v1.5h16V7.2H4zm8 8.6h8v-1.5h-8v1.5zm-8-3.5l3 3-3 3 1 1 4-4-4-4-1 1z"
  18822 }));
  18823 /* harmony default export */ var format_indent = (formatIndent);
  18824 
  18825 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/ordered-list-settings.js
  18826 
  18827 
  18828 /**
  18829  * WordPress dependencies
  18830  */
  18831 
  18832 
  18833 
  18834 
  18835 const OrderedListSettings = ({
  18836   setAttributes,
  18837   reversed,
  18838   start
  18839 }) => Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  18840   title: Object(external_wp_i18n_["__"])('Ordered list settings')
  18841 }, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  18842   label: Object(external_wp_i18n_["__"])('Start value'),
  18843   type: "number",
  18844   onChange: value => {
  18845     const int = parseInt(value, 10);
  18846     setAttributes({
  18847       // It should be possible to unset the value,
  18848       // e.g. with an empty string.
  18849       start: isNaN(int) ? undefined : int
  18850     });
  18851   },
  18852   value: Number.isInteger(start) ? start.toString(10) : '',
  18853   step: "1"
  18854 }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  18855   label: Object(external_wp_i18n_["__"])('Reverse list numbering'),
  18856   checked: reversed || false,
  18857   onChange: value => {
  18858     setAttributes({
  18859       // Unset the attribute if not reversed.
  18860       reversed: value || undefined
  18861     });
  18862   }
  18863 })));
  18864 
  18865 /* harmony default export */ var ordered_list_settings = (OrderedListSettings);
  18866 
  18867 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/edit.js
  18868 
  18869 
  18870 
  18871 /**
  18872  * WordPress dependencies
  18873  */
  18874 
  18875 
  18876 
  18877 
  18878 
  18879 
  18880 /**
  18881  * Internal dependencies
  18882  */
  18883 
  18884 
  18885 
  18886 function ListEdit({
  18887   attributes,
  18888   setAttributes,
  18889   mergeBlocks,
  18890   onReplace
  18891 }) {
  18892   const {
  18893     ordered,
  18894     values,
  18895     type,
  18896     reversed,
  18897     start,
  18898     placeholder
  18899   } = attributes;
  18900   const tagName = ordered ? 'ol' : 'ul';
  18901 
  18902   const controls = ({
  18903     value,
  18904     onChange,
  18905     onFocus
  18906   }) => Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichTextShortcut"], {
  18907     type: "primary",
  18908     character: "[",
  18909     onUse: () => {
  18910       onChange(Object(external_wp_richText_["__unstableOutdentListItems"])(value));
  18911     }
  18912   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichTextShortcut"], {
  18913     type: "primary",
  18914     character: "]",
  18915     onUse: () => {
  18916       onChange(Object(external_wp_richText_["__unstableIndentListItems"])(value, {
  18917         type: tagName
  18918       }));
  18919     }
  18920   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichTextShortcut"], {
  18921     type: "primary",
  18922     character: "m",
  18923     onUse: () => {
  18924       onChange(Object(external_wp_richText_["__unstableIndentListItems"])(value, {
  18925         type: tagName
  18926       }));
  18927     }
  18928   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichTextShortcut"], {
  18929     type: "primaryShift",
  18930     character: "m",
  18931     onUse: () => {
  18932       onChange(Object(external_wp_richText_["__unstableOutdentListItems"])(value));
  18933     }
  18934   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  18935     group: "block"
  18936   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  18937     icon: Object(external_wp_i18n_["isRTL"])() ? format_list_bullets_rtl : format_list_bullets,
  18938     title: Object(external_wp_i18n_["__"])('Unordered'),
  18939     describedBy: Object(external_wp_i18n_["__"])('Convert to unordered list'),
  18940     isActive: Object(external_wp_richText_["__unstableIsActiveListType"])(value, 'ul', tagName),
  18941     onClick: () => {
  18942       onChange(Object(external_wp_richText_["__unstableChangeListType"])(value, {
  18943         type: 'ul'
  18944       }));
  18945       onFocus();
  18946 
  18947       if (Object(external_wp_richText_["__unstableIsListRootSelected"])(value)) {
  18948         setAttributes({
  18949           ordered: false
  18950         });
  18951       }
  18952     }
  18953   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  18954     icon: Object(external_wp_i18n_["isRTL"])() ? format_list_numbered_rtl : format_list_numbered,
  18955     title: Object(external_wp_i18n_["__"])('Ordered'),
  18956     describedBy: Object(external_wp_i18n_["__"])('Convert to ordered list'),
  18957     isActive: Object(external_wp_richText_["__unstableIsActiveListType"])(value, 'ol', tagName),
  18958     onClick: () => {
  18959       onChange(Object(external_wp_richText_["__unstableChangeListType"])(value, {
  18960         type: 'ol'
  18961       }));
  18962       onFocus();
  18963 
  18964       if (Object(external_wp_richText_["__unstableIsListRootSelected"])(value)) {
  18965         setAttributes({
  18966           ordered: true
  18967         });
  18968       }
  18969     }
  18970   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  18971     icon: Object(external_wp_i18n_["isRTL"])() ? format_outdent_rtl : format_outdent,
  18972     title: Object(external_wp_i18n_["__"])('Outdent'),
  18973     describedBy: Object(external_wp_i18n_["__"])('Outdent list item'),
  18974     shortcut: Object(external_wp_i18n_["_x"])('Backspace', 'keyboard key'),
  18975     isDisabled: !Object(external_wp_richText_["__unstableCanOutdentListItems"])(value),
  18976     onClick: () => {
  18977       onChange(Object(external_wp_richText_["__unstableOutdentListItems"])(value));
  18978       onFocus();
  18979     }
  18980   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  18981     icon: Object(external_wp_i18n_["isRTL"])() ? format_indent_rtl : format_indent,
  18982     title: Object(external_wp_i18n_["__"])('Indent'),
  18983     describedBy: Object(external_wp_i18n_["__"])('Indent list item'),
  18984     shortcut: Object(external_wp_i18n_["_x"])('Space', 'keyboard key'),
  18985     isDisabled: !Object(external_wp_richText_["__unstableCanIndentListItems"])(value),
  18986     onClick: () => {
  18987       onChange(Object(external_wp_richText_["__unstableIndentListItems"])(value, {
  18988         type: tagName
  18989       }));
  18990       onFocus();
  18991     }
  18992   })));
  18993 
  18994   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  18995   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], Object(esm_extends["a" /* default */])({
  18996     identifier: "values",
  18997     multiline: "li",
  18998     tagName: tagName,
  18999     onChange: nextValues => setAttributes({
  19000       values: nextValues
  19001     }),
  19002     value: values,
  19003     "aria-label": Object(external_wp_i18n_["__"])('List text'),
  19004     placeholder: placeholder || Object(external_wp_i18n_["__"])('List'),
  19005     onMerge: mergeBlocks,
  19006     onSplit: value => Object(external_wp_blocks_["createBlock"])(list_name, { ...attributes,
  19007       values: value
  19008     }),
  19009     __unstableOnSplitMiddle: () => Object(external_wp_blocks_["createBlock"])('core/paragraph'),
  19010     onReplace: onReplace,
  19011     onRemove: () => onReplace([]),
  19012     start: start,
  19013     reversed: reversed,
  19014     type: type
  19015   }, blockProps), controls), ordered && Object(external_wp_element_["createElement"])(ordered_list_settings, {
  19016     setAttributes: setAttributes,
  19017     ordered: ordered,
  19018     reversed: reversed,
  19019     start: start,
  19020     placeholder: placeholder
  19021   }));
  19022 }
  19023 
  19024 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/save.js
  19025 
  19026 
  19027 /**
  19028  * WordPress dependencies
  19029  */
  19030 
  19031 function list_save_save({
  19032   attributes
  19033 }) {
  19034   const {
  19035     ordered,
  19036     values,
  19037     type,
  19038     reversed,
  19039     start
  19040   } = attributes;
  19041   const TagName = ordered ? 'ol' : 'ul';
  19042   return Object(external_wp_element_["createElement"])(TagName, external_wp_blockEditor_["useBlockProps"].save({
  19043     type,
  19044     reversed,
  19045     start
  19046   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  19047     value: values,
  19048     multiline: "li"
  19049   }));
  19050 }
  19051 
  19052 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/transforms.js
  19053 /**
  19054  * WordPress dependencies
  19055  */
  19056 
  19057 
  19058 
  19059 function getListContentSchema({
  19060   phrasingContentSchema
  19061 }) {
  19062   const listContentSchema = { ...phrasingContentSchema,
  19063     ul: {},
  19064     ol: {
  19065       attributes: ['type', 'start', 'reversed']
  19066     }
  19067   }; // Recursion is needed.
  19068   // Possible: ul > li > ul.
  19069   // Impossible: ul > ul.
  19070 
  19071   ['ul', 'ol'].forEach(tag => {
  19072     listContentSchema[tag].children = {
  19073       li: {
  19074         children: listContentSchema
  19075       }
  19076     };
  19077   });
  19078   return listContentSchema;
  19079 }
  19080 
  19081 const list_transforms_transforms = {
  19082   from: [{
  19083     type: 'block',
  19084     isMultiBlock: true,
  19085     blocks: ['core/paragraph', 'core/heading'],
  19086     transform: blockAttributes => {
  19087       return Object(external_wp_blocks_["createBlock"])('core/list', {
  19088         values: Object(external_wp_richText_["toHTMLString"])({
  19089           value: Object(external_wp_richText_["join"])(blockAttributes.map(({
  19090             content
  19091           }) => {
  19092             const value = Object(external_wp_richText_["create"])({
  19093               html: content
  19094             });
  19095 
  19096             if (blockAttributes.length > 1) {
  19097               return value;
  19098             } // When converting only one block, transform
  19099             // every line to a list item.
  19100 
  19101 
  19102             return Object(external_wp_richText_["replace"])(value, /\n/g, external_wp_richText_["__UNSTABLE_LINE_SEPARATOR"]);
  19103           }), external_wp_richText_["__UNSTABLE_LINE_SEPARATOR"]),
  19104           multilineTag: 'li'
  19105         }),
  19106         anchor: blockAttributes.anchor
  19107       });
  19108     }
  19109   }, {
  19110     type: 'block',
  19111     blocks: ['core/quote', 'core/pullquote'],
  19112     transform: ({
  19113       value,
  19114       anchor
  19115     }) => {
  19116       return Object(external_wp_blocks_["createBlock"])('core/list', {
  19117         values: Object(external_wp_richText_["toHTMLString"])({
  19118           value: Object(external_wp_richText_["create"])({
  19119             html: value,
  19120             multilineTag: 'p'
  19121           }),
  19122           multilineTag: 'li'
  19123         }),
  19124         anchor
  19125       });
  19126     }
  19127   }, {
  19128     type: 'raw',
  19129     selector: 'ol,ul',
  19130     schema: args => ({
  19131       ol: getListContentSchema(args).ol,
  19132       ul: getListContentSchema(args).ul
  19133     }),
  19134 
  19135     transform(node) {
  19136       const attributes = {
  19137         ordered: node.nodeName === 'OL',
  19138         anchor: node.id === '' ? undefined : node.id
  19139       };
  19140 
  19141       if (attributes.ordered) {
  19142         const type = node.getAttribute('type');
  19143 
  19144         if (type) {
  19145           attributes.type = type;
  19146         }
  19147 
  19148         if (node.getAttribute('reversed') !== null) {
  19149           attributes.reversed = true;
  19150         }
  19151 
  19152         const start = parseInt(node.getAttribute('start'), 10);
  19153 
  19154         if (!isNaN(start) && ( // start=1 only makes sense if the list is reversed.
  19155         start !== 1 || attributes.reversed)) {
  19156           attributes.start = start;
  19157         }
  19158       }
  19159 
  19160       return Object(external_wp_blocks_["createBlock"])('core/list', { ...Object(external_wp_blocks_["getBlockAttributes"])('core/list', node.outerHTML),
  19161         ...attributes
  19162       });
  19163     }
  19164 
  19165   }, ...['*', '-'].map(prefix => ({
  19166     type: 'prefix',
  19167     prefix,
  19168 
  19169     transform(content) {
  19170       return Object(external_wp_blocks_["createBlock"])('core/list', {
  19171         values: `<li>${content}</li>`
  19172       });
  19173     }
  19174 
  19175   })), ...['1.', '1)'].map(prefix => ({
  19176     type: 'prefix',
  19177     prefix,
  19178 
  19179     transform(content) {
  19180       return Object(external_wp_blocks_["createBlock"])('core/list', {
  19181         ordered: true,
  19182         values: `<li>${content}</li>`
  19183       });
  19184     }
  19185 
  19186   }))],
  19187   to: [{
  19188     type: 'block',
  19189     blocks: ['core/paragraph'],
  19190     transform: ({
  19191       values
  19192     }) => Object(external_wp_richText_["split"])(Object(external_wp_richText_["create"])({
  19193       html: values,
  19194       multilineTag: 'li',
  19195       multilineWrapperTags: ['ul', 'ol']
  19196     }), external_wp_richText_["__UNSTABLE_LINE_SEPARATOR"]).map(piece => Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  19197       content: Object(external_wp_richText_["toHTMLString"])({
  19198         value: piece
  19199       })
  19200     }))
  19201   }, {
  19202     type: 'block',
  19203     blocks: ['core/heading'],
  19204     transform: ({
  19205       values
  19206     }) => Object(external_wp_richText_["split"])(Object(external_wp_richText_["create"])({
  19207       html: values,
  19208       multilineTag: 'li',
  19209       multilineWrapperTags: ['ul', 'ol']
  19210     }), external_wp_richText_["__UNSTABLE_LINE_SEPARATOR"]).map(piece => Object(external_wp_blocks_["createBlock"])('core/heading', {
  19211       content: Object(external_wp_richText_["toHTMLString"])({
  19212         value: piece
  19213       })
  19214     }))
  19215   }, {
  19216     type: 'block',
  19217     blocks: ['core/quote'],
  19218     transform: ({
  19219       values,
  19220       anchor
  19221     }) => {
  19222       return Object(external_wp_blocks_["createBlock"])('core/quote', {
  19223         value: Object(external_wp_richText_["toHTMLString"])({
  19224           value: Object(external_wp_richText_["create"])({
  19225             html: values,
  19226             multilineTag: 'li',
  19227             multilineWrapperTags: ['ul', 'ol']
  19228           }),
  19229           multilineTag: 'p'
  19230         }),
  19231         anchor
  19232       });
  19233     }
  19234   }, {
  19235     type: 'block',
  19236     blocks: ['core/pullquote'],
  19237     transform: ({
  19238       values,
  19239       anchor
  19240     }) => {
  19241       return Object(external_wp_blocks_["createBlock"])('core/pullquote', {
  19242         value: Object(external_wp_richText_["toHTMLString"])({
  19243           value: Object(external_wp_richText_["create"])({
  19244             html: values,
  19245             multilineTag: 'li',
  19246             multilineWrapperTags: ['ul', 'ol']
  19247           }),
  19248           multilineTag: 'p'
  19249         }),
  19250         anchor
  19251       });
  19252     }
  19253   }]
  19254 };
  19255 /* harmony default export */ var list_transforms = (list_transforms_transforms);
  19256 
  19257 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/list/index.js
  19258 /**
  19259  * WordPress dependencies
  19260  */
  19261 
  19262 /**
  19263  * Internal dependencies
  19264  */
  19265 
  19266 
  19267 const list_metadata = {
  19268   apiVersion: 2,
  19269   name: "core/list",
  19270   title: "List",
  19271   category: "text",
  19272   description: "Create a bulleted or numbered list.",
  19273   keywords: ["bullet list", "ordered list", "numbered list"],
  19274   textdomain: "default",
  19275   attributes: {
  19276     ordered: {
  19277       type: "boolean",
  19278       "default": false,
  19279       __experimentalRole: "content"
  19280     },
  19281     values: {
  19282       type: "string",
  19283       source: "html",
  19284       selector: "ol,ul",
  19285       multiline: "li",
  19286       __unstableMultilineWrapperTags: ["ol", "ul"],
  19287       "default": "",
  19288       __experimentalRole: "content"
  19289     },
  19290     type: {
  19291       type: "string"
  19292     },
  19293     start: {
  19294       type: "number"
  19295     },
  19296     reversed: {
  19297       type: "boolean"
  19298     },
  19299     placeholder: {
  19300       type: "string"
  19301     }
  19302   },
  19303   supports: {
  19304     anchor: true,
  19305     className: false,
  19306     typography: {
  19307       fontSize: true,
  19308       __experimentalFontFamily: true
  19309     },
  19310     color: {
  19311       gradients: true
  19312     },
  19313     __unstablePasteTextInline: true,
  19314     __experimentalSelector: "ol,ul"
  19315   },
  19316   editorStyle: "wp-block-list-editor",
  19317   style: "wp-block-list"
  19318 };
  19319 
  19320 
  19321 const {
  19322   name: list_name
  19323 } = list_metadata;
  19324 
  19325 const list_settings = {
  19326   icon: library_list,
  19327   example: {
  19328     attributes: {
  19329       values: '<li>Alice.</li><li>The White Rabbit.</li><li>The Cheshire Cat.</li><li>The Mad Hatter.</li><li>The Queen of Hearts.</li>'
  19330     }
  19331   },
  19332   transforms: list_transforms,
  19333 
  19334   merge(attributes, attributesToMerge) {
  19335     const {
  19336       values
  19337     } = attributesToMerge;
  19338 
  19339     if (!values || values === '<li></li>') {
  19340       return attributes;
  19341     }
  19342 
  19343     return { ...attributes,
  19344       values: attributes.values + values
  19345     };
  19346   },
  19347 
  19348   edit: ListEdit,
  19349   save: list_save_save
  19350 };
  19351 
  19352 // EXTERNAL MODULE: external ["wp","dom"]
  19353 var external_wp_dom_ = __webpack_require__("1CF3");
  19354 
  19355 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/missing/edit.js
  19356 
  19357 
  19358 /**
  19359  * WordPress dependencies
  19360  */
  19361 
  19362 
  19363 
  19364 
  19365 
  19366 
  19367 
  19368 
  19369 function MissingBlockWarning({
  19370   attributes,
  19371   convertToHTML
  19372 }) {
  19373   const {
  19374     originalName,
  19375     originalUndelimitedContent
  19376   } = attributes;
  19377   const hasContent = !!originalUndelimitedContent;
  19378   const hasHTMLBlock = Object(external_wp_blocks_["getBlockType"])('core/html');
  19379   const actions = [];
  19380   let messageHTML;
  19381 
  19382   if (hasContent && hasHTMLBlock) {
  19383     messageHTML = Object(external_wp_i18n_["sprintf"])(
  19384     /* translators: %s: block name */
  19385     Object(external_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);
  19386     actions.push(Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  19387       key: "convert",
  19388       onClick: convertToHTML,
  19389       isPrimary: true
  19390     }, Object(external_wp_i18n_["__"])('Keep as HTML')));
  19391   } else {
  19392     messageHTML = Object(external_wp_i18n_["sprintf"])(
  19393     /* translators: %s: block name */
  19394     Object(external_wp_i18n_["__"])('Your site doesn’t include support for the "%s" block. You can leave this block intact or remove it entirely.'), originalName);
  19395   }
  19396 
  19397   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])({
  19398     className: 'has-warning'
  19399   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], {
  19400     actions: actions
  19401   }, messageHTML), Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, Object(external_wp_dom_["safeHTML"])(originalUndelimitedContent)));
  19402 }
  19403 
  19404 const MissingEdit = Object(external_wp_data_["withDispatch"])((dispatch, {
  19405   clientId,
  19406   attributes
  19407 }) => {
  19408   const {
  19409     replaceBlock
  19410   } = dispatch(external_wp_blockEditor_["store"]);
  19411   return {
  19412     convertToHTML() {
  19413       replaceBlock(clientId, Object(external_wp_blocks_["createBlock"])('core/html', {
  19414         content: attributes.originalUndelimitedContent
  19415       }));
  19416     }
  19417 
  19418   };
  19419 })(MissingBlockWarning);
  19420 /* harmony default export */ var missing_edit = (MissingEdit);
  19421 
  19422 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/missing/save.js
  19423 
  19424 
  19425 /**
  19426  * WordPress dependencies
  19427  */
  19428 
  19429 function missing_save_save({
  19430   attributes
  19431 }) {
  19432   // Preserve the missing block's content.
  19433   return Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, attributes.originalContent);
  19434 }
  19435 
  19436 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/missing/index.js
  19437 /**
  19438  * WordPress dependencies
  19439  */
  19440 
  19441 /**
  19442  * Internal dependencies
  19443  */
  19444 
  19445 
  19446 const missing_metadata = {
  19447   apiVersion: 2,
  19448   name: "core/missing",
  19449   title: "Unsupported",
  19450   category: "text",
  19451   description: "Your site doesn\u2019t include support for this block.",
  19452   textdomain: "default",
  19453   attributes: {
  19454     originalName: {
  19455       type: "string"
  19456     },
  19457     originalUndelimitedContent: {
  19458       type: "string"
  19459     },
  19460     originalContent: {
  19461       type: "string",
  19462       source: "html"
  19463     }
  19464   },
  19465   supports: {
  19466     className: false,
  19467     customClassName: false,
  19468     inserter: false,
  19469     html: false,
  19470     reusable: false
  19471   }
  19472 };
  19473 
  19474 const {
  19475   name: missing_name
  19476 } = missing_metadata;
  19477 
  19478 const missing_settings = {
  19479   name: missing_name,
  19480 
  19481   __experimentalLabel(attributes, {
  19482     context
  19483   }) {
  19484     if (context === 'accessibility') {
  19485       const {
  19486         originalName
  19487       } = attributes;
  19488       const originalBlockType = originalName ? Object(external_wp_blocks_["getBlockType"])(originalName) : undefined;
  19489 
  19490       if (originalBlockType) {
  19491         return originalBlockType.settings.title || originalName;
  19492       }
  19493 
  19494       return '';
  19495     }
  19496   },
  19497 
  19498   edit: missing_edit,
  19499   save: missing_save_save
  19500 };
  19501 
  19502 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/more.js
  19503 
  19504 
  19505 /**
  19506  * WordPress dependencies
  19507  */
  19508 
  19509 const more = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  19510   viewBox: "0 0 24 24",
  19511   xmlns: "http://www.w3.org/2000/svg"
  19512 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  19513   d: "M4 9v1.5h16V9H4zm12 5.5h4V13h-4v1.5zm-6 0h4V13h-4v1.5zm-6 0h4V13H4v1.5z"
  19514 }));
  19515 /* harmony default export */ var library_more = (more);
  19516 
  19517 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/edit.js
  19518 
  19519 
  19520 /**
  19521  * WordPress dependencies
  19522  */
  19523 
  19524 
  19525 
  19526 
  19527 
  19528 
  19529 const DEFAULT_TEXT = Object(external_wp_i18n_["__"])('Read more');
  19530 
  19531 function MoreEdit({
  19532   attributes: {
  19533     customText,
  19534     noTeaser
  19535   },
  19536   insertBlocksAfter,
  19537   setAttributes
  19538 }) {
  19539   const onChangeInput = event => {
  19540     setAttributes({
  19541       customText: event.target.value !== '' ? event.target.value : undefined
  19542     });
  19543   };
  19544 
  19545   const onKeyDown = ({
  19546     keyCode
  19547   }) => {
  19548     if (keyCode === external_wp_keycodes_["ENTER"]) {
  19549       insertBlocksAfter([Object(external_wp_blocks_["createBlock"])(Object(external_wp_blocks_["getDefaultBlockName"])())]);
  19550     }
  19551   };
  19552 
  19553   const getHideExcerptHelp = checked => checked ? Object(external_wp_i18n_["__"])('The excerpt is hidden.') : Object(external_wp_i18n_["__"])('The excerpt is visible.');
  19554 
  19555   const toggleHideExcerpt = () => setAttributes({
  19556     noTeaser: !noTeaser
  19557   });
  19558 
  19559   const style = {
  19560     width: `${(customText ? customText : DEFAULT_TEXT).length + 1.2}em`
  19561   };
  19562   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  19563     label: Object(external_wp_i18n_["__"])('Hide the excerpt on the full content page'),
  19564     checked: !!noTeaser,
  19565     onChange: toggleHideExcerpt,
  19566     help: getHideExcerptHelp
  19567   }))), Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])("div", {
  19568     className: "wp-block-more"
  19569   }, Object(external_wp_element_["createElement"])("input", {
  19570     "aria-label": Object(external_wp_i18n_["__"])('Read more link text'),
  19571     type: "text",
  19572     value: customText,
  19573     placeholder: DEFAULT_TEXT,
  19574     onChange: onChangeInput,
  19575     onKeyDown: onKeyDown,
  19576     style: style
  19577   }))));
  19578 }
  19579 
  19580 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/save.js
  19581 
  19582 
  19583 /**
  19584  * External dependencies
  19585  */
  19586 
  19587 /**
  19588  * WordPress dependencies
  19589  */
  19590 
  19591 
  19592 function more_save_save({
  19593   attributes: {
  19594     customText,
  19595     noTeaser
  19596   }
  19597 }) {
  19598   const moreTag = customText ? `<!--more ${customText}-->` : '<!--more-->';
  19599   const noTeaserTag = noTeaser ? '<!--noteaser-->' : '';
  19600   return Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, Object(external_lodash_["compact"])([moreTag, noTeaserTag]).join('\n'));
  19601 }
  19602 
  19603 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/transforms.js
  19604 /**
  19605  * WordPress dependencies
  19606  */
  19607 
  19608 const more_transforms_transforms = {
  19609   from: [{
  19610     type: 'raw',
  19611     schema: {
  19612       'wp-block': {
  19613         attributes: ['data-block']
  19614       }
  19615     },
  19616     isMatch: node => node.dataset && node.dataset.block === 'core/more',
  19617 
  19618     transform(node) {
  19619       const {
  19620         customText,
  19621         noTeaser
  19622       } = node.dataset;
  19623       const attrs = {}; // Don't copy unless defined and not an empty string
  19624 
  19625       if (customText) {
  19626         attrs.customText = customText;
  19627       } // Special handling for boolean
  19628 
  19629 
  19630       if (noTeaser === '') {
  19631         attrs.noTeaser = true;
  19632       }
  19633 
  19634       return Object(external_wp_blocks_["createBlock"])('core/more', attrs);
  19635     }
  19636 
  19637   }]
  19638 };
  19639 /* harmony default export */ var more_transforms = (more_transforms_transforms);
  19640 
  19641 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/more/index.js
  19642 /**
  19643  * WordPress dependencies
  19644  */
  19645 
  19646 /**
  19647  * Internal dependencies
  19648  */
  19649 
  19650 
  19651 const more_metadata = {
  19652   apiVersion: 2,
  19653   name: "core/more",
  19654   title: "More",
  19655   category: "design",
  19656   description: "Content before this block will be shown in the excerpt on your archives page.",
  19657   keywords: ["read more"],
  19658   textdomain: "default",
  19659   attributes: {
  19660     customText: {
  19661       type: "string"
  19662     },
  19663     noTeaser: {
  19664       type: "boolean",
  19665       "default": false
  19666     }
  19667   },
  19668   supports: {
  19669     customClassName: false,
  19670     className: false,
  19671     html: false,
  19672     multiple: false
  19673   },
  19674   editorStyle: "wp-block-more-editor"
  19675 };
  19676 
  19677 
  19678 const {
  19679   name: more_name
  19680 } = more_metadata;
  19681 
  19682 const more_settings = {
  19683   icon: library_more,
  19684   example: {},
  19685 
  19686   __experimentalLabel(attributes, {
  19687     context
  19688   }) {
  19689     if (context === 'accessibility') {
  19690       return attributes.customText;
  19691     }
  19692   },
  19693 
  19694   transforms: more_transforms,
  19695   edit: MoreEdit,
  19696   save: more_save_save
  19697 };
  19698 
  19699 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/page-break.js
  19700 
  19701 
  19702 /**
  19703  * WordPress dependencies
  19704  */
  19705 
  19706 const pageBreak = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  19707   xmlns: "http://www.w3.org/2000/svg",
  19708   viewBox: "0 0 24 24"
  19709 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  19710   d: "M7.8 6c0-.7.6-1.2 1.2-1.2h6c.7 0 1.2.6 1.2 1.2v3h1.5V6c0-1.5-1.2-2.8-2.8-2.8H9C7.5 3.2 6.2 4.5 6.2 6v3h1.5V6zm8.4 11c0 .7-.6 1.2-1.2 1.2H9c-.7 0-1.2-.6-1.2-1.2v-3H6.2v3c0 1.5 1.2 2.8 2.8 2.8h6c1.5 0 2.8-1.2 2.8-2.8v-3h-1.5v3zM4 11v1h16v-1H4z"
  19711 }));
  19712 /* harmony default export */ var page_break = (pageBreak);
  19713 
  19714 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/edit.js
  19715 
  19716 
  19717 /**
  19718  * WordPress dependencies
  19719  */
  19720 
  19721 
  19722 function NextPageEdit() {
  19723   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])("div", {
  19724     className: "wp-block-nextpage"
  19725   }, Object(external_wp_element_["createElement"])("span", null, Object(external_wp_i18n_["__"])('Page break'))));
  19726 }
  19727 
  19728 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/save.js
  19729 
  19730 
  19731 /**
  19732  * WordPress dependencies
  19733  */
  19734 
  19735 function nextpage_save_save() {
  19736   return Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, '<!--nextpage-->');
  19737 }
  19738 
  19739 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/transforms.js
  19740 /**
  19741  * WordPress dependencies
  19742  */
  19743 
  19744 const nextpage_transforms_transforms = {
  19745   from: [{
  19746     type: 'raw',
  19747     schema: {
  19748       'wp-block': {
  19749         attributes: ['data-block']
  19750       }
  19751     },
  19752     isMatch: node => node.dataset && node.dataset.block === 'core/nextpage',
  19753 
  19754     transform() {
  19755       return Object(external_wp_blocks_["createBlock"])('core/nextpage', {});
  19756     }
  19757 
  19758   }]
  19759 };
  19760 /* harmony default export */ var nextpage_transforms = (nextpage_transforms_transforms);
  19761 
  19762 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/nextpage/index.js
  19763 /**
  19764  * WordPress dependencies
  19765  */
  19766 
  19767 /**
  19768  * Internal dependencies
  19769  */
  19770 
  19771 
  19772 const nextpage_metadata = {
  19773   apiVersion: 2,
  19774   name: "core/nextpage",
  19775   title: "Page Break",
  19776   category: "design",
  19777   description: "Separate your content into a multi-page experience.",
  19778   keywords: ["next page", "pagination"],
  19779   parent: ["core/post-content"],
  19780   textdomain: "default",
  19781   supports: {
  19782     customClassName: false,
  19783     className: false,
  19784     html: false
  19785   },
  19786   editorStyle: "wp-block-nextpage-editor"
  19787 };
  19788 
  19789 
  19790 const {
  19791   name: nextpage_name
  19792 } = nextpage_metadata;
  19793 
  19794 const nextpage_settings = {
  19795   icon: page_break,
  19796   example: {},
  19797   transforms: nextpage_transforms,
  19798   edit: NextPageEdit,
  19799   save: nextpage_save_save
  19800 };
  19801 
  19802 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pages.js
  19803 
  19804 
  19805 /**
  19806  * WordPress dependencies
  19807  */
  19808 
  19809 const pages_pages = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  19810   xmlns: "http://www.w3.org/2000/svg",
  19811   viewBox: "0 0 24 24"
  19812 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  19813   d: "M7 13.8h6v-1.5H7v1.5zM18 16V4c0-1.1-.9-2-2-2H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2zM5.5 16V4c0-.3.2-.5.5-.5h10c.3 0 .5.2.5.5v12c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5zM7 10.5h8V9H7v1.5zm0-3.3h8V5.8H7v1.4zM20.2 6v13c0 .7-.6 1.2-1.2 1.2H8v1.5h11c1.5 0 2.7-1.2 2.7-2.8V6h-1.5z"
  19814 }));
  19815 /* harmony default export */ var library_pages = (pages_pages);
  19816 
  19817 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/page-list/convert-to-links-modal.js
  19818 
  19819 
  19820 /**
  19821  * WordPress dependencies
  19822  */
  19823 
  19824 
  19825 
  19826 
  19827 
  19828 
  19829 const PAGE_FIELDS = ['id', 'title', 'link', 'type', 'parent'];
  19830 const MAX_PAGE_COUNT = 100;
  19831 const convertSelectedBlockToNavigationLinks = ({
  19832   pages,
  19833   clientId,
  19834   replaceBlock,
  19835   createBlock
  19836 }) => () => {
  19837   if (!pages) {
  19838     return;
  19839   }
  19840 
  19841   const linkMap = {};
  19842   const navigationLinks = [];
  19843   pages.forEach(({
  19844     id,
  19845     title,
  19846     link: url,
  19847     type,
  19848     parent
  19849   }) => {
  19850     var _linkMap$id$innerBloc, _linkMap$id;
  19851 
  19852     // See if a placeholder exists. This is created if children appear before parents in list
  19853     const innerBlocks = (_linkMap$id$innerBloc = (_linkMap$id = linkMap[id]) === null || _linkMap$id === void 0 ? void 0 : _linkMap$id.innerBlocks) !== null && _linkMap$id$innerBloc !== void 0 ? _linkMap$id$innerBloc : [];
  19854     linkMap[id] = createBlock('core/navigation-link', {
  19855       id,
  19856       label: title.rendered,
  19857       url,
  19858       type,
  19859       kind: 'post-type'
  19860     }, innerBlocks);
  19861 
  19862     if (!parent) {
  19863       navigationLinks.push(linkMap[id]);
  19864     } else {
  19865       if (!linkMap[parent]) {
  19866         // Use a placeholder if the child appears before parent in list
  19867         linkMap[parent] = {
  19868           innerBlocks: []
  19869         };
  19870       }
  19871 
  19872       const parentLinkInnerBlocks = linkMap[parent].innerBlocks;
  19873       parentLinkInnerBlocks.push(linkMap[id]);
  19874     }
  19875   });
  19876   replaceBlock(clientId, navigationLinks);
  19877 };
  19878 function ConvertToLinksModal({
  19879   onClose,
  19880   clientId
  19881 }) {
  19882   const {
  19883     pages,
  19884     pagesFinished
  19885   } = Object(external_wp_data_["useSelect"])(select => {
  19886     const {
  19887       getEntityRecords,
  19888       hasFinishedResolution
  19889     } = select(external_wp_coreData_["store"]);
  19890     const query = ['postType', 'page', {
  19891       per_page: MAX_PAGE_COUNT,
  19892       _fields: PAGE_FIELDS,
  19893       // TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby
  19894       // values is resolved, update 'orderby' to [ 'menu_order', 'post_title' ] to provide a consistent
  19895       // sort.
  19896       orderby: 'menu_order',
  19897       order: 'asc'
  19898     }];
  19899     return {
  19900       pages: getEntityRecords(...query),
  19901       pagesFinished: hasFinishedResolution('getEntityRecords', query)
  19902     };
  19903   }, [clientId]);
  19904   const {
  19905     replaceBlock
  19906   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  19907   return Object(external_wp_element_["createElement"])(external_wp_components_["Modal"], {
  19908     closeLabel: Object(external_wp_i18n_["__"])('Close'),
  19909     onRequestClose: onClose,
  19910     title: Object(external_wp_i18n_["__"])('Convert to links'),
  19911     className: 'wp-block-page-list-modal',
  19912     aria: {
  19913       describedby: 'wp-block-page-list-modal__description'
  19914     }
  19915   }, Object(external_wp_element_["createElement"])("p", {
  19916     id: 'wp-block-page-list-modal__description'
  19917   }, Object(external_wp_i18n_["__"])('To edit this navigation menu, convert it to single page links. This allows you to add, re-order, remove items, or edit their labels.')), Object(external_wp_element_["createElement"])("p", null, Object(external_wp_i18n_["__"])("Note: if you add new pages to your site, you'll need to add them to your navigation menu.")), Object(external_wp_element_["createElement"])("div", {
  19918     className: "wp-block-page-list-modal-buttons"
  19919   }, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  19920     isTertiary: true,
  19921     onClick: onClose
  19922   }, Object(external_wp_i18n_["__"])('Cancel')), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  19923     isPrimary: true,
  19924     disabled: !pagesFinished,
  19925     onClick: convertSelectedBlockToNavigationLinks({
  19926       pages,
  19927       replaceBlock,
  19928       clientId,
  19929       createBlock: external_wp_blocks_["createBlock"]
  19930     })
  19931   }, Object(external_wp_i18n_["__"])('Convert'))));
  19932 }
  19933 
  19934 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/page-list/edit.js
  19935 
  19936 
  19937 /**
  19938  * External dependencies
  19939  */
  19940 
  19941 /**
  19942  * WordPress dependencies
  19943  */
  19944 
  19945 
  19946 
  19947 
  19948 
  19949 
  19950 
  19951 
  19952 
  19953 /**
  19954  * Internal dependencies
  19955  */
  19956 
  19957  // We only show the edit option when page count is <= MAX_PAGE_COUNT
  19958 // Performance of Navigation Links is not good past this value.
  19959 
  19960 const edit_MAX_PAGE_COUNT = 100;
  19961 function PageListEdit({
  19962   context,
  19963   clientId
  19964 }) {
  19965   const {
  19966     textColor,
  19967     backgroundColor,
  19968     showSubmenuIcon,
  19969     style
  19970   } = context || {};
  19971   const [allowConvertToLinks, setAllowConvertToLinks] = Object(external_wp_element_["useState"])(false);
  19972   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  19973     className: classnames_default()({
  19974       'has-text-color': !!textColor,
  19975       [`has-${textColor}-color`]: !!textColor,
  19976       'has-background': !!backgroundColor,
  19977       [`has-${backgroundColor}-background-color`]: !!backgroundColor,
  19978       'show-submenu-icons': !!showSubmenuIcon
  19979     }),
  19980     style: { ...(style === null || style === void 0 ? void 0 : style.color)
  19981     }
  19982   });
  19983   const isParentNavigation = Object(external_wp_data_["useSelect"])(select => {
  19984     const {
  19985       getBlockParentsByBlockName
  19986     } = select(external_wp_blockEditor_["store"]);
  19987     return getBlockParentsByBlockName(clientId, 'core/navigation').length > 0;
  19988   }, [clientId]);
  19989   Object(external_wp_element_["useEffect"])(() => {
  19990     if (isParentNavigation) {
  19991       external_wp_apiFetch_default()({
  19992         path: Object(external_wp_url_["addQueryArgs"])('/wp/v2/pages', {
  19993           per_page: 1,
  19994           _fields: ['id']
  19995         }),
  19996         parse: false
  19997       }).then(res => {
  19998         setAllowConvertToLinks(res.headers.get('X-WP-Total') <= edit_MAX_PAGE_COUNT);
  19999       });
  20000     } else {
  20001       setAllowConvertToLinks(false);
  20002     }
  20003   }, [isParentNavigation]);
  20004   const [isOpen, setOpen] = Object(external_wp_element_["useState"])(false);
  20005 
  20006   const openModal = () => setOpen(true);
  20007 
  20008   const closeModal = () => setOpen(false);
  20009 
  20010   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, allowConvertToLinks && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  20011     group: "other"
  20012   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  20013     title: Object(external_wp_i18n_["__"])('Edit'),
  20014     onClick: openModal
  20015   }, Object(external_wp_i18n_["__"])('Edit'))), allowConvertToLinks && isOpen && Object(external_wp_element_["createElement"])(ConvertToLinksModal, {
  20016     onClose: closeModal,
  20017     clientId: clientId
  20018   }), Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_serverSideRender_default.a, {
  20019     block: "core/page-list"
  20020   })));
  20021 }
  20022 
  20023 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/page-list/index.js
  20024 /**
  20025  * WordPress dependencies
  20026  */
  20027 
  20028 /**
  20029  * Internal dependencies
  20030  */
  20031 
  20032 const page_list_metadata = {
  20033   apiVersion: 2,
  20034   name: "core/page-list",
  20035   title: "Page List",
  20036   category: "widgets",
  20037   description: "Display a list of all pages.",
  20038   keywords: ["menu", "navigation"],
  20039   textdomain: "default",
  20040   usesContext: ["textColor", "customTextColor", "backgroundColor", "customBackgroundColor", "fontSize", "customFontSize", "showSubmenuIcon", "style"],
  20041   supports: {
  20042     reusable: false,
  20043     html: false
  20044   },
  20045   editorStyle: "wp-block-page-list-editor",
  20046   style: "wp-block-page-list"
  20047 };
  20048 
  20049 const {
  20050   name: page_list_name
  20051 } = page_list_metadata;
  20052 
  20053 const page_list_settings = {
  20054   icon: library_pages,
  20055   example: {},
  20056   edit: PageListEdit
  20057 };
  20058 
  20059 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/preformatted.js
  20060 
  20061 
  20062 /**
  20063  * WordPress dependencies
  20064  */
  20065 
  20066 const preformatted = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  20067   viewBox: "0 0 24 24",
  20068   xmlns: "http://www.w3.org/2000/svg"
  20069 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  20070   d: "M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12zM7 16.5h6V15H7v1.5zm4-4h6V11h-6v1.5zM9 11H7v1.5h2V11zm6 5.5h2V15h-2v1.5z"
  20071 }));
  20072 /* harmony default export */ var library_preformatted = (preformatted);
  20073 
  20074 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/edit.js
  20075 
  20076 
  20077 
  20078 /**
  20079  * WordPress dependencies
  20080  */
  20081 
  20082 
  20083 function PreformattedEdit({
  20084   attributes,
  20085   mergeBlocks,
  20086   setAttributes,
  20087   onRemove
  20088 }) {
  20089   const {
  20090     content
  20091   } = attributes;
  20092   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  20093   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], Object(esm_extends["a" /* default */])({
  20094     tagName: "pre",
  20095     identifier: "content",
  20096     preserveWhiteSpace: true,
  20097     value: content,
  20098     onChange: nextContent => {
  20099       setAttributes({
  20100         content: nextContent
  20101       });
  20102     },
  20103     onRemove: onRemove,
  20104     "aria-label": Object(external_wp_i18n_["__"])('Preformatted text'),
  20105     placeholder: Object(external_wp_i18n_["__"])('Write preformatted text…'),
  20106     onMerge: mergeBlocks
  20107   }, blockProps, {
  20108     __unstablePastePlainText: true
  20109   }));
  20110 }
  20111 
  20112 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/save.js
  20113 
  20114 
  20115 /**
  20116  * WordPress dependencies
  20117  */
  20118 
  20119 function preformatted_save_save({
  20120   attributes
  20121 }) {
  20122   const {
  20123     content
  20124   } = attributes;
  20125   return Object(external_wp_element_["createElement"])("pre", external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20126     value: content
  20127   }));
  20128 }
  20129 
  20130 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/transforms.js
  20131 /**
  20132  * WordPress dependencies
  20133  */
  20134 
  20135 const preformatted_transforms_transforms = {
  20136   from: [{
  20137     type: 'block',
  20138     blocks: ['core/code', 'core/paragraph'],
  20139     transform: ({
  20140       content,
  20141       anchor
  20142     }) => Object(external_wp_blocks_["createBlock"])('core/preformatted', {
  20143       content,
  20144       anchor
  20145     })
  20146   }, {
  20147     type: 'raw',
  20148     isMatch: node => node.nodeName === 'PRE' && !(node.children.length === 1 && node.firstChild.nodeName === 'CODE'),
  20149     schema: ({
  20150       phrasingContentSchema
  20151     }) => ({
  20152       pre: {
  20153         children: phrasingContentSchema
  20154       }
  20155     })
  20156   }],
  20157   to: [{
  20158     type: 'block',
  20159     blocks: ['core/paragraph'],
  20160     transform: attributes => Object(external_wp_blocks_["createBlock"])('core/paragraph', attributes)
  20161   }, {
  20162     type: 'block',
  20163     blocks: ['core/code'],
  20164     transform: attributes => Object(external_wp_blocks_["createBlock"])('core/code', attributes)
  20165   }]
  20166 };
  20167 /* harmony default export */ var preformatted_transforms = (preformatted_transforms_transforms);
  20168 
  20169 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/preformatted/index.js
  20170 /**
  20171  * WordPress dependencies
  20172  */
  20173 
  20174 
  20175 /**
  20176  * Internal dependencies
  20177  */
  20178 
  20179 
  20180 const preformatted_metadata = {
  20181   apiVersion: 2,
  20182   name: "core/preformatted",
  20183   title: "Preformatted",
  20184   category: "text",
  20185   description: "Add text that respects your spacing and tabs, and also allows styling.",
  20186   textdomain: "default",
  20187   attributes: {
  20188     content: {
  20189       type: "string",
  20190       source: "html",
  20191       selector: "pre",
  20192       "default": "",
  20193       __unstablePreserveWhiteSpace: true,
  20194       __experimentalRole: "content"
  20195     }
  20196   },
  20197   supports: {
  20198     anchor: true,
  20199     color: {
  20200       gradients: true
  20201     },
  20202     typography: {
  20203       fontSize: true
  20204     }
  20205   },
  20206   style: "wp-block-preformatted"
  20207 };
  20208 
  20209 
  20210 const {
  20211   name: preformatted_name
  20212 } = preformatted_metadata;
  20213 
  20214 const preformatted_settings = {
  20215   icon: library_preformatted,
  20216   example: {
  20217     attributes: {
  20218       /* eslint-disable @wordpress/i18n-no-collapsible-whitespace */
  20219       // translators: Sample content for the Preformatted block. Can be replaced with a more locale-adequate work.
  20220       content: Object(external_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;')
  20221       /* eslint-enable @wordpress/i18n-no-collapsible-whitespace */
  20222 
  20223     }
  20224   },
  20225   transforms: preformatted_transforms,
  20226   edit: PreformattedEdit,
  20227   save: preformatted_save_save,
  20228 
  20229   merge(attributes, attributesToMerge) {
  20230     return {
  20231       content: attributes.content + attributesToMerge.content
  20232     };
  20233   }
  20234 
  20235 };
  20236 
  20237 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pullquote.js
  20238 
  20239 
  20240 /**
  20241  * WordPress dependencies
  20242  */
  20243 
  20244 const pullquote = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  20245   viewBox: "0 0 24 24",
  20246   xmlns: "http://www.w3.org/2000/svg"
  20247 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  20248   d: "M18 8H6c-1.1 0-2 .9-2 2v4c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-4c0-1.1-.9-2-2-2zm.5 6c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5v-4c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v4zM4 4v1.5h16V4H4zm0 16h16v-1.5H4V20z"
  20249 }));
  20250 /* harmony default export */ var library_pullquote = (pullquote);
  20251 
  20252 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/shared.js
  20253 const SOLID_COLOR_CLASS = `is-style-solid-color`;
  20254 
  20255 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/deprecated.js
  20256 
  20257 
  20258 /**
  20259  * External dependencies
  20260  */
  20261 
  20262 
  20263 /**
  20264  * WordPress dependencies
  20265  */
  20266 
  20267 
  20268 
  20269 /**
  20270  * Internal dependencies
  20271  */
  20272 
  20273 
  20274 const pullquote_deprecated_blockAttributes = {
  20275   value: {
  20276     type: 'string',
  20277     source: 'html',
  20278     selector: 'blockquote',
  20279     multiline: 'p'
  20280   },
  20281   citation: {
  20282     type: 'string',
  20283     source: 'html',
  20284     selector: 'cite',
  20285     default: ''
  20286   },
  20287   mainColor: {
  20288     type: 'string'
  20289   },
  20290   customMainColor: {
  20291     type: 'string'
  20292   },
  20293   textColor: {
  20294     type: 'string'
  20295   },
  20296   customTextColor: {
  20297     type: 'string'
  20298   }
  20299 };
  20300 
  20301 function parseBorderColor(styleString) {
  20302   if (!styleString) {
  20303     return;
  20304   }
  20305 
  20306   const matches = styleString.match(/border-color:([^;]+)[;]?/);
  20307 
  20308   if (matches && matches[1]) {
  20309     return matches[1];
  20310   }
  20311 }
  20312 
  20313 const pullquote_deprecated_deprecated = [{
  20314   attributes: { ...pullquote_deprecated_blockAttributes,
  20315     // figureStyle is an attribute that never existed.
  20316     // We are using it as a way to access the styles previously applied to the figure.
  20317     figureStyle: {
  20318       source: 'attribute',
  20319       selector: 'figure',
  20320       attribute: 'style'
  20321     }
  20322   },
  20323 
  20324   save({
  20325     attributes
  20326   }) {
  20327     const {
  20328       mainColor,
  20329       customMainColor,
  20330       textColor,
  20331       customTextColor,
  20332       value,
  20333       citation,
  20334       className,
  20335       figureStyle
  20336     } = attributes;
  20337     const isSolidColorStyle = Object(external_lodash_["includes"])(className, SOLID_COLOR_CLASS);
  20338     let figureClasses, figureStyles; // Is solid color style
  20339 
  20340     if (isSolidColorStyle) {
  20341       const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', mainColor);
  20342       figureClasses = classnames_default()({
  20343         'has-background': backgroundClass || customMainColor,
  20344         [backgroundClass]: backgroundClass
  20345       });
  20346       figureStyles = {
  20347         backgroundColor: backgroundClass ? undefined : customMainColor
  20348       }; // Is normal style and a custom color is being used ( we can set a style directly with its value)
  20349     } else if (customMainColor) {
  20350       figureStyles = {
  20351         borderColor: customMainColor
  20352       }; // If normal style and a named color are being used, we need to retrieve the color value to set the style,
  20353       // as there is no expectation that themes create classes that set border colors.
  20354     } else if (mainColor) {
  20355       // Previously here we queried the color settings to know the color value
  20356       // of a named color. This made the save function impure and the block was refactored,
  20357       // because meanwhile a change in the editor made it impossible to query color settings in the save function.
  20358       // Here instead of querying the color settings to know the color value, we retrieve the value
  20359       // directly from the style previously serialized.
  20360       const borderColor = parseBorderColor(figureStyle);
  20361       figureStyles = {
  20362         borderColor
  20363       };
  20364     }
  20365 
  20366     const blockquoteTextColorClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  20367     const blockquoteClasses = (textColor || customTextColor) && classnames_default()('has-text-color', {
  20368       [blockquoteTextColorClass]: blockquoteTextColorClass
  20369     });
  20370     const blockquoteStyles = blockquoteTextColorClass ? undefined : {
  20371       color: customTextColor
  20372     };
  20373     return Object(external_wp_element_["createElement"])("figure", {
  20374       className: figureClasses,
  20375       style: figureStyles
  20376     }, Object(external_wp_element_["createElement"])("blockquote", {
  20377       className: blockquoteClasses,
  20378       style: blockquoteStyles
  20379     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20380       value: value,
  20381       multiline: true
  20382     }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20383       tagName: "cite",
  20384       value: citation
  20385     })));
  20386   },
  20387 
  20388   migrate({
  20389     className,
  20390     figureStyle,
  20391     mainColor,
  20392     ...attributes
  20393   }) {
  20394     const isSolidColorStyle = Object(external_lodash_["includes"])(className, SOLID_COLOR_CLASS); // If is the default style, and a main color is set,
  20395     // migrate the main color value into a custom color.
  20396     // The custom color value is retrived by parsing the figure styles.
  20397 
  20398     if (!isSolidColorStyle && mainColor && figureStyle) {
  20399       const borderColor = parseBorderColor(figureStyle);
  20400 
  20401       if (borderColor) {
  20402         return { ...attributes,
  20403           className,
  20404           customMainColor: borderColor
  20405         };
  20406       }
  20407     }
  20408 
  20409     return {
  20410       className,
  20411       mainColor,
  20412       ...attributes
  20413     };
  20414   }
  20415 
  20416 }, {
  20417   attributes: pullquote_deprecated_blockAttributes,
  20418 
  20419   save({
  20420     attributes
  20421   }) {
  20422     const {
  20423       mainColor,
  20424       customMainColor,
  20425       textColor,
  20426       customTextColor,
  20427       value,
  20428       citation,
  20429       className
  20430     } = attributes;
  20431     const isSolidColorStyle = Object(external_lodash_["includes"])(className, SOLID_COLOR_CLASS);
  20432     let figureClass, figureStyles; // Is solid color style
  20433 
  20434     if (isSolidColorStyle) {
  20435       figureClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', mainColor);
  20436 
  20437       if (!figureClass) {
  20438         figureStyles = {
  20439           backgroundColor: customMainColor
  20440         };
  20441       } // Is normal style and a custom color is being used ( we can set a style directly with its value)
  20442 
  20443     } else if (customMainColor) {
  20444       figureStyles = {
  20445         borderColor: customMainColor
  20446       }; // Is normal style and a named color is being used, we need to retrieve the color value to set the style,
  20447       // as there is no expectation that themes create classes that set border colors.
  20448     } else if (mainColor) {
  20449       const colors = Object(external_lodash_["get"])(Object(external_wp_data_["select"])(external_wp_blockEditor_["store"]).getSettings(), ['colors'], []);
  20450       const colorObject = Object(external_wp_blockEditor_["getColorObjectByAttributeValues"])(colors, mainColor);
  20451       figureStyles = {
  20452         borderColor: colorObject.color
  20453       };
  20454     }
  20455 
  20456     const blockquoteTextColorClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  20457     const blockquoteClasses = textColor || customTextColor ? classnames_default()('has-text-color', {
  20458       [blockquoteTextColorClass]: blockquoteTextColorClass
  20459     }) : undefined;
  20460     const blockquoteStyle = blockquoteTextColorClass ? undefined : {
  20461       color: customTextColor
  20462     };
  20463     return Object(external_wp_element_["createElement"])("figure", {
  20464       className: figureClass,
  20465       style: figureStyles
  20466     }, Object(external_wp_element_["createElement"])("blockquote", {
  20467       className: blockquoteClasses,
  20468       style: blockquoteStyle
  20469     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20470       value: value,
  20471       multiline: true
  20472     }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20473       tagName: "cite",
  20474       value: citation
  20475     })));
  20476   }
  20477 
  20478 }, {
  20479   attributes: { ...pullquote_deprecated_blockAttributes
  20480   },
  20481 
  20482   save({
  20483     attributes
  20484   }) {
  20485     const {
  20486       value,
  20487       citation
  20488     } = attributes;
  20489     return Object(external_wp_element_["createElement"])("blockquote", null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20490       value: value,
  20491       multiline: true
  20492     }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20493       tagName: "cite",
  20494       value: citation
  20495     }));
  20496   }
  20497 
  20498 }, {
  20499   attributes: { ...pullquote_deprecated_blockAttributes,
  20500     citation: {
  20501       type: 'string',
  20502       source: 'html',
  20503       selector: 'footer'
  20504     },
  20505     align: {
  20506       type: 'string',
  20507       default: 'none'
  20508     }
  20509   },
  20510 
  20511   save({
  20512     attributes
  20513   }) {
  20514     const {
  20515       value,
  20516       citation,
  20517       align
  20518     } = attributes;
  20519     return Object(external_wp_element_["createElement"])("blockquote", {
  20520       className: `align${align}`
  20521     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20522       value: value,
  20523       multiline: true
  20524     }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20525       tagName: "footer",
  20526       value: citation
  20527     }));
  20528   }
  20529 
  20530 }];
  20531 /* harmony default export */ var pullquote_deprecated = (pullquote_deprecated_deprecated);
  20532 
  20533 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/figure.js
  20534 const Figure = 'figure';
  20535 
  20536 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/blockquote.js
  20537 const BlockQuote = 'blockquote';
  20538 
  20539 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/edit.js
  20540 
  20541 
  20542 /**
  20543  * External dependencies
  20544  */
  20545 
  20546 
  20547 /**
  20548  * WordPress dependencies
  20549  */
  20550 
  20551 
  20552 
  20553 
  20554 
  20555 /**
  20556  * Internal dependencies
  20557  */
  20558 
  20559 
  20560 
  20561 /**
  20562  * Internal dependencies
  20563  */
  20564 
  20565 
  20566 
  20567 function PullQuoteEdit({
  20568   colorUtils,
  20569   textColor,
  20570   attributes: {
  20571     value,
  20572     citation
  20573   },
  20574   setAttributes,
  20575   setTextColor,
  20576   setMainColor,
  20577   mainColor,
  20578   isSelected,
  20579   insertBlocksAfter
  20580 }) {
  20581   const wasTextColorAutomaticallyComputed = Object(external_wp_element_["useRef"])(false);
  20582   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  20583   const {
  20584     style = {},
  20585     className
  20586   } = blockProps;
  20587   const isSolidColorStyle = Object(external_lodash_["includes"])(className, SOLID_COLOR_CLASS);
  20588   const newBlockProps = { ...blockProps,
  20589     className: classnames_default()(className, {
  20590       'has-background': isSolidColorStyle && mainColor.color,
  20591       [mainColor.class]: isSolidColorStyle && mainColor.class
  20592     }),
  20593     style: isSolidColorStyle ? { ...style,
  20594       backgroundColor: mainColor.color
  20595     } : { ...style,
  20596       borderColor: mainColor.color
  20597     }
  20598   };
  20599 
  20600   function pullQuoteMainColorSetter(colorValue) {
  20601     const needTextColor = !textColor.color || wasTextColorAutomaticallyComputed.current;
  20602     const shouldSetTextColor = isSolidColorStyle && needTextColor;
  20603 
  20604     if (isSolidColorStyle) {
  20605       // If we use the solid color style, set the color using the normal mechanism.
  20606       setMainColor(colorValue);
  20607     } else {
  20608       // If we use the default style, set the color as a custom color to force the usage of an inline style.
  20609       // Default style uses a border color for which classes are not available.
  20610       setAttributes({
  20611         customMainColor: colorValue
  20612       });
  20613     }
  20614 
  20615     if (shouldSetTextColor) {
  20616       if (colorValue) {
  20617         wasTextColorAutomaticallyComputed.current = true;
  20618         setTextColor(colorUtils.getMostReadableColor(colorValue));
  20619       } else if (wasTextColorAutomaticallyComputed.current) {
  20620         // We have to unset our previously computed text color on unsetting the main color.
  20621         wasTextColorAutomaticallyComputed.current = false;
  20622         setTextColor();
  20623       }
  20624     }
  20625   }
  20626 
  20627   function pullQuoteTextColorSetter(colorValue) {
  20628     setTextColor(colorValue);
  20629     wasTextColorAutomaticallyComputed.current = false;
  20630   }
  20631 
  20632   Object(external_wp_element_["useEffect"])(() => {
  20633     // If the block includes a named color and we switched from the
  20634     // solid color style to the default style.
  20635     if (mainColor && !isSolidColorStyle) {
  20636       // Remove the named color, and set the color as a custom color.
  20637       // This is done because named colors use classes, in the default style we use a border color,
  20638       // and themes don't set classes for border colors.
  20639       setAttributes({
  20640         mainColor: undefined,
  20641         customMainColor: mainColor.color
  20642       });
  20643     }
  20644   }, [isSolidColorStyle, mainColor]);
  20645   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(Figure, newBlockProps, Object(external_wp_element_["createElement"])(BlockQuote, {
  20646     style: {
  20647       color: textColor.color
  20648     },
  20649     className: textColor.color && classnames_default()('has-text-color', {
  20650       [textColor.class]: textColor.class
  20651     })
  20652   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  20653     identifier: "value",
  20654     multiline: true,
  20655     value: value,
  20656     onChange: nextValue => setAttributes({
  20657       value: nextValue
  20658     }),
  20659     "aria-label": Object(external_wp_i18n_["__"])('Pullquote text'),
  20660     placeholder: // translators: placeholder text used for the quote
  20661     Object(external_wp_i18n_["__"])('Add quote'),
  20662     textAlign: "center"
  20663   }), (!external_wp_blockEditor_["RichText"].isEmpty(citation) || isSelected) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  20664     identifier: "citation",
  20665     value: citation,
  20666     "aria-label": Object(external_wp_i18n_["__"])('Pullquote citation text'),
  20667     placeholder: // translators: placeholder text used for the citation
  20668     Object(external_wp_i18n_["__"])('Add citation'),
  20669     onChange: nextCitation => setAttributes({
  20670       citation: nextCitation
  20671     }),
  20672     className: "wp-block-pullquote__citation",
  20673     __unstableMobileNoFocusOnMount: true,
  20674     textAlign: "center",
  20675     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
  20676   }))), external_wp_element_["Platform"].OS === 'web' && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PanelColorSettings"], {
  20677     title: Object(external_wp_i18n_["__"])('Color'),
  20678     colorSettings: [{
  20679       value: mainColor.color,
  20680       onChange: pullQuoteMainColorSetter,
  20681       label: Object(external_wp_i18n_["__"])('Main color')
  20682     }, {
  20683       value: textColor.color,
  20684       onChange: pullQuoteTextColorSetter,
  20685       label: Object(external_wp_i18n_["__"])('Text color')
  20686     }]
  20687   }, isSolidColorStyle && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["ContrastChecker"], {
  20688     textColor: textColor.color,
  20689     backgroundColor: mainColor.color,
  20690     isLargeText: false
  20691   }))));
  20692 }
  20693 
  20694 /* harmony default export */ var pullquote_edit = (Object(external_wp_blockEditor_["withColors"])({
  20695   mainColor: 'background-color',
  20696   textColor: 'color'
  20697 })(PullQuoteEdit));
  20698 
  20699 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/save.js
  20700 
  20701 
  20702 /**
  20703  * External dependencies
  20704  */
  20705 
  20706 
  20707 /**
  20708  * WordPress dependencies
  20709  */
  20710 
  20711 
  20712 /**
  20713  * Internal dependencies
  20714  */
  20715 
  20716 
  20717 function pullquote_save_save({
  20718   attributes
  20719 }) {
  20720   const {
  20721     mainColor,
  20722     customMainColor,
  20723     textColor,
  20724     customTextColor,
  20725     value,
  20726     citation,
  20727     className
  20728   } = attributes;
  20729   const isSolidColorStyle = Object(external_lodash_["includes"])(className, SOLID_COLOR_CLASS);
  20730   let figureClasses, figureStyles; // Is solid color style
  20731 
  20732   if (isSolidColorStyle) {
  20733     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', mainColor);
  20734     figureClasses = classnames_default()({
  20735       'has-background': backgroundClass || customMainColor,
  20736       [backgroundClass]: backgroundClass
  20737     });
  20738     figureStyles = {
  20739       backgroundColor: backgroundClass ? undefined : customMainColor
  20740     }; // Is normal style and a custom color is being used ( we can set a style directly with its value)
  20741   } else if (customMainColor) {
  20742     figureStyles = {
  20743       borderColor: customMainColor
  20744     };
  20745   }
  20746 
  20747   const blockquoteTextColorClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  20748   const blockquoteClasses = (textColor || customTextColor) && classnames_default()('has-text-color', {
  20749     [blockquoteTextColorClass]: blockquoteTextColorClass
  20750   });
  20751   const blockquoteStyles = blockquoteTextColorClass ? undefined : {
  20752     color: customTextColor
  20753   };
  20754   return Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save({
  20755     className: figureClasses,
  20756     style: figureStyles
  20757   }), Object(external_wp_element_["createElement"])("blockquote", {
  20758     className: blockquoteClasses,
  20759     style: blockquoteStyles
  20760   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20761     value: value,
  20762     multiline: true
  20763   }), !external_wp_blockEditor_["RichText"].isEmpty(citation) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  20764     tagName: "cite",
  20765     value: citation
  20766   })));
  20767 }
  20768 
  20769 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/transforms.js
  20770 /**
  20771  * WordPress dependencies
  20772  */
  20773 
  20774 
  20775 const pullquote_transforms_transforms = {
  20776   from: [{
  20777     type: 'block',
  20778     isMultiBlock: true,
  20779     blocks: ['core/paragraph'],
  20780     transform: attributes => {
  20781       return Object(external_wp_blocks_["createBlock"])('core/pullquote', {
  20782         value: Object(external_wp_richText_["toHTMLString"])({
  20783           value: Object(external_wp_richText_["join"])(attributes.map(({
  20784             content
  20785           }) => Object(external_wp_richText_["create"])({
  20786             html: content
  20787           })), '\u2028'),
  20788           multilineTag: 'p'
  20789         }),
  20790         anchor: attributes.anchor
  20791       });
  20792     }
  20793   }, {
  20794     type: 'block',
  20795     blocks: ['core/heading'],
  20796     transform: ({
  20797       content,
  20798       anchor
  20799     }) => {
  20800       return Object(external_wp_blocks_["createBlock"])('core/pullquote', {
  20801         value: `<p>${content}</p>`,
  20802         anchor
  20803       });
  20804     }
  20805   }],
  20806   to: [{
  20807     type: 'block',
  20808     blocks: ['core/paragraph'],
  20809     transform: ({
  20810       value,
  20811       citation
  20812     }) => {
  20813       const paragraphs = [];
  20814 
  20815       if (value && value !== '<p></p>') {
  20816         paragraphs.push(...Object(external_wp_richText_["split"])(Object(external_wp_richText_["create"])({
  20817           html: value,
  20818           multilineTag: 'p'
  20819         }), '\u2028').map(piece => Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  20820           content: Object(external_wp_richText_["toHTMLString"])({
  20821             value: piece
  20822           })
  20823         })));
  20824       }
  20825 
  20826       if (citation && citation !== '<p></p>') {
  20827         paragraphs.push(Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  20828           content: citation
  20829         }));
  20830       }
  20831 
  20832       if (paragraphs.length === 0) {
  20833         return Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  20834           content: ''
  20835         });
  20836       }
  20837 
  20838       return paragraphs;
  20839     }
  20840   }, {
  20841     type: 'block',
  20842     blocks: ['core/heading'],
  20843     transform: ({
  20844       value,
  20845       citation,
  20846       ...attrs
  20847     }) => {
  20848       // If there is no pullquote content, use the citation as the
  20849       // content of the resulting heading. A nonexistent citation
  20850       // will result in an empty heading.
  20851       if (value === '<p></p>') {
  20852         return Object(external_wp_blocks_["createBlock"])('core/heading', {
  20853           content: citation
  20854         });
  20855       }
  20856 
  20857       const pieces = Object(external_wp_richText_["split"])(Object(external_wp_richText_["create"])({
  20858         html: value,
  20859         multilineTag: 'p'
  20860       }), '\u2028');
  20861       const headingBlock = Object(external_wp_blocks_["createBlock"])('core/heading', {
  20862         content: Object(external_wp_richText_["toHTMLString"])({
  20863           value: pieces[0]
  20864         })
  20865       });
  20866 
  20867       if (!citation && pieces.length === 1) {
  20868         return headingBlock;
  20869       }
  20870 
  20871       const quotePieces = pieces.slice(1);
  20872       const pullquoteBlock = Object(external_wp_blocks_["createBlock"])('core/pullquote', { ...attrs,
  20873         citation,
  20874         value: Object(external_wp_richText_["toHTMLString"])({
  20875           value: quotePieces.length ? Object(external_wp_richText_["join"])(pieces.slice(1), '\u2028') : Object(external_wp_richText_["create"])(),
  20876           multilineTag: 'p'
  20877         })
  20878       });
  20879       return [headingBlock, pullquoteBlock];
  20880     }
  20881   }]
  20882 };
  20883 /* harmony default export */ var pullquote_transforms = (pullquote_transforms_transforms);
  20884 
  20885 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/pullquote/index.js
  20886 /**
  20887  * WordPress dependencies
  20888  */
  20889 
  20890 
  20891 /**
  20892  * Internal dependencies
  20893  */
  20894 
  20895 
  20896 
  20897 const pullquote_metadata = {
  20898   apiVersion: 2,
  20899   name: "core/pullquote",
  20900   title: "Pullquote",
  20901   category: "text",
  20902   description: "Give special visual emphasis to a quote from your text.",
  20903   textdomain: "default",
  20904   attributes: {
  20905     value: {
  20906       type: "string",
  20907       source: "html",
  20908       selector: "blockquote",
  20909       multiline: "p",
  20910       __experimentalRole: "content"
  20911     },
  20912     citation: {
  20913       type: "string",
  20914       source: "html",
  20915       selector: "cite",
  20916       "default": "",
  20917       __experimentalRole: "content"
  20918     },
  20919     mainColor: {
  20920       type: "string"
  20921     },
  20922     customMainColor: {
  20923       type: "string"
  20924     },
  20925     textColor: {
  20926       type: "string"
  20927     },
  20928     customTextColor: {
  20929       type: "string"
  20930     }
  20931   },
  20932   supports: {
  20933     anchor: true,
  20934     align: ["left", "right", "wide", "full"]
  20935   },
  20936   styles: [{
  20937     name: "default",
  20938     label: "Default",
  20939     isDefault: true
  20940   }, {
  20941     name: "solid-color",
  20942     label: "Solid color"
  20943   }],
  20944   editorStyle: "wp-block-pullquote-editor",
  20945   style: "wp-block-pullquote"
  20946 };
  20947 
  20948 
  20949 const {
  20950   name: pullquote_name
  20951 } = pullquote_metadata;
  20952 
  20953 const pullquote_settings = {
  20954   icon: library_pullquote,
  20955   example: {
  20956     attributes: {
  20957       value: '<p>' + // translators: Quote serving as example for the Pullquote block. Attributed to Matt Mullenweg.
  20958       Object(external_wp_i18n_["__"])('One of the hardest things to do in technology is disrupt yourself.') + '</p>',
  20959       citation: Object(external_wp_i18n_["__"])('Matt Mullenweg')
  20960     }
  20961   },
  20962   transforms: pullquote_transforms,
  20963   edit: pullquote_edit,
  20964   save: pullquote_save_save,
  20965   deprecated: pullquote_deprecated
  20966 };
  20967 
  20968 // EXTERNAL MODULE: external ["wp","reusableBlocks"]
  20969 var external_wp_reusableBlocks_ = __webpack_require__("diJD");
  20970 
  20971 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/ungroup.js
  20972 
  20973 
  20974 /**
  20975  * WordPress dependencies
  20976  */
  20977 
  20978 const ungroup = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  20979   xmlns: "http://www.w3.org/2000/svg",
  20980   viewBox: "0 0 24 24"
  20981 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  20982   d: "M18 4h-7c-1.1 0-2 .9-2 2v7c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 9c0 .3-.2.5-.5.5h-7c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h7c.3 0 .5.2.5.5v7zm-5 5c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5v-7c0-.3.2-.5.5-.5h1V9H6c-1.1 0-2 .9-2 2v7c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2v-1h-1.5v1z"
  20983 }));
  20984 /* harmony default export */ var library_ungroup = (ungroup);
  20985 
  20986 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/block/edit.js
  20987 
  20988 
  20989 /**
  20990  * WordPress dependencies
  20991  */
  20992 
  20993 
  20994 
  20995 
  20996 
  20997 
  20998 
  20999 function ReusableBlockEdit({
  21000   attributes: {
  21001     ref
  21002   },
  21003   clientId
  21004 }) {
  21005   const [hasAlreadyRendered, RecursionProvider] = Object(external_wp_blockEditor_["__experimentalUseNoRecursiveRenders"])(ref);
  21006   const {
  21007     isMissing,
  21008     hasResolved
  21009   } = Object(external_wp_data_["useSelect"])(select => {
  21010     const persistedBlock = select(external_wp_coreData_["store"]).getEntityRecord('postType', 'wp_block', ref);
  21011     const hasResolvedBlock = select(external_wp_coreData_["store"]).hasFinishedResolution('getEntityRecord', ['postType', 'wp_block', ref]);
  21012     return {
  21013       hasResolved: hasResolvedBlock,
  21014       isMissing: hasResolvedBlock && !persistedBlock
  21015     };
  21016   }, [ref, clientId]);
  21017   const {
  21018     __experimentalConvertBlockToStatic: convertBlockToStatic
  21019   } = Object(external_wp_data_["useDispatch"])(external_wp_reusableBlocks_["store"]);
  21020   const [blocks, onInput, onChange] = Object(external_wp_coreData_["useEntityBlockEditor"])('postType', 'wp_block', {
  21021     id: ref
  21022   });
  21023   const [title, setTitle] = Object(external_wp_coreData_["useEntityProp"])('postType', 'wp_block', 'title', ref);
  21024   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])({}, {
  21025     value: blocks,
  21026     onInput,
  21027     onChange,
  21028     renderAppender: blocks !== null && blocks !== void 0 && blocks.length ? undefined : external_wp_blockEditor_["InnerBlocks"].ButtonBlockAppender
  21029   });
  21030   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  21031 
  21032   if (hasAlreadyRendered) {
  21033     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('Block cannot be rendered inside itself.')));
  21034   }
  21035 
  21036   if (isMissing) {
  21037     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('Block has been deleted or is unavailable.')));
  21038   }
  21039 
  21040   if (!hasResolved) {
  21041     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], null, Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null)));
  21042   }
  21043 
  21044   return Object(external_wp_element_["createElement"])(RecursionProvider, null, Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  21045     onClick: () => convertBlockToStatic(clientId),
  21046     label: Object(external_wp_i18n_["__"])('Convert to regular blocks'),
  21047     icon: library_ungroup,
  21048     showTooltip: true
  21049   }))), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], null, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  21050     label: Object(external_wp_i18n_["__"])('Name'),
  21051     value: title,
  21052     onChange: setTitle
  21053   }))), Object(external_wp_element_["createElement"])("div", {
  21054     className: "block-library-block__reusable-block-container"
  21055   }, Object(external_wp_element_["createElement"])("div", innerBlocksProps))));
  21056 }
  21057 
  21058 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/block/index.js
  21059 /**
  21060  * Internal dependencies
  21061  */
  21062 const block_metadata = {
  21063   apiVersion: 2,
  21064   name: "core/block",
  21065   title: "Reusable block",
  21066   category: "reusable",
  21067   description: "Create and save content to reuse across your site. Update the block, and the changes apply everywhere it\u2019s used.",
  21068   textdomain: "default",
  21069   attributes: {
  21070     ref: {
  21071       type: "number"
  21072     }
  21073   },
  21074   supports: {
  21075     customClassName: false,
  21076     html: false,
  21077     inserter: false
  21078   },
  21079   editorStyle: "wp-block-editor"
  21080 };
  21081 
  21082 const {
  21083   name: block_name
  21084 } = block_metadata;
  21085 
  21086 const block_settings = {
  21087   edit: ReusableBlockEdit
  21088 };
  21089 
  21090 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/rss.js
  21091 
  21092 
  21093 /**
  21094  * WordPress dependencies
  21095  */
  21096 
  21097 const rss = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  21098   xmlns: "http://www.w3.org/2000/svg",
  21099   viewBox: "0 0 24 24"
  21100 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  21101   d: "M5 10.2h-.8v1.5H5c1.9 0 3.8.8 5.1 2.1 1.4 1.4 2.1 3.2 2.1 5.1v.8h1.5V19c0-2.3-.9-4.5-2.6-6.2-1.6-1.6-3.8-2.6-6.1-2.6zm10.4-1.6C12.6 5.8 8.9 4.2 5 4.2h-.8v1.5H5c3.5 0 6.9 1.4 9.4 3.9s3.9 5.8 3.9 9.4v.8h1.5V19c0-3.9-1.6-7.6-4.4-10.4zM4 20h3v-3H4v3z"
  21102 }));
  21103 /* harmony default export */ var library_rss = (rss);
  21104 
  21105 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/rss/edit.js
  21106 
  21107 
  21108 /**
  21109  * WordPress dependencies
  21110  */
  21111 
  21112 
  21113 
  21114 
  21115 
  21116 
  21117 const DEFAULT_MIN_ITEMS = 1;
  21118 const DEFAULT_MAX_ITEMS = 10;
  21119 function RSSEdit({
  21120   attributes,
  21121   setAttributes
  21122 }) {
  21123   const [isEditing, setIsEditing] = Object(external_wp_element_["useState"])(!attributes.feedURL);
  21124   const {
  21125     blockLayout,
  21126     columns,
  21127     displayAuthor,
  21128     displayDate,
  21129     displayExcerpt,
  21130     excerptLength,
  21131     feedURL,
  21132     itemsToShow
  21133   } = attributes;
  21134 
  21135   function toggleAttribute(propName) {
  21136     return () => {
  21137       const value = attributes[propName];
  21138       setAttributes({
  21139         [propName]: !value
  21140       });
  21141     };
  21142   }
  21143 
  21144   function onSubmitURL(event) {
  21145     event.preventDefault();
  21146 
  21147     if (feedURL) {
  21148       setIsEditing(false);
  21149     }
  21150   }
  21151 
  21152   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  21153 
  21154   if (isEditing) {
  21155     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], {
  21156       icon: library_rss,
  21157       label: "RSS"
  21158     }, Object(external_wp_element_["createElement"])("form", {
  21159       onSubmit: onSubmitURL,
  21160       className: "wp-block-rss__placeholder-form"
  21161     }, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  21162       placeholder: Object(external_wp_i18n_["__"])('Enter URL here…'),
  21163       value: feedURL,
  21164       onChange: value => setAttributes({
  21165         feedURL: value
  21166       }),
  21167       className: "wp-block-rss__placeholder-input"
  21168     }), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  21169       isPrimary: true,
  21170       type: "submit"
  21171     }, Object(external_wp_i18n_["__"])('Use URL')))));
  21172   }
  21173 
  21174   const toolbarControls = [{
  21175     icon: library_edit["a" /* default */],
  21176     title: Object(external_wp_i18n_["__"])('Edit RSS URL'),
  21177     onClick: () => setIsEditing(true)
  21178   }, {
  21179     icon: library_list,
  21180     title: Object(external_wp_i18n_["__"])('List view'),
  21181     onClick: () => setAttributes({
  21182       blockLayout: 'list'
  21183     }),
  21184     isActive: blockLayout === 'list'
  21185   }, {
  21186     icon: grid["a" /* default */],
  21187     title: Object(external_wp_i18n_["__"])('Grid view'),
  21188     onClick: () => setAttributes({
  21189       blockLayout: 'grid'
  21190     }),
  21191     isActive: blockLayout === 'grid'
  21192   }];
  21193   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], {
  21194     controls: toolbarControls
  21195   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  21196     title: Object(external_wp_i18n_["__"])('RSS settings')
  21197   }, Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  21198     label: Object(external_wp_i18n_["__"])('Number of items'),
  21199     value: itemsToShow,
  21200     onChange: value => setAttributes({
  21201       itemsToShow: value
  21202     }),
  21203     min: DEFAULT_MIN_ITEMS,
  21204     max: DEFAULT_MAX_ITEMS,
  21205     required: true
  21206   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  21207     label: Object(external_wp_i18n_["__"])('Display author'),
  21208     checked: displayAuthor,
  21209     onChange: toggleAttribute('displayAuthor')
  21210   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  21211     label: Object(external_wp_i18n_["__"])('Display date'),
  21212     checked: displayDate,
  21213     onChange: toggleAttribute('displayDate')
  21214   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  21215     label: Object(external_wp_i18n_["__"])('Display excerpt'),
  21216     checked: displayExcerpt,
  21217     onChange: toggleAttribute('displayExcerpt')
  21218   }), displayExcerpt && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  21219     label: Object(external_wp_i18n_["__"])('Max number of words in excerpt'),
  21220     value: excerptLength,
  21221     onChange: value => setAttributes({
  21222       excerptLength: value
  21223     }),
  21224     min: 10,
  21225     max: 100,
  21226     required: true
  21227   }), blockLayout === 'grid' && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  21228     label: Object(external_wp_i18n_["__"])('Columns'),
  21229     value: columns,
  21230     onChange: value => setAttributes({
  21231       columns: value
  21232     }),
  21233     min: 2,
  21234     max: 6,
  21235     required: true
  21236   }))), Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"], null, Object(external_wp_element_["createElement"])(external_wp_serverSideRender_default.a, {
  21237     block: "core/rss",
  21238     attributes: attributes
  21239   }))));
  21240 }
  21241 
  21242 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/rss/index.js
  21243 /**
  21244  * WordPress dependencies
  21245  */
  21246 
  21247 /**
  21248  * Internal dependencies
  21249  */
  21250 
  21251 const rss_metadata = {
  21252   apiVersion: 2,
  21253   name: "core/rss",
  21254   title: "RSS",
  21255   category: "widgets",
  21256   description: "Display entries from any RSS or Atom feed.",
  21257   keywords: ["atom", "feed"],
  21258   textdomain: "default",
  21259   attributes: {
  21260     columns: {
  21261       type: "number",
  21262       "default": 2
  21263     },
  21264     blockLayout: {
  21265       type: "string",
  21266       "default": "list"
  21267     },
  21268     feedURL: {
  21269       type: "string",
  21270       "default": ""
  21271     },
  21272     itemsToShow: {
  21273       type: "number",
  21274       "default": 5
  21275     },
  21276     displayExcerpt: {
  21277       type: "boolean",
  21278       "default": false
  21279     },
  21280     displayAuthor: {
  21281       type: "boolean",
  21282       "default": false
  21283     },
  21284     displayDate: {
  21285       type: "boolean",
  21286       "default": false
  21287     },
  21288     excerptLength: {
  21289       type: "number",
  21290       "default": 55
  21291     }
  21292   },
  21293   supports: {
  21294     align: true,
  21295     html: false
  21296   },
  21297   editorStyle: "wp-block-rss-editor",
  21298   style: "wp-block-rss"
  21299 };
  21300 
  21301 const {
  21302   name: rss_name
  21303 } = rss_metadata;
  21304 
  21305 const rss_settings = {
  21306   icon: library_rss,
  21307   example: {
  21308     attributes: {
  21309       feedURL: 'https://wordpress.org'
  21310     }
  21311   },
  21312   edit: RSSEdit
  21313 };
  21314 
  21315 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/search/icons.js
  21316 
  21317 
  21318 /**
  21319  * WordPress dependencies
  21320  */
  21321 
  21322 const buttonOnly = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  21323   xmlns: "http://www.w3.org/2000/svg",
  21324   viewBox: "0 0 24 24"
  21325 }, Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21326   x: "7",
  21327   y: "10",
  21328   width: "10",
  21329   height: "4",
  21330   rx: "1",
  21331   fill: "currentColor"
  21332 }));
  21333 const buttonOutside = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  21334   xmlns: "http://www.w3.org/2000/svg",
  21335   viewBox: "0 0 24 24"
  21336 }, Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21337   x: "4.75",
  21338   y: "15.25",
  21339   width: "6.5",
  21340   height: "9.5",
  21341   transform: "rotate(-90 4.75 15.25)",
  21342   stroke: "currentColor",
  21343   strokeWidth: "1.5",
  21344   fill: "none"
  21345 }), Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21346   x: "16",
  21347   y: "10",
  21348   width: "4",
  21349   height: "4",
  21350   rx: "1",
  21351   fill: "currentColor"
  21352 }));
  21353 const buttonInside = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  21354   xmlns: "http://www.w3.org/2000/svg",
  21355   viewBox: "0 0 24 24"
  21356 }, Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21357   x: "4.75",
  21358   y: "15.25",
  21359   width: "6.5",
  21360   height: "14.5",
  21361   transform: "rotate(-90 4.75 15.25)",
  21362   stroke: "currentColor",
  21363   strokeWidth: "1.5",
  21364   fill: "none"
  21365 }), Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21366   x: "14",
  21367   y: "10",
  21368   width: "4",
  21369   height: "4",
  21370   rx: "1",
  21371   fill: "currentColor"
  21372 }));
  21373 const noButton = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  21374   xmlns: "http://www.w3.org/2000/svg",
  21375   viewBox: "0 0 24 24"
  21376 }, Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21377   x: "4.75",
  21378   y: "15.25",
  21379   width: "6.5",
  21380   height: "14.5",
  21381   transform: "rotate(-90 4.75 15.25)",
  21382   stroke: "currentColor",
  21383   fill: "none",
  21384   strokeWidth: "1.5"
  21385 }));
  21386 const buttonWithIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  21387   xmlns: "http://www.w3.org/2000/svg",
  21388   viewBox: "0 0 24 24"
  21389 }, Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21390   x: "4.75",
  21391   y: "7.75",
  21392   width: "14.5",
  21393   height: "8.5",
  21394   rx: "1.25",
  21395   stroke: "currentColor",
  21396   fill: "none",
  21397   strokeWidth: "1.5"
  21398 }), Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21399   x: "8",
  21400   y: "11",
  21401   width: "8",
  21402   height: "2",
  21403   fill: "currentColor"
  21404 }));
  21405 const toggleLabel = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  21406   xmlns: "http://www.w3.org/2000/svg",
  21407   viewBox: "0 0 24 24"
  21408 }, Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21409   x: "4.75",
  21410   y: "17.25",
  21411   width: "5.5",
  21412   height: "14.5",
  21413   transform: "rotate(-90 4.75 17.25)",
  21414   stroke: "currentColor",
  21415   fill: "none",
  21416   strokeWidth: "1.5"
  21417 }), Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  21418   x: "4",
  21419   y: "7",
  21420   width: "10",
  21421   height: "2",
  21422   fill: "currentColor"
  21423 }));
  21424 
  21425 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/search/utils.js
  21426 /**
  21427  * Constants
  21428  */
  21429 const PC_WIDTH_DEFAULT = 50;
  21430 const PX_WIDTH_DEFAULT = 350;
  21431 const MIN_WIDTH = 220;
  21432 const MIN_WIDTH_UNIT = 'px';
  21433 /**
  21434  * Returns a boolean whether passed unit is percentage
  21435  *
  21436  * @param {string} unit Block width unit.
  21437  *
  21438  * @return {boolean} 	Whether unit is '%'.
  21439  */
  21440 
  21441 function utils_isPercentageUnit(unit) {
  21442   return unit === '%';
  21443 }
  21444 
  21445 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/search/edit.js
  21446 
  21447 
  21448 /**
  21449  * External dependencies
  21450  */
  21451 
  21452 /**
  21453  * WordPress dependencies
  21454  */
  21455 
  21456 
  21457 
  21458 
  21459 
  21460 
  21461 /**
  21462  * Internal dependencies
  21463  */
  21464 
  21465 
  21466  // Used to calculate border radius adjustment to avoid "fat" corners when
  21467 // button is placed inside wrapper.
  21468 
  21469 const DEFAULT_INNER_PADDING = 4;
  21470 function SearchEdit({
  21471   className,
  21472   attributes,
  21473   setAttributes,
  21474   toggleSelection,
  21475   isSelected
  21476 }) {
  21477   var _style$border;
  21478 
  21479   const {
  21480     label,
  21481     showLabel,
  21482     placeholder,
  21483     width,
  21484     widthUnit,
  21485     align,
  21486     buttonText,
  21487     buttonPosition,
  21488     buttonUseIcon,
  21489     style
  21490   } = attributes;
  21491   const borderRadius = style === null || style === void 0 ? void 0 : (_style$border = style.border) === null || _style$border === void 0 ? void 0 : _style$border.radius;
  21492   const unitControlInstanceId = Object(external_wp_compose_["useInstanceId"])(external_wp_blockEditor_["__experimentalUnitControl"]);
  21493   const unitControlInputId = `wp-block-search__width-${unitControlInstanceId}`;
  21494   const units = Object(external_wp_components_["__experimentalUseCustomUnits"])({
  21495     availableUnits: ['%', 'px'],
  21496     defaultValues: {
  21497       '%': PC_WIDTH_DEFAULT,
  21498       px: PX_WIDTH_DEFAULT
  21499     }
  21500   });
  21501 
  21502   const getBlockClassNames = () => {
  21503     return classnames_default()(className, 'button-inside' === buttonPosition ? 'wp-block-search__button-inside' : undefined, 'button-outside' === buttonPosition ? 'wp-block-search__button-outside' : undefined, 'no-button' === buttonPosition ? 'wp-block-search__no-button' : undefined, 'button-only' === buttonPosition ? 'wp-block-search__button-only' : undefined, !buttonUseIcon && 'no-button' !== buttonPosition ? 'wp-block-search__text-button' : undefined, buttonUseIcon && 'no-button' !== buttonPosition ? 'wp-block-search__icon-button' : undefined);
  21504   };
  21505 
  21506   const getButtonPositionIcon = () => {
  21507     switch (buttonPosition) {
  21508       case 'button-inside':
  21509         return buttonInside;
  21510 
  21511       case 'button-outside':
  21512         return buttonOutside;
  21513 
  21514       case 'no-button':
  21515         return noButton;
  21516 
  21517       case 'button-only':
  21518         return buttonOnly;
  21519     }
  21520   };
  21521 
  21522   const getResizableSides = () => {
  21523     if ('button-only' === buttonPosition) {
  21524       return {};
  21525     }
  21526 
  21527     return {
  21528       right: align === 'right' ? false : true,
  21529       left: align === 'right' ? true : false
  21530     };
  21531   };
  21532 
  21533   const renderTextField = () => {
  21534     return Object(external_wp_element_["createElement"])("input", {
  21535       className: "wp-block-search__input",
  21536       style: {
  21537         borderRadius
  21538       },
  21539       "aria-label": Object(external_wp_i18n_["__"])('Optional placeholder text') // We hide the placeholder field's placeholder when there is a value. This
  21540       // stops screen readers from reading the placeholder field's placeholder
  21541       // which is confusing.
  21542       ,
  21543       placeholder: placeholder ? undefined : Object(external_wp_i18n_["__"])('Optional placeholder…'),
  21544       value: placeholder,
  21545       onChange: event => setAttributes({
  21546         placeholder: event.target.value
  21547       })
  21548     });
  21549   };
  21550 
  21551   const renderButton = () => {
  21552     return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, buttonUseIcon && Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  21553       icon: library_search["a" /* default */],
  21554       className: "wp-block-search__button",
  21555       style: {
  21556         borderRadius
  21557       }
  21558     }), !buttonUseIcon && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  21559       className: "wp-block-search__button",
  21560       style: {
  21561         borderRadius
  21562       },
  21563       "aria-label": Object(external_wp_i18n_["__"])('Button text'),
  21564       placeholder: Object(external_wp_i18n_["__"])('Add button text…'),
  21565       withoutInteractiveFormatting: true,
  21566       value: buttonText,
  21567       onChange: html => setAttributes({
  21568         buttonText: html
  21569       })
  21570     }));
  21571   };
  21572 
  21573   const controls = Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  21574     title: Object(external_wp_i18n_["__"])('Toggle search label'),
  21575     icon: toggleLabel,
  21576     onClick: () => {
  21577       setAttributes({
  21578         showLabel: !showLabel
  21579       });
  21580     },
  21581     className: showLabel ? 'is-pressed' : undefined
  21582   }), Object(external_wp_element_["createElement"])(external_wp_components_["DropdownMenu"], {
  21583     icon: getButtonPositionIcon(),
  21584     label: Object(external_wp_i18n_["__"])('Change button position')
  21585   }, ({
  21586     onClose
  21587   }) => Object(external_wp_element_["createElement"])(external_wp_components_["MenuGroup"], {
  21588     className: "wp-block-search__button-position-menu"
  21589   }, Object(external_wp_element_["createElement"])(external_wp_components_["MenuItem"], {
  21590     icon: noButton,
  21591     onClick: () => {
  21592       setAttributes({
  21593         buttonPosition: 'no-button'
  21594       });
  21595       onClose();
  21596     }
  21597   }, Object(external_wp_i18n_["__"])('No Button')), Object(external_wp_element_["createElement"])(external_wp_components_["MenuItem"], {
  21598     icon: buttonOutside,
  21599     onClick: () => {
  21600       setAttributes({
  21601         buttonPosition: 'button-outside'
  21602       });
  21603       onClose();
  21604     }
  21605   }, Object(external_wp_i18n_["__"])('Button Outside')), Object(external_wp_element_["createElement"])(external_wp_components_["MenuItem"], {
  21606     icon: buttonInside,
  21607     onClick: () => {
  21608       setAttributes({
  21609         buttonPosition: 'button-inside'
  21610       });
  21611       onClose();
  21612     }
  21613   }, Object(external_wp_i18n_["__"])('Button Inside')))), 'no-button' !== buttonPosition && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  21614     title: Object(external_wp_i18n_["__"])('Use button with icon'),
  21615     icon: buttonWithIcon,
  21616     onClick: () => {
  21617       setAttributes({
  21618         buttonUseIcon: !buttonUseIcon
  21619       });
  21620     },
  21621     className: buttonUseIcon ? 'is-pressed' : undefined
  21622   }))), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  21623     title: Object(external_wp_i18n_["__"])('Display Settings')
  21624   }, Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"], {
  21625     label: Object(external_wp_i18n_["__"])('Width'),
  21626     id: unitControlInputId
  21627   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalUnitControl"], {
  21628     id: unitControlInputId,
  21629     min: `${MIN_WIDTH}${MIN_WIDTH_UNIT}`,
  21630     onChange: newWidth => {
  21631       const filteredWidth = widthUnit === '%' && parseInt(newWidth, 10) > 100 ? 100 : newWidth;
  21632       setAttributes({
  21633         width: parseInt(filteredWidth, 10)
  21634       });
  21635     },
  21636     onUnitChange: newUnit => {
  21637       setAttributes({
  21638         width: '%' === newUnit ? PC_WIDTH_DEFAULT : PX_WIDTH_DEFAULT,
  21639         widthUnit: newUnit
  21640       });
  21641     },
  21642     style: {
  21643       maxWidth: 80
  21644     },
  21645     value: `${width}${widthUnit}`,
  21646     unit: widthUnit,
  21647     units: units
  21648   }), Object(external_wp_element_["createElement"])(external_wp_components_["ButtonGroup"], {
  21649     className: "wp-block-search__components-button-group",
  21650     "aria-label": Object(external_wp_i18n_["__"])('Percentage Width')
  21651   }, [25, 50, 75, 100].map(widthValue => {
  21652     return Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  21653       key: widthValue,
  21654       isSmall: true,
  21655       isPrimary: `${widthValue}%` === `${width}${widthUnit}`,
  21656       onClick: () => setAttributes({
  21657         width: widthValue,
  21658         widthUnit: '%'
  21659       })
  21660     }, widthValue, "%");
  21661   }))))));
  21662 
  21663   const getWrapperStyles = () => {
  21664     var _style$border2;
  21665 
  21666     if ('button-inside' === buttonPosition && style !== null && style !== void 0 && (_style$border2 = style.border) !== null && _style$border2 !== void 0 && _style$border2.radius) {
  21667       var _style$border3;
  21668 
  21669       // We have button inside wrapper and a border radius value to apply.
  21670       // Add default padding so we don't get "fat" corners.
  21671       const outerRadius = parseInt(style === null || style === void 0 ? void 0 : (_style$border3 = style.border) === null || _style$border3 === void 0 ? void 0 : _style$border3.radius, 10) + DEFAULT_INNER_PADDING;
  21672       return {
  21673         borderRadius: `${outerRadius}px`
  21674       };
  21675     }
  21676 
  21677     return undefined;
  21678   };
  21679 
  21680   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  21681     className: getBlockClassNames()
  21682   });
  21683   return Object(external_wp_element_["createElement"])("div", blockProps, controls, showLabel && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  21684     className: "wp-block-search__label",
  21685     "aria-label": Object(external_wp_i18n_["__"])('Label text'),
  21686     placeholder: Object(external_wp_i18n_["__"])('Add label…'),
  21687     withoutInteractiveFormatting: true,
  21688     value: label,
  21689     onChange: html => setAttributes({
  21690       label: html
  21691     })
  21692   }), Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], {
  21693     size: {
  21694       width: `${width}${widthUnit}`
  21695     },
  21696     className: "wp-block-search__inside-wrapper",
  21697     style: getWrapperStyles(),
  21698     minWidth: MIN_WIDTH,
  21699     enable: getResizableSides(),
  21700     onResizeStart: (event, direction, elt) => {
  21701       setAttributes({
  21702         width: parseInt(elt.offsetWidth, 10),
  21703         widthUnit: 'px'
  21704       });
  21705       toggleSelection(false);
  21706     },
  21707     onResizeStop: (event, direction, elt, delta) => {
  21708       setAttributes({
  21709         width: parseInt(width + delta.width, 10)
  21710       });
  21711       toggleSelection(true);
  21712     },
  21713     showHandle: isSelected
  21714   }, ('button-inside' === buttonPosition || 'button-outside' === buttonPosition) && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, renderTextField(), renderButton()), 'button-only' === buttonPosition && renderButton(), 'no-button' === buttonPosition && renderTextField()));
  21715 }
  21716 
  21717 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/search/variations.js
  21718 /**
  21719  * WordPress dependencies
  21720  */
  21721 
  21722 const search_variations_variations = [{
  21723   name: 'default',
  21724   isDefault: true,
  21725   attributes: {
  21726     buttonText: Object(external_wp_i18n_["__"])('Search'),
  21727     label: Object(external_wp_i18n_["__"])('Search')
  21728   }
  21729 }];
  21730 /* harmony default export */ var search_variations = (search_variations_variations);
  21731 
  21732 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/search/index.js
  21733 /**
  21734  * WordPress dependencies
  21735  */
  21736 
  21737 /**
  21738  * Internal dependencies
  21739  */
  21740 
  21741 const search_metadata = {
  21742   apiVersion: 2,
  21743   name: "core/search",
  21744   title: "Search",
  21745   category: "widgets",
  21746   description: "Help visitors find your content.",
  21747   keywords: ["find"],
  21748   textdomain: "default",
  21749   attributes: {
  21750     label: {
  21751       type: "string",
  21752       __experimentalRole: "content"
  21753     },
  21754     showLabel: {
  21755       type: "boolean",
  21756       "default": true
  21757     },
  21758     placeholder: {
  21759       type: "string",
  21760       "default": "",
  21761       __experimentalRole: "content"
  21762     },
  21763     width: {
  21764       type: "number"
  21765     },
  21766     widthUnit: {
  21767       type: "string"
  21768     },
  21769     buttonText: {
  21770       type: "string",
  21771       __experimentalRole: "content"
  21772     },
  21773     buttonPosition: {
  21774       type: "string",
  21775       "default": "button-outside"
  21776     },
  21777     buttonUseIcon: {
  21778       type: "boolean",
  21779       "default": false
  21780     }
  21781   },
  21782   supports: {
  21783     align: ["left", "center", "right"],
  21784     __experimentalBorder: {
  21785       radius: true,
  21786       __experimentalSkipSerialization: true
  21787     },
  21788     html: false
  21789   },
  21790   editorStyle: "wp-block-search-editor",
  21791   style: "wp-block-search"
  21792 };
  21793 
  21794 
  21795 const {
  21796   name: search_name
  21797 } = search_metadata;
  21798 
  21799 const search_settings = {
  21800   icon: library_search["a" /* default */],
  21801   example: {},
  21802   variations: search_variations,
  21803   edit: SearchEdit
  21804 };
  21805 
  21806 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/group.js
  21807 
  21808 
  21809 /**
  21810  * WordPress dependencies
  21811  */
  21812 
  21813 const group = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  21814   viewBox: "0 0 24 24",
  21815   xmlns: "http://www.w3.org/2000/svg"
  21816 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  21817   d: "M18 4h-7c-1.1 0-2 .9-2 2v3H6c-1.1 0-2 .9-2 2v7c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2v-3h3c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-4.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5v-7c0-.3.2-.5.5-.5h3V13c0 1.1.9 2 2 2h2.5v3zm0-4.5H11c-.3 0-.5-.2-.5-.5v-2.5H13c.3 0 .5.2.5.5v2.5zm5-.5c0 .3-.2.5-.5.5h-3V11c0-1.1-.9-2-2-2h-2.5V6c0-.3.2-.5.5-.5h7c.3 0 .5.2.5.5v7z"
  21818 }));
  21819 /* harmony default export */ var library_group = (group);
  21820 
  21821 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/deprecated.js
  21822 
  21823 
  21824 /**
  21825  * External dependencies
  21826  */
  21827 
  21828 
  21829 /**
  21830  * WordPress dependencies
  21831  */
  21832 
  21833 
  21834 
  21835 const migrateAttributes = attributes => {
  21836   if (!attributes.tagName) {
  21837     attributes = { ...attributes,
  21838       tagName: 'div'
  21839     };
  21840   }
  21841 
  21842   if (!attributes.customTextColor && !attributes.customBackgroundColor) {
  21843     return attributes;
  21844   }
  21845 
  21846   const style = {
  21847     color: {}
  21848   };
  21849 
  21850   if (attributes.customTextColor) {
  21851     style.color.text = attributes.customTextColor;
  21852   }
  21853 
  21854   if (attributes.customBackgroundColor) {
  21855     style.color.background = attributes.customBackgroundColor;
  21856   }
  21857 
  21858   return { ...Object(external_lodash_["omit"])(attributes, ['customTextColor', 'customBackgroundColor']),
  21859     style
  21860   };
  21861 };
  21862 
  21863 const group_deprecated_deprecated = [// Version of the block with the double div.
  21864 {
  21865   attributes: {
  21866     tagName: {
  21867       type: 'string',
  21868       default: 'div'
  21869     },
  21870     templateLock: {
  21871       type: 'string'
  21872     }
  21873   },
  21874   supports: {
  21875     align: ['wide', 'full'],
  21876     anchor: true,
  21877     color: {
  21878       gradients: true,
  21879       link: true
  21880     },
  21881     spacing: {
  21882       padding: true
  21883     },
  21884     __experimentalBorder: {
  21885       radius: true
  21886     }
  21887   },
  21888 
  21889   save({
  21890     attributes
  21891   }) {
  21892     const {
  21893       tagName: Tag
  21894     } = attributes;
  21895     return Object(external_wp_element_["createElement"])(Tag, external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])("div", {
  21896       className: "wp-block-group__inner-container"
  21897     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  21898   }
  21899 
  21900 }, // Version of the block without global styles support
  21901 {
  21902   attributes: {
  21903     backgroundColor: {
  21904       type: 'string'
  21905     },
  21906     customBackgroundColor: {
  21907       type: 'string'
  21908     },
  21909     textColor: {
  21910       type: 'string'
  21911     },
  21912     customTextColor: {
  21913       type: 'string'
  21914     }
  21915   },
  21916   supports: {
  21917     align: ['wide', 'full'],
  21918     anchor: true,
  21919     html: false
  21920   },
  21921   migrate: migrateAttributes,
  21922 
  21923   save({
  21924     attributes
  21925   }) {
  21926     const {
  21927       backgroundColor,
  21928       customBackgroundColor,
  21929       textColor,
  21930       customTextColor
  21931     } = attributes;
  21932     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  21933     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  21934     const className = classnames_default()(backgroundClass, textClass, {
  21935       'has-text-color': textColor || customTextColor,
  21936       'has-background': backgroundColor || customBackgroundColor
  21937     });
  21938     const styles = {
  21939       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  21940       color: textClass ? undefined : customTextColor
  21941     };
  21942     return Object(external_wp_element_["createElement"])("div", {
  21943       className: className,
  21944       style: styles
  21945     }, Object(external_wp_element_["createElement"])("div", {
  21946       className: "wp-block-group__inner-container"
  21947     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  21948   }
  21949 
  21950 }, // Version of the group block with a bug that made text color class not applied.
  21951 {
  21952   attributes: {
  21953     backgroundColor: {
  21954       type: 'string'
  21955     },
  21956     customBackgroundColor: {
  21957       type: 'string'
  21958     },
  21959     textColor: {
  21960       type: 'string'
  21961     },
  21962     customTextColor: {
  21963       type: 'string'
  21964     }
  21965   },
  21966   migrate: migrateAttributes,
  21967   supports: {
  21968     align: ['wide', 'full'],
  21969     anchor: true,
  21970     html: false
  21971   },
  21972 
  21973   save({
  21974     attributes
  21975   }) {
  21976     const {
  21977       backgroundColor,
  21978       customBackgroundColor,
  21979       textColor,
  21980       customTextColor
  21981     } = attributes;
  21982     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  21983     const textClass = Object(external_wp_blockEditor_["getColorClassName"])('color', textColor);
  21984     const className = classnames_default()(backgroundClass, {
  21985       'has-text-color': textColor || customTextColor,
  21986       'has-background': backgroundColor || customBackgroundColor
  21987     });
  21988     const styles = {
  21989       backgroundColor: backgroundClass ? undefined : customBackgroundColor,
  21990       color: textClass ? undefined : customTextColor
  21991     };
  21992     return Object(external_wp_element_["createElement"])("div", {
  21993       className: className,
  21994       style: styles
  21995     }, Object(external_wp_element_["createElement"])("div", {
  21996       className: "wp-block-group__inner-container"
  21997     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null)));
  21998   }
  21999 
  22000 }, // v1 of group block. Deprecated to add an inner-container div around `InnerBlocks.Content`.
  22001 {
  22002   attributes: {
  22003     backgroundColor: {
  22004       type: 'string'
  22005     },
  22006     customBackgroundColor: {
  22007       type: 'string'
  22008     }
  22009   },
  22010   supports: {
  22011     align: ['wide', 'full'],
  22012     anchor: true,
  22013     html: false
  22014   },
  22015   migrate: migrateAttributes,
  22016 
  22017   save({
  22018     attributes
  22019   }) {
  22020     const {
  22021       backgroundColor,
  22022       customBackgroundColor
  22023     } = attributes;
  22024     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  22025     const className = classnames_default()(backgroundClass, {
  22026       'has-background': backgroundColor || customBackgroundColor
  22027     });
  22028     const styles = {
  22029       backgroundColor: backgroundClass ? undefined : customBackgroundColor
  22030     };
  22031     return Object(external_wp_element_["createElement"])("div", {
  22032       className: className,
  22033       style: styles
  22034     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  22035   }
  22036 
  22037 }];
  22038 /* harmony default export */ var group_deprecated = (group_deprecated_deprecated);
  22039 
  22040 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/edit.js
  22041 
  22042 
  22043 /**
  22044  * WordPress dependencies
  22045  */
  22046 
  22047 
  22048 
  22049 
  22050 
  22051 
  22052 function GroupEdit({
  22053   attributes,
  22054   setAttributes,
  22055   clientId
  22056 }) {
  22057   const {
  22058     hasInnerBlocks,
  22059     themeSupportsLayout
  22060   } = Object(external_wp_data_["useSelect"])(select => {
  22061     var _getSettings;
  22062 
  22063     const {
  22064       getBlock,
  22065       getSettings
  22066     } = select(external_wp_blockEditor_["store"]);
  22067     const block = getBlock(clientId);
  22068     return {
  22069       hasInnerBlocks: !!(block && block.innerBlocks.length),
  22070       themeSupportsLayout: (_getSettings = getSettings()) === null || _getSettings === void 0 ? void 0 : _getSettings.supportsLayout
  22071     };
  22072   }, [clientId]);
  22073   const defaultLayout = Object(external_wp_blockEditor_["useSetting"])('layout') || {};
  22074   const {
  22075     tagName: TagName = 'div',
  22076     templateLock,
  22077     layout = {}
  22078   } = attributes;
  22079   const usedLayout = !!layout && layout.inherit ? defaultLayout : layout;
  22080   const {
  22081     contentSize,
  22082     wideSize
  22083   } = usedLayout;
  22084 
  22085   const _layout = Object(external_wp_element_["useMemo"])(() => {
  22086     if (themeSupportsLayout) {
  22087       const alignments = contentSize || wideSize ? ['wide', 'full', 'left', 'center', 'right'] : ['left', 'center', 'right'];
  22088       return {
  22089         type: 'default',
  22090         // Find a way to inject this in the support flag code (hooks).
  22091         alignments
  22092       };
  22093     }
  22094 
  22095     return undefined;
  22096   }, [themeSupportsLayout, contentSize, wideSize]);
  22097 
  22098   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  22099   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])(themeSupportsLayout ? blockProps : {
  22100     className: 'wp-block-group__inner-container'
  22101   }, {
  22102     templateLock,
  22103     renderAppender: hasInnerBlocks ? undefined : external_wp_blockEditor_["InnerBlocks"].ButtonBlockAppender,
  22104     __experimentalLayout: _layout
  22105   });
  22106   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorAdvancedControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  22107     label: Object(external_wp_i18n_["__"])('HTML element'),
  22108     options: [{
  22109       label: Object(external_wp_i18n_["__"])('Default (<div>)'),
  22110       value: 'div'
  22111     }, {
  22112       label: '<header>',
  22113       value: 'header'
  22114     }, {
  22115       label: '<main>',
  22116       value: 'main'
  22117     }, {
  22118       label: '<section>',
  22119       value: 'section'
  22120     }, {
  22121       label: '<article>',
  22122       value: 'article'
  22123     }, {
  22124       label: '<aside>',
  22125       value: 'aside'
  22126     }, {
  22127       label: '<footer>',
  22128       value: 'footer'
  22129     }],
  22130     value: TagName,
  22131     onChange: value => setAttributes({
  22132       tagName: value
  22133     })
  22134   })), themeSupportsLayout && Object(external_wp_element_["createElement"])(TagName, innerBlocksProps), !themeSupportsLayout && Object(external_wp_element_["createElement"])(TagName, blockProps, Object(external_wp_element_["createElement"])("div", innerBlocksProps)));
  22135 }
  22136 
  22137 /* harmony default export */ var group_edit = (GroupEdit);
  22138 
  22139 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/save.js
  22140 
  22141 
  22142 /**
  22143  * WordPress dependencies
  22144  */
  22145 
  22146 function group_save_save({
  22147   attributes
  22148 }) {
  22149   const {
  22150     tagName: Tag
  22151   } = attributes;
  22152   return Object(external_wp_element_["createElement"])(Tag, external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  22153 }
  22154 
  22155 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/group/index.js
  22156 /**
  22157  * WordPress dependencies
  22158  */
  22159 
  22160 
  22161 
  22162 /**
  22163  * Internal dependencies
  22164  */
  22165 
  22166 
  22167 
  22168 const group_metadata = {
  22169   apiVersion: 2,
  22170   name: "core/group",
  22171   title: "Group",
  22172   category: "design",
  22173   description: "Combine blocks into a group.",
  22174   keywords: ["container", "wrapper", "row", "section"],
  22175   textdomain: "default",
  22176   attributes: {
  22177     tagName: {
  22178       type: "string",
  22179       "default": "div"
  22180     },
  22181     templateLock: {
  22182       "enum": ["all", "insert", false]
  22183     }
  22184   },
  22185   supports: {
  22186     align: ["wide", "full"],
  22187     anchor: true,
  22188     html: false,
  22189     color: {
  22190       gradients: true,
  22191       link: true
  22192     },
  22193     spacing: {
  22194       padding: true
  22195     },
  22196     __experimentalBorder: {
  22197       color: true,
  22198       radius: true,
  22199       style: true,
  22200       width: true
  22201     },
  22202     __experimentalLayout: true
  22203   },
  22204   editorStyle: "wp-block-group-editor",
  22205   style: "wp-block-group"
  22206 };
  22207 
  22208 const {
  22209   name: group_name
  22210 } = group_metadata;
  22211 
  22212 const group_settings = {
  22213   icon: library_group,
  22214   example: {
  22215     attributes: {
  22216       style: {
  22217         color: {
  22218           text: '#000000',
  22219           background: '#ffffff'
  22220         }
  22221       }
  22222     },
  22223     innerBlocks: [{
  22224       name: 'core/paragraph',
  22225       attributes: {
  22226         customTextColor: '#cf2e2e',
  22227         fontSize: 'large',
  22228         content: Object(external_wp_i18n_["__"])('One.')
  22229       }
  22230     }, {
  22231       name: 'core/paragraph',
  22232       attributes: {
  22233         customTextColor: '#ff6900',
  22234         fontSize: 'large',
  22235         content: Object(external_wp_i18n_["__"])('Two.')
  22236       }
  22237     }, {
  22238       name: 'core/paragraph',
  22239       attributes: {
  22240         customTextColor: '#fcb900',
  22241         fontSize: 'large',
  22242         content: Object(external_wp_i18n_["__"])('Three.')
  22243       }
  22244     }, {
  22245       name: 'core/paragraph',
  22246       attributes: {
  22247         customTextColor: '#00d084',
  22248         fontSize: 'large',
  22249         content: Object(external_wp_i18n_["__"])('Four.')
  22250       }
  22251     }, {
  22252       name: 'core/paragraph',
  22253       attributes: {
  22254         customTextColor: '#0693e3',
  22255         fontSize: 'large',
  22256         content: Object(external_wp_i18n_["__"])('Five.')
  22257       }
  22258     }, {
  22259       name: 'core/paragraph',
  22260       attributes: {
  22261         customTextColor: '#9b51e0',
  22262         fontSize: 'large',
  22263         content: Object(external_wp_i18n_["__"])('Six.')
  22264       }
  22265     }]
  22266   },
  22267   transforms: {
  22268     from: [{
  22269       type: 'block',
  22270       isMultiBlock: true,
  22271       blocks: ['*'],
  22272 
  22273       __experimentalConvert(blocks) {
  22274         // Avoid transforming a single `core/group` Block
  22275         if (blocks.length === 1 && blocks[0].name === 'core/group') {
  22276           return;
  22277         }
  22278 
  22279         const alignments = ['wide', 'full']; // Determine the widest setting of all the blocks to be grouped
  22280 
  22281         const widestAlignment = blocks.reduce((accumulator, block) => {
  22282           const {
  22283             align
  22284           } = block.attributes;
  22285           return alignments.indexOf(align) > alignments.indexOf(accumulator) ? align : accumulator;
  22286         }, undefined); // Clone the Blocks to be Grouped
  22287         // Failing to create new block references causes the original blocks
  22288         // to be replaced in the switchToBlockType call thereby meaning they
  22289         // are removed both from their original location and within the
  22290         // new group block.
  22291 
  22292         const groupInnerBlocks = blocks.map(block => {
  22293           return Object(external_wp_blocks_["createBlock"])(block.name, block.attributes, block.innerBlocks);
  22294         });
  22295         return Object(external_wp_blocks_["createBlock"])('core/group', {
  22296           align: widestAlignment
  22297         }, groupInnerBlocks);
  22298       }
  22299 
  22300     }]
  22301   },
  22302   edit: group_edit,
  22303   save: group_save_save,
  22304   deprecated: group_deprecated
  22305 };
  22306 
  22307 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/separator.js
  22308 
  22309 
  22310 /**
  22311  * WordPress dependencies
  22312  */
  22313 
  22314 const separator = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  22315   viewBox: "0 0 24 24",
  22316   xmlns: "http://www.w3.org/2000/svg"
  22317 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  22318   d: "M20.2 7v4H3.8V7H2.2v9h1.6v-3.5h16.4V16h1.6V7z"
  22319 }));
  22320 /* harmony default export */ var library_separator = (separator);
  22321 
  22322 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/separator-settings.js
  22323 
  22324 
  22325 /**
  22326  * WordPress dependencies
  22327  */
  22328 
  22329 
  22330 
  22331 const SeparatorSettings = ({
  22332   color,
  22333   setColor
  22334 }) => Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PanelColorSettings"], {
  22335   title: Object(external_wp_i18n_["__"])('Color'),
  22336   colorSettings: [{
  22337     value: color.color,
  22338     onChange: setColor,
  22339     label: Object(external_wp_i18n_["__"])('Color')
  22340   }]
  22341 }));
  22342 
  22343 /* harmony default export */ var separator_settings = (SeparatorSettings);
  22344 
  22345 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/edit.js
  22346 
  22347 
  22348 /**
  22349  * External dependencies
  22350  */
  22351 
  22352 /**
  22353  * WordPress dependencies
  22354  */
  22355 
  22356 
  22357 
  22358 /**
  22359  * Internal dependencies
  22360  */
  22361 
  22362 
  22363 
  22364 function SeparatorEdit({
  22365   color,
  22366   setColor,
  22367   className
  22368 }) {
  22369   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["HorizontalRule"], Object(external_wp_blockEditor_["useBlockProps"])({
  22370     className: classnames_default()(className, {
  22371       'has-background': color.color,
  22372       [color.class]: color.class
  22373     }),
  22374     style: {
  22375       backgroundColor: color.color,
  22376       color: color.color
  22377     }
  22378   })), Object(external_wp_element_["createElement"])(separator_settings, {
  22379     color: color,
  22380     setColor: setColor
  22381   }));
  22382 }
  22383 
  22384 /* harmony default export */ var separator_edit = (Object(external_wp_blockEditor_["withColors"])('color', {
  22385   textColor: 'color'
  22386 })(SeparatorEdit));
  22387 
  22388 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/save.js
  22389 
  22390 
  22391 /**
  22392  * External dependencies
  22393  */
  22394 
  22395 /**
  22396  * WordPress dependencies
  22397  */
  22398 
  22399 
  22400 function separatorSave({
  22401   attributes
  22402 }) {
  22403   const {
  22404     color,
  22405     customColor
  22406   } = attributes; // the hr support changing color using border-color, since border-color
  22407   // is not yet supported in the color palette, we use background-color
  22408 
  22409   const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', color); // the dots styles uses text for the dots, to change those dots color is
  22410   // using color, not backgroundColor
  22411 
  22412   const colorClass = Object(external_wp_blockEditor_["getColorClassName"])('color', color);
  22413   const className = classnames_default()({
  22414     'has-text-color has-background': color || customColor,
  22415     [backgroundClass]: backgroundClass,
  22416     [colorClass]: colorClass
  22417   });
  22418   const style = {
  22419     backgroundColor: backgroundClass ? undefined : customColor,
  22420     color: colorClass ? undefined : customColor
  22421   };
  22422   return Object(external_wp_element_["createElement"])("hr", external_wp_blockEditor_["useBlockProps"].save({
  22423     className,
  22424     style
  22425   }));
  22426 }
  22427 
  22428 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/transforms.js
  22429 /**
  22430  * WordPress dependencies
  22431  */
  22432 
  22433 const separator_transforms_transforms = {
  22434   from: [{
  22435     type: 'enter',
  22436     regExp: /^-{3,}$/,
  22437     transform: () => Object(external_wp_blocks_["createBlock"])('core/separator')
  22438   }, {
  22439     type: 'raw',
  22440     selector: 'hr',
  22441     schema: {
  22442       hr: {}
  22443     }
  22444   }]
  22445 };
  22446 /* harmony default export */ var separator_transforms = (separator_transforms_transforms);
  22447 
  22448 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/separator/index.js
  22449 /**
  22450  * WordPress dependencies
  22451  */
  22452 
  22453 /**
  22454  * Internal dependencies
  22455  */
  22456 
  22457 
  22458 const separator_metadata = {
  22459   apiVersion: 2,
  22460   name: "core/separator",
  22461   title: "Separator",
  22462   category: "design",
  22463   description: "Create a break between ideas or sections with a horizontal separator.",
  22464   keywords: ["horizontal-line", "hr", "divider"],
  22465   textdomain: "default",
  22466   attributes: {
  22467     color: {
  22468       type: "string"
  22469     },
  22470     customColor: {
  22471       type: "string"
  22472     }
  22473   },
  22474   supports: {
  22475     anchor: true,
  22476     align: ["center", "wide", "full"]
  22477   },
  22478   styles: [{
  22479     name: "default",
  22480     label: "Default",
  22481     isDefault: true
  22482   }, {
  22483     name: "wide",
  22484     label: "Wide Line"
  22485   }, {
  22486     name: "dots",
  22487     label: "Dots"
  22488   }],
  22489   editorStyle: "wp-block-separator-editor",
  22490   style: "wp-block-separator"
  22491 };
  22492 
  22493 
  22494 const {
  22495   name: separator_name
  22496 } = separator_metadata;
  22497 
  22498 const build_module_separator_settings = {
  22499   icon: library_separator,
  22500   example: {
  22501     attributes: {
  22502       customColor: '#065174',
  22503       className: 'is-style-wide'
  22504     }
  22505   },
  22506   transforms: separator_transforms,
  22507   edit: separator_edit,
  22508   save: separatorSave
  22509 };
  22510 
  22511 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/shortcode.js
  22512 
  22513 
  22514 /**
  22515  * WordPress dependencies
  22516  */
  22517 
  22518 const shortcode = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  22519   viewBox: "0 0 24 24",
  22520   xmlns: "http://www.w3.org/2000/svg"
  22521 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  22522   d: "M16 4.2v1.5h2.5v12.5H16v1.5h4V4.2h-4zM4.2 19.8h4v-1.5H5.8V5.8h2.5V4.2h-4l-.1 15.6zm5.1-3.1l1.4.6 4-10-1.4-.6-4 10z"
  22523 }));
  22524 /* harmony default export */ var library_shortcode = (shortcode);
  22525 
  22526 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/icon/index.js
  22527 var build_module_icon = __webpack_require__("iClF");
  22528 
  22529 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/edit.js
  22530 
  22531 
  22532 /**
  22533  * WordPress dependencies
  22534  */
  22535 
  22536 
  22537 
  22538 
  22539 function ShortcodeEdit({
  22540   attributes,
  22541   setAttributes
  22542 }) {
  22543   const instanceId = Object(external_wp_compose_["useInstanceId"])(ShortcodeEdit);
  22544   const inputId = `blocks-shortcode-input-${instanceId}`;
  22545   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])({
  22546     className: 'components-placeholder'
  22547   }), Object(external_wp_element_["createElement"])("label", {
  22548     htmlFor: inputId,
  22549     className: "components-placeholder__label"
  22550   }, Object(external_wp_element_["createElement"])(build_module_icon["a" /* default */], {
  22551     icon: library_shortcode
  22552   }), Object(external_wp_i18n_["__"])('Shortcode')), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PlainText"], {
  22553     className: "blocks-shortcode__textarea",
  22554     id: inputId,
  22555     value: attributes.text,
  22556     "aria-label": Object(external_wp_i18n_["__"])('Shortcode text'),
  22557     placeholder: Object(external_wp_i18n_["__"])('Write shortcode here…'),
  22558     onChange: text => setAttributes({
  22559       text
  22560     })
  22561   }));
  22562 }
  22563 
  22564 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/save.js
  22565 
  22566 
  22567 /**
  22568  * WordPress dependencies
  22569  */
  22570 
  22571 function shortcode_save_save({
  22572   attributes
  22573 }) {
  22574   return Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, attributes.text);
  22575 }
  22576 
  22577 // EXTERNAL MODULE: external ["wp","autop"]
  22578 var external_wp_autop_ = __webpack_require__("UuzZ");
  22579 
  22580 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/transforms.js
  22581 /**
  22582  * WordPress dependencies
  22583  */
  22584 
  22585 const shortcode_transforms_transforms = {
  22586   from: [{
  22587     type: 'shortcode',
  22588     // Per "Shortcode names should be all lowercase and use all
  22589     // letters, but numbers and underscores should work fine too.
  22590     // Be wary of using hyphens (dashes), you'll be better off not
  22591     // using them." in https://codex.wordpress.org/Shortcode_API
  22592     // Require that the first character be a letter. This notably
  22593     // prevents footnote markings ([1]) from being caught as
  22594     // shortcodes.
  22595     tag: '[a-z][a-z0-9_-]*',
  22596     attributes: {
  22597       text: {
  22598         type: 'string',
  22599         shortcode: (attrs, {
  22600           content
  22601         }) => {
  22602           return Object(external_wp_autop_["removep"])(Object(external_wp_autop_["autop"])(content));
  22603         }
  22604       }
  22605     },
  22606     priority: 20
  22607   }]
  22608 };
  22609 /* harmony default export */ var shortcode_transforms = (shortcode_transforms_transforms);
  22610 
  22611 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/shortcode/index.js
  22612 /**
  22613  * WordPress dependencies
  22614  */
  22615 
  22616 /**
  22617  * Internal dependencies
  22618  */
  22619 
  22620 
  22621 
  22622 
  22623 const shortcode_metadata = {
  22624   apiVersion: 2,
  22625   name: "core/shortcode",
  22626   title: "Shortcode",
  22627   category: "widgets",
  22628   description: "Insert additional custom elements with a WordPress shortcode.",
  22629   textdomain: "default",
  22630   attributes: {
  22631     text: {
  22632       type: "string",
  22633       source: "html"
  22634     }
  22635   },
  22636   supports: {
  22637     className: false,
  22638     customClassName: false,
  22639     html: false
  22640   },
  22641   editorStyle: "wp-block-shortcode-editor"
  22642 };
  22643 const {
  22644   name: shortcode_name
  22645 } = shortcode_metadata;
  22646 
  22647 const shortcode_settings = {
  22648   icon: library_shortcode,
  22649   transforms: shortcode_transforms,
  22650   edit: ShortcodeEdit,
  22651   save: shortcode_save_save
  22652 };
  22653 
  22654 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/resize-corner-n-e.js
  22655 
  22656 
  22657 /**
  22658  * WordPress dependencies
  22659  */
  22660 
  22661 const resizeCornerNE = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  22662   viewBox: "0 0 24 24",
  22663   xmlns: "http://www.w3.org/2000/svg"
  22664 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  22665   d: "M12.5 4.2v1.6h4.7L5.8 17.2V12H4.2v7.8H12v-1.6H6.8L18.2 6.8v4.7h1.6V4.2z"
  22666 }));
  22667 /* harmony default export */ var resize_corner_n_e = (resizeCornerNE);
  22668 
  22669 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/spacer/edit.js
  22670 
  22671 
  22672 /**
  22673  * External dependencies
  22674  */
  22675 
  22676 /**
  22677  * WordPress dependencies
  22678  */
  22679 
  22680 
  22681 
  22682 
  22683 
  22684 
  22685 
  22686 
  22687 const MIN_SPACER_HEIGHT = 1;
  22688 const MAX_SPACER_HEIGHT = 500;
  22689 const MIN_SPACER_WIDTH = 1;
  22690 const MAX_SPACER_WIDTH = 500;
  22691 
  22692 const SpacerEdit = ({
  22693   attributes,
  22694   isSelected,
  22695   setAttributes,
  22696   onResizeStart,
  22697   onResizeStop,
  22698   context
  22699 }) => {
  22700   const {
  22701     orientation
  22702   } = context;
  22703   const [isResizing, setIsResizing] = Object(external_wp_element_["useState"])(false);
  22704   const {
  22705     height,
  22706     width
  22707   } = attributes;
  22708 
  22709   const updateHeight = value => {
  22710     setAttributes({
  22711       height: value
  22712     });
  22713   };
  22714 
  22715   const updateWidth = value => {
  22716     setAttributes({
  22717       width: value
  22718     });
  22719   };
  22720 
  22721   const handleOnResizeStart = (...args) => {
  22722     onResizeStart(...args);
  22723     setIsResizing(true);
  22724   };
  22725 
  22726   const handleOnVerticalResizeStop = (event, direction, elt, delta) => {
  22727     onResizeStop();
  22728     const spacerHeight = Math.min(parseInt(height + delta.height, 10), MAX_SPACER_HEIGHT);
  22729     updateHeight(spacerHeight);
  22730     setIsResizing(false);
  22731   };
  22732 
  22733   const handleOnHorizontalResizeStop = (event, direction, elt, delta) => {
  22734     onResizeStop();
  22735     const spacerWidth = Math.min(parseInt(width + delta.width, 10), MAX_SPACER_WIDTH);
  22736     updateWidth(spacerWidth);
  22737     setIsResizing(false);
  22738   };
  22739 
  22740   const resizableBoxWithOrientation = blockOrientation => {
  22741     if (blockOrientation === 'horizontal') {
  22742       return Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], {
  22743         className: classnames_default()('block-library-spacer__resize-container', 'resize-horizontal', {
  22744           'is-selected': isSelected
  22745         }),
  22746         size: {
  22747           width,
  22748           height: 24
  22749         },
  22750         minWidth: MIN_SPACER_WIDTH,
  22751         enable: {
  22752           top: false,
  22753           right: true,
  22754           bottom: false,
  22755           left: false,
  22756           topRight: false,
  22757           bottomRight: false,
  22758           bottomLeft: false,
  22759           topLeft: false
  22760         },
  22761         onResizeStart: handleOnResizeStart,
  22762         onResizeStop: handleOnHorizontalResizeStop,
  22763         showHandle: isSelected,
  22764         __experimentalShowTooltip: true,
  22765         __experimentalTooltipProps: {
  22766           axis: 'x',
  22767           position: 'corner',
  22768           isVisible: isResizing
  22769         }
  22770       });
  22771     }
  22772 
  22773     return Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], {
  22774       className: classnames_default()('block-library-spacer__resize-container', {
  22775         'is-selected': isSelected
  22776       }),
  22777       size: {
  22778         height
  22779       },
  22780       minHeight: MIN_SPACER_HEIGHT,
  22781       enable: {
  22782         top: false,
  22783         right: false,
  22784         bottom: true,
  22785         left: false,
  22786         topRight: false,
  22787         bottomRight: false,
  22788         bottomLeft: false,
  22789         topLeft: false
  22790       },
  22791       onResizeStart: handleOnResizeStart,
  22792       onResizeStop: handleOnVerticalResizeStop,
  22793       showHandle: isSelected,
  22794       __experimentalShowTooltip: true,
  22795       __experimentalTooltipProps: {
  22796         axis: 'y',
  22797         position: 'bottom',
  22798         isVisible: isResizing
  22799       }
  22800     });
  22801   };
  22802 
  22803   Object(external_wp_element_["useEffect"])(() => {
  22804     if (orientation === 'horizontal' && !width) {
  22805       updateWidth(72);
  22806       updateHeight(0);
  22807     }
  22808   }, []);
  22809   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_primitives_["View"], Object(external_wp_blockEditor_["useBlockProps"])(), resizableBoxWithOrientation(orientation)), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  22810     title: Object(external_wp_i18n_["__"])('Spacer settings')
  22811   }, orientation === 'horizontal' && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  22812     label: Object(external_wp_i18n_["__"])('Width in pixels'),
  22813     min: MIN_SPACER_WIDTH,
  22814     max: Math.max(MAX_SPACER_WIDTH, width),
  22815     value: width,
  22816     onChange: updateWidth
  22817   }), orientation !== 'horizontal' && Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  22818     label: Object(external_wp_i18n_["__"])('Height in pixels'),
  22819     min: MIN_SPACER_HEIGHT,
  22820     max: Math.max(MAX_SPACER_HEIGHT, height),
  22821     value: height,
  22822     onChange: updateHeight
  22823   }))));
  22824 };
  22825 
  22826 /* harmony default export */ var spacer_edit = (Object(external_wp_compose_["compose"])([Object(external_wp_data_["withDispatch"])(dispatch => {
  22827   const {
  22828     toggleSelection
  22829   } = dispatch(external_wp_blockEditor_["store"]);
  22830   return {
  22831     onResizeStart: () => toggleSelection(false),
  22832     onResizeStop: () => toggleSelection(true)
  22833   };
  22834 }), external_wp_compose_["withInstanceId"]])(SpacerEdit));
  22835 
  22836 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/spacer/save.js
  22837 
  22838 
  22839 /**
  22840  * WordPress dependencies
  22841  */
  22842 
  22843 function spacer_save_save({
  22844   attributes
  22845 }) {
  22846   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  22847     style: {
  22848       height: attributes.height,
  22849       width: attributes.width
  22850     },
  22851     'aria-hidden': true
  22852   }));
  22853 }
  22854 
  22855 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/spacer/index.js
  22856 /**
  22857  * WordPress dependencies
  22858  */
  22859 
  22860 /**
  22861  * Internal dependencies
  22862  */
  22863 
  22864 
  22865 const spacer_metadata = {
  22866   apiVersion: 2,
  22867   name: "core/spacer",
  22868   title: "Spacer",
  22869   category: "design",
  22870   description: "Add white space between blocks and customize its height.",
  22871   textdomain: "default",
  22872   attributes: {
  22873     height: {
  22874       type: "number",
  22875       "default": 100
  22876     },
  22877     width: {
  22878       type: "number"
  22879     }
  22880   },
  22881   usesContext: ["orientation"],
  22882   supports: {
  22883     anchor: true
  22884   },
  22885   editorStyle: "wp-block-spacer-editor",
  22886   style: "wp-block-spacer"
  22887 };
  22888 
  22889 const {
  22890   name: spacer_name
  22891 } = spacer_metadata;
  22892 
  22893 const spacer_settings = {
  22894   icon: resize_corner_n_e,
  22895   edit: spacer_edit,
  22896   save: spacer_save_save
  22897 };
  22898 
  22899 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/block-table.js
  22900 
  22901 
  22902 /**
  22903  * WordPress dependencies
  22904  */
  22905 
  22906 const blockTable = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  22907   viewBox: "0 0 24 24",
  22908   xmlns: "http://www.w3.org/2000/svg"
  22909 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  22910   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM5 4.5h14c.3 0 .5.2.5.5v3.5h-15V5c0-.3.2-.5.5-.5zm8 5.5h6.5v3.5H13V10zm-1.5 3.5h-7V10h7v3.5zm-7 5.5v-4h7v4.5H5c-.3 0-.5-.2-.5-.5zm14.5.5h-6V15h6.5v4c0 .3-.2.5-.5.5z"
  22911 }));
  22912 /* harmony default export */ var block_table = (blockTable);
  22913 
  22914 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/deprecated.js
  22915 
  22916 
  22917 /**
  22918  * External dependencies
  22919  */
  22920 
  22921 /**
  22922  * WordPress dependencies
  22923  */
  22924 
  22925 
  22926 const deprecated_supports = {
  22927   align: true
  22928 }; // As the previous arbitrary colors won't match theme color palettes, the hex
  22929 // value will be mapped to the style.color.background attribute as if it was
  22930 // a custom color selection.
  22931 
  22932 const oldColors = {
  22933   'subtle-light-gray': '#f3f4f5',
  22934   'subtle-pale-green': '#e9fbe5',
  22935   'subtle-pale-blue': '#e7f5fe',
  22936   'subtle-pale-pink': '#fcf0ef'
  22937 };
  22938 const table_deprecated_deprecated = [// Deprecation migrating table block to use colors block support feature.
  22939 {
  22940   attributes: {
  22941     hasFixedLayout: {
  22942       type: 'boolean',
  22943       default: false
  22944     },
  22945     backgroundColor: {
  22946       type: 'string'
  22947     },
  22948     caption: {
  22949       type: 'string',
  22950       source: 'html',
  22951       selector: 'figcaption',
  22952       default: ''
  22953     },
  22954     head: {
  22955       type: 'array',
  22956       default: [],
  22957       source: 'query',
  22958       selector: 'thead tr',
  22959       query: {
  22960         cells: {
  22961           type: 'array',
  22962           default: [],
  22963           source: 'query',
  22964           selector: 'td,th',
  22965           query: {
  22966             content: {
  22967               type: 'string',
  22968               source: 'html'
  22969             },
  22970             tag: {
  22971               type: 'string',
  22972               default: 'td',
  22973               source: 'tag'
  22974             },
  22975             scope: {
  22976               type: 'string',
  22977               source: 'attribute',
  22978               attribute: 'scope'
  22979             },
  22980             align: {
  22981               type: 'string',
  22982               source: 'attribute',
  22983               attribute: 'data-align'
  22984             }
  22985           }
  22986         }
  22987       }
  22988     },
  22989     body: {
  22990       type: 'array',
  22991       default: [],
  22992       source: 'query',
  22993       selector: 'tbody tr',
  22994       query: {
  22995         cells: {
  22996           type: 'array',
  22997           default: [],
  22998           source: 'query',
  22999           selector: 'td,th',
  23000           query: {
  23001             content: {
  23002               type: 'string',
  23003               source: 'html'
  23004             },
  23005             tag: {
  23006               type: 'string',
  23007               default: 'td',
  23008               source: 'tag'
  23009             },
  23010             scope: {
  23011               type: 'string',
  23012               source: 'attribute',
  23013               attribute: 'scope'
  23014             },
  23015             align: {
  23016               type: 'string',
  23017               source: 'attribute',
  23018               attribute: 'data-align'
  23019             }
  23020           }
  23021         }
  23022       }
  23023     },
  23024     foot: {
  23025       type: 'array',
  23026       default: [],
  23027       source: 'query',
  23028       selector: 'tfoot tr',
  23029       query: {
  23030         cells: {
  23031           type: 'array',
  23032           default: [],
  23033           source: 'query',
  23034           selector: 'td,th',
  23035           query: {
  23036             content: {
  23037               type: 'string',
  23038               source: 'html'
  23039             },
  23040             tag: {
  23041               type: 'string',
  23042               default: 'td',
  23043               source: 'tag'
  23044             },
  23045             scope: {
  23046               type: 'string',
  23047               source: 'attribute',
  23048               attribute: 'scope'
  23049             },
  23050             align: {
  23051               type: 'string',
  23052               source: 'attribute',
  23053               attribute: 'data-align'
  23054             }
  23055           }
  23056         }
  23057       }
  23058     }
  23059   },
  23060   supports: {
  23061     anchor: true,
  23062     align: true,
  23063     __experimentalSelector: '.wp-block-table > table'
  23064   },
  23065   save: ({
  23066     attributes
  23067   }) => {
  23068     const {
  23069       hasFixedLayout,
  23070       head,
  23071       body,
  23072       foot,
  23073       backgroundColor,
  23074       caption
  23075     } = attributes;
  23076     const isEmpty = !head.length && !body.length && !foot.length;
  23077 
  23078     if (isEmpty) {
  23079       return null;
  23080     }
  23081 
  23082     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  23083     const classes = classnames_default()(backgroundClass, {
  23084       'has-fixed-layout': hasFixedLayout,
  23085       'has-background': !!backgroundClass
  23086     });
  23087     const hasCaption = !external_wp_blockEditor_["RichText"].isEmpty(caption);
  23088 
  23089     const Section = ({
  23090       type,
  23091       rows
  23092     }) => {
  23093       if (!rows.length) {
  23094         return null;
  23095       }
  23096 
  23097       const Tag = `t${type}`;
  23098       return Object(external_wp_element_["createElement"])(Tag, null, rows.map(({
  23099         cells
  23100       }, rowIndex) => Object(external_wp_element_["createElement"])("tr", {
  23101         key: rowIndex
  23102       }, cells.map(({
  23103         content,
  23104         tag,
  23105         scope,
  23106         align
  23107       }, cellIndex) => {
  23108         const cellClasses = classnames_default()({
  23109           [`has-text-align-${align}`]: align
  23110         });
  23111         return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  23112           className: cellClasses ? cellClasses : undefined,
  23113           "data-align": align,
  23114           tagName: tag,
  23115           value: content,
  23116           key: cellIndex,
  23117           scope: tag === 'th' ? scope : undefined
  23118         });
  23119       }))));
  23120     };
  23121 
  23122     return Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])("table", {
  23123       className: classes === '' ? undefined : classes
  23124     }, Object(external_wp_element_["createElement"])(Section, {
  23125       type: "head",
  23126       rows: head
  23127     }), Object(external_wp_element_["createElement"])(Section, {
  23128       type: "body",
  23129       rows: body
  23130     }), Object(external_wp_element_["createElement"])(Section, {
  23131       type: "foot",
  23132       rows: foot
  23133     })), hasCaption && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  23134       tagName: "figcaption",
  23135       value: caption
  23136     }));
  23137   },
  23138   isEligible: attributes => {
  23139     return attributes.backgroundColor && !attributes.style;
  23140   },
  23141   // This version is the first to introduce the style attribute to the
  23142   // table block. As a result, we'll explicitly override that.
  23143   migrate: attributes => {
  23144     return { ...attributes,
  23145       backgroundColor: undefined,
  23146       style: {
  23147         color: {
  23148           background: oldColors[attributes.backgroundColor]
  23149         }
  23150       }
  23151     };
  23152   }
  23153 }, {
  23154   attributes: {
  23155     hasFixedLayout: {
  23156       type: 'boolean',
  23157       default: false
  23158     },
  23159     backgroundColor: {
  23160       type: 'string'
  23161     },
  23162     head: {
  23163       type: 'array',
  23164       default: [],
  23165       source: 'query',
  23166       selector: 'thead tr',
  23167       query: {
  23168         cells: {
  23169           type: 'array',
  23170           default: [],
  23171           source: 'query',
  23172           selector: 'td,th',
  23173           query: {
  23174             content: {
  23175               type: 'string',
  23176               source: 'html'
  23177             },
  23178             tag: {
  23179               type: 'string',
  23180               default: 'td',
  23181               source: 'tag'
  23182             },
  23183             scope: {
  23184               type: 'string',
  23185               source: 'attribute',
  23186               attribute: 'scope'
  23187             }
  23188           }
  23189         }
  23190       }
  23191     },
  23192     body: {
  23193       type: 'array',
  23194       default: [],
  23195       source: 'query',
  23196       selector: 'tbody tr',
  23197       query: {
  23198         cells: {
  23199           type: 'array',
  23200           default: [],
  23201           source: 'query',
  23202           selector: 'td,th',
  23203           query: {
  23204             content: {
  23205               type: 'string',
  23206               source: 'html'
  23207             },
  23208             tag: {
  23209               type: 'string',
  23210               default: 'td',
  23211               source: 'tag'
  23212             },
  23213             scope: {
  23214               type: 'string',
  23215               source: 'attribute',
  23216               attribute: 'scope'
  23217             }
  23218           }
  23219         }
  23220       }
  23221     },
  23222     foot: {
  23223       type: 'array',
  23224       default: [],
  23225       source: 'query',
  23226       selector: 'tfoot tr',
  23227       query: {
  23228         cells: {
  23229           type: 'array',
  23230           default: [],
  23231           source: 'query',
  23232           selector: 'td,th',
  23233           query: {
  23234             content: {
  23235               type: 'string',
  23236               source: 'html'
  23237             },
  23238             tag: {
  23239               type: 'string',
  23240               default: 'td',
  23241               source: 'tag'
  23242             },
  23243             scope: {
  23244               type: 'string',
  23245               source: 'attribute',
  23246               attribute: 'scope'
  23247             }
  23248           }
  23249         }
  23250       }
  23251     }
  23252   },
  23253   supports: deprecated_supports,
  23254 
  23255   save({
  23256     attributes
  23257   }) {
  23258     const {
  23259       hasFixedLayout,
  23260       head,
  23261       body,
  23262       foot,
  23263       backgroundColor
  23264     } = attributes;
  23265     const isEmpty = !head.length && !body.length && !foot.length;
  23266 
  23267     if (isEmpty) {
  23268       return null;
  23269     }
  23270 
  23271     const backgroundClass = Object(external_wp_blockEditor_["getColorClassName"])('background-color', backgroundColor);
  23272     const classes = classnames_default()(backgroundClass, {
  23273       'has-fixed-layout': hasFixedLayout,
  23274       'has-background': !!backgroundClass
  23275     });
  23276 
  23277     const Section = ({
  23278       type,
  23279       rows
  23280     }) => {
  23281       if (!rows.length) {
  23282         return null;
  23283       }
  23284 
  23285       const Tag = `t${type}`;
  23286       return Object(external_wp_element_["createElement"])(Tag, null, rows.map(({
  23287         cells
  23288       }, rowIndex) => Object(external_wp_element_["createElement"])("tr", {
  23289         key: rowIndex
  23290       }, cells.map(({
  23291         content,
  23292         tag,
  23293         scope
  23294       }, cellIndex) => Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  23295         tagName: tag,
  23296         value: content,
  23297         key: cellIndex,
  23298         scope: tag === 'th' ? scope : undefined
  23299       })))));
  23300     };
  23301 
  23302     return Object(external_wp_element_["createElement"])("table", {
  23303       className: classes
  23304     }, Object(external_wp_element_["createElement"])(Section, {
  23305       type: "head",
  23306       rows: head
  23307     }), Object(external_wp_element_["createElement"])(Section, {
  23308       type: "body",
  23309       rows: body
  23310     }), Object(external_wp_element_["createElement"])(Section, {
  23311       type: "foot",
  23312       rows: foot
  23313     }));
  23314   }
  23315 
  23316 }];
  23317 /* harmony default export */ var table_deprecated = (table_deprecated_deprecated);
  23318 
  23319 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/align-left.js
  23320 var align_left = __webpack_require__("fPbg");
  23321 
  23322 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/align-center.js
  23323 var align_center = __webpack_require__("plpT");
  23324 
  23325 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/align-right.js
  23326 var align_right = __webpack_require__("ziDm");
  23327 
  23328 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table-row-before.js
  23329 
  23330 
  23331 /**
  23332  * WordPress dependencies
  23333  */
  23334 
  23335 const tableRowBefore = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  23336   xmlns: "http://www.w3.org/2000/svg",
  23337   viewBox: "-2 -2 24 24"
  23338 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  23339   d: "M6.656 6.464h2.88v2.88h1.408v-2.88h2.88V5.12h-2.88V2.24H9.536v2.88h-2.88zM0 17.92V0h20.48v17.92H0zm7.68-2.56h5.12v-3.84H7.68v3.84zm-6.4 0H6.4v-3.84H1.28v3.84zM19.2 1.28H1.28v9.024H19.2V1.28zm0 10.24h-5.12v3.84h5.12v-3.84zM6.656 6.464h2.88v2.88h1.408v-2.88h2.88V5.12h-2.88V2.24H9.536v2.88h-2.88zM0 17.92V0h20.48v17.92H0zm7.68-2.56h5.12v-3.84H7.68v3.84zm-6.4 0H6.4v-3.84H1.28v3.84zM19.2 1.28H1.28v9.024H19.2V1.28zm0 10.24h-5.12v3.84h5.12v-3.84z"
  23340 }));
  23341 /* harmony default export */ var table_row_before = (tableRowBefore);
  23342 
  23343 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table-row-after.js
  23344 
  23345 
  23346 /**
  23347  * WordPress dependencies
  23348  */
  23349 
  23350 const tableRowAfter = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  23351   xmlns: "http://www.w3.org/2000/svg",
  23352   viewBox: "-2 -2 24 24"
  23353 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  23354   d: "M13.824 10.176h-2.88v-2.88H9.536v2.88h-2.88v1.344h2.88v2.88h1.408v-2.88h2.88zM0 17.92V0h20.48v17.92H0zM6.4 1.28H1.28v3.84H6.4V1.28zm6.4 0H7.68v3.84h5.12V1.28zm6.4 0h-5.12v3.84h5.12V1.28zm0 5.056H1.28v9.024H19.2V6.336z"
  23355 }));
  23356 /* harmony default export */ var table_row_after = (tableRowAfter);
  23357 
  23358 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table-row-delete.js
  23359 
  23360 
  23361 /**
  23362  * WordPress dependencies
  23363  */
  23364 
  23365 const tableRowDelete = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  23366   xmlns: "http://www.w3.org/2000/svg",
  23367   viewBox: "-2 -2 24 24"
  23368 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  23369   d: "M17.728 11.456L14.592 8.32l3.2-3.2-1.536-1.536-3.2 3.2L9.92 3.648 8.384 5.12l3.2 3.2-3.264 3.264 1.536 1.536 3.264-3.264 3.136 3.136 1.472-1.536zM0 17.92V0h20.48v17.92H0zm19.2-6.4h-.448l-1.28-1.28H19.2V6.4h-1.792l1.28-1.28h.512V1.28H1.28v3.84h6.208l1.28 1.28H1.28v3.84h7.424l-1.28 1.28H1.28v3.84H19.2v-3.84z"
  23370 }));
  23371 /* harmony default export */ var table_row_delete = (tableRowDelete);
  23372 
  23373 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table-column-before.js
  23374 
  23375 
  23376 /**
  23377  * WordPress dependencies
  23378  */
  23379 
  23380 const tableColumnBefore = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  23381   xmlns: "http://www.w3.org/2000/svg",
  23382   viewBox: "-2 -2 24 24"
  23383 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  23384   d: "M6.4 3.776v3.648H2.752v1.792H6.4v3.648h1.728V9.216h3.712V7.424H8.128V3.776zM0 17.92V0h20.48v17.92H0zM12.8 1.28H1.28v14.08H12.8V1.28zm6.4 0h-5.12v3.84h5.12V1.28zm0 5.12h-5.12v3.84h5.12V6.4zm0 5.12h-5.12v3.84h5.12v-3.84z"
  23385 }));
  23386 /* harmony default export */ var table_column_before = (tableColumnBefore);
  23387 
  23388 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table-column-after.js
  23389 
  23390 
  23391 /**
  23392  * WordPress dependencies
  23393  */
  23394 
  23395 const tableColumnAfter = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  23396   xmlns: "http://www.w3.org/2000/svg",
  23397   viewBox: "-2 -2 24 24"
  23398 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  23399   d: "M14.08 12.864V9.216h3.648V7.424H14.08V3.776h-1.728v3.648H8.64v1.792h3.712v3.648zM0 17.92V0h20.48v17.92H0zM6.4 1.28H1.28v3.84H6.4V1.28zm0 5.12H1.28v3.84H6.4V6.4zm0 5.12H1.28v3.84H6.4v-3.84zM19.2 1.28H7.68v14.08H19.2V1.28z"
  23400 }));
  23401 /* harmony default export */ var table_column_after = (tableColumnAfter);
  23402 
  23403 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table-column-delete.js
  23404 
  23405 
  23406 /**
  23407  * WordPress dependencies
  23408  */
  23409 
  23410 const tableColumnDelete = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  23411   xmlns: "http://www.w3.org/2000/svg",
  23412   viewBox: "-2 -2 24 24"
  23413 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  23414   d: "M6.4 9.98L7.68 8.7v-.256L6.4 7.164V9.98zm6.4-1.532l1.28-1.28V9.92L12.8 8.64v-.192zm7.68 9.472V0H0v17.92h20.48zm-1.28-2.56h-5.12v-1.024l-.256.256-1.024-1.024v1.792H7.68v-1.792l-1.024 1.024-.256-.256v1.024H1.28V1.28H6.4v2.368l.704-.704.576.576V1.216h5.12V3.52l.96-.96.32.32V1.216h5.12V15.36zm-5.76-2.112l-3.136-3.136-3.264 3.264-1.536-1.536 3.264-3.264L5.632 5.44l1.536-1.536 3.136 3.136 3.2-3.2 1.536 1.536-3.2 3.2 3.136 3.136-1.536 1.536z"
  23415 }));
  23416 /* harmony default export */ var table_column_delete = (tableColumnDelete);
  23417 
  23418 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/table.js
  23419 
  23420 
  23421 /**
  23422  * WordPress dependencies
  23423  */
  23424 
  23425 const table = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  23426   xmlns: "http://www.w3.org/2000/svg",
  23427   viewBox: "0 0 24 24"
  23428 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  23429   d: "M4 6v11.5h16V6H4zm1.5 1.5h6V11h-6V7.5zm0 8.5v-3.5h6V16h-6zm13 0H13v-3.5h5.5V16zM13 11V7.5h5.5V11H13z"
  23430 }));
  23431 /* harmony default export */ var library_table = (table);
  23432 
  23433 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/state.js
  23434 /**
  23435  * External dependencies
  23436  */
  23437 
  23438 const INHERITED_COLUMN_ATTRIBUTES = ['align'];
  23439 /**
  23440  * Creates a table state.
  23441  *
  23442  * @param {Object} options
  23443  * @param {number} options.rowCount    Row count for the table to create.
  23444  * @param {number} options.columnCount Column count for the table to create.
  23445  *
  23446  * @return {Object} New table state.
  23447  */
  23448 
  23449 function createTable({
  23450   rowCount,
  23451   columnCount
  23452 }) {
  23453   return {
  23454     body: Object(external_lodash_["times"])(rowCount, () => ({
  23455       cells: Object(external_lodash_["times"])(columnCount, () => ({
  23456         content: '',
  23457         tag: 'td'
  23458       }))
  23459     }))
  23460   };
  23461 }
  23462 /**
  23463  * Returns the first row in the table.
  23464  *
  23465  * @param {Object} state Current table state.
  23466  *
  23467  * @return {Object} The first table row.
  23468  */
  23469 
  23470 function getFirstRow(state) {
  23471   if (!isEmptyTableSection(state.head)) {
  23472     return state.head[0];
  23473   }
  23474 
  23475   if (!isEmptyTableSection(state.body)) {
  23476     return state.body[0];
  23477   }
  23478 
  23479   if (!isEmptyTableSection(state.foot)) {
  23480     return state.foot[0];
  23481   }
  23482 }
  23483 /**
  23484  * Gets an attribute for a cell.
  23485  *
  23486  * @param {Object} state 		 Current table state.
  23487  * @param {Object} cellLocation  The location of the cell
  23488  * @param {string} attributeName The name of the attribute to get the value of.
  23489  *
  23490  * @return {*} The attribute value.
  23491  */
  23492 
  23493 function getCellAttribute(state, cellLocation, attributeName) {
  23494   const {
  23495     sectionName,
  23496     rowIndex,
  23497     columnIndex
  23498   } = cellLocation;
  23499   return Object(external_lodash_["get"])(state, [sectionName, rowIndex, 'cells', columnIndex, attributeName]);
  23500 }
  23501 /**
  23502  * Returns updated cell attributes after applying the `updateCell` function to the selection.
  23503  *
  23504  * @param {Object}   state      The block attributes.
  23505  * @param {Object}   selection  The selection of cells to update.
  23506  * @param {Function} updateCell A function to update the selected cell attributes.
  23507  *
  23508  * @return {Object} New table state including the updated cells.
  23509  */
  23510 
  23511 function updateSelectedCell(state, selection, updateCell) {
  23512   if (!selection) {
  23513     return state;
  23514   }
  23515 
  23516   const tableSections = Object(external_lodash_["pick"])(state, ['head', 'body', 'foot']);
  23517   const {
  23518     sectionName: selectionSectionName,
  23519     rowIndex: selectionRowIndex
  23520   } = selection;
  23521   return Object(external_lodash_["mapValues"])(tableSections, (section, sectionName) => {
  23522     if (selectionSectionName && selectionSectionName !== sectionName) {
  23523       return section;
  23524     }
  23525 
  23526     return section.map((row, rowIndex) => {
  23527       if (selectionRowIndex && selectionRowIndex !== rowIndex) {
  23528         return row;
  23529       }
  23530 
  23531       return {
  23532         cells: row.cells.map((cellAttributes, columnIndex) => {
  23533           const cellLocation = {
  23534             sectionName,
  23535             columnIndex,
  23536             rowIndex
  23537           };
  23538 
  23539           if (!isCellSelected(cellLocation, selection)) {
  23540             return cellAttributes;
  23541           }
  23542 
  23543           return updateCell(cellAttributes);
  23544         })
  23545       };
  23546     });
  23547   });
  23548 }
  23549 /**
  23550  * Returns whether the cell at `cellLocation` is included in the selection `selection`.
  23551  *
  23552  * @param {Object} cellLocation An object containing cell location properties.
  23553  * @param {Object} selection    An object containing selection properties.
  23554  *
  23555  * @return {boolean} True if the cell is selected, false otherwise.
  23556  */
  23557 
  23558 function isCellSelected(cellLocation, selection) {
  23559   if (!cellLocation || !selection) {
  23560     return false;
  23561   }
  23562 
  23563   switch (selection.type) {
  23564     case 'column':
  23565       return selection.type === 'column' && cellLocation.columnIndex === selection.columnIndex;
  23566 
  23567     case 'cell':
  23568       return selection.type === 'cell' && cellLocation.sectionName === selection.sectionName && cellLocation.columnIndex === selection.columnIndex && cellLocation.rowIndex === selection.rowIndex;
  23569   }
  23570 }
  23571 /**
  23572  * Inserts a row in the table state.
  23573  *
  23574  * @param {Object} state               Current table state.
  23575  * @param {Object} options
  23576  * @param {string} options.sectionName Section in which to insert the row.
  23577  * @param {number} options.rowIndex    Row index at which to insert the row.
  23578  * @param {number} options.columnCount Column count for the table to create.
  23579  *
  23580  * @return {Object} New table state.
  23581  */
  23582 
  23583 function insertRow(state, {
  23584   sectionName,
  23585   rowIndex,
  23586   columnCount
  23587 }) {
  23588   const firstRow = getFirstRow(state);
  23589   const cellCount = columnCount === undefined ? Object(external_lodash_["get"])(firstRow, ['cells', 'length']) : columnCount; // Bail early if the function cannot determine how many cells to add.
  23590 
  23591   if (!cellCount) {
  23592     return state;
  23593   }
  23594 
  23595   return {
  23596     [sectionName]: [...state[sectionName].slice(0, rowIndex), {
  23597       cells: Object(external_lodash_["times"])(cellCount, index => {
  23598         const firstCellInColumn = Object(external_lodash_["get"])(firstRow, ['cells', index], {});
  23599         const inheritedAttributes = Object(external_lodash_["pick"])(firstCellInColumn, INHERITED_COLUMN_ATTRIBUTES);
  23600         return { ...inheritedAttributes,
  23601           content: '',
  23602           tag: sectionName === 'head' ? 'th' : 'td'
  23603         };
  23604       })
  23605     }, ...state[sectionName].slice(rowIndex)]
  23606   };
  23607 }
  23608 /**
  23609  * Deletes a row from the table state.
  23610  *
  23611  * @param {Object} state               Current table state.
  23612  * @param {Object} options
  23613  * @param {string} options.sectionName Section in which to delete the row.
  23614  * @param {number} options.rowIndex    Row index to delete.
  23615  *
  23616  * @return {Object} New table state.
  23617  */
  23618 
  23619 function deleteRow(state, {
  23620   sectionName,
  23621   rowIndex
  23622 }) {
  23623   return {
  23624     [sectionName]: state[sectionName].filter((row, index) => index !== rowIndex)
  23625   };
  23626 }
  23627 /**
  23628  * Inserts a column in the table state.
  23629  *
  23630  * @param {Object} state               Current table state.
  23631  * @param {Object} options
  23632  * @param {number} options.columnIndex Column index at which to insert the column.
  23633  *
  23634  * @return {Object} New table state.
  23635  */
  23636 
  23637 function insertColumn(state, {
  23638   columnIndex
  23639 }) {
  23640   const tableSections = Object(external_lodash_["pick"])(state, ['head', 'body', 'foot']);
  23641   return Object(external_lodash_["mapValues"])(tableSections, (section, sectionName) => {
  23642     // Bail early if the table section is empty.
  23643     if (isEmptyTableSection(section)) {
  23644       return section;
  23645     }
  23646 
  23647     return section.map(row => {
  23648       // Bail early if the row is empty or it's an attempt to insert past
  23649       // the last possible index of the array.
  23650       if (isEmptyRow(row) || row.cells.length < columnIndex) {
  23651         return row;
  23652       }
  23653 
  23654       return {
  23655         cells: [...row.cells.slice(0, columnIndex), {
  23656           content: '',
  23657           tag: sectionName === 'head' ? 'th' : 'td'
  23658         }, ...row.cells.slice(columnIndex)]
  23659       };
  23660     });
  23661   });
  23662 }
  23663 /**
  23664  * Deletes a column from the table state.
  23665  *
  23666  * @param {Object} state               Current table state.
  23667  * @param {Object} options
  23668  * @param {number} options.columnIndex Column index to delete.
  23669  *
  23670  * @return {Object} New table state.
  23671  */
  23672 
  23673 function deleteColumn(state, {
  23674   columnIndex
  23675 }) {
  23676   const tableSections = Object(external_lodash_["pick"])(state, ['head', 'body', 'foot']);
  23677   return Object(external_lodash_["mapValues"])(tableSections, section => {
  23678     // Bail early if the table section is empty.
  23679     if (isEmptyTableSection(section)) {
  23680       return section;
  23681     }
  23682 
  23683     return section.map(row => ({
  23684       cells: row.cells.length >= columnIndex ? row.cells.filter((cell, index) => index !== columnIndex) : row.cells
  23685     })).filter(row => row.cells.length);
  23686   });
  23687 }
  23688 /**
  23689  * Toggles the existance of a section.
  23690  *
  23691  * @param {Object} state       Current table state.
  23692  * @param {string} sectionName Name of the section to toggle.
  23693  *
  23694  * @return {Object} New table state.
  23695  */
  23696 
  23697 function toggleSection(state, sectionName) {
  23698   // Section exists, replace it with an empty row to remove it.
  23699   if (!isEmptyTableSection(state[sectionName])) {
  23700     return {
  23701       [sectionName]: []
  23702     };
  23703   } // Get the length of the first row of the body to use when creating the header.
  23704 
  23705 
  23706   const columnCount = Object(external_lodash_["get"])(state, ['body', 0, 'cells', 'length'], 1); // Section doesn't exist, insert an empty row to create the section.
  23707 
  23708   return insertRow(state, {
  23709     sectionName,
  23710     rowIndex: 0,
  23711     columnCount
  23712   });
  23713 }
  23714 /**
  23715  * Determines whether a table section is empty.
  23716  *
  23717  * @param {Object} section Table section state.
  23718  *
  23719  * @return {boolean} True if the table section is empty, false otherwise.
  23720  */
  23721 
  23722 function isEmptyTableSection(section) {
  23723   return !section || !section.length || Object(external_lodash_["every"])(section, isEmptyRow);
  23724 }
  23725 /**
  23726  * Determines whether a table row is empty.
  23727  *
  23728  * @param {Object} row Table row state.
  23729  *
  23730  * @return {boolean} True if the table section is empty, false otherwise.
  23731  */
  23732 
  23733 function isEmptyRow(row) {
  23734   return !(row.cells && row.cells.length);
  23735 }
  23736 
  23737 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/edit.js
  23738 
  23739 
  23740 /**
  23741  * External dependencies
  23742  */
  23743 
  23744 /**
  23745  * WordPress dependencies
  23746  */
  23747 
  23748 
  23749 
  23750 
  23751 
  23752 
  23753 
  23754 /**
  23755  * Internal dependencies
  23756  */
  23757 
  23758 
  23759 const ALIGNMENT_CONTROLS = [{
  23760   icon: align_left["a" /* default */],
  23761   title: Object(external_wp_i18n_["__"])('Align column left'),
  23762   align: 'left'
  23763 }, {
  23764   icon: align_center["a" /* default */],
  23765   title: Object(external_wp_i18n_["__"])('Align column center'),
  23766   align: 'center'
  23767 }, {
  23768   icon: align_right["a" /* default */],
  23769   title: Object(external_wp_i18n_["__"])('Align column right'),
  23770   align: 'right'
  23771 }];
  23772 const cellAriaLabel = {
  23773   head: Object(external_wp_i18n_["__"])('Header cell text'),
  23774   body: Object(external_wp_i18n_["__"])('Body cell text'),
  23775   foot: Object(external_wp_i18n_["__"])('Footer cell text')
  23776 };
  23777 const edit_placeholder = {
  23778   head: Object(external_wp_i18n_["__"])('Header label'),
  23779   foot: Object(external_wp_i18n_["__"])('Footer label')
  23780 };
  23781 
  23782 function TSection({
  23783   name,
  23784   ...props
  23785 }) {
  23786   const TagName = `t${name}`;
  23787   return Object(external_wp_element_["createElement"])(TagName, props);
  23788 }
  23789 
  23790 function TableEdit({
  23791   attributes,
  23792   setAttributes,
  23793   insertBlocksAfter,
  23794   isSelected
  23795 }) {
  23796   const {
  23797     hasFixedLayout,
  23798     caption,
  23799     head,
  23800     foot
  23801   } = attributes;
  23802   const [initialRowCount, setInitialRowCount] = Object(external_wp_element_["useState"])(2);
  23803   const [initialColumnCount, setInitialColumnCount] = Object(external_wp_element_["useState"])(2);
  23804   const [selectedCell, setSelectedCell] = Object(external_wp_element_["useState"])();
  23805   const colorProps = Object(external_wp_blockEditor_["__experimentalUseColorProps"])(attributes);
  23806   const borderProps = Object(external_wp_blockEditor_["__experimentalUseBorderProps"])(attributes);
  23807   /**
  23808    * Updates the initial column count used for table creation.
  23809    *
  23810    * @param {number} count New initial column count.
  23811    */
  23812 
  23813   function onChangeInitialColumnCount(count) {
  23814     setInitialColumnCount(count);
  23815   }
  23816   /**
  23817    * Updates the initial row count used for table creation.
  23818    *
  23819    * @param {number} count New initial row count.
  23820    */
  23821 
  23822 
  23823   function onChangeInitialRowCount(count) {
  23824     setInitialRowCount(count);
  23825   }
  23826   /**
  23827    * Creates a table based on dimensions in local state.
  23828    *
  23829    * @param {Object} event Form submit event.
  23830    */
  23831 
  23832 
  23833   function onCreateTable(event) {
  23834     event.preventDefault();
  23835     setAttributes(createTable({
  23836       rowCount: parseInt(initialRowCount, 10) || 2,
  23837       columnCount: parseInt(initialColumnCount, 10) || 2
  23838     }));
  23839   }
  23840   /**
  23841    * Toggles whether the table has a fixed layout or not.
  23842    */
  23843 
  23844 
  23845   function onChangeFixedLayout() {
  23846     setAttributes({
  23847       hasFixedLayout: !hasFixedLayout
  23848     });
  23849   }
  23850   /**
  23851    * Changes the content of the currently selected cell.
  23852    *
  23853    * @param {Array} content A RichText content value.
  23854    */
  23855 
  23856 
  23857   function onChange(content) {
  23858     if (!selectedCell) {
  23859       return;
  23860     }
  23861 
  23862     setAttributes(updateSelectedCell(attributes, selectedCell, cellAttributes => ({ ...cellAttributes,
  23863       content
  23864     })));
  23865   }
  23866   /**
  23867    * Align text within the a column.
  23868    *
  23869    * @param {string} align The new alignment to apply to the column.
  23870    */
  23871 
  23872 
  23873   function onChangeColumnAlignment(align) {
  23874     if (!selectedCell) {
  23875       return;
  23876     } // Convert the cell selection to a column selection so that alignment
  23877     // is applied to the entire column.
  23878 
  23879 
  23880     const columnSelection = {
  23881       type: 'column',
  23882       columnIndex: selectedCell.columnIndex
  23883     };
  23884     const newAttributes = updateSelectedCell(attributes, columnSelection, cellAttributes => ({ ...cellAttributes,
  23885       align
  23886     }));
  23887     setAttributes(newAttributes);
  23888   }
  23889   /**
  23890    * Get the alignment of the currently selected cell.
  23891    *
  23892    * @return {string} The new alignment to apply to the column.
  23893    */
  23894 
  23895 
  23896   function getCellAlignment() {
  23897     if (!selectedCell) {
  23898       return;
  23899     }
  23900 
  23901     return getCellAttribute(attributes, selectedCell, 'align');
  23902   }
  23903   /**
  23904    * Add or remove a `head` table section.
  23905    */
  23906 
  23907 
  23908   function onToggleHeaderSection() {
  23909     setAttributes(toggleSection(attributes, 'head'));
  23910   }
  23911   /**
  23912    * Add or remove a `foot` table section.
  23913    */
  23914 
  23915 
  23916   function onToggleFooterSection() {
  23917     setAttributes(toggleSection(attributes, 'foot'));
  23918   }
  23919   /**
  23920    * Inserts a row at the currently selected row index, plus `delta`.
  23921    *
  23922    * @param {number} delta Offset for selected row index at which to insert.
  23923    */
  23924 
  23925 
  23926   function onInsertRow(delta) {
  23927     if (!selectedCell) {
  23928       return;
  23929     }
  23930 
  23931     const {
  23932       sectionName,
  23933       rowIndex
  23934     } = selectedCell;
  23935     const newRowIndex = rowIndex + delta;
  23936     setAttributes(insertRow(attributes, {
  23937       sectionName,
  23938       rowIndex: newRowIndex
  23939     })); // Select the first cell of the new row
  23940 
  23941     setSelectedCell({
  23942       sectionName,
  23943       rowIndex: newRowIndex,
  23944       columnIndex: 0,
  23945       type: 'cell'
  23946     });
  23947   }
  23948   /**
  23949    * Inserts a row before the currently selected row.
  23950    */
  23951 
  23952 
  23953   function onInsertRowBefore() {
  23954     onInsertRow(0);
  23955   }
  23956   /**
  23957    * Inserts a row after the currently selected row.
  23958    */
  23959 
  23960 
  23961   function onInsertRowAfter() {
  23962     onInsertRow(1);
  23963   }
  23964   /**
  23965    * Deletes the currently selected row.
  23966    */
  23967 
  23968 
  23969   function onDeleteRow() {
  23970     if (!selectedCell) {
  23971       return;
  23972     }
  23973 
  23974     const {
  23975       sectionName,
  23976       rowIndex
  23977     } = selectedCell;
  23978     setSelectedCell();
  23979     setAttributes(deleteRow(attributes, {
  23980       sectionName,
  23981       rowIndex
  23982     }));
  23983   }
  23984   /**
  23985    * Inserts a column at the currently selected column index, plus `delta`.
  23986    *
  23987    * @param {number} delta Offset for selected column index at which to insert.
  23988    */
  23989 
  23990 
  23991   function onInsertColumn(delta = 0) {
  23992     if (!selectedCell) {
  23993       return;
  23994     }
  23995 
  23996     const {
  23997       columnIndex
  23998     } = selectedCell;
  23999     const newColumnIndex = columnIndex + delta;
  24000     setAttributes(insertColumn(attributes, {
  24001       columnIndex: newColumnIndex
  24002     })); // Select the first cell of the new column
  24003 
  24004     setSelectedCell({
  24005       rowIndex: 0,
  24006       columnIndex: newColumnIndex,
  24007       type: 'cell'
  24008     });
  24009   }
  24010   /**
  24011    * Inserts a column before the currently selected column.
  24012    */
  24013 
  24014 
  24015   function onInsertColumnBefore() {
  24016     onInsertColumn(0);
  24017   }
  24018   /**
  24019    * Inserts a column after the currently selected column.
  24020    */
  24021 
  24022 
  24023   function onInsertColumnAfter() {
  24024     onInsertColumn(1);
  24025   }
  24026   /**
  24027    * Deletes the currently selected column.
  24028    */
  24029 
  24030 
  24031   function onDeleteColumn() {
  24032     if (!selectedCell) {
  24033       return;
  24034     }
  24035 
  24036     const {
  24037       sectionName,
  24038       columnIndex
  24039     } = selectedCell;
  24040     setSelectedCell();
  24041     setAttributes(deleteColumn(attributes, {
  24042       sectionName,
  24043       columnIndex
  24044     }));
  24045   }
  24046 
  24047   Object(external_wp_element_["useEffect"])(() => {
  24048     if (!isSelected) {
  24049       setSelectedCell();
  24050     }
  24051   }, [isSelected]);
  24052   const sections = ['head', 'body', 'foot'].filter(name => !isEmptyTableSection(attributes[name]));
  24053   const tableControls = [{
  24054     icon: table_row_before,
  24055     title: Object(external_wp_i18n_["__"])('Insert row before'),
  24056     isDisabled: !selectedCell,
  24057     onClick: onInsertRowBefore
  24058   }, {
  24059     icon: table_row_after,
  24060     title: Object(external_wp_i18n_["__"])('Insert row after'),
  24061     isDisabled: !selectedCell,
  24062     onClick: onInsertRowAfter
  24063   }, {
  24064     icon: table_row_delete,
  24065     title: Object(external_wp_i18n_["__"])('Delete row'),
  24066     isDisabled: !selectedCell,
  24067     onClick: onDeleteRow
  24068   }, {
  24069     icon: table_column_before,
  24070     title: Object(external_wp_i18n_["__"])('Insert column before'),
  24071     isDisabled: !selectedCell,
  24072     onClick: onInsertColumnBefore
  24073   }, {
  24074     icon: table_column_after,
  24075     title: Object(external_wp_i18n_["__"])('Insert column after'),
  24076     isDisabled: !selectedCell,
  24077     onClick: onInsertColumnAfter
  24078   }, {
  24079     icon: table_column_delete,
  24080     title: Object(external_wp_i18n_["__"])('Delete column'),
  24081     isDisabled: !selectedCell,
  24082     onClick: onDeleteColumn
  24083   }];
  24084   const renderedSections = ['head', 'body', 'foot'].map(name => Object(external_wp_element_["createElement"])(TSection, {
  24085     name: name,
  24086     key: name
  24087   }, attributes[name].map(({
  24088     cells
  24089   }, rowIndex) => Object(external_wp_element_["createElement"])("tr", {
  24090     key: rowIndex
  24091   }, cells.map(({
  24092     content,
  24093     tag: CellTag,
  24094     scope,
  24095     align
  24096   }, columnIndex) => Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  24097     tagName: CellTag,
  24098     key: columnIndex,
  24099     className: classnames_default()({
  24100       [`has-text-align-${align}`]: align
  24101     }, 'wp-block-table__cell-content'),
  24102     scope: CellTag === 'th' ? scope : undefined,
  24103     value: content,
  24104     onChange: onChange,
  24105     unstableOnFocus: () => {
  24106       setSelectedCell({
  24107         sectionName: name,
  24108         rowIndex,
  24109         columnIndex,
  24110         type: 'cell'
  24111       });
  24112     },
  24113     "aria-label": cellAriaLabel[name],
  24114     placeholder: edit_placeholder[name]
  24115   }))))));
  24116   const isEmpty = !sections.length;
  24117   return Object(external_wp_element_["createElement"])("figure", Object(external_wp_blockEditor_["useBlockProps"])(), !isEmpty && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  24118     group: "block"
  24119   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
  24120     label: Object(external_wp_i18n_["__"])('Change column alignment'),
  24121     alignmentControls: ALIGNMENT_CONTROLS,
  24122     value: getCellAlignment(),
  24123     onChange: nextAlign => onChangeColumnAlignment(nextAlign)
  24124   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  24125     group: "other"
  24126   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarDropdownMenu"], {
  24127     hasArrowIndicator: true,
  24128     icon: library_table,
  24129     label: Object(external_wp_i18n_["__"])('Edit table'),
  24130     controls: tableControls
  24131   }))), !isEmpty && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  24132     title: Object(external_wp_i18n_["__"])('Table settings'),
  24133     className: "blocks-table-settings"
  24134   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  24135     label: Object(external_wp_i18n_["__"])('Fixed width table cells'),
  24136     checked: !!hasFixedLayout,
  24137     onChange: onChangeFixedLayout
  24138   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  24139     label: Object(external_wp_i18n_["__"])('Header section'),
  24140     checked: !!(head && head.length),
  24141     onChange: onToggleHeaderSection
  24142   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  24143     label: Object(external_wp_i18n_["__"])('Footer section'),
  24144     checked: !!(foot && foot.length),
  24145     onChange: onToggleFooterSection
  24146   }))), !isEmpty && Object(external_wp_element_["createElement"])("table", {
  24147     className: classnames_default()(colorProps.className, borderProps.className, {
  24148       'has-fixed-layout': hasFixedLayout
  24149     }),
  24150     style: { ...colorProps.style,
  24151       ...borderProps.style
  24152     }
  24153   }, renderedSections), !isEmpty && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  24154     tagName: "figcaption",
  24155     "aria-label": Object(external_wp_i18n_["__"])('Table caption text'),
  24156     placeholder: Object(external_wp_i18n_["__"])('Add caption'),
  24157     value: caption,
  24158     onChange: value => setAttributes({
  24159       caption: value
  24160     }) // Deselect the selected table cell when the caption is focused.
  24161     ,
  24162     unstableOnFocus: () => setSelectedCell(),
  24163     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
  24164   }), isEmpty && Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], {
  24165     label: Object(external_wp_i18n_["__"])('Table'),
  24166     icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  24167       icon: block_table,
  24168       showColors: true
  24169     }),
  24170     instructions: Object(external_wp_i18n_["__"])('Insert a table for sharing data.')
  24171   }, Object(external_wp_element_["createElement"])("form", {
  24172     className: "blocks-table__placeholder-form",
  24173     onSubmit: onCreateTable
  24174   }, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  24175     type: "number",
  24176     label: Object(external_wp_i18n_["__"])('Column count'),
  24177     value: initialColumnCount,
  24178     onChange: onChangeInitialColumnCount,
  24179     min: "1",
  24180     className: "blocks-table__placeholder-input"
  24181   }), Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  24182     type: "number",
  24183     label: Object(external_wp_i18n_["__"])('Row count'),
  24184     value: initialRowCount,
  24185     onChange: onChangeInitialRowCount,
  24186     min: "1",
  24187     className: "blocks-table__placeholder-input"
  24188   }), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  24189     className: "blocks-table__placeholder-button",
  24190     isPrimary: true,
  24191     type: "submit"
  24192   }, Object(external_wp_i18n_["__"])('Create Table')))));
  24193 }
  24194 
  24195 /* harmony default export */ var table_edit = (TableEdit);
  24196 
  24197 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/save.js
  24198 
  24199 
  24200 /**
  24201  * External dependencies
  24202  */
  24203 
  24204 /**
  24205  * WordPress dependencies
  24206  */
  24207 
  24208 
  24209 function table_save_save({
  24210   attributes
  24211 }) {
  24212   const {
  24213     hasFixedLayout,
  24214     head,
  24215     body,
  24216     foot,
  24217     caption
  24218   } = attributes;
  24219   const isEmpty = !head.length && !body.length && !foot.length;
  24220 
  24221   if (isEmpty) {
  24222     return null;
  24223   }
  24224 
  24225   const colorProps = Object(external_wp_blockEditor_["__experimentalGetColorClassesAndStyles"])(attributes);
  24226   const borderProps = Object(external_wp_blockEditor_["__experimentalGetBorderClassesAndStyles"])(attributes);
  24227   const classes = classnames_default()(colorProps.className, borderProps.className, {
  24228     'has-fixed-layout': hasFixedLayout
  24229   });
  24230   const hasCaption = !external_wp_blockEditor_["RichText"].isEmpty(caption);
  24231 
  24232   const Section = ({
  24233     type,
  24234     rows
  24235   }) => {
  24236     if (!rows.length) {
  24237       return null;
  24238     }
  24239 
  24240     const Tag = `t${type}`;
  24241     return Object(external_wp_element_["createElement"])(Tag, null, rows.map(({
  24242       cells
  24243     }, rowIndex) => Object(external_wp_element_["createElement"])("tr", {
  24244       key: rowIndex
  24245     }, cells.map(({
  24246       content,
  24247       tag,
  24248       scope,
  24249       align
  24250     }, cellIndex) => {
  24251       const cellClasses = classnames_default()({
  24252         [`has-text-align-${align}`]: align
  24253       });
  24254       return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  24255         className: cellClasses ? cellClasses : undefined,
  24256         "data-align": align,
  24257         tagName: tag,
  24258         value: content,
  24259         key: cellIndex,
  24260         scope: tag === 'th' ? scope : undefined
  24261       });
  24262     }))));
  24263   };
  24264 
  24265   return Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])("table", {
  24266     className: classes === '' ? undefined : classes,
  24267     style: { ...colorProps.style,
  24268       ...borderProps.style
  24269     }
  24270   }, Object(external_wp_element_["createElement"])(Section, {
  24271     type: "head",
  24272     rows: head
  24273   }), Object(external_wp_element_["createElement"])(Section, {
  24274     type: "body",
  24275     rows: body
  24276   }), Object(external_wp_element_["createElement"])(Section, {
  24277     type: "foot",
  24278     rows: foot
  24279   })), hasCaption && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  24280     tagName: "figcaption",
  24281     value: caption
  24282   }));
  24283 }
  24284 
  24285 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/transforms.js
  24286 const tableContentPasteSchema = ({
  24287   phrasingContentSchema
  24288 }) => ({
  24289   tr: {
  24290     allowEmpty: true,
  24291     children: {
  24292       th: {
  24293         allowEmpty: true,
  24294         children: phrasingContentSchema,
  24295         attributes: ['scope']
  24296       },
  24297       td: {
  24298         allowEmpty: true,
  24299         children: phrasingContentSchema
  24300       }
  24301     }
  24302   }
  24303 });
  24304 
  24305 const tablePasteSchema = args => ({
  24306   table: {
  24307     children: {
  24308       thead: {
  24309         allowEmpty: true,
  24310         children: tableContentPasteSchema(args)
  24311       },
  24312       tfoot: {
  24313         allowEmpty: true,
  24314         children: tableContentPasteSchema(args)
  24315       },
  24316       tbody: {
  24317         allowEmpty: true,
  24318         children: tableContentPasteSchema(args)
  24319       }
  24320     }
  24321   }
  24322 });
  24323 
  24324 const table_transforms_transforms = {
  24325   from: [{
  24326     type: 'raw',
  24327     selector: 'table',
  24328     schema: tablePasteSchema
  24329   }]
  24330 };
  24331 /* harmony default export */ var table_transforms = (table_transforms_transforms);
  24332 
  24333 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/table/index.js
  24334 /**
  24335  * WordPress dependencies
  24336  */
  24337 
  24338 
  24339 /**
  24340  * Internal dependencies
  24341  */
  24342 
  24343 
  24344 
  24345 const table_metadata = {
  24346   apiVersion: 2,
  24347   name: "core/table",
  24348   title: "Table",
  24349   category: "text",
  24350   description: "Insert a table \u2014 perfect for sharing charts and data.",
  24351   textdomain: "default",
  24352   attributes: {
  24353     hasFixedLayout: {
  24354       type: "boolean",
  24355       "default": false
  24356     },
  24357     caption: {
  24358       type: "string",
  24359       source: "html",
  24360       selector: "figcaption",
  24361       "default": ""
  24362     },
  24363     head: {
  24364       type: "array",
  24365       "default": [],
  24366       source: "query",
  24367       selector: "thead tr",
  24368       query: {
  24369         cells: {
  24370           type: "array",
  24371           "default": [],
  24372           source: "query",
  24373           selector: "td,th",
  24374           query: {
  24375             content: {
  24376               type: "string",
  24377               source: "html"
  24378             },
  24379             tag: {
  24380               type: "string",
  24381               "default": "td",
  24382               source: "tag"
  24383             },
  24384             scope: {
  24385               type: "string",
  24386               source: "attribute",
  24387               attribute: "scope"
  24388             },
  24389             align: {
  24390               type: "string",
  24391               source: "attribute",
  24392               attribute: "data-align"
  24393             }
  24394           }
  24395         }
  24396       }
  24397     },
  24398     body: {
  24399       type: "array",
  24400       "default": [],
  24401       source: "query",
  24402       selector: "tbody tr",
  24403       query: {
  24404         cells: {
  24405           type: "array",
  24406           "default": [],
  24407           source: "query",
  24408           selector: "td,th",
  24409           query: {
  24410             content: {
  24411               type: "string",
  24412               source: "html"
  24413             },
  24414             tag: {
  24415               type: "string",
  24416               "default": "td",
  24417               source: "tag"
  24418             },
  24419             scope: {
  24420               type: "string",
  24421               source: "attribute",
  24422               attribute: "scope"
  24423             },
  24424             align: {
  24425               type: "string",
  24426               source: "attribute",
  24427               attribute: "data-align"
  24428             }
  24429           }
  24430         }
  24431       }
  24432     },
  24433     foot: {
  24434       type: "array",
  24435       "default": [],
  24436       source: "query",
  24437       selector: "tfoot tr",
  24438       query: {
  24439         cells: {
  24440           type: "array",
  24441           "default": [],
  24442           source: "query",
  24443           selector: "td,th",
  24444           query: {
  24445             content: {
  24446               type: "string",
  24447               source: "html"
  24448             },
  24449             tag: {
  24450               type: "string",
  24451               "default": "td",
  24452               source: "tag"
  24453             },
  24454             scope: {
  24455               type: "string",
  24456               source: "attribute",
  24457               attribute: "scope"
  24458             },
  24459             align: {
  24460               type: "string",
  24461               source: "attribute",
  24462               attribute: "data-align"
  24463             }
  24464           }
  24465         }
  24466       }
  24467     }
  24468   },
  24469   supports: {
  24470     anchor: true,
  24471     align: true,
  24472     color: {
  24473       __experimentalSkipSerialization: true,
  24474       gradients: true
  24475     },
  24476     __experimentalBorder: {
  24477       __experimentalSkipSerialization: true,
  24478       color: true,
  24479       style: true,
  24480       width: true
  24481     },
  24482     __experimentalSelector: ".wp-block-table > table"
  24483   },
  24484   styles: [{
  24485     name: "regular",
  24486     label: "Default",
  24487     isDefault: true
  24488   }, {
  24489     name: "stripes",
  24490     label: "Stripes"
  24491   }],
  24492   editorStyle: "wp-block-table-editor",
  24493   style: "wp-block-table"
  24494 };
  24495 
  24496 
  24497 const {
  24498   name: table_name
  24499 } = table_metadata;
  24500 
  24501 const table_settings = {
  24502   icon: block_table,
  24503   example: {
  24504     attributes: {
  24505       head: [{
  24506         cells: [{
  24507           content: Object(external_wp_i18n_["__"])('Version'),
  24508           tag: 'th'
  24509         }, {
  24510           content: Object(external_wp_i18n_["__"])('Jazz Musician'),
  24511           tag: 'th'
  24512         }, {
  24513           content: Object(external_wp_i18n_["__"])('Release Date'),
  24514           tag: 'th'
  24515         }]
  24516       }],
  24517       body: [{
  24518         cells: [{
  24519           content: '5.2',
  24520           tag: 'td'
  24521         }, {
  24522           content: 'Jaco Pastorius',
  24523           tag: 'td'
  24524         }, {
  24525           content: Object(external_wp_i18n_["__"])('May 7, 2019'),
  24526           tag: 'td'
  24527         }]
  24528       }, {
  24529         cells: [{
  24530           content: '5.1',
  24531           tag: 'td'
  24532         }, {
  24533           content: 'Betty Carter',
  24534           tag: 'td'
  24535         }, {
  24536           content: Object(external_wp_i18n_["__"])('February 21, 2019'),
  24537           tag: 'td'
  24538         }]
  24539       }, {
  24540         cells: [{
  24541           content: '5.0',
  24542           tag: 'td'
  24543         }, {
  24544           content: 'Bebo Valdés',
  24545           tag: 'td'
  24546         }, {
  24547           content: Object(external_wp_i18n_["__"])('December 6, 2018'),
  24548           tag: 'td'
  24549         }]
  24550       }]
  24551     }
  24552   },
  24553   transforms: table_transforms,
  24554   edit: table_edit,
  24555   save: table_save_save,
  24556   deprecated: table_deprecated
  24557 };
  24558 
  24559 // EXTERNAL MODULE: external ["wp","deprecated"]
  24560 var external_wp_deprecated_ = __webpack_require__("NMb1");
  24561 var external_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_wp_deprecated_);
  24562 
  24563 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/edit.js
  24564 
  24565 
  24566 /**
  24567  * External dependencies
  24568  */
  24569 
  24570 /**
  24571  * WordPress dependencies
  24572  */
  24573 
  24574 
  24575 
  24576 
  24577 
  24578 function TextColumnsEdit({
  24579   attributes,
  24580   setAttributes
  24581 }) {
  24582   const {
  24583     width,
  24584     content,
  24585     columns
  24586   } = attributes;
  24587   external_wp_deprecated_default()('The Text Columns block', {
  24588     since: '5.3',
  24589     alternative: 'the Columns block'
  24590   });
  24591   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockAlignmentToolbar"], {
  24592     value: width,
  24593     onChange: nextWidth => setAttributes({
  24594       width: nextWidth
  24595     }),
  24596     controls: ['center', 'wide', 'full']
  24597   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], null, Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  24598     label: Object(external_wp_i18n_["__"])('Columns'),
  24599     value: columns,
  24600     onChange: value => setAttributes({
  24601       columns: value
  24602     }),
  24603     min: 2,
  24604     max: 4,
  24605     required: true
  24606   }))), Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])({
  24607     className: `align${width} columns-${columns}`
  24608   }), Object(external_lodash_["times"])(columns, index => {
  24609     return Object(external_wp_element_["createElement"])("div", {
  24610       className: "wp-block-column",
  24611       key: `column-${index}`
  24612     }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  24613       tagName: "p",
  24614       value: Object(external_lodash_["get"])(content, [index, 'children']),
  24615       onChange: nextContent => {
  24616         setAttributes({
  24617           content: [...content.slice(0, index), {
  24618             children: nextContent
  24619           }, ...content.slice(index + 1)]
  24620         });
  24621       },
  24622       "aria-label": Object(external_wp_i18n_["sprintf"])( // translators: %d: column index (starting with 1)
  24623       Object(external_wp_i18n_["__"])('Column %d text'), index + 1),
  24624       placeholder: Object(external_wp_i18n_["__"])('New Column')
  24625     }));
  24626   })));
  24627 }
  24628 
  24629 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/save.js
  24630 
  24631 
  24632 /**
  24633  * External dependencies
  24634  */
  24635 
  24636 /**
  24637  * WordPress dependencies
  24638  */
  24639 
  24640 
  24641 function text_columns_save_save({
  24642   attributes
  24643 }) {
  24644   const {
  24645     width,
  24646     content,
  24647     columns
  24648   } = attributes;
  24649   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save({
  24650     className: `align${width} columns-${columns}`
  24651   }), Object(external_lodash_["times"])(columns, index => Object(external_wp_element_["createElement"])("div", {
  24652     className: "wp-block-column",
  24653     key: `column-${index}`
  24654   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  24655     tagName: "p",
  24656     value: Object(external_lodash_["get"])(content, [index, 'children'])
  24657   }))));
  24658 }
  24659 
  24660 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/transforms.js
  24661 /**
  24662  * WordPress dependencies
  24663  */
  24664 
  24665 const text_columns_transforms_transforms = {
  24666   to: [{
  24667     type: 'block',
  24668     blocks: ['core/columns'],
  24669     transform: ({
  24670       className,
  24671       columns,
  24672       content,
  24673       width
  24674     }) => Object(external_wp_blocks_["createBlock"])('core/columns', {
  24675       align: 'wide' === width || 'full' === width ? width : undefined,
  24676       className,
  24677       columns
  24678     }, content.map(({
  24679       children
  24680     }) => Object(external_wp_blocks_["createBlock"])('core/column', {}, [Object(external_wp_blocks_["createBlock"])('core/paragraph', {
  24681       content: children
  24682     })])))
  24683   }]
  24684 };
  24685 /* harmony default export */ var text_columns_transforms = (text_columns_transforms_transforms);
  24686 
  24687 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/text-columns/index.js
  24688 /**
  24689  * Internal dependencies
  24690  */
  24691 
  24692 const text_columns_metadata = {
  24693   apiVersion: 2,
  24694   name: "core/text-columns",
  24695   title: "Text Columns (deprecated)",
  24696   icon: "columns",
  24697   category: "design",
  24698   description: "This block is deprecated. Please use the Columns block instead.",
  24699   textdomain: "default",
  24700   attributes: {
  24701     content: {
  24702       type: "array",
  24703       source: "query",
  24704       selector: "p",
  24705       query: {
  24706         children: {
  24707           type: "string",
  24708           source: "html"
  24709         }
  24710       },
  24711       "default": [{}, {}]
  24712     },
  24713     columns: {
  24714       type: "number",
  24715       "default": 2
  24716     },
  24717     width: {
  24718       type: "string"
  24719     }
  24720   },
  24721   supports: {
  24722     inserter: false
  24723   },
  24724   editorStyle: "wp-block-text-columns-editor",
  24725   style: "wp-block-text-columns"
  24726 };
  24727 
  24728 
  24729 const {
  24730   name: text_columns_name
  24731 } = text_columns_metadata;
  24732 
  24733 const text_columns_settings = {
  24734   transforms: text_columns_transforms,
  24735 
  24736   getEditWrapperProps(attributes) {
  24737     const {
  24738       width
  24739     } = attributes;
  24740 
  24741     if ('wide' === width || 'full' === width) {
  24742       return {
  24743         'data-align': width
  24744       };
  24745     }
  24746   },
  24747 
  24748   edit: TextColumnsEdit,
  24749   save: text_columns_save_save
  24750 };
  24751 
  24752 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/verse.js
  24753 
  24754 
  24755 /**
  24756  * WordPress dependencies
  24757  */
  24758 
  24759 const verse = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  24760   viewBox: "0 0 24 24",
  24761   xmlns: "http://www.w3.org/2000/svg"
  24762 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  24763   d: "M17.8 2l-.9.3c-.1 0-3.6 1-5.2 2.1C10 5.5 9.3 6.5 8.9 7.1c-.6.9-1.7 4.7-1.7 6.3l-.9 2.3c-.2.4 0 .8.4 1 .1 0 .2.1.3.1.3 0 .6-.2.7-.5l.6-1.5c.3 0 .7-.1 1.2-.2.7-.1 1.4-.3 2.2-.5.8-.2 1.6-.5 2.4-.8.7-.3 1.4-.7 1.9-1.2s.8-1.2 1-1.9c.2-.7.3-1.6.4-2.4.1-.8.1-1.7.2-2.5 0-.8.1-1.5.2-2.1V2zm-1.9 5.6c-.1.8-.2 1.5-.3 2.1-.2.6-.4 1-.6 1.3-.3.3-.8.6-1.4.9-.7.3-1.4.5-2.2.8-.6.2-1.3.3-1.8.4L15 7.5c.3-.3.6-.7 1-1.1 0 .4 0 .8-.1 1.2zM6 20h8v-1.5H6V20z"
  24764 }));
  24765 /* harmony default export */ var library_verse = (verse);
  24766 
  24767 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/deprecated.js
  24768 
  24769 
  24770 /**
  24771  * WordPress dependencies
  24772  */
  24773 
  24774 const verse_deprecated_blockAttributes = {
  24775   content: {
  24776     type: 'string',
  24777     source: 'html',
  24778     selector: 'pre',
  24779     default: ''
  24780   },
  24781   textAlign: {
  24782     type: 'string'
  24783   }
  24784 };
  24785 const verse_deprecated_deprecated = [{
  24786   attributes: verse_deprecated_blockAttributes,
  24787 
  24788   save({
  24789     attributes
  24790   }) {
  24791     const {
  24792       textAlign,
  24793       content
  24794     } = attributes;
  24795     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  24796       tagName: "pre",
  24797       style: {
  24798         textAlign
  24799       },
  24800       value: content
  24801     });
  24802   }
  24803 
  24804 }];
  24805 /* harmony default export */ var verse_deprecated = (verse_deprecated_deprecated);
  24806 
  24807 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/edit.js
  24808 
  24809 
  24810 
  24811 /**
  24812  * External dependencies
  24813  */
  24814 
  24815 /**
  24816  * WordPress dependencies
  24817  */
  24818 
  24819 
  24820 
  24821 function VerseEdit({
  24822   attributes,
  24823   setAttributes,
  24824   mergeBlocks,
  24825   onRemove
  24826 }) {
  24827   const {
  24828     textAlign,
  24829     content
  24830   } = attributes;
  24831   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  24832     className: classnames_default()({
  24833       [`has-text-align-${textAlign}`]: textAlign
  24834     })
  24835   });
  24836   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentToolbar"], {
  24837     value: textAlign,
  24838     onChange: nextAlign => {
  24839       setAttributes({
  24840         textAlign: nextAlign
  24841       });
  24842     }
  24843   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], Object(esm_extends["a" /* default */])({
  24844     tagName: "pre",
  24845     identifier: "content",
  24846     preserveWhiteSpace: true,
  24847     value: content,
  24848     onChange: nextContent => {
  24849       setAttributes({
  24850         content: nextContent
  24851       });
  24852     },
  24853     "aria-label": Object(external_wp_i18n_["__"])('Verse text'),
  24854     placeholder: Object(external_wp_i18n_["__"])('Write verse…'),
  24855     onRemove: onRemove,
  24856     onMerge: mergeBlocks,
  24857     textAlign: textAlign
  24858   }, blockProps, {
  24859     __unstablePastePlainText: true
  24860   })));
  24861 }
  24862 
  24863 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/save.js
  24864 
  24865 
  24866 /**
  24867  * External dependencies
  24868  */
  24869 
  24870 /**
  24871  * WordPress dependencies
  24872  */
  24873 
  24874 
  24875 function verse_save_save({
  24876   attributes
  24877 }) {
  24878   const {
  24879     textAlign,
  24880     content
  24881   } = attributes;
  24882   const className = classnames_default()({
  24883     [`has-text-align-${textAlign}`]: textAlign
  24884   });
  24885   return Object(external_wp_element_["createElement"])("pre", external_wp_blockEditor_["useBlockProps"].save({
  24886     className
  24887   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  24888     value: content
  24889   }));
  24890 }
  24891 
  24892 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/transforms.js
  24893 /**
  24894  * WordPress dependencies
  24895  */
  24896 
  24897 const verse_transforms_transforms = {
  24898   from: [{
  24899     type: 'block',
  24900     blocks: ['core/paragraph'],
  24901     transform: attributes => Object(external_wp_blocks_["createBlock"])('core/verse', attributes)
  24902   }],
  24903   to: [{
  24904     type: 'block',
  24905     blocks: ['core/paragraph'],
  24906     transform: attributes => Object(external_wp_blocks_["createBlock"])('core/paragraph', attributes)
  24907   }]
  24908 };
  24909 /* harmony default export */ var verse_transforms = (verse_transforms_transforms);
  24910 
  24911 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/verse/index.js
  24912 /**
  24913  * WordPress dependencies
  24914  */
  24915 
  24916 
  24917 /**
  24918  * Internal dependencies
  24919  */
  24920 
  24921 
  24922 
  24923 const verse_metadata = {
  24924   apiVersion: 2,
  24925   name: "core/verse",
  24926   title: "Verse",
  24927   category: "text",
  24928   description: "Insert poetry. Use special spacing formats. Or quote song lyrics.",
  24929   keywords: ["poetry", "poem"],
  24930   textdomain: "default",
  24931   attributes: {
  24932     content: {
  24933       type: "string",
  24934       source: "html",
  24935       selector: "pre",
  24936       "default": "",
  24937       __unstablePreserveWhiteSpace: true,
  24938       __experimentalRole: "content"
  24939     },
  24940     textAlign: {
  24941       type: "string"
  24942     }
  24943   },
  24944   supports: {
  24945     anchor: true,
  24946     color: {
  24947       gradients: true,
  24948       link: true
  24949     },
  24950     typography: {
  24951       fontSize: true,
  24952       __experimentalFontFamily: true
  24953     },
  24954     spacing: {
  24955       padding: true
  24956     }
  24957   },
  24958   style: "wp-block-verse",
  24959   editorStyle: "wp-block-verse-editor"
  24960 };
  24961 
  24962 
  24963 const {
  24964   name: verse_name
  24965 } = verse_metadata;
  24966 
  24967 const verse_settings = {
  24968   icon: library_verse,
  24969   example: {
  24970     attributes: {
  24971       /* eslint-disable @wordpress/i18n-no-collapsible-whitespace */
  24972       // translators: Sample content for the Verse block. Can be replaced with a more locale-adequate work.
  24973       content: Object(external_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.')
  24974       /* eslint-enable @wordpress/i18n-no-collapsible-whitespace */
  24975 
  24976     }
  24977   },
  24978   transforms: verse_transforms,
  24979   deprecated: verse_deprecated,
  24980 
  24981   merge(attributes, attributesToMerge) {
  24982     return {
  24983       content: attributes.content + attributesToMerge.content
  24984     };
  24985   },
  24986 
  24987   edit: VerseEdit,
  24988   save: verse_save_save
  24989 };
  24990 
  24991 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/video.js
  24992 
  24993 
  24994 /**
  24995  * WordPress dependencies
  24996  */
  24997 
  24998 const video_video = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  24999   viewBox: "0 0 24 24",
  25000   xmlns: "http://www.w3.org/2000/svg"
  25001 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  25002   d: "M18.7 3H5.3C4 3 3 4 3 5.3v13.4C3 20 4 21 5.3 21h13.4c1.3 0 2.3-1 2.3-2.3V5.3C21 4 20 3 18.7 3zm.8 15.7c0 .4-.4.8-.8.8H5.3c-.4 0-.8-.4-.8-.8V5.3c0-.4.4-.8.8-.8h13.4c.4 0 .8.4.8.8v13.4zM10 15l5-3-5-3v6z"
  25003 }));
  25004 /* harmony default export */ var library_video = (video_video);
  25005 
  25006 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/edit-common-settings.js
  25007 
  25008 
  25009 /**
  25010  * WordPress dependencies
  25011  */
  25012 
  25013 
  25014 
  25015 const options = [{
  25016   value: 'auto',
  25017   label: Object(external_wp_i18n_["__"])('Auto')
  25018 }, {
  25019   value: 'metadata',
  25020   label: Object(external_wp_i18n_["__"])('Metadata')
  25021 }, {
  25022   value: 'none',
  25023   label: Object(external_wp_i18n_["__"])('None')
  25024 }];
  25025 
  25026 const VideoSettings = ({
  25027   setAttributes,
  25028   attributes
  25029 }) => {
  25030   const {
  25031     autoplay,
  25032     controls,
  25033     loop,
  25034     muted,
  25035     playsInline,
  25036     preload
  25037   } = attributes;
  25038 
  25039   const autoPlayHelpText = Object(external_wp_i18n_["__"])('Autoplay may cause usability issues for some users.');
  25040 
  25041   const getAutoplayHelp = external_wp_element_["Platform"].select({
  25042     web: Object(external_wp_element_["useCallback"])(checked => {
  25043       return checked ? autoPlayHelpText : null;
  25044     }, []),
  25045     native: autoPlayHelpText
  25046   });
  25047   const toggleFactory = Object(external_wp_element_["useMemo"])(() => {
  25048     const toggleAttribute = attribute => {
  25049       return newValue => {
  25050         setAttributes({
  25051           [attribute]: newValue
  25052         });
  25053       };
  25054     };
  25055 
  25056     return {
  25057       autoplay: toggleAttribute('autoplay'),
  25058       loop: toggleAttribute('loop'),
  25059       muted: toggleAttribute('muted'),
  25060       controls: toggleAttribute('controls'),
  25061       playsInline: toggleAttribute('playsInline')
  25062     };
  25063   }, []);
  25064   const onChangePreload = Object(external_wp_element_["useCallback"])(value => {
  25065     setAttributes({
  25066       preload: value
  25067     });
  25068   }, []);
  25069   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  25070     label: Object(external_wp_i18n_["__"])('Autoplay'),
  25071     onChange: toggleFactory.autoplay,
  25072     checked: autoplay,
  25073     help: getAutoplayHelp
  25074   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  25075     label: Object(external_wp_i18n_["__"])('Loop'),
  25076     onChange: toggleFactory.loop,
  25077     checked: loop
  25078   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  25079     label: Object(external_wp_i18n_["__"])('Muted'),
  25080     onChange: toggleFactory.muted,
  25081     checked: muted
  25082   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  25083     label: Object(external_wp_i18n_["__"])('Playback controls'),
  25084     onChange: toggleFactory.controls,
  25085     checked: controls
  25086   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  25087     label: Object(external_wp_i18n_["__"])('Play inline'),
  25088     onChange: toggleFactory.playsInline,
  25089     checked: playsInline
  25090   }), Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  25091     label: Object(external_wp_i18n_["__"])('Preload'),
  25092     value: preload,
  25093     onChange: onChangePreload,
  25094     options: options,
  25095     hideCancelButton: true
  25096   }));
  25097 };
  25098 
  25099 /* harmony default export */ var edit_common_settings = (VideoSettings);
  25100 
  25101 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/media.js
  25102 var library_media = __webpack_require__("rH4q");
  25103 
  25104 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/tracks-editor.js
  25105 
  25106 
  25107 /**
  25108  * WordPress dependencies
  25109  */
  25110 
  25111 
  25112 
  25113 
  25114 
  25115 
  25116 const ALLOWED_TYPES = ['text/vtt'];
  25117 const DEFAULT_KIND = 'subtitles';
  25118 const KIND_OPTIONS = [{
  25119   label: Object(external_wp_i18n_["__"])('Subtitles'),
  25120   value: 'subtitles'
  25121 }, {
  25122   label: Object(external_wp_i18n_["__"])('Captions'),
  25123   value: 'captions'
  25124 }, {
  25125   label: Object(external_wp_i18n_["__"])('Descriptions'),
  25126   value: 'descriptions'
  25127 }, {
  25128   label: Object(external_wp_i18n_["__"])('Chapters'),
  25129   value: 'chapters'
  25130 }, {
  25131   label: Object(external_wp_i18n_["__"])('Metadata'),
  25132   value: 'metadata'
  25133 }];
  25134 const captionIcon = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  25135   width: "18",
  25136   height: "14",
  25137   viewBox: "0 0 18 14",
  25138   role: "img",
  25139   fill: "none"
  25140 }, Object(external_wp_element_["createElement"])(external_wp_components_["Rect"], {
  25141   x: "0.75",
  25142   y: "0.75",
  25143   width: "16.5",
  25144   height: "12.5",
  25145   rx: "1.25",
  25146   stroke: "black",
  25147   strokeWidth: "1.5",
  25148   fill: "none"
  25149 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  25150   d: "M3 7H15",
  25151   stroke: "black",
  25152   strokeWidth: "1.5"
  25153 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  25154   d: "M3 10L15 10",
  25155   stroke: "black",
  25156   strokeWidth: "1.5"
  25157 }));
  25158 
  25159 function TrackList({
  25160   tracks,
  25161   onEditPress
  25162 }) {
  25163   let content;
  25164 
  25165   if (tracks.length === 0) {
  25166     content = Object(external_wp_element_["createElement"])("p", {
  25167       className: "block-library-video-tracks-editor__tracks-informative-message"
  25168     }, Object(external_wp_i18n_["__"])('Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.'));
  25169   } else {
  25170     content = tracks.map((track, index) => {
  25171       return Object(external_wp_element_["createElement"])("div", {
  25172         key: index,
  25173         className: "block-library-video-tracks-editor__track-list-track"
  25174       }, Object(external_wp_element_["createElement"])("span", null, track.label, " "), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  25175         isTertiary: true,
  25176         onClick: () => onEditPress(index),
  25177         "aria-label": Object(external_wp_i18n_["sprintf"])(
  25178         /* translators: %s: Label of the video text track e.g: "French subtitles" */
  25179         Object(external_wp_i18n_["__"])('Edit %s'), track.label)
  25180       }, Object(external_wp_i18n_["__"])('Edit')));
  25181     });
  25182   }
  25183 
  25184   return Object(external_wp_element_["createElement"])(external_wp_components_["MenuGroup"], {
  25185     label: Object(external_wp_i18n_["__"])('Text tracks'),
  25186     className: "block-library-video-tracks-editor__track-list"
  25187   }, content);
  25188 }
  25189 
  25190 function SingleTrackEditor({
  25191   track,
  25192   onChange,
  25193   onClose,
  25194   onRemove
  25195 }) {
  25196   const {
  25197     src = '',
  25198     label = '',
  25199     srcLang = '',
  25200     kind = DEFAULT_KIND
  25201   } = track;
  25202   const fileName = src.startsWith('blob:') ? '' : src.substring(src.lastIndexOf('/') + 1);
  25203   return Object(external_wp_element_["createElement"])(external_wp_components_["NavigableMenu"], null, Object(external_wp_element_["createElement"])("div", {
  25204     className: "block-library-video-tracks-editor__single-track-editor"
  25205   }, Object(external_wp_element_["createElement"])("span", {
  25206     className: "block-library-video-tracks-editor__single-track-editor-edit-track-label"
  25207   }, Object(external_wp_i18n_["__"])('Edit track')), Object(external_wp_element_["createElement"])("span", null, Object(external_wp_i18n_["__"])('File'), ": ", Object(external_wp_element_["createElement"])("b", null, fileName)), Object(external_wp_element_["createElement"])("div", {
  25208     className: "block-library-video-tracks-editor__single-track-editor-label-language"
  25209   }, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"]
  25210   /* eslint-disable jsx-a11y/no-autofocus */
  25211   , {
  25212     autoFocus: true
  25213     /* eslint-enable jsx-a11y/no-autofocus */
  25214     ,
  25215     onChange: newLabel => onChange({ ...track,
  25216       label: newLabel
  25217     }),
  25218     label: Object(external_wp_i18n_["__"])('Label'),
  25219     value: label,
  25220     help: Object(external_wp_i18n_["__"])('Title of track')
  25221   }), Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  25222     onChange: newSrcLang => onChange({ ...track,
  25223       srcLang: newSrcLang
  25224     }),
  25225     label: Object(external_wp_i18n_["__"])('Source language'),
  25226     value: srcLang,
  25227     help: Object(external_wp_i18n_["__"])('Language tag (en, fr, etc.)')
  25228   })), Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  25229     className: "block-library-video-tracks-editor__single-track-editor-kind-select",
  25230     options: KIND_OPTIONS,
  25231     value: kind,
  25232     label: Object(external_wp_i18n_["__"])('Kind'),
  25233     onChange: newKind => {
  25234       onChange({ ...track,
  25235         kind: newKind
  25236       });
  25237     }
  25238   }), Object(external_wp_element_["createElement"])("div", {
  25239     className: "block-library-video-tracks-editor__single-track-editor-buttons-container"
  25240   }, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  25241     isSecondary: true,
  25242     onClick: () => {
  25243       const changes = {};
  25244       let hasChanges = false;
  25245 
  25246       if (label === '') {
  25247         changes.label = Object(external_wp_i18n_["__"])('English');
  25248         hasChanges = true;
  25249       }
  25250 
  25251       if (srcLang === '') {
  25252         changes.srcLang = 'en';
  25253         hasChanges = true;
  25254       }
  25255 
  25256       if (track.kind === undefined) {
  25257         changes.kind = DEFAULT_KIND;
  25258         hasChanges = true;
  25259       }
  25260 
  25261       if (hasChanges) {
  25262         onChange({ ...track,
  25263           ...changes
  25264         });
  25265       }
  25266 
  25267       onClose();
  25268     }
  25269   }, Object(external_wp_i18n_["__"])('Close')), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  25270     isDestructive: true,
  25271     isLink: true,
  25272     onClick: onRemove
  25273   }, Object(external_wp_i18n_["__"])('Remove track')))));
  25274 }
  25275 
  25276 function TracksEditor({
  25277   tracks = [],
  25278   onChange
  25279 }) {
  25280   const mediaUpload = Object(external_wp_data_["useSelect"])(select => {
  25281     return select(external_wp_blockEditor_["store"]).getSettings().mediaUpload;
  25282   }, []);
  25283   const [trackBeingEdited, setTrackBeingEdited] = Object(external_wp_element_["useState"])(null);
  25284 
  25285   if (!mediaUpload) {
  25286     return null;
  25287   }
  25288 
  25289   return Object(external_wp_element_["createElement"])(external_wp_components_["Dropdown"], {
  25290     contentClassName: "block-library-video-tracks-editor",
  25291     renderToggle: ({
  25292       isOpen,
  25293       onToggle
  25294     }) => Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  25295       label: Object(external_wp_i18n_["__"])('Text tracks'),
  25296       showTooltip: true,
  25297       "aria-expanded": isOpen,
  25298       "aria-haspopup": "true",
  25299       onClick: onToggle,
  25300       icon: captionIcon
  25301     }),
  25302     renderContent: ({}) => {
  25303       if (trackBeingEdited !== null) {
  25304         return Object(external_wp_element_["createElement"])(SingleTrackEditor, {
  25305           track: tracks[trackBeingEdited],
  25306           onChange: newTrack => {
  25307             const newTracks = [...tracks];
  25308             newTracks[trackBeingEdited] = newTrack;
  25309             onChange(newTracks);
  25310           },
  25311           onClose: () => setTrackBeingEdited(null),
  25312           onRemove: () => {
  25313             onChange(tracks.filter((_track, index) => index !== trackBeingEdited));
  25314             setTrackBeingEdited(null);
  25315           }
  25316         });
  25317       }
  25318 
  25319       return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["NavigableMenu"], null, Object(external_wp_element_["createElement"])(TrackList, {
  25320         tracks: tracks,
  25321         onEditPress: setTrackBeingEdited
  25322       }), Object(external_wp_element_["createElement"])(external_wp_components_["MenuGroup"], {
  25323         className: "block-library-video-tracks-editor__add-tracks-container",
  25324         label: Object(external_wp_i18n_["__"])('Add tracks')
  25325       }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaUpload"], {
  25326         onSelect: ({
  25327           url
  25328         }) => {
  25329           const trackIndex = tracks.length;
  25330           onChange([...tracks, {
  25331             src: url
  25332           }]);
  25333           setTrackBeingEdited(trackIndex);
  25334         },
  25335         allowedTypes: ALLOWED_TYPES,
  25336         render: ({
  25337           open
  25338         }) => Object(external_wp_element_["createElement"])(external_wp_components_["MenuItem"], {
  25339           icon: library_media["a" /* default */],
  25340           onClick: open
  25341         }, Object(external_wp_i18n_["__"])('Open Media Library'))
  25342       }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaUploadCheck"], null, Object(external_wp_element_["createElement"])(external_wp_components_["FormFileUpload"], {
  25343         onChange: event => {
  25344           const files = event.target.files;
  25345           const trackIndex = tracks.length;
  25346           mediaUpload({
  25347             allowedTypes: ALLOWED_TYPES,
  25348             filesList: files,
  25349             onFileChange: ([{
  25350               url
  25351             }]) => {
  25352               const newTracks = [...tracks];
  25353 
  25354               if (!newTracks[trackIndex]) {
  25355                 newTracks[trackIndex] = {};
  25356               }
  25357 
  25358               newTracks[trackIndex] = { ...tracks[trackIndex],
  25359                 src: url
  25360               };
  25361               onChange(newTracks);
  25362               setTrackBeingEdited(trackIndex);
  25363             }
  25364           });
  25365         },
  25366         accept: ".vtt,text/vtt",
  25367         render: ({
  25368           openFileDialog
  25369         }) => {
  25370           return Object(external_wp_element_["createElement"])(external_wp_components_["MenuItem"], {
  25371             icon: upload["a" /* default */],
  25372             onClick: () => {
  25373               openFileDialog();
  25374             }
  25375           }, Object(external_wp_i18n_["__"])('Upload'));
  25376         }
  25377       })))));
  25378     }
  25379   });
  25380 }
  25381 
  25382 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/tracks.js
  25383 
  25384 
  25385 function Tracks({
  25386   tracks = []
  25387 }) {
  25388   return tracks.map(track => {
  25389     return Object(external_wp_element_["createElement"])("track", Object(esm_extends["a" /* default */])({
  25390       key: track.src
  25391     }, track));
  25392   });
  25393 }
  25394 
  25395 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/edit.js
  25396 
  25397 
  25398 /**
  25399  * External dependencies
  25400  */
  25401 
  25402 /**
  25403  * WordPress dependencies
  25404  */
  25405 
  25406 
  25407 
  25408 
  25409 
  25410 
  25411 
  25412 
  25413 
  25414 
  25415 /**
  25416  * Internal dependencies
  25417  */
  25418 
  25419 
  25420 
  25421 
  25422 
  25423 const video_edit_ALLOWED_MEDIA_TYPES = ['video'];
  25424 const VIDEO_POSTER_ALLOWED_MEDIA_TYPES = ['image'];
  25425 
  25426 function VideoEdit({
  25427   isSelected,
  25428   noticeUI,
  25429   attributes,
  25430   className,
  25431   setAttributes,
  25432   insertBlocksAfter,
  25433   onReplace,
  25434   noticeOperations
  25435 }) {
  25436   const instanceId = Object(external_wp_compose_["useInstanceId"])(VideoEdit);
  25437   const videoPlayer = Object(external_wp_element_["useRef"])();
  25438   const posterImageButton = Object(external_wp_element_["useRef"])();
  25439   const {
  25440     id,
  25441     caption,
  25442     controls,
  25443     poster,
  25444     src,
  25445     tracks
  25446   } = attributes;
  25447   const isTemporaryVideo = !id && Object(external_wp_blob_["isBlobURL"])(src);
  25448   const mediaUpload = Object(external_wp_data_["useSelect"])(select => select(external_wp_blockEditor_["store"]).getSettings().mediaUpload);
  25449   Object(external_wp_element_["useEffect"])(() => {
  25450     if (!id && Object(external_wp_blob_["isBlobURL"])(src)) {
  25451       const file = Object(external_wp_blob_["getBlobByURL"])(src);
  25452 
  25453       if (file) {
  25454         mediaUpload({
  25455           filesList: [file],
  25456           onFileChange: ([{
  25457             url
  25458           }]) => {
  25459             setAttributes({
  25460               src: url
  25461             });
  25462           },
  25463           onError: message => {
  25464             noticeOperations.createErrorNotice(message);
  25465           },
  25466           allowedTypes: video_edit_ALLOWED_MEDIA_TYPES
  25467         });
  25468       }
  25469     }
  25470   }, []);
  25471   Object(external_wp_element_["useEffect"])(() => {
  25472     // Placeholder may be rendered.
  25473     if (videoPlayer.current) {
  25474       videoPlayer.current.load();
  25475     }
  25476   }, [poster]);
  25477 
  25478   function onSelectVideo(media) {
  25479     if (!media || !media.url) {
  25480       // in this case there was an error
  25481       // previous attributes should be removed
  25482       // because they may be temporary blob urls
  25483       setAttributes({
  25484         src: undefined,
  25485         id: undefined
  25486       });
  25487       return;
  25488     } // sets the block's attribute and updates the edit component from the
  25489     // selected media
  25490 
  25491 
  25492     setAttributes({
  25493       src: media.url,
  25494       id: media.id
  25495     });
  25496   }
  25497 
  25498   function onSelectURL(newSrc) {
  25499     if (newSrc !== src) {
  25500       // Check if there's an embed block that handles this URL.
  25501       const embedBlock = createUpgradedEmbedBlock({
  25502         attributes: {
  25503           url: newSrc
  25504         }
  25505       });
  25506 
  25507       if (undefined !== embedBlock) {
  25508         onReplace(embedBlock);
  25509         return;
  25510       }
  25511 
  25512       setAttributes({
  25513         src: newSrc,
  25514         id: undefined
  25515       });
  25516     }
  25517   }
  25518 
  25519   function onUploadError(message) {
  25520     noticeOperations.removeAllNotices();
  25521     noticeOperations.createErrorNotice(message);
  25522   }
  25523 
  25524   const classes = classnames_default()(className, {
  25525     'is-transient': isTemporaryVideo
  25526   });
  25527   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  25528     className: classes
  25529   });
  25530 
  25531   if (!src) {
  25532     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
  25533       icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  25534         icon: library_video
  25535       }),
  25536       onSelect: onSelectVideo,
  25537       onSelectURL: onSelectURL,
  25538       accept: "video/*",
  25539       allowedTypes: video_edit_ALLOWED_MEDIA_TYPES,
  25540       value: attributes,
  25541       notices: noticeUI,
  25542       onError: onUploadError
  25543     }));
  25544   }
  25545 
  25546   function onSelectPoster(image) {
  25547     setAttributes({
  25548       poster: image.url
  25549     });
  25550   }
  25551 
  25552   function onRemovePoster() {
  25553     setAttributes({
  25554       poster: ''
  25555     }); // Move focus back to the Media Upload button.
  25556 
  25557     this.posterImageButton.current.focus();
  25558   }
  25559 
  25560   const videoPosterDescription = `video-block__poster-image-description-${instanceId}`;
  25561   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  25562     group: "block"
  25563   }, Object(external_wp_element_["createElement"])(TracksEditor, {
  25564     tracks: tracks,
  25565     onChange: newTracks => {
  25566       setAttributes({
  25567         tracks: newTracks
  25568       });
  25569     }
  25570   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  25571     group: "other"
  25572   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
  25573     mediaId: id,
  25574     mediaURL: src,
  25575     allowedTypes: video_edit_ALLOWED_MEDIA_TYPES,
  25576     accept: "video/*",
  25577     onSelect: onSelectVideo,
  25578     onSelectURL: onSelectURL,
  25579     onError: onUploadError
  25580   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  25581     title: Object(external_wp_i18n_["__"])('Video settings')
  25582   }, Object(external_wp_element_["createElement"])(edit_common_settings, {
  25583     setAttributes: setAttributes,
  25584     attributes: attributes
  25585   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaUploadCheck"], null, Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"], {
  25586     className: "editor-video-poster-control"
  25587   }, Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"].VisualLabel, null, Object(external_wp_i18n_["__"])('Poster image')), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaUpload"], {
  25588     title: Object(external_wp_i18n_["__"])('Select poster image'),
  25589     onSelect: onSelectPoster,
  25590     allowedTypes: VIDEO_POSTER_ALLOWED_MEDIA_TYPES,
  25591     render: ({
  25592       open
  25593     }) => Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  25594       isPrimary: true,
  25595       onClick: open,
  25596       ref: posterImageButton,
  25597       "aria-describedby": videoPosterDescription
  25598     }, !poster ? Object(external_wp_i18n_["__"])('Select') : Object(external_wp_i18n_["__"])('Replace'))
  25599   }), Object(external_wp_element_["createElement"])("p", {
  25600     id: videoPosterDescription,
  25601     hidden: true
  25602   }, poster ? Object(external_wp_i18n_["sprintf"])(
  25603   /* translators: %s: poster image URL. */
  25604   Object(external_wp_i18n_["__"])('The current poster image url is %s'), poster) : Object(external_wp_i18n_["__"])('There is no poster image currently selected')), !!poster && Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  25605     onClick: onRemovePoster,
  25606     isTertiary: true
  25607   }, Object(external_wp_i18n_["__"])('Remove')))))), Object(external_wp_element_["createElement"])("figure", blockProps, Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"], {
  25608     isDisabled: !isSelected
  25609   }, Object(external_wp_element_["createElement"])("video", {
  25610     controls: controls,
  25611     poster: poster,
  25612     src: src,
  25613     ref: videoPlayer
  25614   }, Object(external_wp_element_["createElement"])(Tracks, {
  25615     tracks: tracks
  25616   }))), isTemporaryVideo && Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null), (!external_wp_blockEditor_["RichText"].isEmpty(caption) || isSelected) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  25617     tagName: "figcaption",
  25618     "aria-label": Object(external_wp_i18n_["__"])('Video caption text'),
  25619     placeholder: Object(external_wp_i18n_["__"])('Add caption'),
  25620     value: caption,
  25621     onChange: value => setAttributes({
  25622       caption: value
  25623     }),
  25624     inlineToolbar: true,
  25625     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])('core/paragraph'))
  25626   })));
  25627 }
  25628 
  25629 /* harmony default export */ var video_edit = (Object(external_wp_components_["withNotices"])(VideoEdit));
  25630 
  25631 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/save.js
  25632 
  25633 
  25634 /**
  25635  * WordPress dependencies
  25636  */
  25637 
  25638 /**
  25639  * Internal dependencies
  25640  */
  25641 
  25642 
  25643 function video_save_save({
  25644   attributes
  25645 }) {
  25646   const {
  25647     autoplay,
  25648     caption,
  25649     controls,
  25650     loop,
  25651     muted,
  25652     poster,
  25653     preload,
  25654     src,
  25655     playsInline,
  25656     tracks
  25657   } = attributes;
  25658   return Object(external_wp_element_["createElement"])("figure", external_wp_blockEditor_["useBlockProps"].save(), src && Object(external_wp_element_["createElement"])("video", {
  25659     autoPlay: autoplay,
  25660     controls: controls,
  25661     loop: loop,
  25662     muted: muted,
  25663     poster: poster,
  25664     preload: preload !== 'metadata' ? preload : undefined,
  25665     src: src,
  25666     playsInline: playsInline
  25667   }, Object(external_wp_element_["createElement"])(Tracks, {
  25668     tracks: tracks
  25669   })), !external_wp_blockEditor_["RichText"].isEmpty(caption) && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"].Content, {
  25670     tagName: "figcaption",
  25671     value: caption
  25672   }));
  25673 }
  25674 
  25675 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/transforms.js
  25676 /**
  25677  * WordPress dependencies
  25678  */
  25679 
  25680 
  25681 const video_transforms_transforms = {
  25682   from: [{
  25683     type: 'files',
  25684 
  25685     isMatch(files) {
  25686       return files.length === 1 && files[0].type.indexOf('video/') === 0;
  25687     },
  25688 
  25689     transform(files) {
  25690       const file = files[0]; // We don't need to upload the media directly here
  25691       // It's already done as part of the `componentDidMount`
  25692       // in the video block
  25693 
  25694       const block = Object(external_wp_blocks_["createBlock"])('core/video', {
  25695         src: Object(external_wp_blob_["createBlobURL"])(file)
  25696       });
  25697       return block;
  25698     }
  25699 
  25700   }, {
  25701     type: 'shortcode',
  25702     tag: 'video',
  25703     attributes: {
  25704       src: {
  25705         type: 'string',
  25706         shortcode: ({
  25707           named: {
  25708             src,
  25709             mp4,
  25710             m4v,
  25711             webm,
  25712             ogv,
  25713             flv
  25714           }
  25715         }) => {
  25716           return src || mp4 || m4v || webm || ogv || flv;
  25717         }
  25718       },
  25719       poster: {
  25720         type: 'string',
  25721         shortcode: ({
  25722           named: {
  25723             poster
  25724           }
  25725         }) => {
  25726           return poster;
  25727         }
  25728       },
  25729       loop: {
  25730         type: 'string',
  25731         shortcode: ({
  25732           named: {
  25733             loop
  25734           }
  25735         }) => {
  25736           return loop;
  25737         }
  25738       },
  25739       autoplay: {
  25740         type: 'string',
  25741         shortcode: ({
  25742           named: {
  25743             autoplay
  25744           }
  25745         }) => {
  25746           return autoplay;
  25747         }
  25748       },
  25749       preload: {
  25750         type: 'string',
  25751         shortcode: ({
  25752           named: {
  25753             preload
  25754           }
  25755         }) => {
  25756           return preload;
  25757         }
  25758       }
  25759     }
  25760   }]
  25761 };
  25762 /* harmony default export */ var video_transforms = (video_transforms_transforms);
  25763 
  25764 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/video/index.js
  25765 /**
  25766  * WordPress dependencies
  25767  */
  25768 
  25769 
  25770 /**
  25771  * Internal dependencies
  25772  */
  25773 
  25774 
  25775 const video_metadata = {
  25776   apiVersion: 2,
  25777   name: "core/video",
  25778   title: "Video",
  25779   category: "media",
  25780   description: "Embed a video from your media library or upload a new one.",
  25781   keywords: ["movie"],
  25782   textdomain: "default",
  25783   attributes: {
  25784     autoplay: {
  25785       type: "boolean",
  25786       source: "attribute",
  25787       selector: "video",
  25788       attribute: "autoplay"
  25789     },
  25790     caption: {
  25791       type: "string",
  25792       source: "html",
  25793       selector: "figcaption"
  25794     },
  25795     controls: {
  25796       type: "boolean",
  25797       source: "attribute",
  25798       selector: "video",
  25799       attribute: "controls",
  25800       "default": true
  25801     },
  25802     id: {
  25803       type: "number"
  25804     },
  25805     loop: {
  25806       type: "boolean",
  25807       source: "attribute",
  25808       selector: "video",
  25809       attribute: "loop"
  25810     },
  25811     muted: {
  25812       type: "boolean",
  25813       source: "attribute",
  25814       selector: "video",
  25815       attribute: "muted"
  25816     },
  25817     poster: {
  25818       type: "string",
  25819       source: "attribute",
  25820       selector: "video",
  25821       attribute: "poster"
  25822     },
  25823     preload: {
  25824       type: "string",
  25825       source: "attribute",
  25826       selector: "video",
  25827       attribute: "preload",
  25828       "default": "metadata"
  25829     },
  25830     src: {
  25831       type: "string",
  25832       source: "attribute",
  25833       selector: "video",
  25834       attribute: "src"
  25835     },
  25836     playsInline: {
  25837       type: "boolean",
  25838       source: "attribute",
  25839       selector: "video",
  25840       attribute: "playsinline"
  25841     },
  25842     tracks: {
  25843       type: "array",
  25844       items: {
  25845         type: "object"
  25846       },
  25847       "default": []
  25848     }
  25849   },
  25850   supports: {
  25851     anchor: true,
  25852     align: true
  25853   },
  25854   editorStyle: "wp-block-video-editor",
  25855   style: "wp-block-video"
  25856 };
  25857 
  25858 
  25859 const {
  25860   name: video_name
  25861 } = video_metadata;
  25862 
  25863 const video_settings = {
  25864   icon: library_video,
  25865   example: {
  25866     attributes: {
  25867       src: 'https://upload.wikimedia.org/wikipedia/commons/c/ca/Wood_thrush_in_Central_Park_switch_sides_%2816510%29.webm',
  25868       // translators: Caption accompanying a video of the wood thrush singing, which serves as an example for the Video block.
  25869       caption: Object(external_wp_i18n_["__"])('Wood thrush singing in Central Park, NYC.')
  25870     }
  25871   },
  25872   transforms: video_transforms,
  25873   edit: video_edit,
  25874   save: video_save_save
  25875 };
  25876 
  25877 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/tag.js
  25878 
  25879 
  25880 /**
  25881  * WordPress dependencies
  25882  */
  25883 
  25884 const tag_tag = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  25885   xmlns: "http://www.w3.org/2000/svg",
  25886   viewBox: "0 0 24 24"
  25887 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  25888   d: "M20.1 11.2l-6.7-6.7c-.1-.1-.3-.2-.5-.2H5c-.4-.1-.8.3-.8.7v7.8c0 .2.1.4.2.5l6.7 6.7c.2.2.5.4.7.5s.6.2.9.2c.3 0 .6-.1.9-.2.3-.1.5-.3.8-.5l5.6-5.6c.4-.4.7-1 .7-1.6.1-.6-.2-1.2-.6-1.6zM19 13.4L13.4 19c-.1.1-.2.1-.3.2-.2.1-.4.1-.6 0-.1 0-.2-.1-.3-.2l-6.5-6.5V5.8h6.8l6.5 6.5c.2.2.2.4.2.6 0 .1 0 .3-.2.5zM9 8c-.6 0-1 .4-1 1s.4 1 1 1 1-.4 1-1-.4-1-1-1z"
  25889 }));
  25890 /* harmony default export */ var library_tag = (tag_tag);
  25891 
  25892 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/tag-cloud/edit.js
  25893 
  25894 
  25895 /**
  25896  * External dependencies
  25897  */
  25898 
  25899 /**
  25900  * WordPress dependencies
  25901  */
  25902 
  25903 
  25904 
  25905 
  25906 
  25907 
  25908 
  25909 
  25910 function TagCloudEdit({
  25911   attributes,
  25912   setAttributes,
  25913   taxonomies
  25914 }) {
  25915   const {
  25916     taxonomy,
  25917     showTagCounts
  25918   } = attributes;
  25919 
  25920   const getTaxonomyOptions = () => {
  25921     const selectOption = {
  25922       label: Object(external_wp_i18n_["__"])('- Select -'),
  25923       value: '',
  25924       disabled: true
  25925     };
  25926     const taxonomyOptions = Object(external_lodash_["map"])(Object(external_lodash_["filter"])(taxonomies, 'show_cloud'), item => {
  25927       return {
  25928         value: item.slug,
  25929         label: item.name
  25930       };
  25931     });
  25932     return [selectOption, ...taxonomyOptions];
  25933   };
  25934 
  25935   const inspectorControls = Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  25936     title: Object(external_wp_i18n_["__"])('Tag Cloud settings')
  25937   }, Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  25938     label: Object(external_wp_i18n_["__"])('Taxonomy'),
  25939     options: getTaxonomyOptions(),
  25940     value: taxonomy,
  25941     onChange: selectedTaxonomy => setAttributes({
  25942       taxonomy: selectedTaxonomy
  25943     })
  25944   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  25945     label: Object(external_wp_i18n_["__"])('Show post counts'),
  25946     checked: showTagCounts,
  25947     onChange: () => setAttributes({
  25948       showTagCounts: !showTagCounts
  25949     })
  25950   })));
  25951   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, inspectorControls, Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])(external_wp_serverSideRender_default.a, {
  25952     key: "tag-cloud",
  25953     block: "core/tag-cloud",
  25954     attributes: attributes
  25955   })));
  25956 }
  25957 
  25958 /* harmony default export */ var tag_cloud_edit = (Object(external_wp_data_["withSelect"])(select => {
  25959   return {
  25960     taxonomies: select(external_wp_coreData_["store"]).getTaxonomies({
  25961       per_page: -1
  25962     })
  25963   };
  25964 })(TagCloudEdit));
  25965 
  25966 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/tag-cloud/index.js
  25967 /**
  25968  * WordPress dependencies
  25969  */
  25970 
  25971 /**
  25972  * Internal dependencies
  25973  */
  25974 
  25975 const tag_cloud_metadata = {
  25976   apiVersion: 2,
  25977   name: "core/tag-cloud",
  25978   title: "Tag Cloud",
  25979   category: "widgets",
  25980   description: "A cloud of your most used tags.",
  25981   textdomain: "default",
  25982   attributes: {
  25983     taxonomy: {
  25984       type: "string",
  25985       "default": "post_tag"
  25986     },
  25987     showTagCounts: {
  25988       type: "boolean",
  25989       "default": false
  25990     }
  25991   },
  25992   supports: {
  25993     html: false,
  25994     align: true
  25995   },
  25996   editorStyle: "wp-block-tag-cloud-editor"
  25997 };
  25998 
  25999 const {
  26000   name: tag_cloud_name
  26001 } = tag_cloud_metadata;
  26002 
  26003 const tag_cloud_settings = {
  26004   icon: library_tag,
  26005   example: {},
  26006   edit: tag_cloud_edit
  26007 };
  26008 
  26009 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/classic.js
  26010 
  26011 
  26012 /**
  26013  * WordPress dependencies
  26014  */
  26015 
  26016 const classic = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26017   viewBox: "0 0 24 24",
  26018   xmlns: "http://www.w3.org/2000/svg"
  26019 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26020   d: "M20 6H4c-1.1 0-2 .9-2 2v9c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm.5 11c0 .3-.2.5-.5.5H4c-.3 0-.5-.2-.5-.5V8c0-.3.2-.5.5-.5h16c.3 0 .5.2.5.5v9zM10 10H8v2h2v-2zm-5 2h2v-2H5v2zm8-2h-2v2h2v-2zm-5 6h8v-2H8v2zm6-4h2v-2h-2v2zm3 0h2v-2h-2v2zm0 4h2v-2h-2v2zM5 16h2v-2H5v2z"
  26021 }));
  26022 /* harmony default export */ var library_classic = (classic);
  26023 
  26024 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/convert-to-blocks-button.js
  26025 
  26026 
  26027 /**
  26028  * WordPress dependencies
  26029  */
  26030 
  26031 
  26032 
  26033 
  26034 
  26035 
  26036 const ConvertToBlocksButton = ({
  26037   clientId
  26038 }) => {
  26039   const {
  26040     replaceBlocks
  26041   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  26042   const block = Object(external_wp_data_["useSelect"])(select => {
  26043     return select(external_wp_blockEditor_["store"]).getBlock(clientId);
  26044   }, [clientId]);
  26045   return Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  26046     onClick: () => replaceBlocks(block.clientId, Object(external_wp_blocks_["rawHandler"])({
  26047       HTML: Object(external_wp_blocks_["serialize"])(block)
  26048     }))
  26049   }, Object(external_wp_i18n_["__"])('Convert to blocks'));
  26050 };
  26051 
  26052 /* harmony default export */ var convert_to_blocks_button = (ConvertToBlocksButton);
  26053 
  26054 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/edit.js
  26055 
  26056 
  26057 /**
  26058  * External dependencies
  26059  */
  26060 
  26061 /**
  26062  * WordPress dependencies
  26063  */
  26064 
  26065 
  26066 
  26067 
  26068 
  26069 
  26070 /**
  26071  * Internal dependencies
  26072  */
  26073 
  26074 
  26075 const {
  26076   wp: edit_wp
  26077 } = window;
  26078 
  26079 function isTmceEmpty(editor) {
  26080   // When tinyMce is empty the content seems to be:
  26081   // <p><br data-mce-bogus="1"></p>
  26082   // avoid expensive checks for large documents
  26083   const body = editor.getBody();
  26084 
  26085   if (body.childNodes.length > 1) {
  26086     return false;
  26087   } else if (body.childNodes.length === 0) {
  26088     return true;
  26089   }
  26090 
  26091   if (body.childNodes[0].childNodes.length > 1) {
  26092     return false;
  26093   }
  26094 
  26095   return /^\n?$/.test(body.innerText || body.textContent);
  26096 }
  26097 
  26098 function ClassicEdit({
  26099   clientId,
  26100   attributes: {
  26101     content
  26102   },
  26103   setAttributes,
  26104   onReplace
  26105 }) {
  26106   const didMount = Object(external_wp_element_["useRef"])(false);
  26107   Object(external_wp_element_["useEffect"])(() => {
  26108     if (!didMount.current) {
  26109       return;
  26110     }
  26111 
  26112     const editor = window.tinymce.get(`editor-${clientId}`);
  26113     const currentContent = editor === null || editor === void 0 ? void 0 : editor.getContent();
  26114 
  26115     if (currentContent !== content) {
  26116       editor.setContent(content || '');
  26117     }
  26118   }, [content]);
  26119   Object(external_wp_element_["useEffect"])(() => {
  26120     const {
  26121       baseURL,
  26122       suffix
  26123     } = window.wpEditorL10n.tinymce;
  26124     didMount.current = true;
  26125     window.tinymce.EditorManager.overrideDefaults({
  26126       base_url: baseURL,
  26127       suffix
  26128     });
  26129 
  26130     function onSetup(editor) {
  26131       let bookmark;
  26132 
  26133       if (content) {
  26134         editor.on('loadContent', () => editor.setContent(content));
  26135       }
  26136 
  26137       editor.on('blur', () => {
  26138         bookmark = editor.selection.getBookmark(2, true); // There is an issue with Chrome and the editor.focus call in core at https://core.trac.wordpress.org/browser/trunk/src/js/_enqueues/lib/link.js#L451.
  26139         // This causes a scroll to the top of editor content on return from some content updating dialogs so tracking
  26140         // scroll position until this is fixed in core.
  26141 
  26142         const scrollContainer = document.querySelector('.interface-interface-skeleton__content');
  26143         const scrollPosition = scrollContainer.scrollTop;
  26144         setAttributes({
  26145           content: editor.getContent()
  26146         });
  26147         editor.once('focus', () => {
  26148           if (bookmark) {
  26149             editor.selection.moveToBookmark(bookmark);
  26150 
  26151             if (scrollContainer.scrollTop !== scrollPosition) {
  26152               scrollContainer.scrollTop = scrollPosition;
  26153             }
  26154           }
  26155         });
  26156         return false;
  26157       });
  26158       editor.on('mousedown touchstart', () => {
  26159         bookmark = null;
  26160       });
  26161       const debouncedOnChange = Object(external_lodash_["debounce"])(() => {
  26162         const value = editor.getContent();
  26163 
  26164         if (value !== editor._lastChange) {
  26165           editor._lastChange = value;
  26166           setAttributes({
  26167             content: value
  26168           });
  26169         }
  26170       }, 250);
  26171       editor.on('Paste Change input Undo Redo', debouncedOnChange); // We need to cancel the debounce call because when we remove
  26172       // the editor (onUnmount) this callback is executed in
  26173       // another tick. This results in setting the content to empty.
  26174 
  26175       editor.on('remove', debouncedOnChange.cancel);
  26176       editor.on('keydown', event => {
  26177         if (external_wp_keycodes_["isKeyboardEvent"].primary(event, 'z')) {
  26178           // Prevent the gutenberg undo kicking in so TinyMCE undo stack works as expected
  26179           event.stopPropagation();
  26180         }
  26181 
  26182         if ((event.keyCode === external_wp_keycodes_["BACKSPACE"] || event.keyCode === external_wp_keycodes_["DELETE"]) && isTmceEmpty(editor)) {
  26183           // delete the block
  26184           onReplace([]);
  26185           event.preventDefault();
  26186           event.stopImmediatePropagation();
  26187         }
  26188 
  26189         const {
  26190           altKey
  26191         } = event;
  26192         /*
  26193          * Prevent Mousetrap from kicking in: TinyMCE already uses its own
  26194          * `alt+f10` shortcut to focus its toolbar.
  26195          */
  26196 
  26197         if (altKey && event.keyCode === external_wp_keycodes_["F10"]) {
  26198           event.stopPropagation();
  26199         }
  26200       });
  26201       editor.on('init', () => {
  26202         const rootNode = editor.getBody(); // Create the toolbar by refocussing the editor.
  26203 
  26204         if (rootNode.ownerDocument.activeElement === rootNode) {
  26205           rootNode.blur();
  26206           editor.focus();
  26207         }
  26208       });
  26209     }
  26210 
  26211     function initialize() {
  26212       const {
  26213         settings
  26214       } = window.wpEditorL10n.tinymce;
  26215       edit_wp.oldEditor.initialize(`editor-${clientId}`, {
  26216         tinymce: { ...settings,
  26217           inline: true,
  26218           content_css: false,
  26219           fixed_toolbar_container: `#toolbar-${clientId}`,
  26220           setup: onSetup
  26221         }
  26222       });
  26223     }
  26224 
  26225     function onReadyStateChange() {
  26226       if (document.readyState === 'complete') {
  26227         initialize();
  26228       }
  26229     }
  26230 
  26231     if (document.readyState === 'complete') {
  26232       initialize();
  26233     } else {
  26234       document.addEventListener('readystatechange', onReadyStateChange);
  26235     }
  26236 
  26237     return () => {
  26238       document.removeEventListener('readystatechange', onReadyStateChange);
  26239       edit_wp.oldEditor.remove(`editor-${clientId}`);
  26240     };
  26241   }, []);
  26242 
  26243   function focus() {
  26244     const editor = window.tinymce.get(`editor-${clientId}`);
  26245 
  26246     if (editor) {
  26247       editor.focus();
  26248     }
  26249   }
  26250 
  26251   function onToolbarKeyDown(event) {
  26252     // Prevent WritingFlow from kicking in and allow arrows navigation on the toolbar.
  26253     event.stopPropagation(); // Prevent Mousetrap from moving focus to the top toolbar when pressing `alt+f10` on this block toolbar.
  26254 
  26255     event.nativeEvent.stopImmediatePropagation();
  26256   } // Disable reasons:
  26257   //
  26258   // jsx-a11y/no-static-element-interactions
  26259   //  - the toolbar itself is non-interactive, but must capture events
  26260   //    from the KeyboardShortcuts component to stop their propagation.
  26261 
  26262   /* eslint-disable jsx-a11y/no-static-element-interactions */
  26263 
  26264 
  26265   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, Object(external_wp_element_["createElement"])(convert_to_blocks_button, {
  26266     clientId: clientId
  26267   }))), Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), Object(external_wp_element_["createElement"])("div", {
  26268     key: "toolbar",
  26269     id: `toolbar-${clientId}`,
  26270     className: "block-library-classic__toolbar",
  26271     onClick: focus,
  26272     "data-placeholder": Object(external_wp_i18n_["__"])('Classic'),
  26273     onKeyDown: onToolbarKeyDown
  26274   }), Object(external_wp_element_["createElement"])("div", {
  26275     key: "editor",
  26276     id: `editor-${clientId}`,
  26277     className: "wp-block-freeform block-library-rich-text__tinymce"
  26278   })));
  26279   /* eslint-enable jsx-a11y/no-static-element-interactions */
  26280 }
  26281 
  26282 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/save.js
  26283 
  26284 
  26285 /**
  26286  * WordPress dependencies
  26287  */
  26288 
  26289 function freeform_save_save({
  26290   attributes
  26291 }) {
  26292   const {
  26293     content
  26294   } = attributes;
  26295   return Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], null, content);
  26296 }
  26297 
  26298 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/index.js
  26299 /**
  26300  * WordPress dependencies
  26301  */
  26302 
  26303 /**
  26304  * Internal dependencies
  26305  */
  26306 
  26307 
  26308 const freeform_metadata = {
  26309   apiVersion: 2,
  26310   name: "core/freeform",
  26311   title: "Classic",
  26312   category: "text",
  26313   description: "Use the classic WordPress editor.",
  26314   textdomain: "default",
  26315   attributes: {
  26316     content: {
  26317       type: "string",
  26318       source: "html"
  26319     }
  26320   },
  26321   supports: {
  26322     className: false,
  26323     customClassName: false,
  26324     reusable: false
  26325   },
  26326   editorStyle: "wp-block-freeform-editor"
  26327 };
  26328 
  26329 const {
  26330   name: freeform_name
  26331 } = freeform_metadata;
  26332 
  26333 const freeform_settings = {
  26334   icon: library_classic,
  26335   edit: ClassicEdit,
  26336   save: freeform_save_save
  26337 };
  26338 
  26339 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/share.js
  26340 
  26341 
  26342 /**
  26343  * WordPress dependencies
  26344  */
  26345 
  26346 const share = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26347   viewBox: "0 0 24 24",
  26348   xmlns: "http://www.w3.org/2000/svg"
  26349 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26350   d: "M9 11.8l6.1-4.5c.1.4.4.7.9.7h2c.6 0 1-.4 1-1V5c0-.6-.4-1-1-1h-2c-.6 0-1 .4-1 1v.4l-6.4 4.8c-.2-.1-.4-.2-.6-.2H6c-.6 0-1 .4-1 1v2c0 .6.4 1 1 1h2c.2 0 .4-.1.6-.2l6.4 4.8v.4c0 .6.4 1 1 1h2c.6 0 1-.4 1-1v-2c0-.6-.4-1-1-1h-2c-.5 0-.8.3-.9.7L9 12.2v-.4z"
  26351 }));
  26352 /* harmony default export */ var library_share = (share);
  26353 
  26354 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-links/deprecated.js
  26355 
  26356 
  26357 /**
  26358  * External dependencies
  26359  */
  26360 
  26361 /**
  26362  * WordPress dependencies
  26363  */
  26364 
  26365  // Social Links block deprecations.
  26366 
  26367 const social_links_deprecated_deprecated = [// V1. Remove CSS variable use for colors.
  26368 {
  26369   attributes: {
  26370     iconColor: {
  26371       type: 'string'
  26372     },
  26373     customIconColor: {
  26374       type: 'string'
  26375     },
  26376     iconColorValue: {
  26377       type: 'string'
  26378     },
  26379     iconBackgroundColor: {
  26380       type: 'string'
  26381     },
  26382     customIconBackgroundColor: {
  26383       type: 'string'
  26384     },
  26385     iconBackgroundColorValue: {
  26386       type: 'string'
  26387     },
  26388     openInNewTab: {
  26389       type: 'boolean',
  26390       default: false
  26391     },
  26392     size: {
  26393       type: 'string'
  26394     }
  26395   },
  26396   providesContext: {
  26397     openInNewTab: 'openInNewTab'
  26398   },
  26399   supports: {
  26400     align: ['left', 'center', 'right'],
  26401     anchor: true
  26402   },
  26403   save: props => {
  26404     const {
  26405       attributes: {
  26406         iconBackgroundColorValue,
  26407         iconColorValue,
  26408         itemsJustification,
  26409         size
  26410       }
  26411     } = props;
  26412     const className = classnames_default()(size, {
  26413       'has-icon-color': iconColorValue,
  26414       'has-icon-background-color': iconBackgroundColorValue,
  26415       [`items-justified-${itemsJustification}`]: itemsJustification
  26416     });
  26417     const style = {
  26418       '--wp--social-links--icon-color': iconColorValue,
  26419       '--wp--social-links--icon-background-color': iconBackgroundColorValue
  26420     };
  26421     return Object(external_wp_element_["createElement"])("ul", external_wp_blockEditor_["useBlockProps"].save({
  26422       className,
  26423       style
  26424     }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  26425   }
  26426 }];
  26427 /* harmony default export */ var social_links_deprecated = (social_links_deprecated_deprecated);
  26428 
  26429 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-links/edit.js
  26430 
  26431 
  26432 /**
  26433  * External dependencies
  26434  */
  26435 
  26436 /**
  26437  * WordPress dependencies
  26438  */
  26439 
  26440 
  26441 
  26442 
  26443 
  26444 
  26445 const social_links_edit_ALLOWED_BLOCKS = ['core/social-link'];
  26446 const sizeOptions = [{
  26447   name: Object(external_wp_i18n_["__"])('Small'),
  26448   value: 'has-small-icon-size'
  26449 }, {
  26450   name: Object(external_wp_i18n_["__"])('Normal'),
  26451   value: 'has-normal-icon-size'
  26452 }, {
  26453   name: Object(external_wp_i18n_["__"])('Large'),
  26454   value: 'has-large-icon-size'
  26455 }, {
  26456   name: Object(external_wp_i18n_["__"])('Huge'),
  26457   value: 'has-huge-icon-size'
  26458 }];
  26459 function SocialLinksEdit(props) {
  26460   var _attributes$className;
  26461 
  26462   const {
  26463     attributes,
  26464     iconBackgroundColor,
  26465     iconColor,
  26466     isSelected,
  26467     setAttributes,
  26468     setIconBackgroundColor,
  26469     setIconColor
  26470   } = props;
  26471   const {
  26472     iconBackgroundColorValue,
  26473     iconColorValue,
  26474     itemsJustification,
  26475     openInNewTab,
  26476     size
  26477   } = attributes; // Remove icon background color if logos only style selected.
  26478 
  26479   const logosOnly = ((_attributes$className = attributes.className) === null || _attributes$className === void 0 ? void 0 : _attributes$className.indexOf('is-style-logos-only')) >= 0;
  26480   Object(external_wp_element_["useEffect"])(() => {
  26481     if (logosOnly) {
  26482       setAttributes({
  26483         iconBackgroundColor: undefined,
  26484         customIconBackgroundColor: undefined,
  26485         iconBackgroundColorValue: undefined
  26486       });
  26487     }
  26488   }, [logosOnly, setAttributes]);
  26489   const SocialPlaceholder = Object(external_wp_element_["createElement"])("li", {
  26490     className: "wp-block-social-links__social-placeholder"
  26491   }, Object(external_wp_element_["createElement"])("div", {
  26492     className: "wp-social-link"
  26493   }), Object(external_wp_element_["createElement"])("div", {
  26494     className: "wp-block-social-links__social-placeholder-icons"
  26495   }, Object(external_wp_element_["createElement"])("div", {
  26496     className: "wp-social-link wp-social-link-twitter"
  26497   }), Object(external_wp_element_["createElement"])("div", {
  26498     className: "wp-social-link wp-social-link-facebook"
  26499   }), Object(external_wp_element_["createElement"])("div", {
  26500     className: "wp-social-link wp-social-link-instagram"
  26501   })));
  26502   const SelectedSocialPlaceholder = Object(external_wp_element_["createElement"])("li", {
  26503     className: "wp-block-social-links__social-prompt"
  26504   }, Object(external_wp_i18n_["__"])('Click plus to add')); // Fallback color values are used maintain selections in case switching
  26505   // themes and named colors in palette do not match.
  26506 
  26507   const className = classnames_default()(size, {
  26508     'has-icon-color': iconColor.color || iconColorValue,
  26509     'has-icon-background-color': iconBackgroundColor.color || iconBackgroundColorValue,
  26510     [`items-justified-${itemsJustification}`]: itemsJustification
  26511   });
  26512   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  26513     className
  26514   });
  26515   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])(blockProps, {
  26516     allowedBlocks: social_links_edit_ALLOWED_BLOCKS,
  26517     orientation: 'horizontal',
  26518     placeholder: isSelected ? SelectedSocialPlaceholder : SocialPlaceholder,
  26519     templateLock: false,
  26520     __experimentalAppenderTagName: 'li'
  26521   });
  26522   const POPOVER_PROPS = {
  26523     position: 'bottom right',
  26524     isAlternate: true
  26525   };
  26526   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  26527     group: "block"
  26528   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["JustifyContentControl"], {
  26529     allowedControls: ['left', 'center', 'right', 'space-between'],
  26530     value: itemsJustification,
  26531     onChange: value => setAttributes({
  26532       itemsJustification: value
  26533     }),
  26534     popoverProps: {
  26535       position: 'bottom right',
  26536       isAlternate: true
  26537     }
  26538   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  26539     group: "other"
  26540   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarDropdownMenu"], {
  26541     label: Object(external_wp_i18n_["__"])('Size'),
  26542     text: Object(external_wp_i18n_["__"])('Size'),
  26543     icon: null,
  26544     popoverProps: POPOVER_PROPS
  26545   }, ({
  26546     onClose
  26547   }) => Object(external_wp_element_["createElement"])(external_wp_components_["MenuGroup"], null, sizeOptions.map(entry => {
  26548     return Object(external_wp_element_["createElement"])(external_wp_components_["MenuItem"], {
  26549       icon: (size === entry.value || !size && entry.value === 'has-normal-icon-size') && check["a" /* default */],
  26550       isSelected: size === entry.value,
  26551       key: entry.value,
  26552       onClick: () => {
  26553         setAttributes({
  26554           size: entry.value
  26555         });
  26556       },
  26557       onClose: onClose,
  26558       role: "menuitemradio"
  26559     }, entry.name);
  26560   })))), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  26561     title: Object(external_wp_i18n_["__"])('Link settings')
  26562   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  26563     label: Object(external_wp_i18n_["__"])('Open links in new tab'),
  26564     checked: openInNewTab,
  26565     onChange: () => setAttributes({
  26566       openInNewTab: !openInNewTab
  26567     })
  26568   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PanelColorSettings"], {
  26569     title: Object(external_wp_i18n_["__"])('Color'),
  26570     colorSettings: [{
  26571       // Use custom attribute as fallback to prevent loss of named color selection when
  26572       // switching themes to a new theme that does not have a matching named color.
  26573       value: iconColor.color || iconColorValue,
  26574       onChange: colorValue => {
  26575         setIconColor(colorValue);
  26576         setAttributes({
  26577           iconColorValue: colorValue
  26578         });
  26579       },
  26580       label: Object(external_wp_i18n_["__"])('Icon color')
  26581     }, !logosOnly && {
  26582       // Use custom attribute as fallback to prevent loss of named color selection when
  26583       // switching themes to a new theme that does not have a matching named color.
  26584       value: iconBackgroundColor.color || iconBackgroundColorValue,
  26585       onChange: colorValue => {
  26586         setIconBackgroundColor(colorValue);
  26587         setAttributes({
  26588           iconBackgroundColorValue: colorValue
  26589         });
  26590       },
  26591       label: Object(external_wp_i18n_["__"])('Icon background color')
  26592     }]
  26593   }), !logosOnly && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["ContrastChecker"], {
  26594     textColor: iconColorValue,
  26595     backgroundColor: iconBackgroundColorValue,
  26596     isLargeText: false
  26597   })), Object(external_wp_element_["createElement"])("ul", innerBlocksProps));
  26598 }
  26599 const iconColorAttributes = {
  26600   iconColor: 'icon-color',
  26601   iconBackgroundColor: 'icon-background-color'
  26602 };
  26603 /* harmony default export */ var social_links_edit = (Object(external_wp_blockEditor_["withColors"])(iconColorAttributes)(SocialLinksEdit));
  26604 
  26605 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-links/save.js
  26606 
  26607 
  26608 /**
  26609  * External dependencies
  26610  */
  26611 
  26612 /**
  26613  * WordPress dependencies
  26614  */
  26615 
  26616 
  26617 function social_links_save_save(props) {
  26618   const {
  26619     attributes: {
  26620       iconBackgroundColorValue,
  26621       iconColorValue,
  26622       itemsJustification,
  26623       size
  26624     }
  26625   } = props;
  26626   const className = classnames_default()(size, {
  26627     'has-icon-color': iconColorValue,
  26628     'has-icon-background-color': iconBackgroundColorValue,
  26629     [`items-justified-${itemsJustification}`]: itemsJustification
  26630   });
  26631   return Object(external_wp_element_["createElement"])("ul", external_wp_blockEditor_["useBlockProps"].save({
  26632     className
  26633   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  26634 }
  26635 
  26636 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-links/index.js
  26637 /**
  26638  * WordPress dependencies
  26639  */
  26640 
  26641 /**
  26642  * Internal dependencies
  26643  */
  26644 
  26645 
  26646 
  26647 const social_links_metadata = {
  26648   apiVersion: 2,
  26649   name: "core/social-links",
  26650   title: "Social Icons",
  26651   category: "widgets",
  26652   description: "Display icons linking to your social media profiles or websites.",
  26653   keywords: ["links"],
  26654   textdomain: "default",
  26655   attributes: {
  26656     iconColor: {
  26657       type: "string"
  26658     },
  26659     customIconColor: {
  26660       type: "string"
  26661     },
  26662     iconColorValue: {
  26663       type: "string"
  26664     },
  26665     iconBackgroundColor: {
  26666       type: "string"
  26667     },
  26668     customIconBackgroundColor: {
  26669       type: "string"
  26670     },
  26671     iconBackgroundColorValue: {
  26672       type: "string"
  26673     },
  26674     openInNewTab: {
  26675       type: "boolean",
  26676       "default": false
  26677     },
  26678     size: {
  26679       type: "string"
  26680     }
  26681   },
  26682   providesContext: {
  26683     openInNewTab: "openInNewTab",
  26684     iconColorValue: "iconColorValue",
  26685     iconBackgroundColorValue: "iconBackgroundColorValue"
  26686   },
  26687   supports: {
  26688     align: ["left", "center", "right"],
  26689     anchor: true
  26690   },
  26691   styles: [{
  26692     name: "default",
  26693     label: "Default",
  26694     isDefault: true
  26695   }, {
  26696     name: "logos-only",
  26697     label: "Logos Only"
  26698   }, {
  26699     name: "pill-shape",
  26700     label: "Pill Shape"
  26701   }],
  26702   editorStyle: "wp-block-social-links-editor",
  26703   style: "wp-block-social-links"
  26704 };
  26705 
  26706 const {
  26707   name: social_links_name
  26708 } = social_links_metadata;
  26709 
  26710 const social_links_settings = {
  26711   example: {
  26712     innerBlocks: [{
  26713       name: 'core/social-link',
  26714       attributes: {
  26715         service: 'wordpress',
  26716         url: 'https://wordpress.org'
  26717       }
  26718     }, {
  26719       name: 'core/social-link',
  26720       attributes: {
  26721         service: 'facebook',
  26722         url: 'https://www.facebook.com/WordPress/'
  26723       }
  26724     }, {
  26725       name: 'core/social-link',
  26726       attributes: {
  26727         service: 'twitter',
  26728         url: 'https://twitter.com/WordPress'
  26729       }
  26730     }]
  26731   },
  26732   icon: library_share,
  26733   edit: social_links_edit,
  26734   save: social_links_save_save,
  26735   deprecated: social_links_deprecated
  26736 };
  26737 
  26738 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/keyboard-return.js
  26739 var keyboard_return = __webpack_require__("btIw");
  26740 
  26741 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/wordpress.js
  26742 
  26743 
  26744 /**
  26745  * WordPress dependencies
  26746  */
  26747 
  26748 const WordPressIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26749   width: "24",
  26750   height: "24",
  26751   viewBox: "0 0 24 24",
  26752   version: "1.1",
  26753   xmlns: "http://www.w3.org/2000/svg"
  26754 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26755   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"
  26756 }));
  26757 
  26758 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/fivehundredpx.js
  26759 
  26760 
  26761 /**
  26762  * WordPress dependencies
  26763  */
  26764 
  26765 const FivehundredpxIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26766   width: "24",
  26767   height: "24",
  26768   viewBox: "0 0 24 24",
  26769   version: "1.1"
  26770 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26771   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"
  26772 }));
  26773 
  26774 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/amazon.js
  26775 
  26776 
  26777 /**
  26778  * WordPress dependencies
  26779  */
  26780 
  26781 const AmazonIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26782   width: "24",
  26783   height: "24",
  26784   viewBox: "0 0 24 24",
  26785   version: "1.1"
  26786 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26787   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"
  26788 }));
  26789 
  26790 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/bandcamp.js
  26791 
  26792 
  26793 /**
  26794  * WordPress dependencies
  26795  */
  26796 
  26797 const BandcampIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26798   width: "24",
  26799   height: "24",
  26800   viewBox: "0 0 24 24",
  26801   version: "1.1"
  26802 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26803   d: "M15.27 17.289 3 17.289 8.73 6.711 21 6.711 15.27 17.289"
  26804 }));
  26805 
  26806 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/behance.js
  26807 
  26808 
  26809 /**
  26810  * WordPress dependencies
  26811  */
  26812 
  26813 const BehanceIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26814   width: "24",
  26815   height: "24",
  26816   viewBox: "0 0 24 24",
  26817   version: "1.1"
  26818 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26819   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"
  26820 }));
  26821 
  26822 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/chain.js
  26823 
  26824 
  26825 /**
  26826  * WordPress dependencies
  26827  */
  26828 
  26829 const ChainIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26830   width: "24",
  26831   height: "24",
  26832   viewBox: "0 0 24 24",
  26833   version: "1.1"
  26834 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26835   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"
  26836 }));
  26837 
  26838 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/codepen.js
  26839 
  26840 
  26841 /**
  26842  * WordPress dependencies
  26843  */
  26844 
  26845 const CodepenIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26846   width: "24",
  26847   height: "24",
  26848   viewBox: "0 0 24 24",
  26849   version: "1.1"
  26850 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26851   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"
  26852 }));
  26853 
  26854 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/deviantart.js
  26855 
  26856 
  26857 /**
  26858  * WordPress dependencies
  26859  */
  26860 
  26861 const DeviantArtIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26862   width: "24",
  26863   height: "24",
  26864   viewBox: "0 0 24 24",
  26865   version: "1.1"
  26866 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26867   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"
  26868 }));
  26869 
  26870 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/dribbble.js
  26871 
  26872 
  26873 /**
  26874  * WordPress dependencies
  26875  */
  26876 
  26877 const DribbbleIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26878   width: "24",
  26879   height: "24",
  26880   viewBox: "0 0 24 24",
  26881   version: "1.1"
  26882 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26883   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"
  26884 }));
  26885 
  26886 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/dropbox.js
  26887 
  26888 
  26889 /**
  26890  * WordPress dependencies
  26891  */
  26892 
  26893 const DropboxIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26894   width: "24",
  26895   height: "24",
  26896   viewBox: "0 0 24 24",
  26897   version: "1.1"
  26898 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26899   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"
  26900 }));
  26901 
  26902 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/etsy.js
  26903 
  26904 
  26905 /**
  26906  * WordPress dependencies
  26907  */
  26908 
  26909 const EtsyIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26910   width: "24",
  26911   height: "24",
  26912   viewBox: "0 0 24 24",
  26913   version: "1.1"
  26914 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26915   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"
  26916 }));
  26917 
  26918 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/facebook.js
  26919 
  26920 
  26921 /**
  26922  * WordPress dependencies
  26923  */
  26924 
  26925 const FacebookIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26926   width: "24",
  26927   height: "24",
  26928   viewBox: "0 0 24 24",
  26929   version: "1.1"
  26930 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26931   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"
  26932 }));
  26933 
  26934 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/feed.js
  26935 
  26936 
  26937 /**
  26938  * WordPress dependencies
  26939  */
  26940 
  26941 const FeedIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26942   width: "24",
  26943   height: "24",
  26944   viewBox: "0 0 24 24",
  26945   version: "1.1"
  26946 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26947   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"
  26948 }));
  26949 
  26950 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/flickr.js
  26951 
  26952 
  26953 /**
  26954  * WordPress dependencies
  26955  */
  26956 
  26957 const FlickrIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26958   width: "24",
  26959   height: "24",
  26960   viewBox: "0 0 24 24",
  26961   version: "1.1"
  26962 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26963   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"
  26964 }));
  26965 
  26966 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/foursquare.js
  26967 
  26968 
  26969 /**
  26970  * WordPress dependencies
  26971  */
  26972 
  26973 const FoursquareIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26974   width: "24",
  26975   height: "24",
  26976   viewBox: "0 0 24 24",
  26977   version: "1.1"
  26978 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26979   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"
  26980 }));
  26981 
  26982 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/goodreads.js
  26983 
  26984 
  26985 /**
  26986  * WordPress dependencies
  26987  */
  26988 
  26989 const GoodreadsIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  26990   width: "24",
  26991   height: "24",
  26992   viewBox: "0 0 24 24",
  26993   version: "1.1"
  26994 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  26995   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"
  26996 }));
  26997 
  26998 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/google.js
  26999 
  27000 
  27001 /**
  27002  * WordPress dependencies
  27003  */
  27004 
  27005 const GoogleIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27006   width: "24",
  27007   height: "24",
  27008   viewBox: "0 0 24 24",
  27009   version: "1.1"
  27010 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27011   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"
  27012 }));
  27013 
  27014 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/github.js
  27015 
  27016 
  27017 /**
  27018  * WordPress dependencies
  27019  */
  27020 
  27021 const GitHubIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27022   width: "24",
  27023   height: "24",
  27024   viewBox: "0 0 24 24",
  27025   version: "1.1"
  27026 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27027   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"
  27028 }));
  27029 
  27030 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/instagram.js
  27031 
  27032 
  27033 /**
  27034  * WordPress dependencies
  27035  */
  27036 
  27037 const InstagramIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27038   width: "24",
  27039   height: "24",
  27040   viewBox: "0 0 24 24",
  27041   version: "1.1"
  27042 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27043   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"
  27044 }));
  27045 
  27046 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/lastfm.js
  27047 
  27048 
  27049 /**
  27050  * WordPress dependencies
  27051  */
  27052 
  27053 const LastfmIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27054   width: "24",
  27055   height: "24",
  27056   viewBox: "0 0 24 24",
  27057   version: "1.1"
  27058 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27059   d: "M 12.0002 1.5 C 6.2006 1.5 1.5 6.2011 1.5 11.9998 C 1.5 17.799 6.2006 22.5 12.0002 22.5 C 17.799 22.5 22.5 17.799 22.5 11.9998 C 22.5 6.2011 17.799 1.5 12.0002 1.5 Z M 16.1974 16.2204 C 14.8164 16.2152 13.9346 15.587 13.3345 14.1859 L 13.1816 13.8451 L 11.8541 10.8101 C 11.4271 9.7688 10.3526 9.0712 9.1801 9.0712 C 7.5695 9.0712 6.2593 10.3851 6.2593 12.001 C 6.2593 13.6165 7.5695 14.9303 9.1801 14.9303 C 10.272 14.9303 11.2651 14.3275 11.772 13.3567 C 11.7893 13.3235 11.8239 13.302 11.863 13.3038 C 11.9007 13.3054 11.9353 13.3288 11.9504 13.3632 L 12.4865 14.6046 C 12.5016 14.639 12.4956 14.6778 12.4723 14.7069 C 11.6605 15.6995 10.4602 16.2683 9.1801 16.2683 C 6.8331 16.2683 4.9234 14.3536 4.9234 12.001 C 4.9234 9.6468 6.833 7.732 9.1801 7.732 C 10.9572 7.732 12.3909 8.6907 13.1138 10.3636 C 13.1206 10.3802 13.8412 12.0708 14.4744 13.5191 C 14.8486 14.374 15.1462 14.896 16.1288 14.9292 C 17.0663 14.9613 17.7538 14.4122 17.7538 13.6485 C 17.7538 12.9691 17.3321 12.8004 16.3803 12.4822 C 14.7365 11.9398 13.845 11.3861 13.845 10.0182 C 13.845 8.6809 14.7667 7.8162 16.192 7.8162 C 17.1288 7.8162 17.8155 8.2287 18.2921 9.0768 C 18.305 9.1006 18.3079 9.1281 18.3004 9.1542 C 18.2929 9.1803 18.2748 9.2021 18.2507 9.2138 L 17.3614 9.669 C 17.3178 9.692 17.2643 9.6781 17.2356 9.6385 C 16.9329 9.2135 16.5956 9.0251 16.1423 9.0251 C 15.5512 9.0251 15.122 9.429 15.122 9.9865 C 15.122 10.6738 15.6529 10.8414 16.5339 11.1192 C 16.6491 11.1558 16.7696 11.194 16.8939 11.2343 C 18.2763 11.6865 19.0768 12.2311 19.0768 13.6836 C 19.0769 15.1297 17.8389 16.2204 16.1974 16.2204 Z"
  27060 }));
  27061 
  27062 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/linkedin.js
  27063 
  27064 
  27065 /**
  27066  * WordPress dependencies
  27067  */
  27068 
  27069 const LinkedInIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27070   width: "24",
  27071   height: "24",
  27072   viewBox: "0 0 24 24",
  27073   version: "1.1"
  27074 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27075   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"
  27076 }));
  27077 
  27078 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/mail.js
  27079 
  27080 
  27081 /**
  27082  * WordPress dependencies
  27083  */
  27084 
  27085 const MailIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27086   width: "24",
  27087   height: "24",
  27088   viewBox: "0 0 24 24",
  27089   version: "1.1"
  27090 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27091   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"
  27092 }));
  27093 
  27094 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/mastodon.js
  27095 
  27096 
  27097 /**
  27098  * WordPress dependencies
  27099  */
  27100 
  27101 const MastodonIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27102   width: "24",
  27103   height: "24",
  27104   viewBox: "0 0 24 24",
  27105   version: "1.1"
  27106 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27107   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"
  27108 }));
  27109 
  27110 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/meetup.js
  27111 
  27112 
  27113 /**
  27114  * WordPress dependencies
  27115  */
  27116 
  27117 const MeetupIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27118   width: "24",
  27119   height: "24",
  27120   viewBox: "0 0 24 24",
  27121   version: "1.1"
  27122 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27123   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"
  27124 }));
  27125 
  27126 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/medium.js
  27127 
  27128 
  27129 /**
  27130  * WordPress dependencies
  27131  */
  27132 
  27133 const MediumIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27134   width: "24",
  27135   height: "24",
  27136   viewBox: "0 0 24 24",
  27137   version: "1.1"
  27138 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27139   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"
  27140 }));
  27141 
  27142 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/patreon.js
  27143 
  27144 
  27145 /**
  27146  * WordPress dependencies
  27147  */
  27148 
  27149 const PatreonIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27150   width: "24",
  27151   height: "24",
  27152   viewBox: "0 0 569 546",
  27153   version: "1.1"
  27154 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Circle"], {
  27155   cx: "363",
  27156   cy: "205",
  27157   r: "205"
  27158 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  27159   width: "100",
  27160   height: "546",
  27161   x: "0",
  27162   y: "0"
  27163 }));
  27164 
  27165 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/pinterest.js
  27166 
  27167 
  27168 /**
  27169  * WordPress dependencies
  27170  */
  27171 
  27172 const PinterestIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27173   width: "24",
  27174   height: "24",
  27175   viewBox: "0 0 24 24",
  27176   version: "1.1"
  27177 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27178   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"
  27179 }));
  27180 
  27181 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/pocket.js
  27182 
  27183 
  27184 /**
  27185  * WordPress dependencies
  27186  */
  27187 
  27188 const PocketIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27189   width: "24",
  27190   height: "24",
  27191   viewBox: "0 0 24 24",
  27192   version: "1.1"
  27193 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27194   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"
  27195 }));
  27196 
  27197 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/reddit.js
  27198 
  27199 
  27200 /**
  27201  * WordPress dependencies
  27202  */
  27203 
  27204 const RedditIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27205   width: "24",
  27206   height: "24",
  27207   viewBox: "0 0 24 24",
  27208   version: "1.1"
  27209 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27210   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"
  27211 }));
  27212 
  27213 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/skype.js
  27214 
  27215 
  27216 /**
  27217  * WordPress dependencies
  27218  */
  27219 
  27220 const SkypeIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27221   width: "24",
  27222   height: "24",
  27223   viewBox: "0 0 24 24",
  27224   version: "1.1"
  27225 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27226   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"
  27227 }));
  27228 
  27229 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/snapchat.js
  27230 
  27231 
  27232 /**
  27233  * WordPress dependencies
  27234  */
  27235 
  27236 const SnapchatIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27237   width: "24",
  27238   height: "24",
  27239   viewBox: "0 0 24 24",
  27240   version: "1.1"
  27241 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27242   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"
  27243 }));
  27244 
  27245 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/soundcloud.js
  27246 
  27247 
  27248 /**
  27249  * WordPress dependencies
  27250  */
  27251 
  27252 const SoundCloudIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27253   width: "24",
  27254   height: "24",
  27255   viewBox: "0 0 24 24",
  27256   version: "1.1"
  27257 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27258   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"
  27259 }));
  27260 
  27261 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/spotify.js
  27262 
  27263 
  27264 /**
  27265  * WordPress dependencies
  27266  */
  27267 
  27268 const SpotifyIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27269   width: "24",
  27270   height: "24",
  27271   viewBox: "0 0 24 24",
  27272   version: "1.1"
  27273 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27274   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"
  27275 }));
  27276 
  27277 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/telegram.js
  27278 
  27279 
  27280 /**
  27281  * WordPress dependencies
  27282  */
  27283 
  27284 const TelegramIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27285   width: "24",
  27286   height: "24",
  27287   viewBox: "0 0 128 128",
  27288   version: "1.1"
  27289 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27290   d: "M28.9700376,63.3244248 C47.6273373,55.1957357 60.0684594,49.8368063 66.2934036,47.2476366 C84.0668845,39.855031 87.7600616,38.5708563 90.1672227,38.528 C90.6966555,38.5191258 91.8804274,38.6503351 92.6472251,39.2725385 C93.294694,39.7979149 93.4728387,40.5076237 93.5580865,41.0057381 C93.6433345,41.5038525 93.7494885,42.63857 93.6651041,43.5252052 C92.7019529,53.6451182 88.5344133,78.2034783 86.4142057,89.5379542 C85.5170662,94.3339958 83.750571,95.9420841 82.0403991,96.0994568 C78.3237996,96.4414641 75.5015827,93.6432685 71.9018743,91.2836143 C66.2690414,87.5912212 63.0868492,85.2926952 57.6192095,81.6896017 C51.3004058,77.5256038 55.3966232,75.2369981 58.9976911,71.4967761 C59.9401076,70.5179421 76.3155302,55.6232293 76.6324771,54.2720454 C76.6721165,54.1030573 76.7089039,53.4731496 76.3346867,53.1405352 C75.9604695,52.8079208 75.4081573,52.921662 75.0095933,53.0121213 C74.444641,53.1403447 65.4461175,59.0880351 48.0140228,70.8551922 C45.4598218,72.6091037 43.1463059,73.4636682 41.0734751,73.4188859 C38.7883453,73.3695169 34.3926725,72.1268388 31.1249416,71.0646282 C27.1169366,69.7617838 23.931454,69.0729605 24.208838,66.8603276 C24.3533167,65.7078514 25.9403832,64.5292172 28.9700376,63.3244248 Z"
  27291 }));
  27292 
  27293 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/tiktok.js
  27294 
  27295 
  27296 /**
  27297  * WordPress dependencies
  27298  */
  27299 
  27300 const TiktokIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27301   width: "24",
  27302   height: "24",
  27303   viewBox: "0 0 32 32",
  27304   version: "1.1"
  27305 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27306   d: "M16.708 0.027c1.745-0.027 3.48-0.011 5.213-0.027 0.105 2.041 0.839 4.12 2.333 5.563 1.491 1.479 3.6 2.156 5.652 2.385v5.369c-1.923-0.063-3.855-0.463-5.6-1.291-0.76-0.344-1.468-0.787-2.161-1.24-0.009 3.896 0.016 7.787-0.025 11.667-0.104 1.864-0.719 3.719-1.803 5.255-1.744 2.557-4.771 4.224-7.88 4.276-1.907 0.109-3.812-0.411-5.437-1.369-2.693-1.588-4.588-4.495-4.864-7.615-0.032-0.667-0.043-1.333-0.016-1.984 0.24-2.537 1.495-4.964 3.443-6.615 2.208-1.923 5.301-2.839 8.197-2.297 0.027 1.975-0.052 3.948-0.052 5.923-1.323-0.428-2.869-0.308-4.025 0.495-0.844 0.547-1.485 1.385-1.819 2.333-0.276 0.676-0.197 1.427-0.181 2.145 0.317 2.188 2.421 4.027 4.667 3.828 1.489-0.016 2.916-0.88 3.692-2.145 0.251-0.443 0.532-0.896 0.547-1.417 0.131-2.385 0.079-4.76 0.095-7.145 0.011-5.375-0.016-10.735 0.025-16.093z"
  27307 }));
  27308 
  27309 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/tumblr.js
  27310 
  27311 
  27312 /**
  27313  * WordPress dependencies
  27314  */
  27315 
  27316 const TumblrIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27317   width: "24",
  27318   height: "24",
  27319   viewBox: "0 0 24 24",
  27320   version: "1.1"
  27321 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27322   d: "M17.04 21.28h-3.28c-2.84 0-4.94-1.37-4.94-5.02v-5.67H6.08V7.5c2.93-.73 4.11-3.3 4.3-5.48h3.01v4.93h3.47v3.65H13.4v4.93c0 1.47.73 2.01 1.92 2.01h1.73v3.75z"
  27323 }));
  27324 
  27325 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/twitch.js
  27326 
  27327 
  27328 /**
  27329  * WordPress dependencies
  27330  */
  27331 
  27332 const TwitchIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27333   width: "24",
  27334   height: "24",
  27335   viewBox: "0 0 24 24",
  27336   version: "1.1"
  27337 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27338   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"
  27339 }));
  27340 
  27341 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/twitter.js
  27342 
  27343 
  27344 /**
  27345  * WordPress dependencies
  27346  */
  27347 
  27348 const TwitterIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27349   width: "24",
  27350   height: "24",
  27351   viewBox: "0 0 24 24",
  27352   version: "1.1"
  27353 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27354   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"
  27355 }));
  27356 
  27357 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/vimeo.js
  27358 
  27359 
  27360 /**
  27361  * WordPress dependencies
  27362  */
  27363 
  27364 const VimeoIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27365   width: "24",
  27366   height: "24",
  27367   viewBox: "0 0 24 24",
  27368   version: "1.1"
  27369 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27370   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"
  27371 }));
  27372 
  27373 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/vk.js
  27374 
  27375 
  27376 /**
  27377  * WordPress dependencies
  27378  */
  27379 
  27380 const VkIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27381   width: "24",
  27382   height: "24",
  27383   viewBox: "0 0 24 24",
  27384   version: "1.1"
  27385 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27386   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"
  27387 }));
  27388 
  27389 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/yelp.js
  27390 
  27391 
  27392 /**
  27393  * WordPress dependencies
  27394  */
  27395 
  27396 const YelpIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27397   width: "24",
  27398   height: "24",
  27399   viewBox: "0 0 24 24",
  27400   version: "1.1"
  27401 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27402   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"
  27403 }));
  27404 
  27405 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/icons/youtube.js
  27406 
  27407 
  27408 /**
  27409  * WordPress dependencies
  27410  */
  27411 
  27412 const YouTubeIcon = () => Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27413   width: "24",
  27414   height: "24",
  27415   viewBox: "0 0 24 24",
  27416   version: "1.1"
  27417 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27418   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"
  27419 }));
  27420 
  27421 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/variations.js
  27422 /**
  27423  * Internal dependencies
  27424  */
  27425 
  27426 const social_link_variations_variations = [{
  27427   isDefault: true,
  27428   name: 'wordpress',
  27429   attributes: {
  27430     service: 'wordpress'
  27431   },
  27432   title: 'WordPress',
  27433   icon: WordPressIcon
  27434 }, {
  27435   name: 'fivehundredpx',
  27436   attributes: {
  27437     service: 'fivehundredpx'
  27438   },
  27439   title: '500px',
  27440   icon: FivehundredpxIcon
  27441 }, {
  27442   name: 'amazon',
  27443   attributes: {
  27444     service: 'amazon'
  27445   },
  27446   title: 'Amazon',
  27447   icon: AmazonIcon
  27448 }, {
  27449   name: 'bandcamp',
  27450   attributes: {
  27451     service: 'bandcamp'
  27452   },
  27453   title: 'Bandcamp',
  27454   icon: BandcampIcon
  27455 }, {
  27456   name: 'behance',
  27457   attributes: {
  27458     service: 'behance'
  27459   },
  27460   title: 'Behance',
  27461   icon: BehanceIcon
  27462 }, {
  27463   name: 'chain',
  27464   attributes: {
  27465     service: 'chain'
  27466   },
  27467   title: 'Link',
  27468   icon: ChainIcon
  27469 }, {
  27470   name: 'codepen',
  27471   attributes: {
  27472     service: 'codepen'
  27473   },
  27474   title: 'CodePen',
  27475   icon: CodepenIcon
  27476 }, {
  27477   name: 'deviantart',
  27478   attributes: {
  27479     service: 'deviantart'
  27480   },
  27481   title: 'DeviantArt',
  27482   icon: DeviantArtIcon
  27483 }, {
  27484   name: 'dribbble',
  27485   attributes: {
  27486     service: 'dribbble'
  27487   },
  27488   title: 'Dribbble',
  27489   icon: DribbbleIcon
  27490 }, {
  27491   name: 'dropbox',
  27492   attributes: {
  27493     service: 'dropbox'
  27494   },
  27495   title: 'Dropbox',
  27496   icon: DropboxIcon
  27497 }, {
  27498   name: 'etsy',
  27499   attributes: {
  27500     service: 'etsy'
  27501   },
  27502   title: 'Etsy',
  27503   icon: EtsyIcon
  27504 }, {
  27505   name: 'facebook',
  27506   attributes: {
  27507     service: 'facebook'
  27508   },
  27509   title: 'Facebook',
  27510   icon: FacebookIcon
  27511 }, {
  27512   name: 'feed',
  27513   attributes: {
  27514     service: 'feed'
  27515   },
  27516   title: 'RSS Feed',
  27517   icon: FeedIcon
  27518 }, {
  27519   name: 'flickr',
  27520   attributes: {
  27521     service: 'flickr'
  27522   },
  27523   title: 'Flickr',
  27524   icon: FlickrIcon
  27525 }, {
  27526   name: 'foursquare',
  27527   attributes: {
  27528     service: 'foursquare'
  27529   },
  27530   title: 'Foursquare',
  27531   icon: FoursquareIcon
  27532 }, {
  27533   name: 'goodreads',
  27534   attributes: {
  27535     service: 'goodreads'
  27536   },
  27537   title: 'Goodreads',
  27538   icon: GoodreadsIcon
  27539 }, {
  27540   name: 'google',
  27541   attributes: {
  27542     service: 'google'
  27543   },
  27544   title: 'Google',
  27545   icon: GoogleIcon
  27546 }, {
  27547   name: 'github',
  27548   attributes: {
  27549     service: 'github'
  27550   },
  27551   title: 'GitHub',
  27552   icon: GitHubIcon
  27553 }, {
  27554   name: 'instagram',
  27555   attributes: {
  27556     service: 'instagram'
  27557   },
  27558   title: 'Instagram',
  27559   icon: InstagramIcon
  27560 }, {
  27561   name: 'lastfm',
  27562   attributes: {
  27563     service: 'lastfm'
  27564   },
  27565   title: 'Last.fm',
  27566   icon: LastfmIcon
  27567 }, {
  27568   name: 'linkedin',
  27569   attributes: {
  27570     service: 'linkedin'
  27571   },
  27572   title: 'LinkedIn',
  27573   icon: LinkedInIcon
  27574 }, {
  27575   name: 'mail',
  27576   attributes: {
  27577     service: 'mail'
  27578   },
  27579   title: 'Mail',
  27580   keywords: ['email', 'e-mail'],
  27581   icon: MailIcon
  27582 }, {
  27583   name: 'mastodon',
  27584   attributes: {
  27585     service: 'mastodon'
  27586   },
  27587   title: 'Mastodon',
  27588   icon: MastodonIcon
  27589 }, {
  27590   name: 'meetup',
  27591   attributes: {
  27592     service: 'meetup'
  27593   },
  27594   title: 'Meetup',
  27595   icon: MeetupIcon
  27596 }, {
  27597   name: 'medium',
  27598   attributes: {
  27599     service: 'medium'
  27600   },
  27601   title: 'Medium',
  27602   icon: MediumIcon
  27603 }, {
  27604   name: 'patreon',
  27605   attributes: {
  27606     service: 'patreon'
  27607   },
  27608   title: 'Patreon',
  27609   icon: PatreonIcon
  27610 }, {
  27611   name: 'pinterest',
  27612   attributes: {
  27613     service: 'pinterest'
  27614   },
  27615   title: 'Pinterest',
  27616   icon: PinterestIcon
  27617 }, {
  27618   name: 'pocket',
  27619   attributes: {
  27620     service: 'pocket'
  27621   },
  27622   title: 'Pocket',
  27623   icon: PocketIcon
  27624 }, {
  27625   name: 'reddit',
  27626   attributes: {
  27627     service: 'reddit'
  27628   },
  27629   title: 'Reddit',
  27630   icon: RedditIcon
  27631 }, {
  27632   name: 'skype',
  27633   attributes: {
  27634     service: 'skype'
  27635   },
  27636   title: 'Skype',
  27637   icon: SkypeIcon
  27638 }, {
  27639   name: 'snapchat',
  27640   attributes: {
  27641     service: 'snapchat'
  27642   },
  27643   title: 'Snapchat',
  27644   icon: SnapchatIcon
  27645 }, {
  27646   name: 'soundcloud',
  27647   attributes: {
  27648     service: 'soundcloud'
  27649   },
  27650   title: 'SoundCloud',
  27651   icon: SoundCloudIcon
  27652 }, {
  27653   name: 'spotify',
  27654   attributes: {
  27655     service: 'spotify'
  27656   },
  27657   title: 'Spotify',
  27658   icon: SpotifyIcon
  27659 }, {
  27660   name: 'telegram',
  27661   attributes: {
  27662     service: 'telegram'
  27663   },
  27664   title: 'Telegram',
  27665   icon: TelegramIcon
  27666 }, {
  27667   name: 'tiktok',
  27668   attributes: {
  27669     service: 'tiktok'
  27670   },
  27671   title: 'TikTok',
  27672   icon: TiktokIcon
  27673 }, {
  27674   name: 'tumblr',
  27675   attributes: {
  27676     service: 'tumblr'
  27677   },
  27678   title: 'Tumblr',
  27679   icon: TumblrIcon
  27680 }, {
  27681   name: 'twitch',
  27682   attributes: {
  27683     service: 'twitch'
  27684   },
  27685   title: 'Twitch',
  27686   icon: TwitchIcon
  27687 }, {
  27688   name: 'twitter',
  27689   attributes: {
  27690     service: 'twitter'
  27691   },
  27692   title: 'Twitter',
  27693   icon: TwitterIcon
  27694 }, {
  27695   name: 'vimeo',
  27696   attributes: {
  27697     service: 'vimeo'
  27698   },
  27699   title: 'Vimeo',
  27700   icon: VimeoIcon
  27701 }, {
  27702   name: 'vk',
  27703   attributes: {
  27704     service: 'vk'
  27705   },
  27706   title: 'VK',
  27707   icon: VkIcon
  27708 }, {
  27709   name: 'yelp',
  27710   attributes: {
  27711     service: 'yelp'
  27712   },
  27713   title: 'Yelp',
  27714   icon: YelpIcon
  27715 }, {
  27716   name: 'youtube',
  27717   attributes: {
  27718     service: 'youtube'
  27719   },
  27720   title: 'YouTube',
  27721   icon: YouTubeIcon
  27722 }];
  27723 /**
  27724  * Add `isActive` function to all `social link` variations, if not defined.
  27725  * `isActive` function is used to find a variation match from a created
  27726  *  Block by providing its attributes.
  27727  */
  27728 
  27729 social_link_variations_variations.forEach(variation => {
  27730   if (variation.isActive) return;
  27731 
  27732   variation.isActive = (blockAttributes, variationAttributes) => blockAttributes.service === variationAttributes.service;
  27733 });
  27734 /* harmony default export */ var social_link_variations = (social_link_variations_variations);
  27735 
  27736 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/social-list.js
  27737 /**
  27738  * External dependencies
  27739  */
  27740 
  27741 /**
  27742  * WordPress dependencies
  27743  */
  27744 
  27745 
  27746 /**
  27747  * Internal dependencies
  27748  */
  27749 
  27750 
  27751 
  27752 /**
  27753  * Retrieves the social service's icon component.
  27754  *
  27755  * @param {string} name key for a social service (lowercase slug)
  27756  *
  27757  * @return {WPComponent} Icon component for social service.
  27758  */
  27759 
  27760 const getIconBySite = name => {
  27761   const variation = Object(external_lodash_["find"])(social_link_variations, {
  27762     name
  27763   });
  27764   return variation ? variation.icon : ChainIcon;
  27765 };
  27766 /**
  27767  * Retrieves the display name for the social service.
  27768  *
  27769  * @param {string} name key for a social service (lowercase slug)
  27770  *
  27771  * @return {string} Display name for social service
  27772  */
  27773 
  27774 const getNameBySite = name => {
  27775   const variation = Object(external_lodash_["find"])(social_link_variations, {
  27776     name
  27777   });
  27778   return variation ? variation.title : Object(external_wp_i18n_["__"])('Social Icon');
  27779 };
  27780 
  27781 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/edit.js
  27782 
  27783 
  27784 /**
  27785  * External dependencies
  27786  */
  27787 
  27788 /**
  27789  * WordPress dependencies
  27790  */
  27791 
  27792 
  27793 
  27794 
  27795 
  27796 
  27797 /**
  27798  * Internal dependencies
  27799  */
  27800 
  27801 
  27802 
  27803 const SocialLinkEdit = ({
  27804   attributes,
  27805   context,
  27806   isSelected,
  27807   setAttributes
  27808 }) => {
  27809   const {
  27810     url,
  27811     service,
  27812     label
  27813   } = attributes;
  27814   const {
  27815     iconColorValue,
  27816     iconBackgroundColorValue
  27817   } = context;
  27818   const [showURLPopover, setPopover] = Object(external_wp_element_["useState"])(false);
  27819   const classes = classnames_default()('wp-social-link', 'wp-social-link-' + service, {
  27820     'wp-social-link__is-incomplete': !url
  27821   });
  27822   const IconComponent = getIconBySite(service);
  27823   const socialLinkName = getNameBySite(service);
  27824   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  27825     className: classes,
  27826     style: {
  27827       color: iconColorValue,
  27828       backgroundColor: iconBackgroundColorValue
  27829     }
  27830   });
  27831   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  27832     title: Object(external_wp_i18n_["sprintf"])(
  27833     /* translators: %s: name of the social service. */
  27834     Object(external_wp_i18n_["__"])('%s label'), socialLinkName),
  27835     initialOpen: false
  27836   }, Object(external_wp_element_["createElement"])(external_wp_components_["PanelRow"], null, Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  27837     label: Object(external_wp_i18n_["__"])('Link label'),
  27838     help: Object(external_wp_i18n_["__"])('Briefly describe the link to help screen reader users.'),
  27839     value: label,
  27840     onChange: value => setAttributes({
  27841       label: value
  27842     })
  27843   })))), Object(external_wp_element_["createElement"])("li", blockProps, Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  27844     onClick: () => setPopover(true)
  27845   }, Object(external_wp_element_["createElement"])(IconComponent, null), isSelected && showURLPopover && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["URLPopover"], {
  27846     onClose: () => setPopover(false)
  27847   }, Object(external_wp_element_["createElement"])("form", {
  27848     className: "block-editor-url-popover__link-editor",
  27849     onSubmit: event => {
  27850       event.preventDefault();
  27851       setPopover(false);
  27852     }
  27853   }, Object(external_wp_element_["createElement"])("div", {
  27854     className: "block-editor-url-input"
  27855   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["URLInput"], {
  27856     value: url,
  27857     onChange: nextURL => setAttributes({
  27858       url: nextURL
  27859     }),
  27860     placeholder: Object(external_wp_i18n_["__"])('Enter address'),
  27861     disableSuggestions: true
  27862   })), Object(external_wp_element_["createElement"])(external_wp_components_["Button"], {
  27863     icon: keyboard_return["a" /* default */],
  27864     label: Object(external_wp_i18n_["__"])('Apply'),
  27865     type: "submit"
  27866   }))))));
  27867 };
  27868 
  27869 /* harmony default export */ var social_link_edit = (SocialLinkEdit);
  27870 
  27871 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/social-link/index.js
  27872 /**
  27873  * WordPress dependencies
  27874  */
  27875 
  27876 /**
  27877  * Internal dependencies
  27878  */
  27879 
  27880 
  27881 const social_link_metadata = {
  27882   apiVersion: 2,
  27883   name: "core/social-link",
  27884   title: "Social Icon",
  27885   category: "widgets",
  27886   parent: ["core/social-links"],
  27887   description: "Display an icon linking to a social media profile or website.",
  27888   textdomain: "default",
  27889   attributes: {
  27890     url: {
  27891       type: "string"
  27892     },
  27893     service: {
  27894       type: "string"
  27895     },
  27896     label: {
  27897       type: "string"
  27898     }
  27899   },
  27900   usesContext: ["openInNewTab", "iconColorValue", "iconBackgroundColorValue"],
  27901   supports: {
  27902     reusable: false,
  27903     html: false
  27904   },
  27905   editorStyle: "wp-block-social-link-editor"
  27906 };
  27907 
  27908 const {
  27909   name: social_link_name
  27910 } = social_link_metadata;
  27911 
  27912 const social_link_settings = {
  27913   icon: library_share,
  27914   edit: social_link_edit,
  27915   variations: social_link_variations
  27916 };
  27917 
  27918 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/site-logo.js
  27919 
  27920 
  27921 /**
  27922  * WordPress dependencies
  27923  */
  27924 
  27925 const siteLogo = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  27926   xmlns: "http://www.w3.org/2000/svg",
  27927   viewBox: "0 0 24 24"
  27928 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  27929   d: "M12 3c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 1.5c4.1 0 7.5 3.4 7.5 7.5v.1c-1.4-.8-3.3-1.7-3.4-1.8-.2-.1-.5-.1-.8.1l-2.9 2.1L9 11.3c-.2-.1-.4 0-.6.1l-3.7 2.2c-.1-.5-.2-1-.2-1.5 0-4.2 3.4-7.6 7.5-7.6zm0 15c-3.1 0-5.7-1.9-6.9-4.5l3.7-2.2 3.5 1.2c.2.1.5 0 .7-.1l2.9-2.1c.8.4 2.5 1.2 3.5 1.9-.9 3.3-3.9 5.8-7.4 5.8z"
  27930 }));
  27931 /* harmony default export */ var site_logo = (siteLogo);
  27932 
  27933 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-logo/edit.js
  27934 
  27935 
  27936 /**
  27937  * External dependencies
  27938  */
  27939 
  27940 
  27941 /**
  27942  * WordPress dependencies
  27943  */
  27944 
  27945 
  27946 
  27947 
  27948 
  27949 
  27950 
  27951 
  27952 
  27953 
  27954 /**
  27955  * Internal dependencies
  27956  */
  27957 
  27958 
  27959 /**
  27960  * Module constants
  27961  */
  27962 
  27963 
  27964 const site_logo_edit_ALLOWED_MEDIA_TYPES = ['image'];
  27965 const ACCEPT_MEDIA_STRING = 'image/*';
  27966 
  27967 const SiteLogo = ({
  27968   alt,
  27969   attributes: {
  27970     align,
  27971     width,
  27972     height,
  27973     isLink,
  27974     linkTarget
  27975   },
  27976   containerRef,
  27977   isSelected,
  27978   setAttributes,
  27979   logoUrl,
  27980   siteUrl
  27981 }) => {
  27982   const clientWidth = useClientWidth(containerRef, [align]);
  27983   const isLargeViewport = Object(external_wp_compose_["useViewportMatch"])('medium');
  27984   const isWideAligned = Object(external_lodash_["includes"])(['wide', 'full'], align);
  27985   const isResizable = !isWideAligned && isLargeViewport;
  27986   const [{
  27987     naturalWidth,
  27988     naturalHeight
  27989   }, setNaturalSize] = Object(external_wp_element_["useState"])({});
  27990   const {
  27991     toggleSelection
  27992   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  27993   const classes = classnames_default()('custom-logo-link', {
  27994     'is-transient': Object(external_wp_blob_["isBlobURL"])(logoUrl)
  27995   });
  27996   const {
  27997     maxWidth,
  27998     title
  27999   } = Object(external_wp_data_["useSelect"])(select => {
  28000     const {
  28001       getSettings
  28002     } = select(external_wp_blockEditor_["store"]);
  28003     const siteEntities = select(external_wp_coreData_["store"]).getEditedEntityRecord('root', 'site');
  28004     return {
  28005       title: siteEntities.title,
  28006       ...Object(external_lodash_["pick"])(getSettings(), ['imageSizes', 'maxWidth'])
  28007     };
  28008   }, []);
  28009 
  28010   function onResizeStart() {
  28011     toggleSelection(false);
  28012   }
  28013 
  28014   function onResizeStop() {
  28015     toggleSelection(true);
  28016   }
  28017 
  28018   const img = Object(external_wp_element_["createElement"])("img", {
  28019     className: "custom-logo",
  28020     src: logoUrl,
  28021     alt: alt,
  28022     onLoad: event => {
  28023       setNaturalSize(Object(external_lodash_["pick"])(event.target, ['naturalWidth', 'naturalHeight']));
  28024     }
  28025   });
  28026   let imgWrapper = img; // Disable reason: Image itself is not meant to be interactive, but
  28027   // should direct focus to block.
  28028 
  28029   if (isLink) {
  28030     imgWrapper =
  28031     /* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */
  28032     Object(external_wp_element_["createElement"])("a", {
  28033       href: siteUrl,
  28034       className: classes,
  28035       rel: "home",
  28036       title: title,
  28037       onClick: event => event.preventDefault()
  28038     }, img)
  28039     /* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */
  28040     ;
  28041   }
  28042 
  28043   let imageWidthWithinContainer;
  28044 
  28045   if (clientWidth && naturalWidth && naturalHeight) {
  28046     const exceedMaxWidth = naturalWidth > clientWidth;
  28047     imageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;
  28048   }
  28049 
  28050   if (!isResizable || !imageWidthWithinContainer) {
  28051     return Object(external_wp_element_["createElement"])("div", {
  28052       style: {
  28053         width,
  28054         height
  28055       }
  28056     }, imgWrapper);
  28057   }
  28058 
  28059   const currentWidth = width || imageWidthWithinContainer;
  28060   const ratio = naturalWidth / naturalHeight;
  28061   const currentHeight = currentWidth / ratio;
  28062   const minWidth = naturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;
  28063   const minHeight = naturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio; // With the current implementation of ResizableBox, an image needs an
  28064   // explicit pixel value for the max-width. In absence of being able to
  28065   // set the content-width, this max-width is currently dictated by the
  28066   // vanilla editor style. The following variable adds a buffer to this
  28067   // vanilla style, so 3rd party themes have some wiggleroom. This does,
  28068   // in most cases, allow you to scale the image beyond the width of the
  28069   // main column, though not infinitely.
  28070   // @todo It would be good to revisit this once a content-width variable
  28071   // becomes available.
  28072 
  28073   const maxWidthBuffer = maxWidth * 2.5; // Set the default width to a responsible size.
  28074   // Note that this width is also set in the attached CSS file.
  28075 
  28076   const defaultWidth = 120;
  28077   let showRightHandle = false;
  28078   let showLeftHandle = false;
  28079   /* eslint-disable no-lonely-if */
  28080   // See https://github.com/WordPress/gutenberg/issues/7584.
  28081 
  28082   if (align === 'center') {
  28083     // When the image is centered, show both handles.
  28084     showRightHandle = true;
  28085     showLeftHandle = true;
  28086   } else if (Object(external_wp_i18n_["isRTL"])()) {
  28087     // In RTL mode the image is on the right by default.
  28088     // Show the right handle and hide the left handle only when it is
  28089     // aligned left. Otherwise always show the left handle.
  28090     if (align === 'left') {
  28091       showRightHandle = true;
  28092     } else {
  28093       showLeftHandle = true;
  28094     }
  28095   } else {
  28096     // Show the left handle and hide the right handle only when the
  28097     // image is aligned right. Otherwise always show the right handle.
  28098     if (align === 'right') {
  28099       showLeftHandle = true;
  28100     } else {
  28101       showRightHandle = true;
  28102     }
  28103   }
  28104   /* eslint-enable no-lonely-if */
  28105 
  28106 
  28107   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  28108     title: Object(external_wp_i18n_["__"])('Settings')
  28109   }, Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  28110     label: Object(external_wp_i18n_["__"])('Image width'),
  28111     onChange: newWidth => setAttributes({
  28112       width: newWidth
  28113     }),
  28114     min: minWidth,
  28115     max: maxWidthBuffer,
  28116     initialPosition: Math.min(defaultWidth, maxWidthBuffer),
  28117     value: width || '',
  28118     disabled: !isResizable
  28119   }), Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  28120     label: Object(external_wp_i18n_["__"])('Link image to home'),
  28121     onChange: () => setAttributes({
  28122       isLink: !isLink
  28123     }),
  28124     checked: isLink
  28125   }), isLink && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  28126     label: Object(external_wp_i18n_["__"])('Open in new tab'),
  28127     onChange: value => setAttributes({
  28128       linkTarget: value ? '_blank' : '_self'
  28129     }),
  28130     checked: linkTarget === '_blank'
  28131   })))), Object(external_wp_element_["createElement"])(external_wp_components_["ResizableBox"], {
  28132     size: {
  28133       width,
  28134       height
  28135     },
  28136     showHandle: isSelected,
  28137     minWidth: minWidth,
  28138     maxWidth: maxWidthBuffer,
  28139     minHeight: minHeight,
  28140     maxHeight: maxWidthBuffer / ratio,
  28141     lockAspectRatio: true,
  28142     enable: {
  28143       top: false,
  28144       right: showRightHandle,
  28145       bottom: true,
  28146       left: showLeftHandle
  28147     },
  28148     onResizeStart: onResizeStart,
  28149     onResizeStop: (event, direction, elt, delta) => {
  28150       onResizeStop();
  28151       setAttributes({
  28152         width: parseInt(currentWidth + delta.width, 10),
  28153         height: parseInt(currentHeight + delta.height, 10)
  28154       });
  28155     }
  28156   }, imgWrapper));
  28157 };
  28158 
  28159 function LogoEdit({
  28160   attributes,
  28161   className,
  28162   setAttributes,
  28163   isSelected
  28164 }) {
  28165   const {
  28166     width
  28167   } = attributes;
  28168   const [logoUrl, setLogoUrl] = Object(external_wp_element_["useState"])();
  28169   const [error, setError] = Object(external_wp_element_["useState"])();
  28170   const ref = Object(external_wp_element_["useRef"])();
  28171   const {
  28172     siteLogoId,
  28173     canUserEdit,
  28174     url,
  28175     mediaItemData,
  28176     isRequestingMediaItem
  28177   } = Object(external_wp_data_["useSelect"])(select => {
  28178     const {
  28179       canUser,
  28180       getEntityRecord,
  28181       getEditedEntityRecord
  28182     } = select(external_wp_coreData_["store"]);
  28183     const siteSettings = getEditedEntityRecord('root', 'site');
  28184     const siteData = getEntityRecord('root', '__unstableBase');
  28185 
  28186     const _siteLogo = siteSettings === null || siteSettings === void 0 ? void 0 : siteSettings.site_logo;
  28187 
  28188     const _readOnlyLogo = siteData === null || siteData === void 0 ? void 0 : siteData.site_logo;
  28189 
  28190     const _canUserEdit = canUser('update', 'settings');
  28191 
  28192     const _siteLogoId = _siteLogo || _readOnlyLogo;
  28193 
  28194     const mediaItem = _siteLogoId && select(external_wp_coreData_["store"]).getEntityRecord('root', 'media', _siteLogoId, {
  28195       context: 'view'
  28196     });
  28197 
  28198     const _isRequestingMediaItem = _siteLogoId && !select(external_wp_coreData_["store"]).hasFinishedResolution('getEntityRecord', ['root', 'media', _siteLogoId, {
  28199       context: 'view'
  28200     }]);
  28201 
  28202     return {
  28203       siteLogoId: _siteLogoId,
  28204       canUserEdit: _canUserEdit,
  28205       url: siteData === null || siteData === void 0 ? void 0 : siteData.url,
  28206       mediaItemData: mediaItem && {
  28207         url: mediaItem.source_url,
  28208         alt: mediaItem.alt_text
  28209       },
  28210       isRequestingMediaItem: _isRequestingMediaItem
  28211     };
  28212   }, []);
  28213   const {
  28214     editEntityRecord
  28215   } = Object(external_wp_data_["useDispatch"])(external_wp_coreData_["store"]);
  28216 
  28217   const setLogo = newValue => editEntityRecord('root', 'site', undefined, {
  28218     site_logo: newValue
  28219   });
  28220 
  28221   let alt = null;
  28222 
  28223   if (mediaItemData) {
  28224     alt = mediaItemData.alt;
  28225 
  28226     if (logoUrl !== mediaItemData.url) {
  28227       setLogoUrl(mediaItemData.url);
  28228     }
  28229   }
  28230 
  28231   const onSelectLogo = media => {
  28232     if (!media) {
  28233       return;
  28234     }
  28235 
  28236     if (!media.id && media.url) {
  28237       // This is a temporary blob image
  28238       setLogo(undefined);
  28239       setError(null);
  28240       setLogoUrl(media.url);
  28241       return;
  28242     }
  28243 
  28244     setLogo(media.id);
  28245   };
  28246 
  28247   const onUploadError = message => {
  28248     setError(message[2] ? message[2] : null);
  28249   };
  28250 
  28251   const controls = canUserEdit && logoUrl && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  28252     group: "other"
  28253   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
  28254     mediaURL: logoUrl,
  28255     allowedTypes: site_logo_edit_ALLOWED_MEDIA_TYPES,
  28256     accept: ACCEPT_MEDIA_STRING,
  28257     onSelect: onSelectLogo,
  28258     onError: onUploadError
  28259   }));
  28260 
  28261   const label = Object(external_wp_i18n_["__"])('Site Logo');
  28262 
  28263   let logoImage;
  28264   const isLoading = siteLogoId === undefined || isRequestingMediaItem;
  28265 
  28266   if (isLoading) {
  28267     logoImage = Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null);
  28268   }
  28269 
  28270   if (!!logoUrl) {
  28271     logoImage = Object(external_wp_element_["createElement"])(SiteLogo, {
  28272       alt: alt,
  28273       attributes: attributes,
  28274       className: className,
  28275       containerRef: ref,
  28276       isSelected: isSelected,
  28277       setAttributes: setAttributes,
  28278       logoUrl: logoUrl,
  28279       siteUrl: url
  28280     });
  28281   }
  28282 
  28283   const classes = classnames_default()(className, {
  28284     'is-default-size': !width
  28285   });
  28286   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  28287     ref,
  28288     className: classes
  28289   });
  28290   return Object(external_wp_element_["createElement"])("div", blockProps, controls, !!logoUrl && logoImage, !logoUrl && !canUserEdit && Object(external_wp_element_["createElement"])(external_wp_components_["Placeholder"], {
  28291     className: "site-logo_placeholder",
  28292     icon: site_logo,
  28293     label: label
  28294   }, isLoading && Object(external_wp_element_["createElement"])("span", {
  28295     className: "components-placeholder__preview"
  28296   }, Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null))), !logoUrl && canUserEdit && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
  28297     icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  28298       icon: site_logo
  28299     }),
  28300     labels: {
  28301       title: label,
  28302       instructions: Object(external_wp_i18n_["__"])('Upload an image, or pick one from your media library, to be your site logo')
  28303     },
  28304     onSelect: onSelectLogo,
  28305     accept: ACCEPT_MEDIA_STRING,
  28306     allowedTypes: site_logo_edit_ALLOWED_MEDIA_TYPES,
  28307     mediaPreview: logoImage,
  28308     notices: error && Object(external_wp_element_["createElement"])(external_wp_components_["Notice"], {
  28309       status: "error",
  28310       isDismissible: false
  28311     }, error),
  28312     onError: onUploadError
  28313   }));
  28314 }
  28315 
  28316 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-logo/index.js
  28317 /**
  28318  * WordPress dependencies
  28319  */
  28320 
  28321 /**
  28322  * Internal dependencies
  28323  */
  28324 
  28325 const site_logo_metadata = {
  28326   apiVersion: 2,
  28327   name: "core/site-logo",
  28328   title: "Site Logo",
  28329   category: "layout",
  28330   description: "Useful for displaying a graphic mark, design, or symbol to represent the site. Once a site logo is set, it can be reused in different places and templates. It should not be confused with the site icon, which is the small image used in the dashboard, browser tabs, public search results, etc, to help recognize a site.",
  28331   textdomain: "default",
  28332   attributes: {
  28333     align: {
  28334       type: "string"
  28335     },
  28336     width: {
  28337       type: "number"
  28338     },
  28339     isLink: {
  28340       type: "boolean",
  28341       "default": true
  28342     },
  28343     linkTarget: {
  28344       type: "string",
  28345       "default": "_self"
  28346     }
  28347   },
  28348   supports: {
  28349     html: false,
  28350     align: true,
  28351     alignWide: false
  28352   },
  28353   styles: [{
  28354     name: "default",
  28355     label: "Default",
  28356     isDefault: true
  28357   }, {
  28358     name: "rounded",
  28359     label: "Rounded"
  28360   }],
  28361   editorStyle: "wp-block-site-logo-editor",
  28362   style: "wp-block-site-logo"
  28363 };
  28364 
  28365 const {
  28366   name: site_logo_name
  28367 } = site_logo_metadata;
  28368 
  28369 const site_logo_settings = {
  28370   icon: site_logo,
  28371   edit: LogoEdit
  28372 };
  28373 
  28374 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-tagline/edit.js
  28375 
  28376 
  28377 
  28378 /**
  28379  * External dependencies
  28380  */
  28381 
  28382 /**
  28383  * WordPress dependencies
  28384  */
  28385 
  28386 
  28387 
  28388 
  28389 
  28390 function SiteTaglineEdit({
  28391   attributes,
  28392   setAttributes
  28393 }) {
  28394   const {
  28395     textAlign
  28396   } = attributes;
  28397   const [siteTagline, setSiteTagline] = Object(external_wp_coreData_["useEntityProp"])('root', 'site', 'description');
  28398   const {
  28399     canUserEdit,
  28400     readOnlySiteTagLine
  28401   } = Object(external_wp_data_["useSelect"])(select => {
  28402     const {
  28403       canUser,
  28404       getEntityRecord
  28405     } = select(external_wp_coreData_["store"]);
  28406     const siteData = getEntityRecord('root', '__unstableBase');
  28407     return {
  28408       canUserEdit: canUser('update', 'settings'),
  28409       readOnlySiteTagLine: siteData === null || siteData === void 0 ? void 0 : siteData.description
  28410     };
  28411   }, []);
  28412   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  28413     className: classnames_default()({
  28414       [`has-text-align-${textAlign}`]: textAlign,
  28415       'wp-block-site-tagline__placeholder': !canUserEdit && !readOnlySiteTagLine
  28416     })
  28417   });
  28418   const siteTaglineContent = canUserEdit ? Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], Object(esm_extends["a" /* default */])({
  28419     allowedFormats: [],
  28420     onChange: setSiteTagline,
  28421     "aria-label": Object(external_wp_i18n_["__"])('Site tagline text'),
  28422     placeholder: Object(external_wp_i18n_["__"])('Write site tagline…'),
  28423     tagName: "p",
  28424     value: siteTagline
  28425   }, blockProps)) : Object(external_wp_element_["createElement"])("p", blockProps, readOnlySiteTagLine || Object(external_wp_i18n_["__"])('Site Tagline placeholder'));
  28426   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  28427     group: "block"
  28428   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
  28429     onChange: newAlign => setAttributes({
  28430       textAlign: newAlign
  28431     }),
  28432     value: textAlign
  28433   })), siteTaglineContent);
  28434 }
  28435 
  28436 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-tagline/icon.js
  28437 
  28438 
  28439 /**
  28440  * WordPress dependencies
  28441  */
  28442 
  28443 /* harmony default export */ var site_tagline_icon = (Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  28444   xmlns: "http://www.w3.org/2000/svg",
  28445   width: "24",
  28446   height: "24"
  28447 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  28448   fill: "none",
  28449   d: "M0 0h24v24H0z"
  28450 }), Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  28451   d: "M4 9h16v2H4V9zm0 4h10v2H4v-2z"
  28452 })));
  28453 
  28454 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-tagline/index.js
  28455 /**
  28456  * Internal dependencies
  28457  */
  28458 const site_tagline_metadata = {
  28459   apiVersion: 2,
  28460   name: "core/site-tagline",
  28461   title: "Site Tagline",
  28462   category: "design",
  28463   description: "Describe in a few words what the website is about. The tagline can be used in search results or when sharing on social networks even if it's not displayed in the theme design.",
  28464   keywords: ["description"],
  28465   textdomain: "default",
  28466   attributes: {
  28467     textAlign: {
  28468       type: "string"
  28469     }
  28470   },
  28471   supports: {
  28472     html: false,
  28473     color: {
  28474       gradients: true
  28475     },
  28476     spacing: {
  28477       margin: true,
  28478       padding: true
  28479     },
  28480     typography: {
  28481       fontSize: true,
  28482       lineHeight: true,
  28483       __experimentalFontFamily: true,
  28484       __experimentalTextTransform: true
  28485     }
  28486   },
  28487   editorStyle: "wp-block-site-tagline-editor"
  28488 };
  28489 
  28490 
  28491 const {
  28492   name: site_tagline_name
  28493 } = site_tagline_metadata;
  28494 
  28495 const site_tagline_settings = {
  28496   icon: site_tagline_icon,
  28497   edit: SiteTaglineEdit
  28498 };
  28499 
  28500 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/map-marker.js
  28501 
  28502 
  28503 /**
  28504  * WordPress dependencies
  28505  */
  28506 
  28507 const mapMarker = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  28508   xmlns: "https://www.w3.org/2000/svg",
  28509   viewBox: "0 0 24 24"
  28510 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  28511   d: "M12 9c-.8 0-1.5.7-1.5 1.5S11.2 12 12 12s1.5-.7 1.5-1.5S12.8 9 12 9zm0-5c-3.6 0-6.5 2.8-6.5 6.2 0 .8.3 1.8.9 3.1.5 1.1 1.2 2.3 2 3.6.7 1 3 3.8 3.2 3.9l.4.5.4-.5c.2-.2 2.6-2.9 3.2-3.9.8-1.2 1.5-2.5 2-3.6.6-1.3.9-2.3.9-3.1C18.5 6.8 15.6 4 12 4zm4.3 8.7c-.5 1-1.1 2.2-1.9 3.4-.5.7-1.7 2.2-2.4 3-.7-.8-1.9-2.3-2.4-3-.8-1.2-1.4-2.3-1.9-3.3-.6-1.4-.7-2.2-.7-2.5 0-2.6 2.2-4.7 5-4.7s5 2.1 5 4.7c0 .2-.1 1-.7 2.4z"
  28512 }));
  28513 /* harmony default export */ var map_marker = (mapMarker);
  28514 
  28515 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-title/edit/level-icon.js
  28516 
  28517 
  28518 /**
  28519  * WordPress dependencies
  28520  */
  28521 
  28522 
  28523 function LevelIcon({
  28524   level,
  28525   isPressed = false
  28526 }) {
  28527   if (level === 0) return library_paragraph;
  28528   const levelToPath = {
  28529     1: 'M9 5h2v10H9v-4H5v4H3V5h2v4h4V5zm6.6 0c-.6.9-1.5 1.7-2.6 2v1h2v7h2V5h-1.4z',
  28530     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',
  28531     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',
  28532     4: 'M9 15H7v-4H3v4H1V5h2v4h4V5h2v10zm10-2h-1v2h-2v-2h-5v-2l4-6h3v6h1v2zm-3-2V7l-2.8 4H16z',
  28533     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',
  28534     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'
  28535   };
  28536   return Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  28537     width: "20",
  28538     height: "20",
  28539     viewBox: "0 0 20 20",
  28540     xmlns: "http://www.w3.org/2000/svg",
  28541     isPressed: isPressed
  28542   }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  28543     d: levelToPath[level]
  28544   }));
  28545 }
  28546 
  28547 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-title/edit/level-toolbar.js
  28548 
  28549 
  28550 /**
  28551  * WordPress dependencies
  28552  */
  28553 
  28554 
  28555 /**
  28556  * Internal dependencies
  28557  */
  28558 
  28559 
  28560 function LevelControl({
  28561   level,
  28562   onChange
  28563 }) {
  28564   const allControls = [1, 2, 3, 4, 5, 6, 0].map(currentLevel => {
  28565     const isActive = currentLevel === level;
  28566     return {
  28567       icon: Object(external_wp_element_["createElement"])(LevelIcon, {
  28568         level: currentLevel,
  28569         isPressed: isActive
  28570       }),
  28571       title: currentLevel === 0 ? Object(external_wp_i18n_["__"])('Paragraph') : // translators: %s: heading level e.g: "1", "2", "3"
  28572       Object(external_wp_i18n_["sprintf"])(Object(external_wp_i18n_["__"])('Heading %d'), currentLevel),
  28573       isActive,
  28574       onClick: () => onChange(currentLevel)
  28575     };
  28576   });
  28577   return Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarDropdownMenu"], {
  28578     label: Object(external_wp_i18n_["__"])('Change heading level'),
  28579     icon: Object(external_wp_element_["createElement"])(LevelIcon, {
  28580       level: level
  28581     }),
  28582     controls: allControls
  28583   });
  28584 }
  28585 
  28586 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-title/edit/index.js
  28587 
  28588 
  28589 /**
  28590  * External dependencies
  28591  */
  28592 
  28593 /**
  28594  * WordPress dependencies
  28595  */
  28596 
  28597 
  28598 
  28599 
  28600 
  28601 
  28602 /**
  28603  * Internal dependencies
  28604  */
  28605 
  28606 
  28607 function SiteTitleEdit({
  28608   attributes,
  28609   setAttributes,
  28610   insertBlocksAfter
  28611 }) {
  28612   const {
  28613     level,
  28614     textAlign
  28615   } = attributes;
  28616   const [title, setTitle] = Object(external_wp_coreData_["useEntityProp"])('root', 'site', 'title');
  28617   const {
  28618     canUserEdit,
  28619     readOnlyTitle
  28620   } = Object(external_wp_data_["useSelect"])(select => {
  28621     const {
  28622       canUser,
  28623       getEntityRecord
  28624     } = select(external_wp_coreData_["store"]);
  28625     const siteData = getEntityRecord('root', '__unstableBase');
  28626     return {
  28627       canUserEdit: canUser('update', 'settings'),
  28628       readOnlyTitle: siteData === null || siteData === void 0 ? void 0 : siteData.name
  28629     };
  28630   }, []);
  28631   const TagName = level === 0 ? 'p' : `h${level}`;
  28632   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  28633     className: classnames_default()({
  28634       [`has-text-align-${textAlign}`]: textAlign,
  28635       'wp-block-site-title__placeholder': !canUserEdit && !readOnlyTitle
  28636     })
  28637   });
  28638   const siteTitleContent = canUserEdit ? Object(external_wp_element_["createElement"])(TagName, blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  28639     tagName: "a",
  28640     style: {
  28641       display: 'inline-block'
  28642     },
  28643     "aria-label": Object(external_wp_i18n_["__"])('Site title text'),
  28644     placeholder: Object(external_wp_i18n_["__"])('Write site title…'),
  28645     value: title || readOnlyTitle,
  28646     onChange: setTitle,
  28647     allowedFormats: [],
  28648     disableLineBreaks: true,
  28649     __unstableOnSplitAtEnd: () => insertBlocksAfter(Object(external_wp_blocks_["createBlock"])(Object(external_wp_blocks_["getDefaultBlockName"])()))
  28650   })) : Object(external_wp_element_["createElement"])(TagName, blockProps, Object(external_wp_element_["createElement"])("a", {
  28651     href: "#site-title-pseudo-link",
  28652     onClick: event => event.preventDefault()
  28653   }, readOnlyTitle || Object(external_wp_i18n_["__"])('Site Title placeholder')));
  28654   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  28655     group: "block"
  28656   }, Object(external_wp_element_["createElement"])(LevelControl, {
  28657     level: level,
  28658     onChange: newLevel => setAttributes({
  28659       level: newLevel
  28660     })
  28661   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
  28662     value: textAlign,
  28663     onChange: nextAlign => {
  28664       setAttributes({
  28665         textAlign: nextAlign
  28666       });
  28667     }
  28668   })), siteTitleContent);
  28669 }
  28670 
  28671 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/site-title/index.js
  28672 /**
  28673  * WordPress dependencies
  28674  */
  28675 
  28676 /**
  28677  * Internal dependencies
  28678  */
  28679 
  28680 const site_title_metadata = {
  28681   apiVersion: 2,
  28682   name: "core/site-title",
  28683   title: "Site Title",
  28684   category: "design",
  28685   description: "Displays and allows editing the name of the site. The site title usually appears in the browser title bar, in search results, and more. Also available in Settings > General.",
  28686   textdomain: "default",
  28687   attributes: {
  28688     level: {
  28689       type: "number",
  28690       "default": 1
  28691     },
  28692     textAlign: {
  28693       type: "string"
  28694     }
  28695   },
  28696   supports: {
  28697     align: ["wide", "full"],
  28698     html: false,
  28699     color: {
  28700       gradients: true,
  28701       text: false,
  28702       link: true
  28703     },
  28704     spacing: {
  28705       padding: true,
  28706       margin: true
  28707     },
  28708     typography: {
  28709       fontSize: true,
  28710       lineHeight: true,
  28711       __experimentalFontFamily: true,
  28712       __experimentalTextTransform: true,
  28713       __experimentalFontStyle: true,
  28714       __experimentalFontWeight: true
  28715     }
  28716   },
  28717   editorStyle: "wp-block-site-title-editor"
  28718 };
  28719 
  28720 const {
  28721   name: site_title_name
  28722 } = site_title_metadata;
  28723 
  28724 const site_title_settings = {
  28725   icon: map_marker,
  28726   edit: SiteTitleEdit
  28727 };
  28728 
  28729 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/loop.js
  28730 
  28731 
  28732 /**
  28733  * WordPress dependencies
  28734  */
  28735 
  28736 const loop_loop = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  28737   viewBox: "0 0 24 24",
  28738   xmlns: "http://www.w3.org/2000/svg"
  28739 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  28740   d: "M18.1823 11.6392C18.1823 13.0804 17.0139 14.2487 15.5727 14.2487C14.3579 14.2487 13.335 13.4179 13.0453 12.2922L13.0377 12.2625L13.0278 12.2335L12.3985 10.377L12.3942 10.3785C11.8571 8.64997 10.246 7.39405 8.33961 7.39405C5.99509 7.39405 4.09448 9.29465 4.09448 11.6392C4.09448 13.9837 5.99509 15.8843 8.33961 15.8843C8.88499 15.8843 9.40822 15.781 9.88943 15.5923L9.29212 14.0697C8.99812 14.185 8.67729 14.2487 8.33961 14.2487C6.89838 14.2487 5.73003 13.0804 5.73003 11.6392C5.73003 10.1979 6.89838 9.02959 8.33961 9.02959C9.55444 9.02959 10.5773 9.86046 10.867 10.9862L10.8772 10.9836L11.4695 12.7311C11.9515 14.546 13.6048 15.8843 15.5727 15.8843C17.9172 15.8843 19.8178 13.9837 19.8178 11.6392C19.8178 9.29465 17.9172 7.39404 15.5727 7.39404C15.0287 7.39404 14.5066 7.4968 14.0264 7.6847L14.6223 9.20781C14.9158 9.093 15.2358 9.02959 15.5727 9.02959C17.0139 9.02959 18.1823 10.1979 18.1823 11.6392Z"
  28741 }));
  28742 /* harmony default export */ var library_loop = (loop_loop);
  28743 
  28744 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/settings.js
  28745 
  28746 
  28747 /**
  28748  * WordPress dependencies
  28749  */
  28750 
  28751 const settings_settings = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  28752   xmlns: "http://www.w3.org/2000/svg",
  28753   viewBox: "0 0 24 24"
  28754 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  28755   d: "M17 4h-2v4.5h2V7h3V5.5h-3V4zM4 5.5h9V7H4V5.5zm16 5.75h-9v1.5h9v-1.5zm-16 0h3V10h2v4.25H7v-1.5H4v-1.5zM9 17H4v1.5h5V17zm4 0h7v1.5h-7V20h-2v-4.25h2V17z"
  28756 }));
  28757 /* harmony default export */ var library_settings = (settings_settings);
  28758 
  28759 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/edit/query-toolbar.js
  28760 
  28761 
  28762 /**
  28763  * WordPress dependencies
  28764  */
  28765 
  28766 
  28767 
  28768 
  28769 function QueryToolbar({
  28770   attributes: {
  28771     query,
  28772     displayLayout
  28773   },
  28774   setQuery,
  28775   setDisplayLayout
  28776 }) {
  28777   const maxPageInputId = Object(external_wp_compose_["useInstanceId"])(QueryToolbar, 'blocks-query-pagination-max-page-input');
  28778   const displayLayoutControls = [{
  28779     icon: library_list,
  28780     title: Object(external_wp_i18n_["__"])('List view'),
  28781     onClick: () => setDisplayLayout({
  28782       type: 'list'
  28783     }),
  28784     isActive: (displayLayout === null || displayLayout === void 0 ? void 0 : displayLayout.type) === 'list'
  28785   }, {
  28786     icon: grid["a" /* default */],
  28787     title: Object(external_wp_i18n_["__"])('Grid view'),
  28788     onClick: () => setDisplayLayout({
  28789       type: 'flex',
  28790       columns: (displayLayout === null || displayLayout === void 0 ? void 0 : displayLayout.columns) || 3
  28791     }),
  28792     isActive: (displayLayout === null || displayLayout === void 0 ? void 0 : displayLayout.type) === 'flex'
  28793   }];
  28794   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, !query.inherit && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], null, Object(external_wp_element_["createElement"])(external_wp_components_["Dropdown"], {
  28795     contentClassName: "block-library-query-toolbar__popover",
  28796     renderToggle: ({
  28797       onToggle
  28798     }) => Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  28799       icon: library_settings,
  28800       label: Object(external_wp_i18n_["__"])('Display settings'),
  28801       onClick: onToggle
  28802     }),
  28803     renderContent: () => Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"], null, Object(external_wp_element_["createElement"])(external_wp_components_["__experimentalNumberControl"], {
  28804       __unstableInputWidth: "60px",
  28805       label: Object(external_wp_i18n_["__"])('Items per Page'),
  28806       labelPosition: "edge",
  28807       min: 1,
  28808       max: 100,
  28809       onChange: value => {
  28810         if (isNaN(value) || value < 1 || value > 100) {
  28811           return;
  28812         }
  28813 
  28814         setQuery({
  28815           perPage: value
  28816         });
  28817       },
  28818       step: "1",
  28819       value: query.perPage,
  28820       isDragEnabled: false
  28821     })), Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"], null, Object(external_wp_element_["createElement"])(external_wp_components_["__experimentalNumberControl"], {
  28822       __unstableInputWidth: "60px",
  28823       label: Object(external_wp_i18n_["__"])('Offset'),
  28824       labelPosition: "edge",
  28825       min: 0,
  28826       max: 100,
  28827       onChange: value => {
  28828         if (isNaN(value) || value < 0 || value > 100) {
  28829           return;
  28830         }
  28831 
  28832         setQuery({
  28833           offset: value
  28834         });
  28835       },
  28836       step: "1",
  28837       value: query.offset,
  28838       isDragEnabled: false
  28839     })), Object(external_wp_element_["createElement"])(external_wp_components_["BaseControl"], {
  28840       id: maxPageInputId,
  28841       help: Object(external_wp_i18n_["__"])('Limit the pages you want to show, even if the query has more results. To show all pages use 0 (zero).')
  28842     }, Object(external_wp_element_["createElement"])(external_wp_components_["__experimentalNumberControl"], {
  28843       id: maxPageInputId,
  28844       __unstableInputWidth: "60px",
  28845       label: Object(external_wp_i18n_["__"])('Max page to show'),
  28846       labelPosition: "edge",
  28847       min: 0,
  28848       onChange: value => {
  28849         if (isNaN(value) || value < 0) {
  28850           return;
  28851         }
  28852 
  28853         setQuery({
  28854           pages: value
  28855         });
  28856       },
  28857       step: "1",
  28858       value: query.pages,
  28859       isDragEnabled: false
  28860     })))
  28861   })), Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarGroup"], {
  28862     controls: displayLayoutControls
  28863   }));
  28864 }
  28865 
  28866 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/utils.js
  28867 /**
  28868  * WordPress dependencies
  28869  */
  28870 
  28871 
  28872 
  28873 /**
  28874  * WordPress term object from REST API.
  28875  * Categories ref: https://developer.wordpress.org/rest-api/reference/categories/
  28876  * Tags ref: https://developer.wordpress.org/rest-api/reference/tags/
  28877  *
  28878  * @typedef {Object} WPTerm
  28879  * @property {number} id Unique identifier for the term.
  28880  * @property {number} count Number of published posts for the term.
  28881  * @property {string} description HTML description of the term.
  28882  * @property {string} link URL of the term.
  28883  * @property {string} name HTML title for the term.
  28884  * @property {string} slug An alphanumeric identifier for the term unique to its type.
  28885  * @property {string} taxonomy Type attribution for the term.
  28886  * @property {Object} meta Meta fields
  28887  * @property {number} [parent] The parent term ID.
  28888  */
  28889 
  28890 /**
  28891  * The object used in Query block that contains info and helper mappings
  28892  * from an array of WPTerm.
  28893  *
  28894  * @typedef {Object} QueryTermsInfo
  28895  * @property {WPTerm[]} terms The array of terms.
  28896  * @property {Object<string, WPTerm>} mapById Object mapping with the term id as key and the term as value.
  28897  * @property {Object<string, WPTerm>} mapByName Object mapping with the term name as key and the term as value.
  28898  * @property {string[]} names Array with the terms' names.
  28899  */
  28900 
  28901 /**
  28902  * Returns a helper object with mapping from WPTerms.
  28903  *
  28904  * @param {WPTerm[]} terms The terms to extract of helper object.
  28905  * @return {QueryTermsInfo} The object with the terms information.
  28906  */
  28907 
  28908 const getTermsInfo = terms => {
  28909   const mapping = terms === null || terms === void 0 ? void 0 : terms.reduce((accumulator, term) => {
  28910     const {
  28911       mapById,
  28912       mapByName,
  28913       names
  28914     } = accumulator;
  28915     mapById[term.id] = term;
  28916     mapByName[term.name] = term;
  28917     names.push(term.name);
  28918     return accumulator;
  28919   }, {
  28920     mapById: {},
  28921     mapByName: {},
  28922     names: []
  28923   });
  28924   return {
  28925     terms,
  28926     ...mapping
  28927   };
  28928 };
  28929 /**
  28930  * Returns a helper object that contains:
  28931  * 1. An `options` object from the available post types, to be passed to a `SelectControl`.
  28932  * 2. A helper map with available taxonomies per post type.
  28933  *
  28934  * @return {Object} The helper object related to post types.
  28935  */
  28936 
  28937 const usePostTypes = () => {
  28938   const {
  28939     postTypes
  28940   } = Object(external_wp_data_["useSelect"])(select => {
  28941     var _getPostTypes;
  28942 
  28943     const {
  28944       getPostTypes
  28945     } = select(external_wp_coreData_["store"]);
  28946     const excludedPostTypes = ['attachment'];
  28947     const filteredPostTypes = (_getPostTypes = getPostTypes({
  28948       per_page: -1
  28949     })) === null || _getPostTypes === void 0 ? void 0 : _getPostTypes.filter(({
  28950       viewable,
  28951       slug
  28952     }) => viewable && !excludedPostTypes.includes(slug));
  28953     return {
  28954       postTypes: filteredPostTypes
  28955     };
  28956   }, []);
  28957   const postTypesTaxonomiesMap = Object(external_wp_element_["useMemo"])(() => {
  28958     if (!(postTypes !== null && postTypes !== void 0 && postTypes.length)) return;
  28959     return postTypes.reduce((accumulator, type) => {
  28960       accumulator[type.slug] = type.taxonomies;
  28961       return accumulator;
  28962     }, {});
  28963   }, [postTypes]);
  28964   const postTypesSelectOptions = Object(external_wp_element_["useMemo"])(() => (postTypes || []).map(({
  28965     labels,
  28966     slug
  28967   }) => ({
  28968     label: labels.singular_name,
  28969     value: slug
  28970   })), [postTypes]);
  28971   return {
  28972     postTypesTaxonomiesMap,
  28973     postTypesSelectOptions
  28974   };
  28975 };
  28976 /**
  28977  * Recurses over a list of blocks and returns the first found
  28978  * Query Loop block's clientId.
  28979  *
  28980  * @param {WPBlock[]} blocks The list of blocks to look through.
  28981  * @return {string=} The first found Query Loop's clientId.
  28982  */
  28983 
  28984 const getFirstQueryClientIdFromBlocks = blocks => {
  28985   const blocksQueue = [...blocks];
  28986 
  28987   while (blocksQueue.length > 0) {
  28988     var _block$innerBlocks;
  28989 
  28990     const block = blocksQueue.shift();
  28991 
  28992     if (block.name === 'core/query') {
  28993       return block.clientId;
  28994     }
  28995 
  28996     (_block$innerBlocks = block.innerBlocks) === null || _block$innerBlocks === void 0 ? void 0 : _block$innerBlocks.forEach(innerBlock => {
  28997       blocksQueue.push(innerBlock);
  28998     });
  28999   }
  29000 };
  29001 
  29002 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/constants.js
  29003 const MAX_FETCHED_TERMS = 100;
  29004 const DEFAULTS_POSTS_PER_PAGE = 3;
  29005 /* harmony default export */ var constants = ({
  29006   MAX_FETCHED_TERMS,
  29007   DEFAULTS_POSTS_PER_PAGE
  29008 });
  29009 
  29010 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/edit/query-inspector-controls.js
  29011 
  29012 
  29013 /**
  29014  * External dependencies
  29015  */
  29016 
  29017 /**
  29018  * WordPress dependencies
  29019  */
  29020 
  29021 
  29022 
  29023 
  29024 
  29025 
  29026 
  29027 /**
  29028  * Internal dependencies
  29029  */
  29030 
  29031 
  29032 
  29033 const stickyOptions = [{
  29034   label: Object(external_wp_i18n_["__"])('Include'),
  29035   value: ''
  29036 }, {
  29037   label: Object(external_wp_i18n_["__"])('Exclude'),
  29038   value: 'exclude'
  29039 }, {
  29040   label: Object(external_wp_i18n_["__"])('Only'),
  29041   value: 'only'
  29042 }]; // Helper function to get the term id based on user input in terms `FormTokenField`.
  29043 
  29044 const getTermIdByTermValue = (termsMappedByName, termValue) => {
  29045   var _termsMappedByName$te;
  29046 
  29047   // First we check for exact match by `term.id` or case sensitive `term.name` match.
  29048   const termId = (termValue === null || termValue === void 0 ? void 0 : termValue.id) || ((_termsMappedByName$te = termsMappedByName[termValue]) === null || _termsMappedByName$te === void 0 ? void 0 : _termsMappedByName$te.id);
  29049   if (termId) return termId;
  29050   /**
  29051    * Here we make an extra check for entered terms in a non case sensitive way,
  29052    * to match user expectations, due to `FormTokenField` behaviour that shows
  29053    * suggestions which are case insensitive.
  29054    *
  29055    * Although WP tries to discourage users to add terms with the same name (case insensitive),
  29056    * it's still possible if you manually change the name, as long as the terms have different slugs.
  29057    * In this edge case we always apply the first match from the terms list.
  29058    */
  29059 
  29060   const termValueLower = termValue.toLocaleLowerCase();
  29061 
  29062   for (const term in termsMappedByName) {
  29063     if (term.toLocaleLowerCase() === termValueLower) {
  29064       return termsMappedByName[term].id;
  29065     }
  29066   }
  29067 };
  29068 
  29069 function QueryInspectorControls({
  29070   attributes: {
  29071     query,
  29072     displayLayout
  29073   },
  29074   setQuery,
  29075   setDisplayLayout
  29076 }) {
  29077   var _categories$terms, _tags$terms;
  29078 
  29079   const {
  29080     order,
  29081     orderBy,
  29082     author: selectedAuthorId,
  29083     postType,
  29084     sticky,
  29085     inherit
  29086   } = query;
  29087   const [showCategories, setShowCategories] = Object(external_wp_element_["useState"])(true);
  29088   const [showTags, setShowTags] = Object(external_wp_element_["useState"])(true);
  29089   const [showSticky, setShowSticky] = Object(external_wp_element_["useState"])(postType === 'post');
  29090   const {
  29091     postTypesTaxonomiesMap,
  29092     postTypesSelectOptions
  29093   } = usePostTypes();
  29094   const {
  29095     authorList,
  29096     categories,
  29097     tags
  29098   } = Object(external_wp_data_["useSelect"])(select => {
  29099     const {
  29100       getEntityRecords
  29101     } = select(external_wp_coreData_["store"]);
  29102     const termsQuery = {
  29103       per_page: MAX_FETCHED_TERMS
  29104     };
  29105 
  29106     const _categories = getEntityRecords('taxonomy', 'category', termsQuery);
  29107 
  29108     const _tags = getEntityRecords('taxonomy', 'post_tag', termsQuery);
  29109 
  29110     return {
  29111       categories: getTermsInfo(_categories),
  29112       tags: getTermsInfo(_tags),
  29113       authorList: getEntityRecords('root', 'user', {
  29114         per_page: -1
  29115       })
  29116     };
  29117   }, []);
  29118   Object(external_wp_element_["useEffect"])(() => {
  29119     if (!postTypesTaxonomiesMap) return;
  29120     const postTypeTaxonomies = postTypesTaxonomiesMap[postType];
  29121     setShowCategories(postTypeTaxonomies.includes('category'));
  29122     setShowTags(postTypeTaxonomies.includes('post_tag'));
  29123   }, [postType, postTypesTaxonomiesMap]);
  29124   Object(external_wp_element_["useEffect"])(() => {
  29125     setShowSticky(postType === 'post');
  29126   }, [postType]);
  29127 
  29128   const onPostTypeChange = newValue => {
  29129     const updateQuery = {
  29130       postType: newValue
  29131     };
  29132 
  29133     if (!postTypesTaxonomiesMap[newValue].includes('category')) {
  29134       updateQuery.categoryIds = [];
  29135     }
  29136 
  29137     if (!postTypesTaxonomiesMap[newValue].includes('post_tag')) {
  29138       updateQuery.tagIds = [];
  29139     }
  29140 
  29141     if (newValue !== 'post') {
  29142       updateQuery.sticky = '';
  29143     }
  29144 
  29145     setQuery(updateQuery);
  29146   }; // Handles categories and tags changes.
  29147 
  29148 
  29149   const onTermsChange = (terms, queryProperty) => newTermValues => {
  29150     const termIds = Array.from(newTermValues.reduce((accumulator, termValue) => {
  29151       const termId = getTermIdByTermValue(terms.mapByName, termValue);
  29152       if (termId) accumulator.add(termId);
  29153       return accumulator;
  29154     }, new Set()));
  29155     setQuery({
  29156       [queryProperty]: termIds
  29157     });
  29158   };
  29159 
  29160   const onCategoriesChange = onTermsChange(categories, 'categoryIds');
  29161   const onTagsChange = onTermsChange(tags, 'tagIds');
  29162   const [querySearch, setQuerySearch] = Object(external_wp_element_["useState"])(query.search);
  29163   const onChangeDebounced = Object(external_wp_element_["useCallback"])(Object(external_lodash_["debounce"])(() => {
  29164     if (query.search !== querySearch) {
  29165       setQuery({
  29166         search: querySearch
  29167       });
  29168     }
  29169   }, 250), [querySearch, query.search]);
  29170   Object(external_wp_element_["useEffect"])(() => {
  29171     onChangeDebounced();
  29172     return onChangeDebounced.cancel;
  29173   }, [querySearch, onChangeDebounced]); // Returns only the existing term ids (categories/tags) in proper
  29174   // format to be used in `FormTokenField`. This prevents the component
  29175   // from crashing in the editor, when non existing term ids were provided.
  29176 
  29177   const getExistingTermsFormTokenValue = taxonomy => {
  29178     const termsMapper = {
  29179       category: {
  29180         queryProp: 'categoryIds',
  29181         terms: categories
  29182       },
  29183       post_tag: {
  29184         queryProp: 'tagIds',
  29185         terms: tags
  29186       }
  29187     };
  29188     const requestedTerm = termsMapper[taxonomy];
  29189     return (query[requestedTerm.queryProp] || []).reduce((accumulator, termId) => {
  29190       const term = requestedTerm.terms.mapById[termId];
  29191 
  29192       if (term) {
  29193         accumulator.push({
  29194           id: termId,
  29195           value: term.name
  29196         });
  29197       }
  29198 
  29199       return accumulator;
  29200     }, []);
  29201   };
  29202 
  29203   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  29204     title: Object(external_wp_i18n_["__"])('Settings')
  29205   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  29206     label: Object(external_wp_i18n_["__"])('Inherit query from template'),
  29207     help: Object(external_wp_i18n_["__"])('Toggle to use the global query context that is set with the current template, such as an archive or search. Disable to customize the settings independently.'),
  29208     checked: !!inherit,
  29209     onChange: value => setQuery({
  29210       inherit: !!value
  29211     })
  29212   }), !inherit && Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  29213     options: postTypesSelectOptions,
  29214     value: postType,
  29215     label: Object(external_wp_i18n_["__"])('Post Type'),
  29216     onChange: onPostTypeChange,
  29217     help: Object(external_wp_i18n_["__"])('WordPress contains different types of content and they are divided into collections called "Post Types". By default there are a few different ones such as blog posts and pages, but plugins could add more.')
  29218   }), (displayLayout === null || displayLayout === void 0 ? void 0 : displayLayout.type) === 'flex' && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["RangeControl"], {
  29219     label: Object(external_wp_i18n_["__"])('Columns'),
  29220     value: displayLayout.columns,
  29221     onChange: value => setDisplayLayout({
  29222       columns: value
  29223     }),
  29224     min: 2,
  29225     max: Math.max(6, displayLayout.columns)
  29226   }), displayLayout.columns > 6 && Object(external_wp_element_["createElement"])(external_wp_components_["Notice"], {
  29227     status: "warning",
  29228     isDismissible: false
  29229   }, Object(external_wp_i18n_["__"])('This column count exceeds the recommended amount and may cause visual breakage.'))), !inherit && Object(external_wp_element_["createElement"])(external_wp_components_["QueryControls"], {
  29230     order,
  29231     orderBy,
  29232     onOrderChange: value => setQuery({
  29233       order: value
  29234     }),
  29235     onOrderByChange: value => setQuery({
  29236       orderBy: value
  29237     })
  29238   }), showSticky && Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  29239     label: Object(external_wp_i18n_["__"])('Sticky posts'),
  29240     options: stickyOptions,
  29241     value: sticky,
  29242     onChange: value => setQuery({
  29243       sticky: value
  29244     }),
  29245     help: Object(external_wp_i18n_["__"])('Blog posts can be "stickied", a feature that places them at the top of the front page of posts, keeping it there until new sticky posts are published.')
  29246   })), !inherit && Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  29247     title: Object(external_wp_i18n_["__"])('Filters')
  29248   }, showCategories && (categories === null || categories === void 0 ? void 0 : (_categories$terms = categories.terms) === null || _categories$terms === void 0 ? void 0 : _categories$terms.length) > 0 && Object(external_wp_element_["createElement"])(external_wp_components_["FormTokenField"], {
  29249     label: Object(external_wp_i18n_["__"])('Categories'),
  29250     value: getExistingTermsFormTokenValue('category'),
  29251     suggestions: categories.names,
  29252     onChange: onCategoriesChange
  29253   }), showTags && (tags === null || tags === void 0 ? void 0 : (_tags$terms = tags.terms) === null || _tags$terms === void 0 ? void 0 : _tags$terms.length) > 0 && Object(external_wp_element_["createElement"])(external_wp_components_["FormTokenField"], {
  29254     label: Object(external_wp_i18n_["__"])('Tags'),
  29255     value: getExistingTermsFormTokenValue('post_tag'),
  29256     suggestions: tags.names,
  29257     onChange: onTagsChange
  29258   }), Object(external_wp_element_["createElement"])(external_wp_components_["QueryControls"], {
  29259     selectedAuthorId,
  29260     authorList,
  29261     onAuthorChange: value => setQuery({
  29262       author: value !== '' ? +value : undefined
  29263     })
  29264   }), Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  29265     label: Object(external_wp_i18n_["__"])('Keyword'),
  29266     value: querySearch,
  29267     onChange: setQuerySearch
  29268   })));
  29269 }
  29270 
  29271 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/edit/query-placeholder.js
  29272 
  29273 
  29274 /**
  29275  * WordPress dependencies
  29276  */
  29277 
  29278 
  29279 
  29280 
  29281 const QueryPlaceholder = ({
  29282   clientId,
  29283   name,
  29284   attributes,
  29285   setAttributes
  29286 }) => {
  29287   var _blockType$icon;
  29288 
  29289   const {
  29290     blockType,
  29291     defaultVariation,
  29292     scopeVariations,
  29293     allVariations
  29294   } = Object(external_wp_data_["useSelect"])(select => {
  29295     const {
  29296       getBlockVariations,
  29297       getBlockType,
  29298       getDefaultBlockVariation
  29299     } = select(external_wp_blocks_["store"]);
  29300     return {
  29301       blockType: getBlockType(name),
  29302       defaultVariation: getDefaultBlockVariation(name, 'block'),
  29303       scopeVariations: getBlockVariations(name, 'block'),
  29304       allVariations: getBlockVariations(name)
  29305     };
  29306   }, [name]);
  29307   const {
  29308     replaceInnerBlocks
  29309   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  29310   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  29311   const matchingVariation = Object(external_wp_blockEditor_["__experimentalGetMatchingVariation"])(attributes, allVariations);
  29312   const icon = (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.icon) || (blockType === null || blockType === void 0 ? void 0 : (_blockType$icon = blockType.icon) === null || _blockType$icon === void 0 ? void 0 : _blockType$icon.src);
  29313   const label = (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.title) || (blockType === null || blockType === void 0 ? void 0 : blockType.title);
  29314   return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalBlockVariationPicker"], {
  29315     icon: icon,
  29316     label: label,
  29317     variations: scopeVariations,
  29318     onSelect: (nextVariation = defaultVariation) => {
  29319       if (nextVariation.attributes) {
  29320         setAttributes(nextVariation.attributes);
  29321       }
  29322 
  29323       if (nextVariation.innerBlocks) {
  29324         replaceInnerBlocks(clientId, Object(external_wp_blocks_["createBlocksFromInnerBlocksTemplate"])(nextVariation.innerBlocks), false);
  29325       }
  29326     }
  29327   }));
  29328 };
  29329 
  29330 /* harmony default export */ var query_placeholder = (QueryPlaceholder);
  29331 
  29332 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/edit/index.js
  29333 
  29334 
  29335 /**
  29336  * WordPress dependencies
  29337  */
  29338 
  29339 
  29340 
  29341 
  29342 
  29343 
  29344 
  29345 /**
  29346  * Internal dependencies
  29347  */
  29348 
  29349 
  29350 
  29351 
  29352 
  29353 
  29354 const edit_TEMPLATE = [['core/post-template']];
  29355 function QueryContent({
  29356   attributes,
  29357   setAttributes
  29358 }) {
  29359   const {
  29360     queryId,
  29361     query,
  29362     displayLayout,
  29363     tagName: TagName = 'div',
  29364     layout = {}
  29365   } = attributes;
  29366   const {
  29367     __unstableMarkNextChangeAsNotPersistent
  29368   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  29369   const instanceId = Object(external_wp_compose_["useInstanceId"])(QueryContent);
  29370   const {
  29371     themeSupportsLayout
  29372   } = Object(external_wp_data_["useSelect"])(select => {
  29373     var _getSettings;
  29374 
  29375     const {
  29376       getSettings
  29377     } = select(external_wp_blockEditor_["store"]);
  29378     return {
  29379       themeSupportsLayout: (_getSettings = getSettings()) === null || _getSettings === void 0 ? void 0 : _getSettings.supportsLayout
  29380     };
  29381   }, []);
  29382   const defaultLayout = Object(external_wp_blockEditor_["useSetting"])('layout') || {};
  29383   const usedLayout = !!layout && layout.inherit ? defaultLayout : layout;
  29384   const {
  29385     contentSize,
  29386     wideSize
  29387   } = usedLayout;
  29388   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  29389 
  29390   const _layout = Object(external_wp_element_["useMemo"])(() => {
  29391     if (themeSupportsLayout) {
  29392       const alignments = contentSize || wideSize ? ['wide', 'full', 'left', 'center', 'right'] : ['left', 'center', 'right'];
  29393       return {
  29394         type: 'default',
  29395         // Find a way to inject this in the support flag code (hooks).
  29396         alignments
  29397       };
  29398     }
  29399 
  29400     return undefined;
  29401   }, [themeSupportsLayout, contentSize, wideSize]);
  29402 
  29403   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])(blockProps, {
  29404     template: edit_TEMPLATE,
  29405     __experimentalLayout: _layout
  29406   });
  29407   const {
  29408     postsPerPage
  29409   } = Object(external_wp_data_["useSelect"])(select => {
  29410     const {
  29411       getSettings
  29412     } = select(external_wp_blockEditor_["store"]);
  29413     return {
  29414       postsPerPage: +getSettings().postsPerPage || DEFAULTS_POSTS_PER_PAGE
  29415     };
  29416   }, []); // There are some effects running where some initialization logic is
  29417   // happening and setting some values to some attributes (ex. queryId).
  29418   // These updates can cause an `undo trap` where undoing will result in
  29419   // resetting again, so we need to mark these changes as not persistent
  29420   // with `__unstableMarkNextChangeAsNotPersistent`.
  29421   // Changes in query property (which is an object) need to be in the same callback,
  29422   // because updates are batched after the render and changes in different query properties
  29423   // would cause to overide previous wanted changes.
  29424 
  29425   Object(external_wp_element_["useEffect"])(() => {
  29426     const newQuery = {};
  29427 
  29428     if (!query.perPage && postsPerPage) {
  29429       newQuery.perPage = postsPerPage;
  29430     }
  29431 
  29432     if (!!Object.keys(newQuery).length) {
  29433       __unstableMarkNextChangeAsNotPersistent();
  29434 
  29435       updateQuery(newQuery);
  29436     }
  29437   }, [query.perPage]); // We need this for multi-query block pagination.
  29438   // Query parameters for each block are scoped to their ID.
  29439 
  29440   Object(external_wp_element_["useEffect"])(() => {
  29441     if (!queryId) {
  29442       __unstableMarkNextChangeAsNotPersistent();
  29443 
  29444       setAttributes({
  29445         queryId: instanceId
  29446       });
  29447     }
  29448   }, [queryId, instanceId]);
  29449 
  29450   const updateQuery = newQuery => setAttributes({
  29451     query: { ...query,
  29452       ...newQuery
  29453     }
  29454   });
  29455 
  29456   const updateDisplayLayout = newDisplayLayout => setAttributes({
  29457     displayLayout: { ...displayLayout,
  29458       ...newDisplayLayout
  29459     }
  29460   });
  29461 
  29462   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(QueryInspectorControls, {
  29463     attributes: attributes,
  29464     setQuery: updateQuery,
  29465     setDisplayLayout: updateDisplayLayout
  29466   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(QueryToolbar, {
  29467     attributes: attributes,
  29468     setQuery: updateQuery,
  29469     setDisplayLayout: updateDisplayLayout
  29470   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorAdvancedControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["SelectControl"], {
  29471     label: Object(external_wp_i18n_["__"])('HTML element'),
  29472     options: [{
  29473       label: Object(external_wp_i18n_["__"])('Default (<div>)'),
  29474       value: 'div'
  29475     }, {
  29476       label: '<main>',
  29477       value: 'main'
  29478     }, {
  29479       label: '<section>',
  29480       value: 'section'
  29481     }, {
  29482       label: '<aside>',
  29483       value: 'aside'
  29484     }],
  29485     value: TagName,
  29486     onChange: value => setAttributes({
  29487       tagName: value
  29488     })
  29489   })), Object(external_wp_element_["createElement"])(TagName, innerBlocksProps));
  29490 }
  29491 
  29492 function QueryPatternSetup(props) {
  29493   const {
  29494     clientId,
  29495     name: blockName
  29496   } = props;
  29497   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  29498   const {
  29499     replaceBlock,
  29500     selectBlock
  29501   } = Object(external_wp_data_["useDispatch"])(external_wp_blockEditor_["store"]);
  29502 
  29503   const onBlockPatternSelect = blocks => {
  29504     const clonedBlocks = blocks.map(block => Object(external_wp_blocks_["cloneBlock"])(block));
  29505     const firstQueryClientId = getFirstQueryClientIdFromBlocks(clonedBlocks);
  29506     replaceBlock(clientId, clonedBlocks);
  29507 
  29508     if (firstQueryClientId) {
  29509       selectBlock(firstQueryClientId);
  29510     }
  29511   }; // `startBlankComponent` is what to render when clicking `Start blank`
  29512   // or if no matched patterns are found.
  29513 
  29514 
  29515   return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["__experimentalBlockPatternSetup"], {
  29516     blockName: blockName,
  29517     clientId: clientId,
  29518     startBlankComponent: Object(external_wp_element_["createElement"])(query_placeholder, props),
  29519     onBlockPatternSelect: onBlockPatternSelect
  29520   }));
  29521 }
  29522 
  29523 const QueryEdit = props => {
  29524   const {
  29525     clientId
  29526   } = props;
  29527   const hasInnerBlocks = Object(external_wp_data_["useSelect"])(select => !!select(external_wp_blockEditor_["store"]).getBlocks(clientId).length, [clientId]);
  29528   const Component = hasInnerBlocks ? QueryContent : QueryPatternSetup;
  29529   return Object(external_wp_element_["createElement"])(Component, props);
  29530 };
  29531 
  29532 /* harmony default export */ var query_edit = (QueryEdit);
  29533 
  29534 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/save.js
  29535 
  29536 
  29537 /**
  29538  * WordPress dependencies
  29539  */
  29540 
  29541 function QuerySave({
  29542   attributes: {
  29543     tagName: Tag = 'div'
  29544   }
  29545 }) {
  29546   return Object(external_wp_element_["createElement"])(Tag, external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  29547 }
  29548 
  29549 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/icons.js
  29550 
  29551 
  29552 /**
  29553  * WordPress dependencies
  29554  */
  29555 
  29556 const titleDate = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  29557   xmlns: "http://www.w3.org/2000/svg",
  29558   viewBox: "0 0 48 48"
  29559 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  29560   d: "M41 9H7v3h34V9zm-22 5H7v1h12v-1zM7 26h12v1H7v-1zm34-5H7v3h34v-3zM7 38h12v1H7v-1zm34-5H7v3h34v-3z"
  29561 }));
  29562 const titleExcerpt = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  29563   xmlns: "http://www.w3.org/2000/svg",
  29564   viewBox: "0 0 48 48"
  29565 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  29566   d: "M41 9H7v3h34V9zm-4 5H7v1h30v-1zm4 3H7v1h34v-1zM7 20h30v1H7v-1zm0 12h30v1H7v-1zm34 3H7v1h34v-1zM7 38h30v1H7v-1zm34-11H7v3h34v-3z"
  29567 }));
  29568 const titleDateExcerpt = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  29569   xmlns: "http://www.w3.org/2000/svg",
  29570   viewBox: "0 0 48 48"
  29571 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  29572   d: "M41 9H7v3h34V9zm-22 5H7v1h12v-1zm22 3H7v1h34v-1zM7 20h34v1H7v-1zm0 12h12v1H7v-1zm34 3H7v1h34v-1zM7 38h34v1H7v-1zm34-11H7v3h34v-3z"
  29573 }));
  29574 const imageDateTitle = Object(external_wp_element_["createElement"])(external_wp_components_["SVG"], {
  29575   xmlns: "http://www.w3.org/2000/svg",
  29576   viewBox: "0 0 48 48"
  29577 }, Object(external_wp_element_["createElement"])(external_wp_components_["Path"], {
  29578   d: "M7 9h34v6H7V9zm12 8H7v1h12v-1zm18 3H7v1h30v-1zm0 18H7v1h30v-1zM7 35h12v1H7v-1zm34-8H7v6h34v-6z"
  29579 }));
  29580 
  29581 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/variations.js
  29582 /**
  29583  * WordPress dependencies
  29584  */
  29585 
  29586 
  29587 /**
  29588  * Internal dependencies
  29589  */
  29590 
  29591 
  29592 const QUERY_DEFAULT_ATTRIBUTES = {
  29593   query: {
  29594     perPage: 3,
  29595     pages: 0,
  29596     offset: 0,
  29597     postType: 'post',
  29598     categoryIds: [],
  29599     tagIds: [],
  29600     order: 'desc',
  29601     orderBy: 'date',
  29602     author: '',
  29603     search: '',
  29604     exclude: [],
  29605     sticky: '',
  29606     inherit: false
  29607   }
  29608 };
  29609 const query_variations_variations = [{
  29610   name: 'posts-list',
  29611   title: Object(external_wp_i18n_["__"])('Posts List'),
  29612   description: Object(external_wp_i18n_["__"])('Display a list of your most recent posts, excluding sticky posts.'),
  29613   icon: post_list,
  29614   attributes: {
  29615     query: {
  29616       perPage: 4,
  29617       pages: 1,
  29618       offset: 0,
  29619       postType: 'post',
  29620       categoryIds: [],
  29621       tagIds: [],
  29622       order: 'desc',
  29623       orderBy: 'date',
  29624       author: '',
  29625       search: '',
  29626       sticky: 'exclude',
  29627       inherit: false
  29628     }
  29629   },
  29630   scope: ['inserter']
  29631 }, {
  29632   name: 'title-date',
  29633   title: Object(external_wp_i18n_["__"])('Title & Date'),
  29634   icon: titleDate,
  29635   attributes: { ...QUERY_DEFAULT_ATTRIBUTES
  29636   },
  29637   innerBlocks: [['core/post-template', {}, [['core/post-title'], ['core/post-date']]]],
  29638   scope: ['block']
  29639 }, {
  29640   name: 'title-excerpt',
  29641   title: Object(external_wp_i18n_["__"])('Title & Excerpt'),
  29642   icon: titleExcerpt,
  29643   attributes: { ...QUERY_DEFAULT_ATTRIBUTES
  29644   },
  29645   innerBlocks: [['core/post-template', {}, [['core/post-title'], ['core/post-excerpt']]]],
  29646   scope: ['block']
  29647 }, {
  29648   name: 'title-date-excerpt',
  29649   title: Object(external_wp_i18n_["__"])('Title, Date, & Excerpt'),
  29650   icon: titleDateExcerpt,
  29651   attributes: { ...QUERY_DEFAULT_ATTRIBUTES
  29652   },
  29653   innerBlocks: [['core/post-template', {}, [['core/post-title'], ['core/post-date'], ['core/post-excerpt']]]],
  29654   scope: ['block']
  29655 }, {
  29656   name: 'image-date-title',
  29657   title: Object(external_wp_i18n_["__"])('Image, Date, & Title'),
  29658   icon: imageDateTitle,
  29659   attributes: { ...QUERY_DEFAULT_ATTRIBUTES
  29660   },
  29661   innerBlocks: [['core/post-template', {}, [['core/post-featured-image'], ['core/post-date'], ['core/post-title']]]],
  29662   scope: ['block']
  29663 }];
  29664 /* harmony default export */ var query_variations = (query_variations_variations);
  29665 
  29666 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/deprecated.js
  29667 
  29668 
  29669 /**
  29670  * WordPress dependencies
  29671  */
  29672 
  29673 const query_deprecated_deprecated = [// Version with NO wrapper `div` element.
  29674 {
  29675   attributes: {
  29676     queryId: {
  29677       type: 'number'
  29678     },
  29679     query: {
  29680       type: 'object',
  29681       default: {
  29682         perPage: null,
  29683         pages: 0,
  29684         offset: 0,
  29685         postType: 'post',
  29686         categoryIds: [],
  29687         tagIds: [],
  29688         order: 'desc',
  29689         orderBy: 'date',
  29690         author: '',
  29691         search: '',
  29692         exclude: [],
  29693         sticky: '',
  29694         inherit: true
  29695       }
  29696     },
  29697     layout: {
  29698       type: 'object',
  29699       default: {
  29700         type: 'list'
  29701       }
  29702     }
  29703   },
  29704   supports: {
  29705     html: false
  29706   },
  29707 
  29708   save() {
  29709     return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null);
  29710   }
  29711 
  29712 }];
  29713 /* harmony default export */ var query_deprecated = (query_deprecated_deprecated);
  29714 
  29715 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/hooks.js
  29716 
  29717 
  29718 
  29719 /**
  29720  * WordPress dependencies
  29721  */
  29722 
  29723 
  29724 
  29725 
  29726 
  29727 
  29728 const CreateNewPostLink = ({
  29729   attributes: {
  29730     query: {
  29731       postType
  29732     } = {}
  29733   } = {}
  29734 }) => {
  29735   if (!postType) return null;
  29736   const newPostUrl = Object(external_wp_url_["addQueryArgs"])('post-new.php', {
  29737     post_type: postType
  29738   });
  29739   return Object(external_wp_element_["createElement"])("div", {
  29740     className: "wp-block-query__create-new-link"
  29741   }, Object(external_wp_element_["createInterpolateElement"])(Object(external_wp_i18n_["__"])('<a>Create a new post</a> for this feed.'), // eslint-disable-next-line jsx-a11y/anchor-has-content
  29742   {
  29743     a: Object(external_wp_element_["createElement"])("a", {
  29744       href: newPostUrl
  29745     })
  29746   }));
  29747 };
  29748 /**
  29749  * Override the default edit UI to include layout controls
  29750  *
  29751  * @param  {Function} BlockEdit Original component
  29752  * @return {Function}           Wrapped component
  29753  */
  29754 
  29755 
  29756 const queryTopInspectorControls = Object(external_wp_compose_["createHigherOrderComponent"])(BlockEdit => props => {
  29757   const {
  29758     name,
  29759     isSelected
  29760   } = props;
  29761 
  29762   if (name !== 'core/query' || !isSelected) {
  29763     return Object(external_wp_element_["createElement"])(BlockEdit, Object(esm_extends["a" /* default */])({
  29764       key: "edit"
  29765     }, props));
  29766   }
  29767 
  29768   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(CreateNewPostLink, props)), Object(external_wp_element_["createElement"])(BlockEdit, Object(esm_extends["a" /* default */])({
  29769     key: "edit"
  29770   }, props)));
  29771 }, 'withInspectorControls');
  29772 /* harmony default export */ var hooks = (queryTopInspectorControls);
  29773 
  29774 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query/index.js
  29775 /**
  29776  * WordPress dependencies
  29777  */
  29778 
  29779 
  29780 /**
  29781  * Internal dependencies
  29782  */
  29783 
  29784 const query_metadata = {
  29785   apiVersion: 2,
  29786   name: "core/query",
  29787   title: "Query Loop",
  29788   category: "theme",
  29789   description: "An advanced block that allows displaying post types based on different query parameters and visual configurations.",
  29790   textdomain: "default",
  29791   attributes: {
  29792     queryId: {
  29793       type: "number"
  29794     },
  29795     query: {
  29796       type: "object",
  29797       "default": {
  29798         perPage: null,
  29799         pages: 0,
  29800         offset: 0,
  29801         postType: "post",
  29802         categoryIds: [],
  29803         tagIds: [],
  29804         order: "desc",
  29805         orderBy: "date",
  29806         author: "",
  29807         search: "",
  29808         exclude: [],
  29809         sticky: "",
  29810         inherit: true
  29811       }
  29812     },
  29813     tagName: {
  29814       type: "string",
  29815       "default": "div"
  29816     },
  29817     displayLayout: {
  29818       type: "object",
  29819       "default": {
  29820         type: "list"
  29821       }
  29822     }
  29823   },
  29824   providesContext: {
  29825     queryId: "queryId",
  29826     query: "query",
  29827     displayLayout: "displayLayout"
  29828   },
  29829   supports: {
  29830     align: ["wide", "full"],
  29831     html: false,
  29832     color: {
  29833       gradients: true,
  29834       link: true
  29835     },
  29836     __experimentalLayout: true
  29837   },
  29838   editorStyle: "wp-block-query-editor"
  29839 };
  29840 
  29841 
  29842 
  29843 
  29844 
  29845 const {
  29846   name: query_name
  29847 } = query_metadata;
  29848 
  29849 const query_settings = {
  29850   icon: library_loop,
  29851   edit: query_edit,
  29852   save: QuerySave,
  29853   variations: query_variations,
  29854   deprecated: query_deprecated
  29855 }; // Importing this file includes side effects and is whitelisted
  29856 // in block-library/package.json under `sideEffects`.
  29857 
  29858 Object(external_wp_hooks_["addFilter"])('editor.BlockEdit', 'core/query', hooks);
  29859 
  29860 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-template/edit.js
  29861 
  29862 
  29863 /**
  29864  * External dependencies
  29865  */
  29866 
  29867 /**
  29868  * WordPress dependencies
  29869  */
  29870 
  29871 
  29872 
  29873 
  29874 
  29875 
  29876 
  29877 const post_template_edit_TEMPLATE = [['core/post-title'], ['core/post-date'], ['core/post-excerpt']];
  29878 function PostTemplateEdit({
  29879   clientId,
  29880   context: {
  29881     query: {
  29882       perPage,
  29883       offset,
  29884       categoryIds,
  29885       postType,
  29886       tagIds = [],
  29887       order,
  29888       orderBy,
  29889       author,
  29890       search,
  29891       exclude,
  29892       sticky,
  29893       inherit
  29894     } = {},
  29895     queryContext = [{
  29896       page: 1
  29897     }],
  29898     templateSlug,
  29899     displayLayout: {
  29900       type: layoutType = 'flex',
  29901       columns = 1
  29902     } = {}
  29903   }
  29904 }) {
  29905   const [{
  29906     page
  29907   }] = queryContext;
  29908   const [activeBlockContext, setActiveBlockContext] = Object(external_wp_element_["useState"])();
  29909   const {
  29910     posts,
  29911     blocks
  29912   } = Object(external_wp_data_["useSelect"])(select => {
  29913     const {
  29914       getEntityRecords
  29915     } = select(external_wp_coreData_["store"]);
  29916     const {
  29917       getBlocks
  29918     } = select(external_wp_blockEditor_["store"]);
  29919     const query = {
  29920       offset: perPage ? perPage * (page - 1) + offset : 0,
  29921       categories: categoryIds,
  29922       tags: tagIds,
  29923       order,
  29924       orderby: orderBy
  29925     };
  29926 
  29927     if (perPage) {
  29928       query.per_page = perPage;
  29929     }
  29930 
  29931     if (author) {
  29932       query.author = author;
  29933     }
  29934 
  29935     if (search) {
  29936       query.search = search;
  29937     }
  29938 
  29939     if (exclude !== null && exclude !== void 0 && exclude.length) {
  29940       query.exclude = exclude;
  29941     } // If sticky is not set, it will return all posts in the results.
  29942     // If sticky is set to `only`, it will limit the results to sticky posts only.
  29943     // If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.
  29944 
  29945 
  29946     if (sticky) {
  29947       query.sticky = sticky === 'only';
  29948     } // If `inherit` is truthy, adjust conditionally the query to create a better preview.
  29949 
  29950 
  29951     if (inherit) {
  29952       // Change the post-type if needed.
  29953       if (templateSlug !== null && templateSlug !== void 0 && templateSlug.startsWith('archive-')) {
  29954         query.postType = templateSlug.replace('archive-', '');
  29955         postType = query.postType;
  29956       }
  29957     }
  29958 
  29959     return {
  29960       posts: getEntityRecords('postType', postType, query),
  29961       blocks: getBlocks(clientId)
  29962     };
  29963   }, [perPage, page, offset, categoryIds, tagIds, order, orderBy, clientId, author, search, postType, exclude, sticky, inherit, templateSlug]);
  29964   const blockContexts = Object(external_wp_element_["useMemo"])(() => posts === null || posts === void 0 ? void 0 : posts.map(post => ({
  29965     postType: post.type,
  29966     postId: post.id
  29967   })), [posts]);
  29968   const hasLayoutFlex = layoutType === 'flex' && columns > 1;
  29969   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  29970     className: classnames_default()({
  29971       'is-flex-container': hasLayoutFlex,
  29972       [`columns-${columns}`]: hasLayoutFlex
  29973     })
  29974   });
  29975   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])({}, {
  29976     template: post_template_edit_TEMPLATE
  29977   });
  29978 
  29979   if (!posts) {
  29980     return Object(external_wp_element_["createElement"])("p", blockProps, Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null));
  29981   }
  29982 
  29983   if (!posts.length) {
  29984     return Object(external_wp_element_["createElement"])("p", blockProps, " ", Object(external_wp_i18n_["__"])('No results found.'));
  29985   }
  29986 
  29987   return Object(external_wp_element_["createElement"])("ul", blockProps, blockContexts && blockContexts.map(blockContext => Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockContextProvider"], {
  29988     key: blockContext.postId,
  29989     value: blockContext
  29990   }, blockContext === (activeBlockContext || blockContexts[0]) ? Object(external_wp_element_["createElement"])("li", innerBlocksProps) : Object(external_wp_element_["createElement"])("li", null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockPreview"], {
  29991     blocks: blocks,
  29992     __experimentalLive: true,
  29993     __experimentalOnClick: () => setActiveBlockContext(blockContext)
  29994   })))));
  29995 }
  29996 
  29997 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-template/save.js
  29998 
  29999 
  30000 /**
  30001  * WordPress dependencies
  30002  */
  30003 
  30004 function PostTemplateSave() {
  30005   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null);
  30006 }
  30007 
  30008 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-template/index.js
  30009 /**
  30010  * WordPress dependencies
  30011  */
  30012 
  30013 /**
  30014  * Internal dependencies
  30015  */
  30016 
  30017 const post_template_metadata = {
  30018   apiVersion: 2,
  30019   name: "core/post-template",
  30020   title: "Post Template",
  30021   category: "design",
  30022   parent: ["core/query"],
  30023   description: "Contains the block elements used to render a post, like the title, date, featured image, content or excerpt, and more.",
  30024   textdomain: "default",
  30025   usesContext: ["queryId", "query", "queryContext", "displayLayout", "templateSlug"],
  30026   supports: {
  30027     reusable: false,
  30028     html: false,
  30029     align: true
  30030   },
  30031   style: "wp-block-post-template",
  30032   editorStyle: "wp-block-post-template-editor"
  30033 };
  30034 
  30035 
  30036 const {
  30037   name: post_template_name
  30038 } = post_template_metadata;
  30039 
  30040 const post_template_settings = {
  30041   icon: library_loop,
  30042   edit: PostTemplateEdit,
  30043   save: PostTemplateSave
  30044 };
  30045 
  30046 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-title/edit.js
  30047 
  30048 
  30049 /**
  30050  * External dependencies
  30051  */
  30052 
  30053 /**
  30054  * WordPress dependencies
  30055  */
  30056 // import { useSelect, useDispatch } from '@wordpress/data';
  30057 
  30058 
  30059 
  30060 /**
  30061  * Internal dependencies
  30062  */
  30063 
  30064 
  30065 const SUPPORTED_TYPES = ['archive'];
  30066 function QueryTitleEdit({
  30067   attributes: {
  30068     type,
  30069     level,
  30070     textAlign
  30071   },
  30072   setAttributes
  30073 }) {
  30074   const TagName = `h${level}`;
  30075   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  30076     className: classnames_default()({
  30077       [`has-text-align-${textAlign}`]: textAlign,
  30078       'wp-block-query-title__placeholder': type === 'archive'
  30079     })
  30080   }); // The plan is to augment this block with more
  30081   // block variations like `Search Title`.
  30082 
  30083   if (!SUPPORTED_TYPES.includes(type)) {
  30084     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('Provided type is not supported.')));
  30085   }
  30086 
  30087   let titleElement;
  30088 
  30089   if (type === 'archive') {
  30090     titleElement = Object(external_wp_element_["createElement"])(TagName, blockProps, Object(external_wp_i18n_["__"])('Archive title'));
  30091   }
  30092 
  30093   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  30094     group: "block"
  30095   }, Object(external_wp_element_["createElement"])(HeadingLevelDropdown, {
  30096     selectedLevel: level,
  30097     onChange: newLevel => setAttributes({
  30098       level: newLevel
  30099     })
  30100   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
  30101     value: textAlign,
  30102     onChange: nextAlign => {
  30103       setAttributes({
  30104         textAlign: nextAlign
  30105       });
  30106     }
  30107   })), titleElement);
  30108 }
  30109 
  30110 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/archive-title.js
  30111 
  30112 
  30113 /**
  30114  * WordPress dependencies
  30115  */
  30116 
  30117 const archiveTitle = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  30118   viewBox: "0 0 24 24",
  30119   xmlns: "http://www.w3.org/2000/svg"
  30120 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30121   stroke: "#1E1E1E",
  30122   strokeWidth: "1.5",
  30123   d: "M4 19.25h9M4 15.25h16"
  30124 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30125   d: "M8.994 10.103H6.08L5.417 12H4l2.846-8h1.383l2.845 8H9.657l-.663-1.897zm-.457-1.28l-.994-2.857-1.006 2.857h2z",
  30126   fill: "#1E1E1E"
  30127 }));
  30128 /* harmony default export */ var archive_title = (archiveTitle);
  30129 
  30130 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-title/variations.js
  30131 /**
  30132  * WordPress dependencies
  30133  */
  30134 
  30135 
  30136 const query_title_variations_variations = [{
  30137   isDefault: true,
  30138   name: 'archive-title',
  30139   title: Object(external_wp_i18n_["__"])('Archive Title'),
  30140   description: Object(external_wp_i18n_["__"])('Display the archive title based on the queried object.'),
  30141   icon: archive_title,
  30142   attributes: {
  30143     type: 'archive'
  30144   },
  30145   scope: ['inserter']
  30146 }];
  30147 /**
  30148  * Add `isActive` function to all `query-title` variations, if not defined.
  30149  * `isActive` function is used to find a variation match from a created
  30150  *  Block by providing its attributes.
  30151  */
  30152 
  30153 query_title_variations_variations.forEach(variation => {
  30154   if (variation.isActive) return;
  30155 
  30156   variation.isActive = (blockAttributes, variationAttributes) => blockAttributes.type === variationAttributes.type;
  30157 });
  30158 /* harmony default export */ var query_title_variations = (query_title_variations_variations);
  30159 
  30160 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-title/index.js
  30161 /**
  30162  * Internal dependencies
  30163  */
  30164 const query_title_metadata = {
  30165   apiVersion: 2,
  30166   name: "core/query-title",
  30167   title: "Query Title",
  30168   category: "design",
  30169   description: "Display the query title.",
  30170   textdomain: "default",
  30171   attributes: {
  30172     type: {
  30173       type: "string"
  30174     },
  30175     textAlign: {
  30176       type: "string"
  30177     },
  30178     level: {
  30179       type: "number",
  30180       "default": 1
  30181     }
  30182   },
  30183   supports: {
  30184     align: ["wide", "full"],
  30185     html: false,
  30186     color: {
  30187       gradients: true
  30188     },
  30189     typography: {
  30190       fontSize: true,
  30191       lineHeight: true,
  30192       __experimentalFontFamily: true
  30193     }
  30194   },
  30195   editorStyle: "wp-block-query-title-editor"
  30196 };
  30197 
  30198 
  30199 const {
  30200   name: query_title_name
  30201 } = query_title_metadata;
  30202 
  30203 const query_title_settings = {
  30204   edit: QueryTitleEdit,
  30205   variations: query_title_variations
  30206 };
  30207 
  30208 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/query-pagination.js
  30209 
  30210 
  30211 /**
  30212  * WordPress dependencies
  30213  */
  30214 
  30215 const queryPagination = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  30216   xmlns: "http://www.w3.org/2000/svg",
  30217   viewBox: "0 0 24 24"
  30218 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30219   x: "4",
  30220   y: "10.5",
  30221   width: "6",
  30222   height: "3",
  30223   rx: "1.5",
  30224   fill: "#000"
  30225 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30226   x: "12",
  30227   y: "10.5",
  30228   width: "3",
  30229   height: "3",
  30230   rx: "1.5",
  30231   fill: "#000"
  30232 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30233   x: "17",
  30234   y: "10.5",
  30235   width: "3",
  30236   height: "3",
  30237   rx: "1.5",
  30238   fill: "#000"
  30239 }));
  30240 /* harmony default export */ var query_pagination = (queryPagination);
  30241 
  30242 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination/edit.js
  30243 
  30244 
  30245 /**
  30246  * WordPress dependencies
  30247  */
  30248 
  30249 const query_pagination_edit_TEMPLATE = [['core/query-pagination-previous'], ['core/query-pagination-numbers'], ['core/query-pagination-next']];
  30250 function QueryPaginationEdit() {
  30251   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  30252   const innerBlocksProps = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])(blockProps, {
  30253     template: query_pagination_edit_TEMPLATE,
  30254     allowedBlocks: ['core/query-pagination-previous', 'core/query-pagination-numbers', 'core/query-pagination-next'],
  30255     orientation: 'horizontal'
  30256   });
  30257   return Object(external_wp_element_["createElement"])("div", innerBlocksProps);
  30258 }
  30259 
  30260 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination/save.js
  30261 
  30262 
  30263 /**
  30264  * WordPress dependencies
  30265  */
  30266 
  30267 function query_pagination_save_save() {
  30268   return Object(external_wp_element_["createElement"])("div", external_wp_blockEditor_["useBlockProps"].save(), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InnerBlocks"].Content, null));
  30269 }
  30270 
  30271 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination/index.js
  30272 /**
  30273  * WordPress dependencies
  30274  */
  30275 
  30276 /**
  30277  * Internal dependencies
  30278  */
  30279 
  30280 const query_pagination_metadata = {
  30281   apiVersion: 2,
  30282   name: "core/query-pagination",
  30283   title: "Query Pagination",
  30284   category: "design",
  30285   parent: ["core/query"],
  30286   description: "Displays a paginated navigation to next/previous set of posts, when applicable.",
  30287   textdomain: "default",
  30288   usesContext: ["queryId", "query"],
  30289   supports: {
  30290     align: true,
  30291     reusable: false,
  30292     html: false,
  30293     color: {
  30294       gradients: true,
  30295       link: true
  30296     }
  30297   },
  30298   editorStyle: "wp-block-query-pagination-editor",
  30299   style: "wp-block-query-pagination"
  30300 };
  30301 
  30302 
  30303 const {
  30304   name: query_pagination_name
  30305 } = query_pagination_metadata;
  30306 
  30307 const query_pagination_settings = {
  30308   icon: query_pagination,
  30309   edit: QueryPaginationEdit,
  30310   save: query_pagination_save_save
  30311 };
  30312 
  30313 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/query-pagination-next.js
  30314 
  30315 
  30316 /**
  30317  * WordPress dependencies
  30318  */
  30319 
  30320 const queryPaginationNext = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  30321   xmlns: "http://www.w3.org/2000/svg",
  30322   viewBox: "0 0 24 24"
  30323 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30324   x: "6",
  30325   y: "10.5",
  30326   width: "3",
  30327   height: "3",
  30328   rx: "1.5",
  30329   fill: "#000"
  30330 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30331   x: "11",
  30332   y: "10.5",
  30333   width: "3",
  30334   height: "3",
  30335   rx: "1.5",
  30336   fill: "#000"
  30337 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30338   d: "M16.5 9.5L19 12l-2.5 2.5",
  30339   stroke: "#1E1E1E",
  30340   strokeWidth: "1.5"
  30341 }));
  30342 /* harmony default export */ var query_pagination_next = (queryPaginationNext);
  30343 
  30344 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination-next/edit.js
  30345 
  30346 
  30347 
  30348 /**
  30349  * WordPress dependencies
  30350  */
  30351 
  30352 
  30353 function QueryPaginationNextEdit({
  30354   attributes: {
  30355     label
  30356   },
  30357   setAttributes
  30358 }) {
  30359   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PlainText"], Object(esm_extends["a" /* default */])({
  30360     __experimentalVersion: 2,
  30361     tagName: "a",
  30362     style: {
  30363       display: 'inline-block'
  30364     },
  30365     "aria-label": Object(external_wp_i18n_["__"])('Next page link'),
  30366     placeholder: Object(external_wp_i18n_["__"])('Next Page'),
  30367     value: label,
  30368     onChange: newLabel => setAttributes({
  30369       label: newLabel
  30370     })
  30371   }, Object(external_wp_blockEditor_["useBlockProps"])()));
  30372 }
  30373 
  30374 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination-next/index.js
  30375 /**
  30376  * WordPress dependencies
  30377  */
  30378 
  30379 /**
  30380  * Internal dependencies
  30381  */
  30382 
  30383 const query_pagination_next_metadata = {
  30384   apiVersion: 2,
  30385   name: "core/query-pagination-next",
  30386   title: "Query Pagination Next",
  30387   category: "design",
  30388   parent: ["core/query-pagination"],
  30389   description: "Displays the next posts page link.",
  30390   textdomain: "default",
  30391   attributes: {
  30392     label: {
  30393       type: "string"
  30394     }
  30395   },
  30396   usesContext: ["queryId", "query"],
  30397   supports: {
  30398     reusable: false,
  30399     html: false,
  30400     color: {
  30401       gradients: true,
  30402       link: true
  30403     },
  30404     typography: {
  30405       fontSize: true,
  30406       lineHeight: true
  30407     }
  30408   }
  30409 };
  30410 
  30411 const {
  30412   name: query_pagination_next_name
  30413 } = query_pagination_next_metadata;
  30414 
  30415 const query_pagination_next_settings = {
  30416   icon: query_pagination_next,
  30417   edit: QueryPaginationNextEdit
  30418 };
  30419 
  30420 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/query-pagination-numbers.js
  30421 
  30422 
  30423 /**
  30424  * WordPress dependencies
  30425  */
  30426 
  30427 const queryPaginationNumbers = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  30428   xmlns: "http://www.w3.org/2000/svg",
  30429   viewBox: "0 0 24 24"
  30430 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30431   x: "4",
  30432   y: "10.5",
  30433   width: "6",
  30434   height: "3",
  30435   rx: "1.5",
  30436   fill: "#000"
  30437 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30438   d: "M13.5 14v-4l-1.5.5",
  30439   stroke: "#1E1E1E"
  30440 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30441   d: "M19.266 9.805c-.473-.611-1.22-.51-1.702-.367a3.854 3.854 0 00-.718.307l.13 1.082c.192-.17.47-.422.782-.515.34-.1.578.025.668.141.21.27-.034.835-.16 1.055-.49.85-.93 1.594-1.45 2.492H19.5v-1h-.914c.277-.574.814-1.443.914-2.106.052-.343.02-.762-.234-1.09z",
  30442   fill: "#1E1E1E"
  30443 }));
  30444 /* harmony default export */ var query_pagination_numbers = (queryPaginationNumbers);
  30445 
  30446 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination-numbers/edit.js
  30447 
  30448 
  30449 /**
  30450  * WordPress dependencies
  30451  */
  30452 
  30453 
  30454 const createPaginationItem = (content, Tag = 'a', extraClass = '') => Object(external_wp_element_["createElement"])(Tag, {
  30455   className: `page-numbers ${extraClass}`
  30456 }, content);
  30457 
  30458 const previewPaginationNumbers = () => Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, createPaginationItem(1), createPaginationItem(2), createPaginationItem(3, 'span', 'current'), createPaginationItem(4), createPaginationItem(5), createPaginationItem('...', 'span', 'dots'), createPaginationItem(8));
  30459 
  30460 function QueryPaginationNumbersEdit() {
  30461   const paginationNumbers = previewPaginationNumbers();
  30462   return Object(external_wp_element_["createElement"])("div", Object(external_wp_blockEditor_["useBlockProps"])(), paginationNumbers);
  30463 }
  30464 
  30465 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination-numbers/index.js
  30466 /**
  30467  * WordPress dependencies
  30468  */
  30469 
  30470 /**
  30471  * Internal dependencies
  30472  */
  30473 
  30474 const query_pagination_numbers_metadata = {
  30475   apiVersion: 2,
  30476   name: "core/query-pagination-numbers",
  30477   title: "Query Pagination Numbers",
  30478   category: "design",
  30479   parent: ["core/query-pagination"],
  30480   description: "Displays a list of page numbers for pagination",
  30481   textdomain: "default",
  30482   usesContext: ["queryId", "query"],
  30483   supports: {
  30484     reusable: false,
  30485     html: false
  30486   },
  30487   editorStyle: "query-pagination-numbers-editor"
  30488 };
  30489 
  30490 const {
  30491   name: query_pagination_numbers_name
  30492 } = query_pagination_numbers_metadata;
  30493 
  30494 const query_pagination_numbers_settings = {
  30495   icon: query_pagination_numbers,
  30496   edit: QueryPaginationNumbersEdit
  30497 };
  30498 
  30499 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/query-pagination-previous.js
  30500 
  30501 
  30502 /**
  30503  * WordPress dependencies
  30504  */
  30505 
  30506 const queryPaginationPrevious = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  30507   xmlns: "http://www.w3.org/2000/svg",
  30508   viewBox: "0 0 24 24"
  30509 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30510   x: "18",
  30511   y: "13.5",
  30512   width: "3",
  30513   height: "3",
  30514   rx: "1.5",
  30515   transform: "rotate(-180 18 13.5)",
  30516   fill: "#000"
  30517 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Rect"], {
  30518   x: "13",
  30519   y: "13.5",
  30520   width: "3",
  30521   height: "3",
  30522   rx: "1.5",
  30523   transform: "rotate(-180 13 13.5)",
  30524   fill: "#000"
  30525 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30526   d: "M7.5 14.5L5 12l2.5-2.5",
  30527   stroke: "#1E1E1E",
  30528   strokeWidth: "1.5"
  30529 }));
  30530 /* harmony default export */ var query_pagination_previous = (queryPaginationPrevious);
  30531 
  30532 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination-previous/edit.js
  30533 
  30534 
  30535 
  30536 /**
  30537  * WordPress dependencies
  30538  */
  30539 
  30540 
  30541 function QueryPaginationPreviousEdit({
  30542   attributes: {
  30543     label
  30544   },
  30545   setAttributes
  30546 }) {
  30547   return Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PlainText"], Object(esm_extends["a" /* default */])({
  30548     __experimentalVersion: 2,
  30549     tagName: "a",
  30550     style: {
  30551       display: 'inline-block'
  30552     },
  30553     "aria-label": Object(external_wp_i18n_["__"])('Previous page link'),
  30554     placeholder: Object(external_wp_i18n_["__"])('Previous Page'),
  30555     value: label,
  30556     onChange: newLabel => setAttributes({
  30557       label: newLabel
  30558     })
  30559   }, Object(external_wp_blockEditor_["useBlockProps"])()));
  30560 }
  30561 
  30562 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/query-pagination-previous/index.js
  30563 /**
  30564  * WordPress dependencies
  30565  */
  30566 
  30567 /**
  30568  * Internal dependencies
  30569  */
  30570 
  30571 const query_pagination_previous_metadata = {
  30572   apiVersion: 2,
  30573   name: "core/query-pagination-previous",
  30574   title: "Query Pagination Previous",
  30575   category: "design",
  30576   parent: ["core/query-pagination"],
  30577   description: "Displays the previous posts page link.",
  30578   textdomain: "default",
  30579   attributes: {
  30580     label: {
  30581       type: "string"
  30582     }
  30583   },
  30584   usesContext: ["queryId", "query"],
  30585   supports: {
  30586     reusable: false,
  30587     html: false,
  30588     color: {
  30589       gradients: true,
  30590       link: true
  30591     },
  30592     typography: {
  30593       fontSize: true,
  30594       lineHeight: true
  30595     }
  30596   }
  30597 };
  30598 
  30599 const {
  30600   name: query_pagination_previous_name
  30601 } = query_pagination_previous_metadata;
  30602 
  30603 const query_pagination_previous_settings = {
  30604   icon: query_pagination_previous,
  30605   edit: QueryPaginationPreviousEdit
  30606 };
  30607 
  30608 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-title.js
  30609 
  30610 
  30611 /**
  30612  * WordPress dependencies
  30613  */
  30614 
  30615 const postTitle = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  30616   viewBox: "0 0 24 24",
  30617   xmlns: "http://www.w3.org/2000/svg"
  30618 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30619   d: "M4 14.5h16V16H4zM4 18.5h9V20H4zM4 4h3c2 0 3 .86 3 2.583 0 .891-.253 1.554-.76 1.988-.505.435-1.24.652-2.204.652H5.542V12H4V4zm2.855 4c.53 0 .924-.114 1.18-.343.266-.228.398-.579.398-1.051 0-.473-.132-.82-.397-1.04-.265-.229-.67-.343-1.217-.343H5.542V8h1.313z"
  30620 }));
  30621 /* harmony default export */ var post_title = (postTitle);
  30622 
  30623 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/utils/hooks.js
  30624 /**
  30625  * WordPress dependencies
  30626  */
  30627 
  30628 
  30629 /**
  30630  * Returns whether the current user can edit the given entity.
  30631  *
  30632  * @param {string} kind     Entity kind.
  30633  * @param {string} name     Entity name.
  30634  * @param {string} recordId Record's id.
  30635  */
  30636 
  30637 function useCanEditEntity(kind, name, recordId) {
  30638   return Object(external_wp_data_["useSelect"])(select => select(external_wp_coreData_["store"]).canUserEditEntityRecord(kind, name, recordId), [kind, name, recordId]);
  30639 }
  30640 /* harmony default export */ var utils_hooks = ({
  30641   useCanEditEntity
  30642 });
  30643 
  30644 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-title/edit.js
  30645 
  30646 
  30647 
  30648 /**
  30649  * External dependencies
  30650  */
  30651 
  30652 /**
  30653  * WordPress dependencies
  30654  */
  30655 
  30656 
  30657 
  30658 
  30659 
  30660 
  30661 /**
  30662  * Internal dependencies
  30663  */
  30664 
  30665 
  30666 
  30667 function PostTitleEdit({
  30668   attributes: {
  30669     level,
  30670     textAlign,
  30671     isLink,
  30672     rel,
  30673     linkTarget
  30674   },
  30675   setAttributes,
  30676   context: {
  30677     postType,
  30678     postId,
  30679     queryId
  30680   }
  30681 }) {
  30682   const TagName = 0 === level ? 'p' : 'h' + level;
  30683   const isDescendentOfQueryLoop = !!queryId;
  30684   const userCanEdit = useCanEditEntity('postType', postType, postId);
  30685   const [rawTitle = '', setTitle, fullTitle] = Object(external_wp_coreData_["useEntityProp"])('postType', postType, 'title', postId);
  30686   const [link] = Object(external_wp_coreData_["useEntityProp"])('postType', postType, 'link', postId);
  30687   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  30688     className: classnames_default()({
  30689       [`has-text-align-${textAlign}`]: textAlign
  30690     })
  30691   });
  30692   let titleElement = Object(external_wp_element_["createElement"])(TagName, isLink ? {} : blockProps, Object(external_wp_i18n_["__"])('An example title'));
  30693 
  30694   if (postType && postId) {
  30695     titleElement = userCanEdit && !isDescendentOfQueryLoop ? Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PlainText"], Object(esm_extends["a" /* default */])({
  30696       tagName: TagName,
  30697       placeholder: Object(external_wp_i18n_["__"])('No Title'),
  30698       value: rawTitle,
  30699       onChange: setTitle,
  30700       __experimentalVersion: 2
  30701     }, isLink ? {} : blockProps)) : Object(external_wp_element_["createElement"])(TagName, isLink ? {} : blockProps, Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], {
  30702       key: "html"
  30703     }, fullTitle.rendered));
  30704   }
  30705 
  30706   if (isLink) {
  30707     titleElement = userCanEdit && !isDescendentOfQueryLoop ? Object(external_wp_element_["createElement"])(TagName, blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["PlainText"], {
  30708       tagName: "a",
  30709       href: link,
  30710       target: linkTarget,
  30711       rel: rel,
  30712       placeholder: !rawTitle.length ? Object(external_wp_i18n_["__"])('No Title') : null,
  30713       value: rawTitle,
  30714       onChange: setTitle,
  30715       __experimentalVersion: 2
  30716     })) : Object(external_wp_element_["createElement"])(TagName, blockProps, Object(external_wp_element_["createElement"])("a", {
  30717       href: link,
  30718       target: linkTarget,
  30719       rel: rel,
  30720       onClick: event => event.preventDefault()
  30721     }, Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], {
  30722       key: "html"
  30723     }, fullTitle.rendered)));
  30724   }
  30725 
  30726   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  30727     group: "block"
  30728   }, Object(external_wp_element_["createElement"])(HeadingLevelDropdown, {
  30729     selectedLevel: level,
  30730     onChange: newLevel => setAttributes({
  30731       level: newLevel
  30732     })
  30733   }), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
  30734     value: textAlign,
  30735     onChange: nextAlign => {
  30736       setAttributes({
  30737         textAlign: nextAlign
  30738       });
  30739     }
  30740   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  30741     title: Object(external_wp_i18n_["__"])('Link settings')
  30742   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  30743     label: Object(external_wp_i18n_["__"])('Make title a link'),
  30744     onChange: () => setAttributes({
  30745       isLink: !isLink
  30746     }),
  30747     checked: isLink
  30748   }), isLink && Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  30749     label: Object(external_wp_i18n_["__"])('Open in new tab'),
  30750     onChange: value => setAttributes({
  30751       linkTarget: value ? '_blank' : '_self'
  30752     }),
  30753     checked: linkTarget === '_blank'
  30754   }), Object(external_wp_element_["createElement"])(external_wp_components_["TextControl"], {
  30755     label: Object(external_wp_i18n_["__"])('Link rel'),
  30756     value: rel,
  30757     onChange: newRel => setAttributes({
  30758       rel: newRel
  30759     })
  30760   })))), titleElement);
  30761 }
  30762 
  30763 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-title/index.js
  30764 /**
  30765  * WordPress dependencies
  30766  */
  30767 
  30768 /**
  30769  * Internal dependencies
  30770  */
  30771 
  30772 const post_title_metadata = {
  30773   apiVersion: 2,
  30774   name: "core/post-title",
  30775   title: "Post Title",
  30776   category: "theme",
  30777   description: "Displays the title of a post, page, or any other content-type.",
  30778   textdomain: "default",
  30779   usesContext: ["postId", "postType", "queryId"],
  30780   attributes: {
  30781     textAlign: {
  30782       type: "string"
  30783     },
  30784     level: {
  30785       type: "number",
  30786       "default": 2
  30787     },
  30788     isLink: {
  30789       type: "boolean",
  30790       "default": false
  30791     },
  30792     rel: {
  30793       type: "string",
  30794       attribute: "rel",
  30795       "default": ""
  30796     },
  30797     linkTarget: {
  30798       type: "string",
  30799       "default": "_self"
  30800     }
  30801   },
  30802   supports: {
  30803     align: ["wide", "full"],
  30804     html: false,
  30805     color: {
  30806       gradients: true,
  30807       link: true
  30808     },
  30809     typography: {
  30810       fontSize: true,
  30811       lineHeight: true,
  30812       __experimentalFontFamily: true
  30813     }
  30814   },
  30815   style: "wp-block-post-title"
  30816 };
  30817 
  30818 const {
  30819   name: post_title_name
  30820 } = post_title_metadata;
  30821 
  30822 const post_title_settings = {
  30823   icon: post_title,
  30824   edit: PostTitleEdit
  30825 };
  30826 
  30827 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-content.js
  30828 
  30829 
  30830 /**
  30831  * WordPress dependencies
  30832  */
  30833 
  30834 const postContent = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  30835   xmlns: "https://www.w3.org/2000/svg",
  30836   viewBox: "0 0 24 24"
  30837 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  30838   d: "M4 20h16v-1.5H4V20zm0-4.8h16v-1.5H4v1.5zm0-6.4v1.5h16V8.8H4zM16 4H4v1.5h12V4z"
  30839 }));
  30840 /* harmony default export */ var post_content = (postContent);
  30841 
  30842 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-content/edit.js
  30843 
  30844 
  30845 /**
  30846  * WordPress dependencies
  30847  */
  30848 
  30849 
  30850 
  30851 
  30852 
  30853 /**
  30854  * Internal dependencies
  30855  */
  30856 
  30857 
  30858 
  30859 function ReadOnlyContent({
  30860   userCanEdit,
  30861   postType,
  30862   postId
  30863 }) {
  30864   const [,, content] = Object(external_wp_coreData_["useEntityProp"])('postType', postType, 'content', postId);
  30865   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  30866   return content !== null && content !== void 0 && content.protected && !userCanEdit ? Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('This content is password protected.'))) : Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], {
  30867     key: "html"
  30868   }, content === null || content === void 0 ? void 0 : content.rendered));
  30869 }
  30870 
  30871 function EditableContent({
  30872   layout,
  30873   context = {}
  30874 }) {
  30875   const {
  30876     postType,
  30877     postId
  30878   } = context;
  30879   const themeSupportsLayout = Object(external_wp_data_["useSelect"])(select => {
  30880     var _getSettings;
  30881 
  30882     const {
  30883       getSettings
  30884     } = select(external_wp_blockEditor_["store"]);
  30885     return (_getSettings = getSettings()) === null || _getSettings === void 0 ? void 0 : _getSettings.supportsLayout;
  30886   }, []);
  30887   const defaultLayout = Object(external_wp_blockEditor_["useSetting"])('layout') || {};
  30888   const usedLayout = !!layout && layout.inherit ? defaultLayout : layout;
  30889   const {
  30890     contentSize,
  30891     wideSize
  30892   } = usedLayout;
  30893 
  30894   const _layout = Object(external_wp_element_["useMemo"])(() => {
  30895     if (themeSupportsLayout) {
  30896       const alignments = contentSize || wideSize ? ['wide', 'full', 'left', 'center', 'right'] : ['left', 'center', 'right'];
  30897       return {
  30898         type: 'default',
  30899         // Find a way to inject this in the support flag code (hooks).
  30900         alignments
  30901       };
  30902     }
  30903 
  30904     return undefined;
  30905   }, [themeSupportsLayout, contentSize, wideSize]);
  30906 
  30907   const [blocks, onInput, onChange] = Object(external_wp_coreData_["useEntityBlockEditor"])('postType', postType, {
  30908     id: postId
  30909   });
  30910   const props = Object(external_wp_blockEditor_["__experimentalUseInnerBlocksProps"])(Object(external_wp_blockEditor_["useBlockProps"])({
  30911     className: 'entry-content'
  30912   }), {
  30913     value: blocks,
  30914     onInput,
  30915     onChange,
  30916     __experimentalLayout: _layout
  30917   });
  30918   return Object(external_wp_element_["createElement"])("div", props);
  30919 }
  30920 
  30921 function Content(props) {
  30922   const {
  30923     context: {
  30924       queryId,
  30925       postType,
  30926       postId
  30927     } = {}
  30928   } = props;
  30929   const isDescendentOfQueryLoop = !!queryId;
  30930   const userCanEdit = useCanEditEntity('postType', postType, postId);
  30931   const isEditable = userCanEdit && !isDescendentOfQueryLoop;
  30932   return isEditable ? Object(external_wp_element_["createElement"])(EditableContent, props) : Object(external_wp_element_["createElement"])(ReadOnlyContent, {
  30933     userCanEdit: userCanEdit,
  30934     postType: postType,
  30935     postId: postId
  30936   });
  30937 }
  30938 
  30939 function edit_Placeholder() {
  30940   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  30941   return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])("div", {
  30942     className: "wp-block-post-content__placeholder"
  30943   }, Object(external_wp_element_["createElement"])("span", null, Object(external_wp_i18n_["__"])('This is a placeholder for post content.'))));
  30944 }
  30945 
  30946 function RecursionError() {
  30947   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  30948   return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('Block cannot be rendered inside itself.')));
  30949 }
  30950 
  30951 function PostContentEdit({
  30952   context,
  30953   attributes
  30954 }) {
  30955   const {
  30956     postId: contextPostId,
  30957     postType: contextPostType
  30958   } = context;
  30959   const {
  30960     layout = {}
  30961   } = attributes;
  30962   const [hasAlreadyRendered, RecursionProvider] = Object(external_wp_blockEditor_["__experimentalUseNoRecursiveRenders"])(contextPostId);
  30963 
  30964   if (contextPostId && contextPostType && hasAlreadyRendered) {
  30965     return Object(external_wp_element_["createElement"])(RecursionError, null);
  30966   }
  30967 
  30968   return Object(external_wp_element_["createElement"])(RecursionProvider, null, contextPostId && contextPostType ? Object(external_wp_element_["createElement"])(Content, {
  30969     context: context,
  30970     layout: layout
  30971   }) : Object(external_wp_element_["createElement"])(edit_Placeholder, null));
  30972 }
  30973 
  30974 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-content/index.js
  30975 /**
  30976  * WordPress dependencies
  30977  */
  30978 
  30979 /**
  30980  * Internal dependencies
  30981  */
  30982 
  30983 const post_content_metadata = {
  30984   apiVersion: 2,
  30985   name: "core/post-content",
  30986   title: "Post Content",
  30987   category: "theme",
  30988   description: "Displays the contents of a post or page.",
  30989   textdomain: "default",
  30990   usesContext: ["postId", "postType", "queryId"],
  30991   supports: {
  30992     align: ["wide", "full"],
  30993     html: false,
  30994     __experimentalLayout: true
  30995   },
  30996   editorStyle: "wp-block-post-content-editor"
  30997 };
  30998 
  30999 const {
  31000   name: post_content_name
  31001 } = post_content_metadata;
  31002 
  31003 const post_content_settings = {
  31004   icon: post_content,
  31005   edit: PostContentEdit
  31006 };
  31007 
  31008 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-date.js
  31009 
  31010 
  31011 /**
  31012  * WordPress dependencies
  31013  */
  31014 
  31015 const post_date_postDate = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  31016   xmlns: "http://www.w3.org/2000/svg",
  31017   viewBox: "0 0 24 24"
  31018 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  31019   d: "M11.696 13.972c.356-.546.599-.958.728-1.235a1.79 1.79 0 00.203-.783c0-.264-.077-.47-.23-.618-.148-.153-.354-.23-.618-.23-.295 0-.569.07-.82.212a3.413 3.413 0 00-.738.571l-.147-1.188c.289-.234.59-.41.903-.526.313-.117.66-.175 1.041-.175.375 0 .695.08.959.24.264.153.46.362.59.626.135.265.203.556.203.876 0 .362-.08.734-.24 1.115-.154.381-.427.87-.82 1.466l-.756 1.152H14v1.106h-4l1.696-2.609z"
  31020 }), Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  31021   d: "M19.5 7h-15v12a.5.5 0 00.5.5h14a.5.5 0 00.5-.5V7zM3 7V5a2 2 0 012-2h14a2 2 0 012 2v14a2 2 0 01-2 2H5a2 2 0 01-2-2V7z"
  31022 }));
  31023 /* harmony default export */ var post_date = (post_date_postDate);
  31024 
  31025 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-date/edit.js
  31026 
  31027 
  31028 /**
  31029  * External dependencies
  31030  */
  31031 
  31032 /**
  31033  * WordPress dependencies
  31034  */
  31035 
  31036 
  31037 
  31038 
  31039 
  31040 
  31041 
  31042 
  31043 function PostDateEdit({
  31044   attributes: {
  31045     textAlign,
  31046     format,
  31047     isLink
  31048   },
  31049   context: {
  31050     postId,
  31051     postType,
  31052     queryId
  31053   },
  31054   setAttributes
  31055 }) {
  31056   const isDescendentOfQueryLoop = !!queryId;
  31057   const [siteFormat] = Object(external_wp_coreData_["useEntityProp"])('root', 'site', 'date_format');
  31058   const [date, setDate] = Object(external_wp_coreData_["useEntityProp"])('postType', postType, 'date', postId);
  31059   const [isPickerOpen, setIsPickerOpen] = Object(external_wp_element_["useState"])(false);
  31060 
  31061   const settings = Object(external_wp_date_["__experimentalGetSettings"])(); // To know if the current time format is a 12 hour time, look for "a".
  31062   // Also make sure this "a" is not escaped by a "/".
  31063 
  31064 
  31065   const is12Hour = /a(?!\\)/i.test(settings.formats.time.toLowerCase() // Test only for the lower case "a".
  31066   .replace(/\\\\/g, '') // Replace "//" with empty strings.
  31067   .split('').reverse().join('') // Reverse the string and test for "a" not followed by a slash.
  31068   );
  31069   const formatOptions = Object.values(settings.formats).map(formatOption => ({
  31070     key: formatOption,
  31071     name: Object(external_wp_date_["dateI18n"])(formatOption, date)
  31072   }));
  31073   const resolvedFormat = format || siteFormat || settings.formats.date;
  31074   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  31075     className: classnames_default()({
  31076       [`has-text-align-${textAlign}`]: textAlign
  31077     })
  31078   });
  31079   let postDate = date ? Object(external_wp_element_["createElement"])("time", {
  31080     dateTime: Object(external_wp_date_["dateI18n"])('c', date)
  31081   }, Object(external_wp_date_["dateI18n"])(resolvedFormat, date), isPickerOpen && Object(external_wp_element_["createElement"])(external_wp_components_["Popover"], {
  31082     onClose: setIsPickerOpen.bind(null, false)
  31083   }, Object(external_wp_element_["createElement"])(external_wp_components_["DateTimePicker"], {
  31084     currentDate: date,
  31085     onChange: setDate,
  31086     is12Hour: is12Hour
  31087   }))) : Object(external_wp_i18n_["__"])('No Date');
  31088 
  31089   if (isLink && date) {
  31090     postDate = Object(external_wp_element_["createElement"])("a", {
  31091       href: "#post-date-pseudo-link",
  31092       onClick: event => event.preventDefault()
  31093     }, postDate);
  31094   }
  31095 
  31096   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  31097     group: "block"
  31098   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentControl"], {
  31099     value: textAlign,
  31100     onChange: nextAlign => {
  31101       setAttributes({
  31102         textAlign: nextAlign
  31103       });
  31104     }
  31105   }), date && !isDescendentOfQueryLoop && Object(external_wp_element_["createElement"])(external_wp_components_["ToolbarButton"], {
  31106     icon: library_edit["a" /* default */],
  31107     title: Object(external_wp_i18n_["__"])('Change Date'),
  31108     onClick: () => setIsPickerOpen(_isPickerOpen => !_isPickerOpen)
  31109   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  31110     title: Object(external_wp_i18n_["__"])('Format settings')
  31111   }, Object(external_wp_element_["createElement"])(external_wp_components_["CustomSelectControl"], {
  31112     hideLabelFromVision: true,
  31113     label: Object(external_wp_i18n_["__"])('Date Format'),
  31114     options: formatOptions,
  31115     onChange: ({
  31116       selectedItem
  31117     }) => setAttributes({
  31118       format: selectedItem.key
  31119     }),
  31120     value: formatOptions.find(option => option.key === resolvedFormat)
  31121   })), Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  31122     title: Object(external_wp_i18n_["__"])('Link settings')
  31123   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  31124     label: Object(external_wp_i18n_["sprintf"])( // translators: %s: Name of the post type e.g: "post".
  31125     Object(external_wp_i18n_["__"])('Link to %s'), postType),
  31126     onChange: () => setAttributes({
  31127       isLink: !isLink
  31128     }),
  31129     checked: isLink
  31130   }))), Object(external_wp_element_["createElement"])("div", blockProps, postDate));
  31131 }
  31132 
  31133 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-date/index.js
  31134 /**
  31135  * WordPress dependencies
  31136  */
  31137 
  31138 /**
  31139  * Internal dependencies
  31140  */
  31141 
  31142 const post_date_metadata = {
  31143   apiVersion: 2,
  31144   name: "core/post-date",
  31145   title: "Post Date",
  31146   category: "theme",
  31147   description: "Add the date of this post.",
  31148   textdomain: "default",
  31149   attributes: {
  31150     textAlign: {
  31151       type: "string"
  31152     },
  31153     format: {
  31154       type: "string"
  31155     },
  31156     isLink: {
  31157       type: "boolean",
  31158       "default": false
  31159     }
  31160   },
  31161   usesContext: ["postId", "postType", "queryId"],
  31162   supports: {
  31163     html: false,
  31164     color: {
  31165       gradients: true,
  31166       link: true
  31167     },
  31168     typography: {
  31169       fontSize: true,
  31170       lineHeight: true
  31171     }
  31172   }
  31173 };
  31174 
  31175 const {
  31176   name: post_date_name
  31177 } = post_date_metadata;
  31178 
  31179 const post_date_settings = {
  31180   icon: post_date,
  31181   edit: PostDateEdit
  31182 };
  31183 
  31184 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-excerpt.js
  31185 
  31186 
  31187 /**
  31188  * WordPress dependencies
  31189  */
  31190 
  31191 const post_excerpt_postExcerpt = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  31192   xmlns: "http://www.w3.org/2000/svg",
  31193   viewBox: "0 0 24 24"
  31194 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  31195   d: "M12.75 9.333c0 .521-.102.977-.327 1.354-.23.386-.555.628-.893.774-.545.234-1.183.227-1.544.222l-.12-.001v-1.5h.123c.414.001.715.002.948-.099a.395.395 0 00.199-.166c.05-.083.114-.253.114-.584V7.2H8.8V4h3.95v5.333zM7.95 9.333c0 .521-.102.977-.327 1.354-.23.386-.555.628-.893.774-.545.234-1.183.227-1.544.222l-.12-.001v-1.5h.123c.414.001.715.002.948-.099a.394.394 0 00.198-.166c.05-.083.115-.253.115-.584V7.2H4V4h3.95v5.333zM13 20H4v-1.5h9V20zM20 16H4v-1.5h16V16z"
  31196 }));
  31197 /* harmony default export */ var post_excerpt = (post_excerpt_postExcerpt);
  31198 
  31199 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-excerpt/edit.js
  31200 
  31201 
  31202 /**
  31203  * External dependencies
  31204  */
  31205 
  31206 /**
  31207  * WordPress dependencies
  31208  */
  31209 
  31210 
  31211 
  31212 
  31213 
  31214 
  31215 /**
  31216  * Internal dependencies
  31217  */
  31218 
  31219 
  31220 function PostExcerptEditor({
  31221   attributes: {
  31222     textAlign,
  31223     moreText,
  31224     showMoreOnNewLine
  31225   },
  31226   setAttributes,
  31227   isSelected,
  31228   context: {
  31229     postId,
  31230     postType,
  31231     queryId
  31232   }
  31233 }) {
  31234   const isDescendentOfQueryLoop = !!queryId;
  31235   const userCanEdit = useCanEditEntity('postType', postType, postId);
  31236   const isEditable = userCanEdit && !isDescendentOfQueryLoop;
  31237   const [rawExcerpt, setExcerpt, {
  31238     rendered: renderedExcerpt,
  31239     protected: isProtected
  31240   } = {}] = Object(external_wp_coreData_["useEntityProp"])('postType', postType, 'excerpt', postId);
  31241   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  31242     className: classnames_default()({
  31243       [`has-text-align-${textAlign}`]: textAlign
  31244     })
  31245   });
  31246   /**
  31247    * When excerpt is editable, strip the html tags from
  31248    * rendered excerpt. This will be used if the entity's
  31249    * excerpt has been produced from the content.
  31250    */
  31251 
  31252   const strippedRenderedExcerpt = Object(external_wp_element_["useMemo"])(() => {
  31253     if (!renderedExcerpt) return '';
  31254     const document = new window.DOMParser().parseFromString(renderedExcerpt, 'text/html');
  31255     return document.body.textContent || document.body.innerText || '';
  31256   }, [renderedExcerpt]);
  31257 
  31258   if (!postType || !postId) {
  31259     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('Post excerpt block: no post found.')));
  31260   }
  31261 
  31262   if (isProtected && !userCanEdit) {
  31263     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('There is no excerpt because this is a protected post.')));
  31264   }
  31265 
  31266   const readMoreLink = Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  31267     className: "wp-block-post-excerpt__more-link",
  31268     tagName: "a",
  31269     "aria-label": Object(external_wp_i18n_["__"])('"Read more" link text'),
  31270     placeholder: Object(external_wp_i18n_["__"])('Add "read more" link text'),
  31271     value: moreText,
  31272     onChange: newMoreText => setAttributes({
  31273       moreText: newMoreText
  31274     })
  31275   });
  31276   const excerptContent = isEditable ? Object(external_wp_element_["createElement"])(external_wp_blockEditor_["RichText"], {
  31277     className: !showMoreOnNewLine && 'wp-block-post-excerpt__excerpt is-inline',
  31278     "aria-label": Object(external_wp_i18n_["__"])('Post excerpt text'),
  31279     value: rawExcerpt || strippedRenderedExcerpt || (isSelected ? '' : Object(external_wp_i18n_["__"])('No post excerpt found')),
  31280     onChange: setExcerpt
  31281   }) : renderedExcerpt && Object(external_wp_element_["createElement"])(external_wp_components_["Disabled"], null, Object(external_wp_element_["createElement"])(external_wp_element_["RawHTML"], {
  31282     key: "html"
  31283   }, renderedExcerpt)) || Object(external_wp_i18n_["__"])('No post excerpt found');
  31284   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentToolbar"], {
  31285     value: textAlign,
  31286     onChange: newAlign => setAttributes({
  31287       textAlign: newAlign
  31288     })
  31289   })), Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  31290     title: Object(external_wp_i18n_["__"])('Post Excerpt Settings')
  31291   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  31292     label: Object(external_wp_i18n_["__"])('Show link on new line'),
  31293     checked: showMoreOnNewLine,
  31294     onChange: newShowMoreOnNewLine => setAttributes({
  31295       showMoreOnNewLine: newShowMoreOnNewLine
  31296     })
  31297   }))), Object(external_wp_element_["createElement"])("div", blockProps, excerptContent, !showMoreOnNewLine && ' ', showMoreOnNewLine ? Object(external_wp_element_["createElement"])("p", {
  31298     className: "wp-block-post-excerpt__more-text"
  31299   }, readMoreLink) : readMoreLink));
  31300 }
  31301 
  31302 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-excerpt/index.js
  31303 /**
  31304  * WordPress dependencies
  31305  */
  31306 
  31307 /**
  31308  * Internal dependencies
  31309  */
  31310 
  31311 const post_excerpt_metadata = {
  31312   apiVersion: 2,
  31313   name: "core/post-excerpt",
  31314   title: "Post Excerpt",
  31315   category: "theme",
  31316   description: "Display a post's excerpt.",
  31317   textdomain: "default",
  31318   attributes: {
  31319     textAlign: {
  31320       type: "string"
  31321     },
  31322     moreText: {
  31323       type: "string"
  31324     },
  31325     showMoreOnNewLine: {
  31326       type: "boolean",
  31327       "default": true
  31328     }
  31329   },
  31330   usesContext: ["postId", "postType", "queryId"],
  31331   supports: {
  31332     html: false,
  31333     color: {
  31334       gradients: true,
  31335       link: true
  31336     },
  31337     typography: {
  31338       fontSize: true,
  31339       lineHeight: true
  31340     }
  31341   },
  31342   editorStyle: "wp-block-post-excerpt-editor",
  31343   style: "wp-block-post-excerpt"
  31344 };
  31345 
  31346 const {
  31347   name: post_excerpt_name
  31348 } = post_excerpt_metadata;
  31349 
  31350 const post_excerpt_settings = {
  31351   icon: post_excerpt,
  31352   edit: PostExcerptEditor
  31353 };
  31354 
  31355 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-featured-image.js
  31356 
  31357 
  31358 /**
  31359  * WordPress dependencies
  31360  */
  31361 
  31362 const postFeaturedImage = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  31363   xmlns: "http://www.w3.org/2000/svg",
  31364   viewBox: "0 0 24 24"
  31365 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  31366   d: "M19 3H5c-.6 0-1 .4-1 1v7c0 .5.4 1 1 1h14c.5 0 1-.4 1-1V4c0-.6-.4-1-1-1zM5.5 10.5v-.4l1.8-1.3 1.3.8c.3.2.7.2.9-.1L11 8.1l2.4 2.4H5.5zm13 0h-2.9l-4-4c-.3-.3-.8-.3-1.1 0L8.9 8l-1.2-.8c-.3-.2-.6-.2-.9 0l-1.3 1V4.5h13v6zM4 20h9v-1.5H4V20zm0-4h16v-1.5H4V16z"
  31367 }));
  31368 /* harmony default export */ var post_featured_image = (postFeaturedImage);
  31369 
  31370 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-featured-image/edit.js
  31371 
  31372 
  31373 /**
  31374  * WordPress dependencies
  31375  */
  31376 
  31377 
  31378 
  31379 
  31380 
  31381 
  31382 const post_featured_image_edit_ALLOWED_MEDIA_TYPES = ['image'];
  31383 const placeholderChip = Object(external_wp_element_["createElement"])("div", {
  31384   className: "post-featured-image_placeholder"
  31385 }, Object(external_wp_element_["createElement"])(external_wp_components_["Icon"], {
  31386   icon: post_featured_image
  31387 }), Object(external_wp_element_["createElement"])("p", null, " ", Object(external_wp_i18n_["__"])('Featured Image')));
  31388 
  31389 function PostFeaturedImageDisplay({
  31390   attributes: {
  31391     isLink
  31392   },
  31393   setAttributes,
  31394   context: {
  31395     postId,
  31396     postType,
  31397     queryId
  31398   },
  31399   noticeUI,
  31400   noticeOperations
  31401 }) {
  31402   const isDescendentOfQueryLoop = !!queryId;
  31403   const [featuredImage, setFeaturedImage] = Object(external_wp_coreData_["useEntityProp"])('postType', postType, 'featured_media', postId);
  31404   const media = Object(external_wp_data_["useSelect"])(select => featuredImage && select(external_wp_coreData_["store"]).getMedia(featuredImage), [featuredImage]);
  31405   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  31406 
  31407   const onSelectImage = value => {
  31408     if (value !== null && value !== void 0 && value.id) {
  31409       setFeaturedImage(value.id);
  31410     }
  31411   };
  31412 
  31413   function onUploadError(message) {
  31414     noticeOperations.removeAllNotices();
  31415     noticeOperations.createErrorNotice(message);
  31416   }
  31417 
  31418   let image;
  31419 
  31420   if (!featuredImage && isDescendentOfQueryLoop) {
  31421     return Object(external_wp_element_["createElement"])("div", blockProps, placeholderChip);
  31422   }
  31423 
  31424   if (!featuredImage) {
  31425     image = Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaPlaceholder"], {
  31426       icon: Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockIcon"], {
  31427         icon: post_featured_image
  31428       }),
  31429       onSelect: onSelectImage,
  31430       notices: noticeUI,
  31431       onError: onUploadError,
  31432       accept: "image/*",
  31433       allowedTypes: post_featured_image_edit_ALLOWED_MEDIA_TYPES,
  31434       labels: {
  31435         title: Object(external_wp_i18n_["__"])('Featured image'),
  31436         instructions: Object(external_wp_i18n_["__"])('Upload a media file or pick one from your media library.')
  31437       }
  31438     });
  31439   } else {
  31440     // We have a Featured image so show a Placeholder if is loading.
  31441     image = !media ? placeholderChip : Object(external_wp_element_["createElement"])("img", {
  31442       src: media.source_url,
  31443       alt: media.alt_text || Object(external_wp_i18n_["__"])('Featured image')
  31444     });
  31445   }
  31446 
  31447   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["InspectorControls"], null, Object(external_wp_element_["createElement"])(external_wp_components_["PanelBody"], {
  31448     title: Object(external_wp_i18n_["__"])('Link settings')
  31449   }, Object(external_wp_element_["createElement"])(external_wp_components_["ToggleControl"], {
  31450     label: Object(external_wp_i18n_["sprintf"])( // translators: %s: Name of the post type e.g: "post".
  31451     Object(external_wp_i18n_["__"])('Link to %s'), postType),
  31452     onChange: () => setAttributes({
  31453       isLink: !isLink
  31454     }),
  31455     checked: isLink
  31456   }))), !!media && !isDescendentOfQueryLoop && Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], {
  31457     group: "other"
  31458   }, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["MediaReplaceFlow"], {
  31459     mediaId: featuredImage,
  31460     mediaURL: media.source_url,
  31461     allowedTypes: post_featured_image_edit_ALLOWED_MEDIA_TYPES,
  31462     accept: "image/*",
  31463     onSelect: onSelectImage,
  31464     onError: onUploadError
  31465   })), Object(external_wp_element_["createElement"])("figure", blockProps, image));
  31466 }
  31467 
  31468 const PostFeaturedImageWithNotices = Object(external_wp_components_["withNotices"])(PostFeaturedImageDisplay);
  31469 function PostFeaturedImageEdit(props) {
  31470   var _props$context;
  31471 
  31472   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])();
  31473 
  31474   if (!((_props$context = props.context) !== null && _props$context !== void 0 && _props$context.postId)) {
  31475     return Object(external_wp_element_["createElement"])("div", blockProps, placeholderChip);
  31476   }
  31477 
  31478   return Object(external_wp_element_["createElement"])(PostFeaturedImageWithNotices, props);
  31479 }
  31480 
  31481 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-featured-image/index.js
  31482 /**
  31483  * WordPress dependencies
  31484  */
  31485 
  31486 /**
  31487  * Internal dependencies
  31488  */
  31489 
  31490 const post_featured_image_metadata = {
  31491   apiVersion: 2,
  31492   name: "core/post-featured-image",
  31493   title: "Post Featured Image",
  31494   category: "theme",
  31495   description: "Display a post's featured image.",
  31496   textdomain: "default",
  31497   attributes: {
  31498     isLink: {
  31499       type: "boolean",
  31500       "default": false
  31501     }
  31502   },
  31503   usesContext: ["postId", "postType", "queryId"],
  31504   supports: {
  31505     align: ["left", "right", "center", "wide", "full"],
  31506     html: false
  31507   },
  31508   editorStyle: "wp-block-post-featured-image-editor",
  31509   style: "wp-block-post-featured-image"
  31510 };
  31511 
  31512 const {
  31513   name: post_featured_image_name
  31514 } = post_featured_image_metadata;
  31515 
  31516 const post_featured_image_settings = {
  31517   icon: post_featured_image,
  31518   edit: PostFeaturedImageEdit
  31519 };
  31520 
  31521 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-terms/use-post-terms.js
  31522 /**
  31523  * WordPress dependencies
  31524  */
  31525 
  31526 
  31527 function usePostTerms({
  31528   postId,
  31529   postType,
  31530   term
  31531 }) {
  31532   var _term$visibility2;
  31533 
  31534   const {
  31535     rest_base: restBase,
  31536     slug
  31537   } = term;
  31538   const [termIds] = Object(external_wp_coreData_["useEntityProp"])('postType', postType, restBase, postId);
  31539   return Object(external_wp_data_["useSelect"])(select => {
  31540     var _term$visibility;
  31541 
  31542     const visible = term === null || term === void 0 ? void 0 : (_term$visibility = term.visibility) === null || _term$visibility === void 0 ? void 0 : _term$visibility.publicly_queryable;
  31543 
  31544     if (!visible) {
  31545       return {
  31546         postTerms: [],
  31547         _isLoading: false,
  31548         hasPostTerms: false
  31549       };
  31550     }
  31551 
  31552     if (!termIds) {
  31553       // Waiting for post terms to be fetched.
  31554       return {
  31555         isLoading: true
  31556       };
  31557     }
  31558 
  31559     if (!termIds.length) {
  31560       return {
  31561         isLoading: false
  31562       };
  31563     }
  31564 
  31565     const {
  31566       getEntityRecords,
  31567       isResolving
  31568     } = select(external_wp_coreData_["store"]);
  31569     const taxonomyArgs = ['taxonomy', slug, {
  31570       include: termIds,
  31571       context: 'view'
  31572     }];
  31573     const terms = getEntityRecords(...taxonomyArgs);
  31574 
  31575     const _isLoading = isResolving('getEntityRecords', taxonomyArgs);
  31576 
  31577     return {
  31578       postTerms: terms,
  31579       isLoading: _isLoading,
  31580       hasPostTerms: !!(terms !== null && terms !== void 0 && terms.length)
  31581     };
  31582   }, [termIds, term === null || term === void 0 ? void 0 : (_term$visibility2 = term.visibility) === null || _term$visibility2 === void 0 ? void 0 : _term$visibility2.publicly_queryable]);
  31583 }
  31584 
  31585 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-terms/edit.js
  31586 
  31587 
  31588 /**
  31589  * External dependencies
  31590  */
  31591 
  31592 /**
  31593  * WordPress dependencies
  31594  */
  31595 
  31596 
  31597 
  31598 
  31599 
  31600 
  31601 /**
  31602  * Internal dependencies
  31603  */
  31604 
  31605 
  31606 function PostTermsEdit({
  31607   attributes,
  31608   context,
  31609   setAttributes
  31610 }) {
  31611   var _selectedTerm$labels;
  31612 
  31613   const {
  31614     term,
  31615     textAlign
  31616   } = attributes;
  31617   const {
  31618     postId,
  31619     postType
  31620   } = context;
  31621   const selectedTerm = Object(external_wp_data_["useSelect"])(select => {
  31622     var _taxonomy$visibility;
  31623 
  31624     if (!term) return {};
  31625     const {
  31626       getTaxonomy
  31627     } = select(external_wp_coreData_["store"]);
  31628     const taxonomy = getTaxonomy(term);
  31629     return taxonomy !== null && taxonomy !== void 0 && (_taxonomy$visibility = taxonomy.visibility) !== null && _taxonomy$visibility !== void 0 && _taxonomy$visibility.publicly_queryable ? taxonomy : {};
  31630   }, [term]);
  31631   const {
  31632     postTerms,
  31633     hasPostTerms,
  31634     isLoading
  31635   } = usePostTerms({
  31636     postId,
  31637     postType,
  31638     term: selectedTerm
  31639   });
  31640   const hasPost = postId && postType;
  31641   const blockProps = Object(external_wp_blockEditor_["useBlockProps"])({
  31642     className: classnames_default()({
  31643       [`has-text-align-${textAlign}`]: textAlign
  31644     })
  31645   });
  31646 
  31647   if (!hasPost) {
  31648     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["Warning"], null, Object(external_wp_i18n_["__"])('Post Terms block: post not found.')));
  31649   }
  31650 
  31651   if (!term) {
  31652     return Object(external_wp_element_["createElement"])("div", blockProps, Object(external_wp_i18n_["__"])('Post Terms block: no term specified.'));
  31653   }
  31654 
  31655   return Object(external_wp_element_["createElement"])(external_wp_element_["Fragment"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["BlockControls"], null, Object(external_wp_element_["createElement"])(external_wp_blockEditor_["AlignmentToolbar"], {
  31656     value: textAlign,
  31657     onChange: nextAlign => {
  31658       setAttributes({
  31659         textAlign: nextAlign
  31660       });
  31661     }
  31662   })), Object(external_wp_element_["createElement"])("div", blockProps, isLoading && Object(external_wp_element_["createElement"])(external_wp_components_["Spinner"], null), !isLoading && hasPostTerms && postTerms.map(postTerm => Object(external_wp_element_["createElement"])("a", {
  31663     key: postTerm.id,
  31664     href: postTerm.link,
  31665     onClick: event => event.preventDefault()
  31666   }, postTerm.name)).reduce((prev, curr) => [prev, ' | ', curr]), !isLoading && !hasPostTerms && ((selectedTerm === null || selectedTerm === void 0 ? void 0 : (_selectedTerm$labels = selectedTerm.labels) === null || _selectedTerm$labels === void 0 ? void 0 : _selectedTerm$labels.no_terms) || Object(external_wp_i18n_["__"])('Term items not found.'))));
  31667 }
  31668 
  31669 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-categories.js
  31670 
  31671 
  31672 /**
  31673  * WordPress dependencies
  31674  */
  31675 
  31676 const postCategories = Object(external_wp_element_["createElement"])(external_wp_primitives_["SVG"], {
  31677   viewBox: "0 0 24 24",
  31678   xmlns: "http://www.w3.org/2000/svg"
  31679 }, Object(external_wp_element_["createElement"])(external_wp_primitives_["Path"], {
  31680   d: "M20 4H4v1.5h16V4zm-2 9h-3c-1.1 0-2 .9-2 2v3c0 1.1.9 2 2 2h3c1.1 0 2-.9 2-2v-3c0-1.1-.9-2-2-2zm.5 5c0 .3-.2.5-.5.5h-3c-.3 0-.5-.2-.5-.5v-3c0-.3.2-.5.5-.5h3c.3 0 .5.2.5.5v3zM4 9.5h9V8H4v1.5zM9 13H6c-1.1 0-2 .9-2 2v3c0 1.1.9 2 2 2h3c1.1 0 2-.9 2-2v-3c0-1.1-.9-2-2-2zm.5 5c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5v-3c0-.3.2-.5.5-.5h3c.3 0 .5.2.5.5v3z",
  31681   fillRule: "evenodd",
  31682   clipRule: "evenodd"
  31683 }));
  31684 /* harmony default export */ var post_categories = (postCategories);
  31685 
  31686 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-terms/variations.js
  31687 /**
  31688  * WordPress dependencies
  31689  */
  31690 
  31691 
  31692 const post_terms_variations_variations = [{
  31693   name: 'category',
  31694   title: Object(external_wp_i18n_["__"])('Post Categories'),
  31695   description: Object(external_wp_i18n_["__"])("Display a post's categories."),
  31696   icon: post_categories,
  31697   isDefault: true,
  31698   attributes: {
  31699     term: 'category'
  31700   },
  31701   isActive: blockAttributes => blockAttributes.term === 'category'
  31702 }, {
  31703   name: 'post_tag',
  31704   title: Object(external_wp_i18n_["__"])('Post Tags'),
  31705   description: Object(external_wp_i18n_["__"])("Display a post's tags."),
  31706   icon: post_categories,
  31707   attributes: {
  31708     term: 'post_tag'
  31709   },
  31710   isActive: blockAttributes => blockAttributes.term === 'post_tag'
  31711 }];
  31712 /* harmony default export */ var post_terms_variations = (post_terms_variations_variations);
  31713 
  31714 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/post-terms/index.js
  31715 /**
  31716  * Internal dependencies
  31717  */
  31718 const post_terms_metadata = {
  31719   apiVersion: 2,
  31720   name: "core/post-terms",
  31721   title: "Post Terms",
  31722   category: "design",
  31723   description: "Post terms.",
  31724   textdomain: "default",
  31725   attributes: {
  31726     term: {
  31727       type: "string"
  31728     },
  31729     textAlign: {
  31730       type: "string"
  31731     }
  31732   },
  31733   usesContext: ["postId", "postType"],
  31734   supports: {
  31735     html: false,
  31736     color: {
  31737       gradients: true,
  31738       link: true
  31739     },
  31740     typography: {
  31741       lineHeight: true,
  31742       fontSize: true
  31743     }
  31744   }
  31745 };
  31746 
  31747 
  31748 const {
  31749   name: post_terms_name
  31750 } = post_terms_metadata;
  31751 
  31752 const post_terms_settings = {
  31753   variations: post_terms_variations,
  31754   edit: PostTermsEdit
  31755 };
  31756 
  31757 // CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/index.js
  31758 /**
  31759  * WordPress dependencies
  31760  */
  31761 
  31762 
  31763 
  31764 /**
  31765  * Internal dependencies
  31766  */
  31767 
  31768 
  31769 
  31770 
  31771 
  31772 
  31773 
  31774 
  31775 
  31776 
  31777 
  31778 
  31779 
  31780 
  31781 
  31782 
  31783 
  31784 
  31785 
  31786 
  31787 
  31788 
  31789 
  31790 
  31791 
  31792 
  31793 
  31794 
  31795 
  31796 
  31797 
  31798 
  31799 
  31800 
  31801 
  31802 
  31803 
  31804 
  31805 
  31806 
  31807  // import * as tableOfContents from './table-of-contents';
  31808 
  31809 
  31810 
  31811 
  31812 
  31813 
  31814 
  31815  // Full Site Editing Blocks
  31816 
  31817 
  31818 
  31819 
  31820 
  31821 
  31822 
  31823 
  31824 
  31825 
  31826 
  31827 
  31828 
  31829 
  31830 
  31831 
  31832 
  31833 
  31834 
  31835 
  31836 
  31837 
  31838 
  31839 
  31840 
  31841 
  31842 
  31843 
  31844 
  31845 /**
  31846  * Function to register an individual block.
  31847  *
  31848  * @param {Object} block The block to be registered.
  31849  *
  31850  */
  31851 
  31852 const registerBlock = block => {
  31853   if (!block) {
  31854     return;
  31855   }
  31856 
  31857   const {
  31858     metadata,
  31859     settings,
  31860     name
  31861   } = block;
  31862   Object(external_wp_blocks_["registerBlockType"])({
  31863     name,
  31864     ...metadata
  31865   }, settings);
  31866 };
  31867 /**
  31868  * Function to get all the core blocks in an array.
  31869  *
  31870  * @example
  31871  * ```js
  31872  * import { __experimentalGetCoreBlocks } from '@wordpress/block-library';
  31873  *
  31874  * const coreBlocks = __experimentalGetCoreBlocks();
  31875  * ```
  31876  */
  31877 
  31878 
  31879 const __experimentalGetCoreBlocks = () => [// Common blocks are grouped at the top to prioritize their display
  31880 // in various contexts — like the inserter and auto-complete components.
  31881 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.
  31882 build_module_shortcode_namespaceObject, archives_namespaceObject, build_module_audio_namespaceObject, button_namespaceObject, build_module_buttons_namespaceObject, build_module_calendar_namespaceObject, categories_namespaceObject, code_namespaceObject, build_module_columns_namespaceObject, build_module_column_namespaceObject, build_module_cover_namespaceObject, embed_namespaceObject, build_module_file_namespaceObject, build_module_group_namespaceObject, window.wp && window.wp.oldEditor ? freeform_namespaceObject : null, // Only add the classic block in WP Context
  31883 build_module_html_namespaceObject, media_text_namespaceObject, latest_comments_namespaceObject, latest_posts_namespaceObject, missing_namespaceObject, build_module_more_namespaceObject, nextpage_namespaceObject, page_list_namespaceObject, build_module_preformatted_namespaceObject, build_module_pullquote_namespaceObject, build_module_rss_namespaceObject, search_namespaceObject, build_module_separator_namespaceObject, block_namespaceObject, social_links_namespaceObject, social_link_namespaceObject, spacer_namespaceObject, build_module_table_namespaceObject, // tableOfContents,
  31884 tag_cloud_namespaceObject, text_columns_namespaceObject, build_module_verse_namespaceObject, build_module_video_namespaceObject, // Theme blocks
  31885 build_module_site_logo_namespaceObject, site_tagline_namespaceObject, site_title_namespaceObject, query_namespaceObject, post_template_namespaceObject, query_title_namespaceObject, build_module_query_pagination_namespaceObject, build_module_query_pagination_next_namespaceObject, build_module_query_pagination_numbers_namespaceObject, build_module_query_pagination_previous_namespaceObject, build_module_post_title_namespaceObject, build_module_post_content_namespaceObject, build_module_post_date_namespaceObject, build_module_post_excerpt_namespaceObject, build_module_post_featured_image_namespaceObject, post_terms_namespaceObject, loginout_namespaceObject];
  31886 /**
  31887  * Function to register core blocks provided by the block editor.
  31888  *
  31889  * @param {Array} blocks An optional array of the core blocks being registered.
  31890  *
  31891  * @example
  31892  * ```js
  31893  * import { registerCoreBlocks } from '@wordpress/block-library';
  31894  *
  31895  * registerCoreBlocks();
  31896  * ```
  31897  */
  31898 
  31899 const registerCoreBlocks = (blocks = __experimentalGetCoreBlocks()) => {
  31900   blocks.forEach(registerBlock);
  31901   Object(external_wp_blocks_["setDefaultBlockName"])(paragraph_name);
  31902 
  31903   if (window.wp && window.wp.oldEditor) {
  31904     Object(external_wp_blocks_["setFreeformContentHandlerName"])(freeform_name);
  31905   }
  31906 
  31907   Object(external_wp_blocks_["setUnregisteredTypeHandlerName"])(missing_name);
  31908   Object(external_wp_blocks_["setGroupingBlockName"])(group_name);
  31909 };
  31910 /**
  31911  * Function to register experimental core blocks depending on editor settings.
  31912  *
  31913  * @param {boolean} enableFSEBlocks Whether to enable the full site editing blocks.
  31914  * @example
  31915  * ```js
  31916  * import { __experimentalRegisterExperimentalCoreBlocks } from '@wordpress/block-library';
  31917  *
  31918  * __experimentalRegisterExperimentalCoreBlocks( settings );
  31919  * ```
  31920  */
  31921 
  31922 const __experimentalRegisterExperimentalCoreBlocks =  false ? undefined : undefined;
  31923 
  31924 
  31925 /***/ }),
  31926 
  31927 /***/ "K9lf":
  31928 /***/ (function(module, exports) {
  31929 
  31930 (function() { module.exports = window["wp"]["compose"]; }());
  31931 
  31932 /***/ }),
  31933 
  31934 /***/ "KEfo":
  31935 /***/ (function(module, exports) {
  31936 
  31937 (function() { module.exports = window["wp"]["viewport"]; }());
  31938 
  31939 /***/ }),
  31940 
  31941 /***/ "Mmq9":
  31942 /***/ (function(module, exports) {
  31943 
  31944 (function() { module.exports = window["wp"]["url"]; }());
  31945 
  31946 /***/ }),
  31947 
  31948 /***/ "Mp0b":
  31949 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  31950 
  31951 "use strict";
  31952 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  31953 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  31954 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  31955 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  31956 
  31957 
  31958 /**
  31959  * WordPress dependencies
  31960  */
  31961 
  31962 const linkOff = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  31963   xmlns: "http://www.w3.org/2000/svg",
  31964   viewBox: "0 0 24 24"
  31965 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  31966   d: "M15.6 7.3h-.7l1.6-3.5-.9-.4-3.9 8.5H9v1.5h2l-1.3 2.8H8.4c-2 0-3.7-1.7-3.7-3.7s1.7-3.7 3.7-3.7H10V7.3H8.4c-2.9 0-5.2 2.3-5.2 5.2 0 2.9 2.3 5.2 5.2 5.2H9l-1.4 3.2.9.4 5.7-12.5h1.4c2 0 3.7 1.7 3.7 3.7s-1.7 3.7-3.7 3.7H14v1.5h1.6c2.9 0 5.2-2.3 5.2-5.2 0-2.9-2.4-5.2-5.2-5.2z"
  31967 }));
  31968 /* harmony default export */ __webpack_exports__["a"] = (linkOff);
  31969 
  31970 
  31971 /***/ }),
  31972 
  31973 /***/ "NMb1":
  31974 /***/ (function(module, exports) {
  31975 
  31976 (function() { module.exports = window["wp"]["deprecated"]; }());
  31977 
  31978 /***/ }),
  31979 
  31980 /***/ "NTP4":
  31981 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  31982 
  31983 "use strict";
  31984 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  31985 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  31986 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  31987 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  31988 
  31989 
  31990 /**
  31991  * WordPress dependencies
  31992  */
  31993 
  31994 const upload = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  31995   xmlns: "http://www.w3.org/2000/svg",
  31996   viewBox: "0 0 24 24"
  31997 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  31998   d: "M18.5 15v3.5H13V6.7l4.5 4.1 1-1.1-6.2-5.8-5.8 5.8 1 1.1 4-4v11.7h-6V15H4v5h16v-5z"
  31999 }));
  32000 /* harmony default export */ __webpack_exports__["a"] = (upload);
  32001 
  32002 
  32003 /***/ }),
  32004 
  32005 /***/ "RMJe":
  32006 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  32007 
  32008 "use strict";
  32009 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  32010 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  32011 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  32012 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  32013 
  32014 
  32015 /**
  32016  * WordPress dependencies
  32017  */
  32018 
  32019 const check = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  32020   xmlns: "http://www.w3.org/2000/svg",
  32021   viewBox: "0 0 24 24"
  32022 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  32023   d: "M18.3 5.6L9.9 16.9l-4.6-3.4-.9 1.2 5.8 4.3 9.3-12.6z"
  32024 }));
  32025 /* harmony default export */ __webpack_exports__["a"] = (check);
  32026 
  32027 
  32028 /***/ }),
  32029 
  32030 /***/ "RxS6":
  32031 /***/ (function(module, exports) {
  32032 
  32033 (function() { module.exports = window["wp"]["keycodes"]; }());
  32034 
  32035 /***/ }),
  32036 
  32037 /***/ "TSYQ":
  32038 /***/ (function(module, exports, __webpack_require__) {
  32039 
  32040 var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
  32041   Copyright (c) 2018 Jed Watson.
  32042   Licensed under the MIT License (MIT), see
  32043   http://jedwatson.github.io/classnames
  32044 */
  32045 /* global define */
  32046 
  32047 (function () {
  32048 	'use strict';
  32049 
  32050 	var hasOwn = {}.hasOwnProperty;
  32051 
  32052 	function classNames() {
  32053 		var classes = [];
  32054 
  32055 		for (var i = 0; i < arguments.length; i++) {
  32056 			var arg = arguments[i];
  32057 			if (!arg) continue;
  32058 
  32059 			var argType = typeof arg;
  32060 
  32061 			if (argType === 'string' || argType === 'number') {
  32062 				classes.push(arg);
  32063 			} else if (Array.isArray(arg)) {
  32064 				if (arg.length) {
  32065 					var inner = classNames.apply(null, arg);
  32066 					if (inner) {
  32067 						classes.push(inner);
  32068 					}
  32069 				}
  32070 			} else if (argType === 'object') {
  32071 				if (arg.toString === Object.prototype.toString) {
  32072 					for (var key in arg) {
  32073 						if (hasOwn.call(arg, key) && arg[key]) {
  32074 							classes.push(key);
  32075 						}
  32076 					}
  32077 				} else {
  32078 					classes.push(arg.toString());
  32079 				}
  32080 			}
  32081 		}
  32082 
  32083 		return classes.join(' ');
  32084 	}
  32085 
  32086 	if ( true && module.exports) {
  32087 		classNames.default = classNames;
  32088 		module.exports = classNames;
  32089 	} else if (true) {
  32090 		// register as 'classnames', consistent with npm package name
  32091 		!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
  32092 			return classNames;
  32093 		}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
  32094 				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  32095 	} else {}
  32096 }());
  32097 
  32098 
  32099 /***/ }),
  32100 
  32101 /***/ "Tqx9":
  32102 /***/ (function(module, exports) {
  32103 
  32104 (function() { module.exports = window["wp"]["primitives"]; }());
  32105 
  32106 /***/ }),
  32107 
  32108 /***/ "UuzZ":
  32109 /***/ (function(module, exports) {
  32110 
  32111 (function() { module.exports = window["wp"]["autop"]; }());
  32112 
  32113 /***/ }),
  32114 
  32115 /***/ "YLtl":
  32116 /***/ (function(module, exports) {
  32117 
  32118 (function() { module.exports = window["lodash"]; }());
  32119 
  32120 /***/ }),
  32121 
  32122 /***/ "Zss7":
  32123 /***/ (function(module, exports, __webpack_require__) {
  32124 
  32125 var __WEBPACK_AMD_DEFINE_RESULT__;// TinyColor v1.4.2
  32126 // https://github.com/bgrins/TinyColor
  32127 // Brian Grinstead, MIT License
  32128 
  32129 (function(Math) {
  32130 
  32131 var trimLeft = /^\s+/,
  32132     trimRight = /\s+$/,
  32133     tinyCounter = 0,
  32134     mathRound = Math.round,
  32135     mathMin = Math.min,
  32136     mathMax = Math.max,
  32137     mathRandom = Math.random;
  32138 
  32139 function tinycolor (color, opts) {
  32140 
  32141     color = (color) ? color : '';
  32142     opts = opts || { };
  32143 
  32144     // If input is already a tinycolor, return itself
  32145     if (color instanceof tinycolor) {
  32146        return color;
  32147     }
  32148     // If we are called as a function, call using new instead
  32149     if (!(this instanceof tinycolor)) {
  32150         return new tinycolor(color, opts);
  32151     }
  32152 
  32153     var rgb = inputToRGB(color);
  32154     this._originalInput = color,
  32155     this._r = rgb.r,
  32156     this._g = rgb.g,
  32157     this._b = rgb.b,
  32158     this._a = rgb.a,
  32159     this._roundA = mathRound(100*this._a) / 100,
  32160     this._format = opts.format || rgb.format;
  32161     this._gradientType = opts.gradientType;
  32162 
  32163     // Don't let the range of [0,255] come back in [0,1].
  32164     // Potentially lose a little bit of precision here, but will fix issues where
  32165     // .5 gets interpreted as half of the total, instead of half of 1
  32166     // If it was supposed to be 128, this was already taken care of by `inputToRgb`
  32167     if (this._r < 1) { this._r = mathRound(this._r); }
  32168     if (this._g < 1) { this._g = mathRound(this._g); }
  32169     if (this._b < 1) { this._b = mathRound(this._b); }
  32170 
  32171     this._ok = rgb.ok;
  32172     this._tc_id = tinyCounter++;
  32173 }
  32174 
  32175 tinycolor.prototype = {
  32176     isDark: function() {
  32177         return this.getBrightness() < 128;
  32178     },
  32179     isLight: function() {
  32180         return !this.isDark();
  32181     },
  32182     isValid: function() {
  32183         return this._ok;
  32184     },
  32185     getOriginalInput: function() {
  32186       return this._originalInput;
  32187     },
  32188     getFormat: function() {
  32189         return this._format;
  32190     },
  32191     getAlpha: function() {
  32192         return this._a;
  32193     },
  32194     getBrightness: function() {
  32195         //http://www.w3.org/TR/AERT#color-contrast
  32196         var rgb = this.toRgb();
  32197         return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;
  32198     },
  32199     getLuminance: function() {
  32200         //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef
  32201         var rgb = this.toRgb();
  32202         var RsRGB, GsRGB, BsRGB, R, G, B;
  32203         RsRGB = rgb.r/255;
  32204         GsRGB = rgb.g/255;
  32205         BsRGB = rgb.b/255;
  32206 
  32207         if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);}
  32208         if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);}
  32209         if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);}
  32210         return (0.2126 * R) + (0.7152 * G) + (0.0722 * B);
  32211     },
  32212     setAlpha: function(value) {
  32213         this._a = boundAlpha(value);
  32214         this._roundA = mathRound(100*this._a) / 100;
  32215         return this;
  32216     },
  32217     toHsv: function() {
  32218         var hsv = rgbToHsv(this._r, this._g, this._b);
  32219         return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };
  32220     },
  32221     toHsvString: function() {
  32222         var hsv = rgbToHsv(this._r, this._g, this._b);
  32223         var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);
  32224         return (this._a == 1) ?
  32225           "hsv("  + h + ", " + s + "%, " + v + "%)" :
  32226           "hsva(" + h + ", " + s + "%, " + v + "%, "+ this._roundA + ")";
  32227     },
  32228     toHsl: function() {
  32229         var hsl = rgbToHsl(this._r, this._g, this._b);
  32230         return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };
  32231     },
  32232     toHslString: function() {
  32233         var hsl = rgbToHsl(this._r, this._g, this._b);
  32234         var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);
  32235         return (this._a == 1) ?
  32236           "hsl("  + h + ", " + s + "%, " + l + "%)" :
  32237           "hsla(" + h + ", " + s + "%, " + l + "%, "+ this._roundA + ")";
  32238     },
  32239     toHex: function(allow3Char) {
  32240         return rgbToHex(this._r, this._g, this._b, allow3Char);
  32241     },
  32242     toHexString: function(allow3Char) {
  32243         return '#' + this.toHex(allow3Char);
  32244     },
  32245     toHex8: function(allow4Char) {
  32246         return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);
  32247     },
  32248     toHex8String: function(allow4Char) {
  32249         return '#' + this.toHex8(allow4Char);
  32250     },
  32251     toRgb: function() {
  32252         return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };
  32253     },
  32254     toRgbString: function() {
  32255         return (this._a == 1) ?
  32256           "rgb("  + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ")" :
  32257           "rgba(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ", " + this._roundA + ")";
  32258     },
  32259     toPercentageRgb: function() {
  32260         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 };
  32261     },
  32262     toPercentageRgbString: function() {
  32263         return (this._a == 1) ?
  32264           "rgb("  + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%)" :
  32265           "rgba(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%, " + this._roundA + ")";
  32266     },
  32267     toName: function() {
  32268         if (this._a === 0) {
  32269             return "transparent";
  32270         }
  32271 
  32272         if (this._a < 1) {
  32273             return false;
  32274         }
  32275 
  32276         return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;
  32277     },
  32278     toFilter: function(secondColor) {
  32279         var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);
  32280         var secondHex8String = hex8String;
  32281         var gradientType = this._gradientType ? "GradientType = 1, " : "";
  32282 
  32283         if (secondColor) {
  32284             var s = tinycolor(secondColor);
  32285             secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);
  32286         }
  32287 
  32288         return "progid:DXImageTransform.Microsoft.gradient("+gradientType+"startColorstr="+hex8String+",endColorstr="+secondHex8String+")";
  32289     },
  32290     toString: function(format) {
  32291         var formatSet = !!format;
  32292         format = format || this._format;
  32293 
  32294         var formattedString = false;
  32295         var hasAlpha = this._a < 1 && this._a >= 0;
  32296         var needsAlphaFormat = !formatSet && hasAlpha && (format === "hex" || format === "hex6" || format === "hex3" || format === "hex4" || format === "hex8" || format === "name");
  32297 
  32298         if (needsAlphaFormat) {
  32299             // Special case for "transparent", all other non-alpha formats
  32300             // will return rgba when there is transparency.
  32301             if (format === "name" && this._a === 0) {
  32302                 return this.toName();
  32303             }
  32304             return this.toRgbString();
  32305         }
  32306         if (format === "rgb") {
  32307             formattedString = this.toRgbString();
  32308         }
  32309         if (format === "prgb") {
  32310             formattedString = this.toPercentageRgbString();
  32311         }
  32312         if (format === "hex" || format === "hex6") {
  32313             formattedString = this.toHexString();
  32314         }
  32315         if (format === "hex3") {
  32316             formattedString = this.toHexString(true);
  32317         }
  32318         if (format === "hex4") {
  32319             formattedString = this.toHex8String(true);
  32320         }
  32321         if (format === "hex8") {
  32322             formattedString = this.toHex8String();
  32323         }
  32324         if (format === "name") {
  32325             formattedString = this.toName();
  32326         }
  32327         if (format === "hsl") {
  32328             formattedString = this.toHslString();
  32329         }
  32330         if (format === "hsv") {
  32331             formattedString = this.toHsvString();
  32332         }
  32333 
  32334         return formattedString || this.toHexString();
  32335     },
  32336     clone: function() {
  32337         return tinycolor(this.toString());
  32338     },
  32339 
  32340     _applyModification: function(fn, args) {
  32341         var color = fn.apply(null, [this].concat([].slice.call(args)));
  32342         this._r = color._r;
  32343         this._g = color._g;
  32344         this._b = color._b;
  32345         this.setAlpha(color._a);
  32346         return this;
  32347     },
  32348     lighten: function() {
  32349         return this._applyModification(lighten, arguments);
  32350     },
  32351     brighten: function() {
  32352         return this._applyModification(brighten, arguments);
  32353     },
  32354     darken: function() {
  32355         return this._applyModification(darken, arguments);
  32356     },
  32357     desaturate: function() {
  32358         return this._applyModification(desaturate, arguments);
  32359     },
  32360     saturate: function() {
  32361         return this._applyModification(saturate, arguments);
  32362     },
  32363     greyscale: function() {
  32364         return this._applyModification(greyscale, arguments);
  32365     },
  32366     spin: function() {
  32367         return this._applyModification(spin, arguments);
  32368     },
  32369 
  32370     _applyCombination: function(fn, args) {
  32371         return fn.apply(null, [this].concat([].slice.call(args)));
  32372     },
  32373     analogous: function() {
  32374         return this._applyCombination(analogous, arguments);
  32375     },
  32376     complement: function() {
  32377         return this._applyCombination(complement, arguments);
  32378     },
  32379     monochromatic: function() {
  32380         return this._applyCombination(monochromatic, arguments);
  32381     },
  32382     splitcomplement: function() {
  32383         return this._applyCombination(splitcomplement, arguments);
  32384     },
  32385     triad: function() {
  32386         return this._applyCombination(triad, arguments);
  32387     },
  32388     tetrad: function() {
  32389         return this._applyCombination(tetrad, arguments);
  32390     }
  32391 };
  32392 
  32393 // If input is an object, force 1 into "1.0" to handle ratios properly
  32394 // String input requires "1.0" as input, so 1 will be treated as 1
  32395 tinycolor.fromRatio = function(color, opts) {
  32396     if (typeof color == "object") {
  32397         var newColor = {};
  32398         for (var i in color) {
  32399             if (color.hasOwnProperty(i)) {
  32400                 if (i === "a") {
  32401                     newColor[i] = color[i];
  32402                 }
  32403                 else {
  32404                     newColor[i] = convertToPercentage(color[i]);
  32405                 }
  32406             }
  32407         }
  32408         color = newColor;
  32409     }
  32410 
  32411     return tinycolor(color, opts);
  32412 };
  32413 
  32414 // Given a string or object, convert that input to RGB
  32415 // Possible string inputs:
  32416 //
  32417 //     "red"
  32418 //     "#f00" or "f00"
  32419 //     "#ff0000" or "ff0000"
  32420 //     "#ff000000" or "ff000000"
  32421 //     "rgb 255 0 0" or "rgb (255, 0, 0)"
  32422 //     "rgb 1.0 0 0" or "rgb (1, 0, 0)"
  32423 //     "rgba (255, 0, 0, 1)" or "rgba 255, 0, 0, 1"
  32424 //     "rgba (1.0, 0, 0, 1)" or "rgba 1.0, 0, 0, 1"
  32425 //     "hsl(0, 100%, 50%)" or "hsl 0 100% 50%"
  32426 //     "hsla(0, 100%, 50%, 1)" or "hsla 0 100% 50%, 1"
  32427 //     "hsv(0, 100%, 100%)" or "hsv 0 100% 100%"
  32428 //
  32429 function inputToRGB(color) {
  32430 
  32431     var rgb = { r: 0, g: 0, b: 0 };
  32432     var a = 1;
  32433     var s = null;
  32434     var v = null;
  32435     var l = null;
  32436     var ok = false;
  32437     var format = false;
  32438 
  32439     if (typeof color == "string") {
  32440         color = stringInputToObject(color);
  32441     }
  32442 
  32443     if (typeof color == "object") {
  32444         if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {
  32445             rgb = rgbToRgb(color.r, color.g, color.b);
  32446             ok = true;
  32447             format = String(color.r).substr(-1) === "%" ? "prgb" : "rgb";
  32448         }
  32449         else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {
  32450             s = convertToPercentage(color.s);
  32451             v = convertToPercentage(color.v);
  32452             rgb = hsvToRgb(color.h, s, v);
  32453             ok = true;
  32454             format = "hsv";
  32455         }
  32456         else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {
  32457             s = convertToPercentage(color.s);
  32458             l = convertToPercentage(color.l);
  32459             rgb = hslToRgb(color.h, s, l);
  32460             ok = true;
  32461             format = "hsl";
  32462         }
  32463 
  32464         if (color.hasOwnProperty("a")) {
  32465             a = color.a;
  32466         }
  32467     }
  32468 
  32469     a = boundAlpha(a);
  32470 
  32471     return {
  32472         ok: ok,
  32473         format: color.format || format,
  32474         r: mathMin(255, mathMax(rgb.r, 0)),
  32475         g: mathMin(255, mathMax(rgb.g, 0)),
  32476         b: mathMin(255, mathMax(rgb.b, 0)),
  32477         a: a
  32478     };
  32479 }
  32480 
  32481 
  32482 // Conversion Functions
  32483 // --------------------
  32484 
  32485 // `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:
  32486 // <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>
  32487 
  32488 // `rgbToRgb`
  32489 // Handle bounds / percentage checking to conform to CSS color spec
  32490 // <http://www.w3.org/TR/css3-color/>
  32491 // *Assumes:* r, g, b in [0, 255] or [0, 1]
  32492 // *Returns:* { r, g, b } in [0, 255]
  32493 function rgbToRgb(r, g, b){
  32494     return {
  32495         r: bound01(r, 255) * 255,
  32496         g: bound01(g, 255) * 255,
  32497         b: bound01(b, 255) * 255
  32498     };
  32499 }
  32500 
  32501 // `rgbToHsl`
  32502 // Converts an RGB color value to HSL.
  32503 // *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]
  32504 // *Returns:* { h, s, l } in [0,1]
  32505 function rgbToHsl(r, g, b) {
  32506 
  32507     r = bound01(r, 255);
  32508     g = bound01(g, 255);
  32509     b = bound01(b, 255);
  32510 
  32511     var max = mathMax(r, g, b), min = mathMin(r, g, b);
  32512     var h, s, l = (max + min) / 2;
  32513 
  32514     if(max == min) {
  32515         h = s = 0; // achromatic
  32516     }
  32517     else {
  32518         var d = max - min;
  32519         s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
  32520         switch(max) {
  32521             case r: h = (g - b) / d + (g < b ? 6 : 0); break;
  32522             case g: h = (b - r) / d + 2; break;
  32523             case b: h = (r - g) / d + 4; break;
  32524         }
  32525 
  32526         h /= 6;
  32527     }
  32528 
  32529     return { h: h, s: s, l: l };
  32530 }
  32531 
  32532 // `hslToRgb`
  32533 // Converts an HSL color value to RGB.
  32534 // *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]
  32535 // *Returns:* { r, g, b } in the set [0, 255]
  32536 function hslToRgb(h, s, l) {
  32537     var r, g, b;
  32538 
  32539     h = bound01(h, 360);
  32540     s = bound01(s, 100);
  32541     l = bound01(l, 100);
  32542 
  32543     function hue2rgb(p, q, t) {
  32544         if(t < 0) t += 1;
  32545         if(t > 1) t -= 1;
  32546         if(t < 1/6) return p + (q - p) * 6 * t;
  32547         if(t < 1/2) return q;
  32548         if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;
  32549         return p;
  32550     }
  32551 
  32552     if(s === 0) {
  32553         r = g = b = l; // achromatic
  32554     }
  32555     else {
  32556         var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
  32557         var p = 2 * l - q;
  32558         r = hue2rgb(p, q, h + 1/3);
  32559         g = hue2rgb(p, q, h);
  32560         b = hue2rgb(p, q, h - 1/3);
  32561     }
  32562 
  32563     return { r: r * 255, g: g * 255, b: b * 255 };
  32564 }
  32565 
  32566 // `rgbToHsv`
  32567 // Converts an RGB color value to HSV
  32568 // *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]
  32569 // *Returns:* { h, s, v } in [0,1]
  32570 function rgbToHsv(r, g, b) {
  32571 
  32572     r = bound01(r, 255);
  32573     g = bound01(g, 255);
  32574     b = bound01(b, 255);
  32575 
  32576     var max = mathMax(r, g, b), min = mathMin(r, g, b);
  32577     var h, s, v = max;
  32578 
  32579     var d = max - min;
  32580     s = max === 0 ? 0 : d / max;
  32581 
  32582     if(max == min) {
  32583         h = 0; // achromatic
  32584     }
  32585     else {
  32586         switch(max) {
  32587             case r: h = (g - b) / d + (g < b ? 6 : 0); break;
  32588             case g: h = (b - r) / d + 2; break;
  32589             case b: h = (r - g) / d + 4; break;
  32590         }
  32591         h /= 6;
  32592     }
  32593     return { h: h, s: s, v: v };
  32594 }
  32595 
  32596 // `hsvToRgb`
  32597 // Converts an HSV color value to RGB.
  32598 // *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]
  32599 // *Returns:* { r, g, b } in the set [0, 255]
  32600  function hsvToRgb(h, s, v) {
  32601 
  32602     h = bound01(h, 360) * 6;
  32603     s = bound01(s, 100);
  32604     v = bound01(v, 100);
  32605 
  32606     var i = Math.floor(h),
  32607         f = h - i,
  32608         p = v * (1 - s),
  32609         q = v * (1 - f * s),
  32610         t = v * (1 - (1 - f) * s),
  32611         mod = i % 6,
  32612         r = [v, q, p, p, t, v][mod],
  32613         g = [t, v, v, q, p, p][mod],
  32614         b = [p, p, t, v, v, q][mod];
  32615 
  32616     return { r: r * 255, g: g * 255, b: b * 255 };
  32617 }
  32618 
  32619 // `rgbToHex`
  32620 // Converts an RGB color to hex
  32621 // Assumes r, g, and b are contained in the set [0, 255]
  32622 // Returns a 3 or 6 character hex
  32623 function rgbToHex(r, g, b, allow3Char) {
  32624 
  32625     var hex = [
  32626         pad2(mathRound(r).toString(16)),
  32627         pad2(mathRound(g).toString(16)),
  32628         pad2(mathRound(b).toString(16))
  32629     ];
  32630 
  32631     // Return a 3 character hex if possible
  32632     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)) {
  32633         return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);
  32634     }
  32635 
  32636     return hex.join("");
  32637 }
  32638 
  32639 // `rgbaToHex`
  32640 // Converts an RGBA color plus alpha transparency to hex
  32641 // Assumes r, g, b are contained in the set [0, 255] and
  32642 // a in [0, 1]. Returns a 4 or 8 character rgba hex
  32643 function rgbaToHex(r, g, b, a, allow4Char) {
  32644 
  32645     var hex = [
  32646         pad2(mathRound(r).toString(16)),
  32647         pad2(mathRound(g).toString(16)),
  32648         pad2(mathRound(b).toString(16)),
  32649         pad2(convertDecimalToHex(a))
  32650     ];
  32651 
  32652     // Return a 4 character hex if possible
  32653     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)) {
  32654         return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);
  32655     }
  32656 
  32657     return hex.join("");
  32658 }
  32659 
  32660 // `rgbaToArgbHex`
  32661 // Converts an RGBA color to an ARGB Hex8 string
  32662 // Rarely used, but required for "toFilter()"
  32663 function rgbaToArgbHex(r, g, b, a) {
  32664 
  32665     var hex = [
  32666         pad2(convertDecimalToHex(a)),
  32667         pad2(mathRound(r).toString(16)),
  32668         pad2(mathRound(g).toString(16)),
  32669         pad2(mathRound(b).toString(16))
  32670     ];
  32671 
  32672     return hex.join("");
  32673 }
  32674 
  32675 // `equals`
  32676 // Can be called with any tinycolor input
  32677 tinycolor.equals = function (color1, color2) {
  32678     if (!color1 || !color2) { return false; }
  32679     return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();
  32680 };
  32681 
  32682 tinycolor.random = function() {
  32683     return tinycolor.fromRatio({
  32684         r: mathRandom(),
  32685         g: mathRandom(),
  32686         b: mathRandom()
  32687     });
  32688 };
  32689 
  32690 
  32691 // Modification Functions
  32692 // ----------------------
  32693 // Thanks to less.js for some of the basics here
  32694 // <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>
  32695 
  32696 function desaturate(color, amount) {
  32697     amount = (amount === 0) ? 0 : (amount || 10);
  32698     var hsl = tinycolor(color).toHsl();
  32699     hsl.s -= amount / 100;
  32700     hsl.s = clamp01(hsl.s);
  32701     return tinycolor(hsl);
  32702 }
  32703 
  32704 function saturate(color, amount) {
  32705     amount = (amount === 0) ? 0 : (amount || 10);
  32706     var hsl = tinycolor(color).toHsl();
  32707     hsl.s += amount / 100;
  32708     hsl.s = clamp01(hsl.s);
  32709     return tinycolor(hsl);
  32710 }
  32711 
  32712 function greyscale(color) {
  32713     return tinycolor(color).desaturate(100);
  32714 }
  32715 
  32716 function lighten (color, amount) {
  32717     amount = (amount === 0) ? 0 : (amount || 10);
  32718     var hsl = tinycolor(color).toHsl();
  32719     hsl.l += amount / 100;
  32720     hsl.l = clamp01(hsl.l);
  32721     return tinycolor(hsl);
  32722 }
  32723 
  32724 function brighten(color, amount) {
  32725     amount = (amount === 0) ? 0 : (amount || 10);
  32726     var rgb = tinycolor(color).toRgb();
  32727     rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));
  32728     rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));
  32729     rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));
  32730     return tinycolor(rgb);
  32731 }
  32732 
  32733 function darken (color, amount) {
  32734     amount = (amount === 0) ? 0 : (amount || 10);
  32735     var hsl = tinycolor(color).toHsl();
  32736     hsl.l -= amount / 100;
  32737     hsl.l = clamp01(hsl.l);
  32738     return tinycolor(hsl);
  32739 }
  32740 
  32741 // Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.
  32742 // Values outside of this range will be wrapped into this range.
  32743 function spin(color, amount) {
  32744     var hsl = tinycolor(color).toHsl();
  32745     var hue = (hsl.h + amount) % 360;
  32746     hsl.h = hue < 0 ? 360 + hue : hue;
  32747     return tinycolor(hsl);
  32748 }
  32749 
  32750 // Combination Functions
  32751 // ---------------------
  32752 // Thanks to jQuery xColor for some of the ideas behind these
  32753 // <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>
  32754 
  32755 function complement(color) {
  32756     var hsl = tinycolor(color).toHsl();
  32757     hsl.h = (hsl.h + 180) % 360;
  32758     return tinycolor(hsl);
  32759 }
  32760 
  32761 function triad(color) {
  32762     var hsl = tinycolor(color).toHsl();
  32763     var h = hsl.h;
  32764     return [
  32765         tinycolor(color),
  32766         tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),
  32767         tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })
  32768     ];
  32769 }
  32770 
  32771 function tetrad(color) {
  32772     var hsl = tinycolor(color).toHsl();
  32773     var h = hsl.h;
  32774     return [
  32775         tinycolor(color),
  32776         tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),
  32777         tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),
  32778         tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })
  32779     ];
  32780 }
  32781 
  32782 function splitcomplement(color) {
  32783     var hsl = tinycolor(color).toHsl();
  32784     var h = hsl.h;
  32785     return [
  32786         tinycolor(color),
  32787         tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),
  32788         tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})
  32789     ];
  32790 }
  32791 
  32792 function analogous(color, results, slices) {
  32793     results = results || 6;
  32794     slices = slices || 30;
  32795 
  32796     var hsl = tinycolor(color).toHsl();
  32797     var part = 360 / slices;
  32798     var ret = [tinycolor(color)];
  32799 
  32800     for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) {
  32801         hsl.h = (hsl.h + part) % 360;
  32802         ret.push(tinycolor(hsl));
  32803     }
  32804     return ret;
  32805 }
  32806 
  32807 function monochromatic(color, results) {
  32808     results = results || 6;
  32809     var hsv = tinycolor(color).toHsv();
  32810     var h = hsv.h, s = hsv.s, v = hsv.v;
  32811     var ret = [];
  32812     var modification = 1 / results;
  32813 
  32814     while (results--) {
  32815         ret.push(tinycolor({ h: h, s: s, v: v}));
  32816         v = (v + modification) % 1;
  32817     }
  32818 
  32819     return ret;
  32820 }
  32821 
  32822 // Utility Functions
  32823 // ---------------------
  32824 
  32825 tinycolor.mix = function(color1, color2, amount) {
  32826     amount = (amount === 0) ? 0 : (amount || 50);
  32827 
  32828     var rgb1 = tinycolor(color1).toRgb();
  32829     var rgb2 = tinycolor(color2).toRgb();
  32830 
  32831     var p = amount / 100;
  32832 
  32833     var rgba = {
  32834         r: ((rgb2.r - rgb1.r) * p) + rgb1.r,
  32835         g: ((rgb2.g - rgb1.g) * p) + rgb1.g,
  32836         b: ((rgb2.b - rgb1.b) * p) + rgb1.b,
  32837         a: ((rgb2.a - rgb1.a) * p) + rgb1.a
  32838     };
  32839 
  32840     return tinycolor(rgba);
  32841 };
  32842 
  32843 
  32844 // Readability Functions
  32845 // ---------------------
  32846 // <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)
  32847 
  32848 // `contrast`
  32849 // Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)
  32850 tinycolor.readability = function(color1, color2) {
  32851     var c1 = tinycolor(color1);
  32852     var c2 = tinycolor(color2);
  32853     return (Math.max(c1.getLuminance(),c2.getLuminance())+0.05) / (Math.min(c1.getLuminance(),c2.getLuminance())+0.05);
  32854 };
  32855 
  32856 // `isReadable`
  32857 // Ensure that foreground and background color combinations meet WCAG2 guidelines.
  32858 // The third argument is an optional Object.
  32859 //      the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';
  32860 //      the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.
  32861 // If the entire object is absent, isReadable defaults to {level:"AA",size:"small"}.
  32862 
  32863 // *Example*
  32864 //    tinycolor.isReadable("#000", "#111") => false
  32865 //    tinycolor.isReadable("#000", "#111",{level:"AA",size:"large"}) => false
  32866 tinycolor.isReadable = function(color1, color2, wcag2) {
  32867     var readability = tinycolor.readability(color1, color2);
  32868     var wcag2Parms, out;
  32869 
  32870     out = false;
  32871 
  32872     wcag2Parms = validateWCAG2Parms(wcag2);
  32873     switch (wcag2Parms.level + wcag2Parms.size) {
  32874         case "AAsmall":
  32875         case "AAAlarge":
  32876             out = readability >= 4.5;
  32877             break;
  32878         case "AAlarge":
  32879             out = readability >= 3;
  32880             break;
  32881         case "AAAsmall":
  32882             out = readability >= 7;
  32883             break;
  32884     }
  32885     return out;
  32886 
  32887 };
  32888 
  32889 // `mostReadable`
  32890 // Given a base color and a list of possible foreground or background
  32891 // colors for that base, returns the most readable color.
  32892 // Optionally returns Black or White if the most readable color is unreadable.
  32893 // *Example*
  32894 //    tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:false}).toHexString(); // "#112255"
  32895 //    tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:true}).toHexString();  // "#ffffff"
  32896 //    tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"large"}).toHexString(); // "#faf3f3"
  32897 //    tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"small"}).toHexString(); // "#ffffff"
  32898 tinycolor.mostReadable = function(baseColor, colorList, args) {
  32899     var bestColor = null;
  32900     var bestScore = 0;
  32901     var readability;
  32902     var includeFallbackColors, level, size ;
  32903     args = args || {};
  32904     includeFallbackColors = args.includeFallbackColors ;
  32905     level = args.level;
  32906     size = args.size;
  32907 
  32908     for (var i= 0; i < colorList.length ; i++) {
  32909         readability = tinycolor.readability(baseColor, colorList[i]);
  32910         if (readability > bestScore) {
  32911             bestScore = readability;
  32912             bestColor = tinycolor(colorList[i]);
  32913         }
  32914     }
  32915 
  32916     if (tinycolor.isReadable(baseColor, bestColor, {"level":level,"size":size}) || !includeFallbackColors) {
  32917         return bestColor;
  32918     }
  32919     else {
  32920         args.includeFallbackColors=false;
  32921         return tinycolor.mostReadable(baseColor,["#fff", "#000"],args);
  32922     }
  32923 };
  32924 
  32925 
  32926 // Big List of Colors
  32927 // ------------------
  32928 // <http://www.w3.org/TR/css3-color/#svg-color>
  32929 var names = tinycolor.names = {
  32930     aliceblue: "f0f8ff",
  32931     antiquewhite: "faebd7",
  32932     aqua: "0ff",
  32933     aquamarine: "7fffd4",
  32934     azure: "f0ffff",
  32935     beige: "f5f5dc",
  32936     bisque: "ffe4c4",
  32937     black: "000",
  32938     blanchedalmond: "ffebcd",
  32939     blue: "00f",
  32940     blueviolet: "8a2be2",
  32941     brown: "a52a2a",
  32942     burlywood: "deb887",
  32943     burntsienna: "ea7e5d",
  32944     cadetblue: "5f9ea0",
  32945     chartreuse: "7fff00",
  32946     chocolate: "d2691e",
  32947     coral: "ff7f50",
  32948     cornflowerblue: "6495ed",
  32949     cornsilk: "fff8dc",
  32950     crimson: "dc143c",
  32951     cyan: "0ff",
  32952     darkblue: "00008b",
  32953     darkcyan: "008b8b",
  32954     darkgoldenrod: "b8860b",
  32955     darkgray: "a9a9a9",
  32956     darkgreen: "006400",
  32957     darkgrey: "a9a9a9",
  32958     darkkhaki: "bdb76b",
  32959     darkmagenta: "8b008b",
  32960     darkolivegreen: "556b2f",
  32961     darkorange: "ff8c00",
  32962     darkorchid: "9932cc",
  32963     darkred: "8b0000",
  32964     darksalmon: "e9967a",
  32965     darkseagreen: "8fbc8f",
  32966     darkslateblue: "483d8b",
  32967     darkslategray: "2f4f4f",
  32968     darkslategrey: "2f4f4f",
  32969     darkturquoise: "00ced1",
  32970     darkviolet: "9400d3",
  32971     deeppink: "ff1493",
  32972     deepskyblue: "00bfff",
  32973     dimgray: "696969",
  32974     dimgrey: "696969",
  32975     dodgerblue: "1e90ff",
  32976     firebrick: "b22222",
  32977     floralwhite: "fffaf0",
  32978     forestgreen: "228b22",
  32979     fuchsia: "f0f",
  32980     gainsboro: "dcdcdc",
  32981     ghostwhite: "f8f8ff",
  32982     gold: "ffd700",
  32983     goldenrod: "daa520",
  32984     gray: "808080",
  32985     green: "008000",
  32986     greenyellow: "adff2f",
  32987     grey: "808080",
  32988     honeydew: "f0fff0",
  32989     hotpink: "ff69b4",
  32990     indianred: "cd5c5c",
  32991     indigo: "4b0082",
  32992     ivory: "fffff0",
  32993     khaki: "f0e68c",
  32994     lavender: "e6e6fa",
  32995     lavenderblush: "fff0f5",
  32996     lawngreen: "7cfc00",
  32997     lemonchiffon: "fffacd",
  32998     lightblue: "add8e6",
  32999     lightcoral: "f08080",
  33000     lightcyan: "e0ffff",
  33001     lightgoldenrodyellow: "fafad2",
  33002     lightgray: "d3d3d3",
  33003     lightgreen: "90ee90",
  33004     lightgrey: "d3d3d3",
  33005     lightpink: "ffb6c1",
  33006     lightsalmon: "ffa07a",
  33007     lightseagreen: "20b2aa",
  33008     lightskyblue: "87cefa",
  33009     lightslategray: "789",
  33010     lightslategrey: "789",
  33011     lightsteelblue: "b0c4de",
  33012     lightyellow: "ffffe0",
  33013     lime: "0f0",
  33014     limegreen: "32cd32",
  33015     linen: "faf0e6",
  33016     magenta: "f0f",
  33017     maroon: "800000",
  33018     mediumaquamarine: "66cdaa",
  33019     mediumblue: "0000cd",
  33020     mediumorchid: "ba55d3",
  33021     mediumpurple: "9370db",
  33022     mediumseagreen: "3cb371",
  33023     mediumslateblue: "7b68ee",
  33024     mediumspringgreen: "00fa9a",
  33025     mediumturquoise: "48d1cc",
  33026     mediumvioletred: "c71585",
  33027     midnightblue: "191970",
  33028     mintcream: "f5fffa",
  33029     mistyrose: "ffe4e1",
  33030     moccasin: "ffe4b5",
  33031     navajowhite: "ffdead",
  33032     navy: "000080",
  33033     oldlace: "fdf5e6",
  33034     olive: "808000",
  33035     olivedrab: "6b8e23",
  33036     orange: "ffa500",
  33037     orangered: "ff4500",
  33038     orchid: "da70d6",
  33039     palegoldenrod: "eee8aa",
  33040     palegreen: "98fb98",
  33041     paleturquoise: "afeeee",
  33042     palevioletred: "db7093",
  33043     papayawhip: "ffefd5",
  33044     peachpuff: "ffdab9",
  33045     peru: "cd853f",
  33046     pink: "ffc0cb",
  33047     plum: "dda0dd",
  33048     powderblue: "b0e0e6",
  33049     purple: "800080",
  33050     rebeccapurple: "663399",
  33051     red: "f00",
  33052     rosybrown: "bc8f8f",
  33053     royalblue: "4169e1",
  33054     saddlebrown: "8b4513",
  33055     salmon: "fa8072",
  33056     sandybrown: "f4a460",
  33057     seagreen: "2e8b57",
  33058     seashell: "fff5ee",
  33059     sienna: "a0522d",
  33060     silver: "c0c0c0",
  33061     skyblue: "87ceeb",
  33062     slateblue: "6a5acd",
  33063     slategray: "708090",
  33064     slategrey: "708090",
  33065     snow: "fffafa",
  33066     springgreen: "00ff7f",
  33067     steelblue: "4682b4",
  33068     tan: "d2b48c",
  33069     teal: "008080",
  33070     thistle: "d8bfd8",
  33071     tomato: "ff6347",
  33072     turquoise: "40e0d0",
  33073     violet: "ee82ee",
  33074     wheat: "f5deb3",
  33075     white: "fff",
  33076     whitesmoke: "f5f5f5",
  33077     yellow: "ff0",
  33078     yellowgreen: "9acd32"
  33079 };
  33080 
  33081 // Make it easy to access colors via `hexNames[hex]`
  33082 var hexNames = tinycolor.hexNames = flip(names);
  33083 
  33084 
  33085 // Utilities
  33086 // ---------
  33087 
  33088 // `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`
  33089 function flip(o) {
  33090     var flipped = { };
  33091     for (var i in o) {
  33092         if (o.hasOwnProperty(i)) {
  33093             flipped[o[i]] = i;
  33094         }
  33095     }
  33096     return flipped;
  33097 }
  33098 
  33099 // Return a valid alpha value [0,1] with all invalid values being set to 1
  33100 function boundAlpha(a) {
  33101     a = parseFloat(a);
  33102 
  33103     if (isNaN(a) || a < 0 || a > 1) {
  33104         a = 1;
  33105     }
  33106 
  33107     return a;
  33108 }
  33109 
  33110 // Take input from [0, n] and return it as [0, 1]
  33111 function bound01(n, max) {
  33112     if (isOnePointZero(n)) { n = "100%"; }
  33113 
  33114     var processPercent = isPercentage(n);
  33115     n = mathMin(max, mathMax(0, parseFloat(n)));
  33116 
  33117     // Automatically convert percentage into number
  33118     if (processPercent) {
  33119         n = parseInt(n * max, 10) / 100;
  33120     }
  33121 
  33122     // Handle floating point rounding errors
  33123     if ((Math.abs(n - max) < 0.000001)) {
  33124         return 1;
  33125     }
  33126 
  33127     // Convert into [0, 1] range if it isn't already
  33128     return (n % max) / parseFloat(max);
  33129 }
  33130 
  33131 // Force a number between 0 and 1
  33132 function clamp01(val) {
  33133     return mathMin(1, mathMax(0, val));
  33134 }
  33135 
  33136 // Parse a base-16 hex value into a base-10 integer
  33137 function parseIntFromHex(val) {
  33138     return parseInt(val, 16);
  33139 }
  33140 
  33141 // Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1
  33142 // <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>
  33143 function isOnePointZero(n) {
  33144     return typeof n == "string" && n.indexOf('.') != -1 && parseFloat(n) === 1;
  33145 }
  33146 
  33147 // Check to see if string passed in is a percentage
  33148 function isPercentage(n) {
  33149     return typeof n === "string" && n.indexOf('%') != -1;
  33150 }
  33151 
  33152 // Force a hex value to have 2 characters
  33153 function pad2(c) {
  33154     return c.length == 1 ? '0' + c : '' + c;
  33155 }
  33156 
  33157 // Replace a decimal with it's percentage value
  33158 function convertToPercentage(n) {
  33159     if (n <= 1) {
  33160         n = (n * 100) + "%";
  33161     }
  33162 
  33163     return n;
  33164 }
  33165 
  33166 // Converts a decimal to a hex value
  33167 function convertDecimalToHex(d) {
  33168     return Math.round(parseFloat(d) * 255).toString(16);
  33169 }
  33170 // Converts a hex value to a decimal
  33171 function convertHexToDecimal(h) {
  33172     return (parseIntFromHex(h) / 255);
  33173 }
  33174 
  33175 var matchers = (function() {
  33176 
  33177     // <http://www.w3.org/TR/css3-values/#integers>
  33178     var CSS_INTEGER = "[-\\+]?\\d+%?";
  33179 
  33180     // <http://www.w3.org/TR/css3-values/#number-value>
  33181     var CSS_NUMBER = "[-\\+]?\\d*\\.\\d+%?";
  33182 
  33183     // Allow positive/negative integer/number.  Don't capture the either/or, just the entire outcome.
  33184     var CSS_UNIT = "(?:" + CSS_NUMBER + ")|(?:" + CSS_INTEGER + ")";
  33185 
  33186     // Actual matching.
  33187     // Parentheses and commas are optional, but not required.
  33188     // Whitespace can take the place of commas or opening paren
  33189     var PERMISSIVE_MATCH3 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
  33190     var PERMISSIVE_MATCH4 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
  33191 
  33192     return {
  33193         CSS_UNIT: new RegExp(CSS_UNIT),
  33194         rgb: new RegExp("rgb" + PERMISSIVE_MATCH3),
  33195         rgba: new RegExp("rgba" + PERMISSIVE_MATCH4),
  33196         hsl: new RegExp("hsl" + PERMISSIVE_MATCH3),
  33197         hsla: new RegExp("hsla" + PERMISSIVE_MATCH4),
  33198         hsv: new RegExp("hsv" + PERMISSIVE_MATCH3),
  33199         hsva: new RegExp("hsva" + PERMISSIVE_MATCH4),
  33200         hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
  33201         hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,
  33202         hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
  33203         hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/
  33204     };
  33205 })();
  33206 
  33207 // `isValidCSSUnit`
  33208 // Take in a single string / number and check to see if it looks like a CSS unit
  33209 // (see `matchers` above for definition).
  33210 function isValidCSSUnit(color) {
  33211     return !!matchers.CSS_UNIT.exec(color);
  33212 }
  33213 
  33214 // `stringInputToObject`
  33215 // Permissive string parsing.  Take in a number of formats, and output an object
  33216 // based on detected format.  Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`
  33217 function stringInputToObject(color) {
  33218 
  33219     color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase();
  33220     var named = false;
  33221     if (names[color]) {
  33222         color = names[color];
  33223         named = true;
  33224     }
  33225     else if (color == 'transparent') {
  33226         return { r: 0, g: 0, b: 0, a: 0, format: "name" };
  33227     }
  33228 
  33229     // Try to match string input using regular expressions.
  33230     // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]
  33231     // Just return an object and let the conversion functions handle that.
  33232     // This way the result will be the same whether the tinycolor is initialized with string or object.
  33233     var match;
  33234     if ((match = matchers.rgb.exec(color))) {
  33235         return { r: match[1], g: match[2], b: match[3] };
  33236     }
  33237     if ((match = matchers.rgba.exec(color))) {
  33238         return { r: match[1], g: match[2], b: match[3], a: match[4] };
  33239     }
  33240     if ((match = matchers.hsl.exec(color))) {
  33241         return { h: match[1], s: match[2], l: match[3] };
  33242     }
  33243     if ((match = matchers.hsla.exec(color))) {
  33244         return { h: match[1], s: match[2], l: match[3], a: match[4] };
  33245     }
  33246     if ((match = matchers.hsv.exec(color))) {
  33247         return { h: match[1], s: match[2], v: match[3] };
  33248     }
  33249     if ((match = matchers.hsva.exec(color))) {
  33250         return { h: match[1], s: match[2], v: match[3], a: match[4] };
  33251     }
  33252     if ((match = matchers.hex8.exec(color))) {
  33253         return {
  33254             r: parseIntFromHex(match[1]),
  33255             g: parseIntFromHex(match[2]),
  33256             b: parseIntFromHex(match[3]),
  33257             a: convertHexToDecimal(match[4]),
  33258             format: named ? "name" : "hex8"
  33259         };
  33260     }
  33261     if ((match = matchers.hex6.exec(color))) {
  33262         return {
  33263             r: parseIntFromHex(match[1]),
  33264             g: parseIntFromHex(match[2]),
  33265             b: parseIntFromHex(match[3]),
  33266             format: named ? "name" : "hex"
  33267         };
  33268     }
  33269     if ((match = matchers.hex4.exec(color))) {
  33270         return {
  33271             r: parseIntFromHex(match[1] + '' + match[1]),
  33272             g: parseIntFromHex(match[2] + '' + match[2]),
  33273             b: parseIntFromHex(match[3] + '' + match[3]),
  33274             a: convertHexToDecimal(match[4] + '' + match[4]),
  33275             format: named ? "name" : "hex8"
  33276         };
  33277     }
  33278     if ((match = matchers.hex3.exec(color))) {
  33279         return {
  33280             r: parseIntFromHex(match[1] + '' + match[1]),
  33281             g: parseIntFromHex(match[2] + '' + match[2]),
  33282             b: parseIntFromHex(match[3] + '' + match[3]),
  33283             format: named ? "name" : "hex"
  33284         };
  33285     }
  33286 
  33287     return false;
  33288 }
  33289 
  33290 function validateWCAG2Parms(parms) {
  33291     // return valid WCAG2 parms for isReadable.
  33292     // If input parms are invalid, return {"level":"AA", "size":"small"}
  33293     var level, size;
  33294     parms = parms || {"level":"AA", "size":"small"};
  33295     level = (parms.level || "AA").toUpperCase();
  33296     size = (parms.size || "small").toLowerCase();
  33297     if (level !== "AA" && level !== "AAA") {
  33298         level = "AA";
  33299     }
  33300     if (size !== "small" && size !== "large") {
  33301         size = "small";
  33302     }
  33303     return {"level":level, "size":size};
  33304 }
  33305 
  33306 // Node: Export function
  33307 if ( true && module.exports) {
  33308     module.exports = tinycolor;
  33309 }
  33310 // AMD/requirejs: Define the module
  33311 else if (true) {
  33312     !(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {return tinycolor;}).call(exports, __webpack_require__, exports, module),
  33313 				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  33314 }
  33315 // Browser: Expose to window
  33316 else {}
  33317 
  33318 })(Math);
  33319 
  33320 
  33321 /***/ }),
  33322 
  33323 /***/ "axFQ":
  33324 /***/ (function(module, exports) {
  33325 
  33326 (function() { module.exports = window["wp"]["blockEditor"]; }());
  33327 
  33328 /***/ }),
  33329 
  33330 /***/ "b2RC":
  33331 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33332 
  33333 "use strict";
  33334 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33335 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33336 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  33337 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  33338 
  33339 
  33340 /**
  33341  * WordPress dependencies
  33342  */
  33343 
  33344 const grid = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  33345   xmlns: "http://www.w3.org/2000/svg",
  33346   viewBox: "0 0 24 24"
  33347 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  33348   d: "M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7.8 16.5H5c-.3 0-.5-.2-.5-.5v-6.2h6.8v6.7zm0-8.3H4.5V5c0-.3.2-.5.5-.5h6.2v6.7zm8.3 7.8c0 .3-.2.5-.5.5h-6.2v-6.8h6.8V19zm0-7.8h-6.8V4.5H19c.3 0 .5.2.5.5v6.2z",
  33349   fillRule: "evenodd",
  33350   clipRule: "evenodd"
  33351 }));
  33352 /* harmony default export */ __webpack_exports__["a"] = (grid);
  33353 
  33354 
  33355 /***/ }),
  33356 
  33357 /***/ "bWcr":
  33358 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33359 
  33360 "use strict";
  33361 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33362 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33363 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  33364 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  33365 
  33366 
  33367 /**
  33368  * WordPress dependencies
  33369  */
  33370 
  33371 const closeSmall = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  33372   xmlns: "http://www.w3.org/2000/svg",
  33373   viewBox: "0 0 24 24"
  33374 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  33375   d: "M12 13.06l3.712 3.713 1.061-1.06L13.061 12l3.712-3.712-1.06-1.06L12 10.938 8.288 7.227l-1.061 1.06L10.939 12l-3.712 3.712 1.06 1.061L12 13.061z"
  33376 }));
  33377 /* harmony default export */ __webpack_exports__["a"] = (closeSmall);
  33378 
  33379 
  33380 /***/ }),
  33381 
  33382 /***/ "btIw":
  33383 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33384 
  33385 "use strict";
  33386 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33387 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33388 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  33389 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  33390 
  33391 
  33392 /**
  33393  * WordPress dependencies
  33394  */
  33395 
  33396 const keyboardReturn = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  33397   xmlns: "http://www.w3.org/2000/svg",
  33398   viewBox: "-2 -2 24 24"
  33399 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  33400   d: "M6.734 16.106l2.176-2.38-1.093-1.028-3.846 4.158 3.846 4.157 1.093-1.027-2.176-2.38h2.811c1.125 0 2.25.03 3.374 0 1.428-.001 3.362-.25 4.963-1.277 1.66-1.065 2.868-2.906 2.868-5.859 0-2.479-1.327-4.896-3.65-5.93-1.82-.813-3.044-.8-4.806-.788l-.567.002v1.5c.184 0 .368 0 .553-.002 1.82-.007 2.704-.014 4.21.657 1.854.827 2.76 2.657 2.76 4.561 0 2.472-.973 3.824-2.178 4.596-1.258.807-2.864 1.04-4.163 1.04h-.02c-1.115.03-2.229 0-3.344 0H6.734z"
  33401 }));
  33402 /* harmony default export */ __webpack_exports__["a"] = (keyboardReturn);
  33403 
  33404 
  33405 /***/ }),
  33406 
  33407 /***/ "cDcd":
  33408 /***/ (function(module, exports) {
  33409 
  33410 (function() { module.exports = window["React"]; }());
  33411 
  33412 /***/ }),
  33413 
  33414 /***/ "cGtP":
  33415 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33416 
  33417 "use strict";
  33418 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33419 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33420 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  33421 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  33422 
  33423 
  33424 /**
  33425  * WordPress dependencies
  33426  */
  33427 
  33428 const search = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  33429   xmlns: "http://www.w3.org/2000/svg",
  33430   viewBox: "0 0 24 24"
  33431 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  33432   d: "M13.5 6C10.5 6 8 8.5 8 11.5c0 1.1.3 2.1.9 3l-3.4 3 1 1.1 3.4-2.9c1 .9 2.2 1.4 3.6 1.4 3 0 5.5-2.5 5.5-5.5C19 8.5 16.5 6 13.5 6zm0 9.5c-2.2 0-4-1.8-4-4s1.8-4 4-4 4 1.8 4 4-1.8 4-4 4z"
  33433 }));
  33434 /* harmony default export */ __webpack_exports__["a"] = (search);
  33435 
  33436 
  33437 /***/ }),
  33438 
  33439 /***/ "diJD":
  33440 /***/ (function(module, exports) {
  33441 
  33442 (function() { module.exports = window["wp"]["reusableBlocks"]; }());
  33443 
  33444 /***/ }),
  33445 
  33446 /***/ "ez49":
  33447 /***/ (function(module, exports, __webpack_require__) {
  33448 
  33449 "use strict";
  33450 /**
  33451  * Copyright 2013-2015, Facebook, Inc.
  33452  * All rights reserved.
  33453  *
  33454  * This source code is licensed under the BSD-style license found in the
  33455  * LICENSE file in the root directory of this source tree. An additional grant
  33456  * of patent rights can be found in the PATENTS file in the same directory.
  33457  *
  33458  * @providesModule isEventSupported
  33459  */
  33460 
  33461 
  33462 
  33463 var ExecutionEnvironment = __webpack_require__("o97j");
  33464 
  33465 var useHasFeature;
  33466 if (ExecutionEnvironment.canUseDOM) {
  33467   useHasFeature =
  33468     document.implementation &&
  33469     document.implementation.hasFeature &&
  33470     // always returns true in newer browsers as per the standard.
  33471     // @see http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature
  33472     document.implementation.hasFeature('', '') !== true;
  33473 }
  33474 
  33475 /**
  33476  * Checks if an event is supported in the current execution environment.
  33477  *
  33478  * NOTE: This will not work correctly for non-generic events such as `change`,
  33479  * `reset`, `load`, `error`, and `select`.
  33480  *
  33481  * Borrows from Modernizr.
  33482  *
  33483  * @param {string} eventNameSuffix Event name, e.g. "click".
  33484  * @param {?boolean} capture Check if the capture phase is supported.
  33485  * @return {boolean} True if the event is supported.
  33486  * @internal
  33487  * @license Modernizr 3.0.0pre (Custom Build) | MIT
  33488  */
  33489 function isEventSupported(eventNameSuffix, capture) {
  33490   if (!ExecutionEnvironment.canUseDOM ||
  33491       capture && !('addEventListener' in document)) {
  33492     return false;
  33493   }
  33494 
  33495   var eventName = 'on' + eventNameSuffix;
  33496   var isSupported = eventName in document;
  33497 
  33498   if (!isSupported) {
  33499     var element = document.createElement('div');
  33500     element.setAttribute(eventName, 'return;');
  33501     isSupported = typeof element[eventName] === 'function';
  33502   }
  33503 
  33504   if (!isSupported && useHasFeature && eventNameSuffix === 'wheel') {
  33505     // This is the only way to test support for the `wheel` event in IE9+.
  33506     isSupported = document.implementation.hasFeature('Events.wheel', '3.0');
  33507   }
  33508 
  33509   return isSupported;
  33510 }
  33511 
  33512 module.exports = isEventSupported;
  33513 
  33514 
  33515 /***/ }),
  33516 
  33517 /***/ "fPbg":
  33518 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33519 
  33520 "use strict";
  33521 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33522 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33523 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  33524 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  33525 
  33526 
  33527 /**
  33528  * WordPress dependencies
  33529  */
  33530 
  33531 const alignLeft = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  33532   xmlns: "http://www.w3.org/2000/svg",
  33533   viewBox: "0 0 24 24"
  33534 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  33535   d: "M4 19.8h8.9v-1.5H4v1.5zm8.9-15.6H4v1.5h8.9V4.2zm-8.9 7v1.5h16v-1.5H4z"
  33536 }));
  33537 /* harmony default export */ __webpack_exports__["a"] = (alignLeft);
  33538 
  33539 
  33540 /***/ }),
  33541 
  33542 /***/ "g56x":
  33543 /***/ (function(module, exports) {
  33544 
  33545 (function() { module.exports = window["wp"]["hooks"]; }());
  33546 
  33547 /***/ }),
  33548 
  33549 /***/ "iClF":
  33550 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33551 
  33552 "use strict";
  33553 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33554 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33555 /**
  33556  * WordPress dependencies
  33557  */
  33558 
  33559 /** @typedef {{icon: JSX.Element, size?: number} & import('@wordpress/primitives').SVGProps} IconProps */
  33560 
  33561 /**
  33562  * Return an SVG icon.
  33563  *
  33564  * @param {IconProps} props icon is the SVG component to render
  33565  *                          size is a number specifiying the icon size in pixels
  33566  *                          Other props will be passed to wrapped SVG component
  33567  *
  33568  * @return {JSX.Element}  Icon component
  33569  */
  33570 
  33571 function Icon({
  33572   icon,
  33573   size = 24,
  33574   ...props
  33575 }) {
  33576   return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["cloneElement"])(icon, {
  33577     width: size,
  33578     height: size,
  33579     ...props
  33580   });
  33581 }
  33582 
  33583 /* harmony default export */ __webpack_exports__["a"] = (Icon);
  33584 
  33585 
  33586 /***/ }),
  33587 
  33588 /***/ "jZUy":
  33589 /***/ (function(module, exports) {
  33590 
  33591 (function() { module.exports = window["wp"]["coreData"]; }());
  33592 
  33593 /***/ }),
  33594 
  33595 /***/ "jrfk":
  33596 /***/ (function(module, exports) {
  33597 
  33598 /**
  33599  * Copyright 2004-present Facebook. All Rights Reserved.
  33600  *
  33601  * @providesModule UserAgent_DEPRECATED
  33602  */
  33603 
  33604 /**
  33605  *  Provides entirely client-side User Agent and OS detection. You should prefer
  33606  *  the non-deprecated UserAgent module when possible, which exposes our
  33607  *  authoritative server-side PHP-based detection to the client.
  33608  *
  33609  *  Usage is straightforward:
  33610  *
  33611  *    if (UserAgent_DEPRECATED.ie()) {
  33612  *      //  IE
  33613  *    }
  33614  *
  33615  *  You can also do version checks:
  33616  *
  33617  *    if (UserAgent_DEPRECATED.ie() >= 7) {
  33618  *      //  IE7 or better
  33619  *    }
  33620  *
  33621  *  The browser functions will return NaN if the browser does not match, so
  33622  *  you can also do version compares the other way:
  33623  *
  33624  *    if (UserAgent_DEPRECATED.ie() < 7) {
  33625  *      //  IE6 or worse
  33626  *    }
  33627  *
  33628  *  Note that the version is a float and may include a minor version number,
  33629  *  so you should always use range operators to perform comparisons, not
  33630  *  strict equality.
  33631  *
  33632  *  **Note:** You should **strongly** prefer capability detection to browser
  33633  *  version detection where it's reasonable:
  33634  *
  33635  *    http://www.quirksmode.org/js/support.html
  33636  *
  33637  *  Further, we have a large number of mature wrapper functions and classes
  33638  *  which abstract away many browser irregularities. Check the documentation,
  33639  *  grep for things, or ask on javascript@lists.facebook.com before writing yet
  33640  *  another copy of "event || window.event".
  33641  *
  33642  */
  33643 
  33644 var _populated = false;
  33645 
  33646 // Browsers
  33647 var _ie, _firefox, _opera, _webkit, _chrome;
  33648 
  33649 // Actual IE browser for compatibility mode
  33650 var _ie_real_version;
  33651 
  33652 // Platforms
  33653 var _osx, _windows, _linux, _android;
  33654 
  33655 // Architectures
  33656 var _win64;
  33657 
  33658 // Devices
  33659 var _iphone, _ipad, _native;
  33660 
  33661 var _mobile;
  33662 
  33663 function _populate() {
  33664   if (_populated) {
  33665     return;
  33666   }
  33667 
  33668   _populated = true;
  33669 
  33670   // To work around buggy JS libraries that can't handle multi-digit
  33671   // version numbers, Opera 10's user agent string claims it's Opera
  33672   // 9, then later includes a Version/X.Y field:
  33673   //
  33674   // Opera/9.80 (foo) Presto/2.2.15 Version/10.10
  33675   var uas = navigator.userAgent;
  33676   var agent = /(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(uas);
  33677   var os    = /(Mac OS X)|(Windows)|(Linux)/.exec(uas);
  33678 
  33679   _iphone = /\b(iPhone|iP[ao]d)/.exec(uas);
  33680   _ipad = /\b(iP[ao]d)/.exec(uas);
  33681   _android = /Android/i.exec(uas);
  33682   _native = /FBAN\/\w+;/i.exec(uas);
  33683   _mobile = /Mobile/i.exec(uas);
  33684 
  33685   // Note that the IE team blog would have you believe you should be checking
  33686   // for 'Win64; x64'.  But MSDN then reveals that you can actually be coming
  33687   // from either x64 or ia64;  so ultimately, you should just check for Win64
  33688   // as in indicator of whether you're in 64-bit IE.  32-bit IE on 64-bit
  33689   // Windows will send 'WOW64' instead.
  33690   _win64 = !!(/Win64/.exec(uas));
  33691 
  33692   if (agent) {
  33693     _ie = agent[1] ? parseFloat(agent[1]) : (
  33694           agent[5] ? parseFloat(agent[5]) : NaN);
  33695     // IE compatibility mode
  33696     if (_ie && document && document.documentMode) {
  33697       _ie = document.documentMode;
  33698     }
  33699     // grab the "true" ie version from the trident token if available
  33700     var trident = /(?:Trident\/(\d+.\d+))/.exec(uas);
  33701     _ie_real_version = trident ? parseFloat(trident[1]) + 4 : _ie;
  33702 
  33703     _firefox = agent[2] ? parseFloat(agent[2]) : NaN;
  33704     _opera   = agent[3] ? parseFloat(agent[3]) : NaN;
  33705     _webkit  = agent[4] ? parseFloat(agent[4]) : NaN;
  33706     if (_webkit) {
  33707       // We do not add the regexp to the above test, because it will always
  33708       // match 'safari' only since 'AppleWebKit' appears before 'Chrome' in
  33709       // the userAgent string.
  33710       agent = /(?:Chrome\/(\d+\.\d+))/.exec(uas);
  33711       _chrome = agent && agent[1] ? parseFloat(agent[1]) : NaN;
  33712     } else {
  33713       _chrome = NaN;
  33714     }
  33715   } else {
  33716     _ie = _firefox = _opera = _chrome = _webkit = NaN;
  33717   }
  33718 
  33719   if (os) {
  33720     if (os[1]) {
  33721       // Detect OS X version.  If no version number matches, set _osx to true.
  33722       // Version examples:  10, 10_6_1, 10.7
  33723       // Parses version number as a float, taking only first two sets of
  33724       // digits.  If only one set of digits is found, returns just the major
  33725       // version number.
  33726       var ver = /(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(uas);
  33727 
  33728       _osx = ver ? parseFloat(ver[1].replace('_', '.')) : true;
  33729     } else {
  33730       _osx = false;
  33731     }
  33732     _windows = !!os[2];
  33733     _linux   = !!os[3];
  33734   } else {
  33735     _osx = _windows = _linux = false;
  33736   }
  33737 }
  33738 
  33739 var UserAgent_DEPRECATED = {
  33740 
  33741   /**
  33742    *  Check if the UA is Internet Explorer.
  33743    *
  33744    *
  33745    *  @return float|NaN Version number (if match) or NaN.
  33746    */
  33747   ie: function() {
  33748     return _populate() || _ie;
  33749   },
  33750 
  33751   /**
  33752    * Check if we're in Internet Explorer compatibility mode.
  33753    *
  33754    * @return bool true if in compatibility mode, false if
  33755    * not compatibility mode or not ie
  33756    */
  33757   ieCompatibilityMode: function() {
  33758     return _populate() || (_ie_real_version > _ie);
  33759   },
  33760 
  33761 
  33762   /**
  33763    * Whether the browser is 64-bit IE.  Really, this is kind of weak sauce;  we
  33764    * only need this because Skype can't handle 64-bit IE yet.  We need to remove
  33765    * this when we don't need it -- tracked by #601957.
  33766    */
  33767   ie64: function() {
  33768     return UserAgent_DEPRECATED.ie() && _win64;
  33769   },
  33770 
  33771   /**
  33772    *  Check if the UA is Firefox.
  33773    *
  33774    *
  33775    *  @return float|NaN Version number (if match) or NaN.
  33776    */
  33777   firefox: function() {
  33778     return _populate() || _firefox;
  33779   },
  33780 
  33781 
  33782   /**
  33783    *  Check if the UA is Opera.
  33784    *
  33785    *
  33786    *  @return float|NaN Version number (if match) or NaN.
  33787    */
  33788   opera: function() {
  33789     return _populate() || _opera;
  33790   },
  33791 
  33792 
  33793   /**
  33794    *  Check if the UA is WebKit.
  33795    *
  33796    *
  33797    *  @return float|NaN Version number (if match) or NaN.
  33798    */
  33799   webkit: function() {
  33800     return _populate() || _webkit;
  33801   },
  33802 
  33803   /**
  33804    *  For Push
  33805    *  WILL BE REMOVED VERY SOON. Use UserAgent_DEPRECATED.webkit
  33806    */
  33807   safari: function() {
  33808     return UserAgent_DEPRECATED.webkit();
  33809   },
  33810 
  33811   /**
  33812    *  Check if the UA is a Chrome browser.
  33813    *
  33814    *
  33815    *  @return float|NaN Version number (if match) or NaN.
  33816    */
  33817   chrome : function() {
  33818     return _populate() || _chrome;
  33819   },
  33820 
  33821 
  33822   /**
  33823    *  Check if the user is running Windows.
  33824    *
  33825    *  @return bool `true' if the user's OS is Windows.
  33826    */
  33827   windows: function() {
  33828     return _populate() || _windows;
  33829   },
  33830 
  33831 
  33832   /**
  33833    *  Check if the user is running Mac OS X.
  33834    *
  33835    *  @return float|bool   Returns a float if a version number is detected,
  33836    *                       otherwise true/false.
  33837    */
  33838   osx: function() {
  33839     return _populate() || _osx;
  33840   },
  33841 
  33842   /**
  33843    * Check if the user is running Linux.
  33844    *
  33845    * @return bool `true' if the user's OS is some flavor of Linux.
  33846    */
  33847   linux: function() {
  33848     return _populate() || _linux;
  33849   },
  33850 
  33851   /**
  33852    * Check if the user is running on an iPhone or iPod platform.
  33853    *
  33854    * @return bool `true' if the user is running some flavor of the
  33855    *    iPhone OS.
  33856    */
  33857   iphone: function() {
  33858     return _populate() || _iphone;
  33859   },
  33860 
  33861   mobile: function() {
  33862     return _populate() || (_iphone || _ipad || _android || _mobile);
  33863   },
  33864 
  33865   nativeApp: function() {
  33866     // webviews inside of the native apps
  33867     return _populate() || _native;
  33868   },
  33869 
  33870   android: function() {
  33871     return _populate() || _android;
  33872   },
  33873 
  33874   ipad: function() {
  33875     return _populate() || _ipad;
  33876   }
  33877 };
  33878 
  33879 module.exports = UserAgent_DEPRECATED;
  33880 
  33881 
  33882 /***/ }),
  33883 
  33884 /***/ "l3Sj":
  33885 /***/ (function(module, exports) {
  33886 
  33887 (function() { module.exports = window["wp"]["i18n"]; }());
  33888 
  33889 /***/ }),
  33890 
  33891 /***/ "o97j":
  33892 /***/ (function(module, exports, __webpack_require__) {
  33893 
  33894 "use strict";
  33895 /**
  33896  * Copyright (c) 2015, Facebook, Inc.
  33897  * All rights reserved.
  33898  *
  33899  * This source code is licensed under the BSD-style license found in the
  33900  * LICENSE file in the root directory of this source tree. An additional grant
  33901  * of patent rights can be found in the PATENTS file in the same directory.
  33902  *
  33903  * @providesModule ExecutionEnvironment
  33904  */
  33905 
  33906 /*jslint evil: true */
  33907 
  33908 
  33909 
  33910 var canUseDOM = !!(
  33911   typeof window !== 'undefined' &&
  33912   window.document &&
  33913   window.document.createElement
  33914 );
  33915 
  33916 /**
  33917  * Simple, lightweight module assisting with the detection and context of
  33918  * Worker. Helps avoid circular dependencies and allows code to reason about
  33919  * whether or not they are in a Worker, even if they never include the main
  33920  * `ReactWorker` dependency.
  33921  */
  33922 var ExecutionEnvironment = {
  33923 
  33924   canUseDOM: canUseDOM,
  33925 
  33926   canUseWorkers: typeof Worker !== 'undefined',
  33927 
  33928   canUseEventListeners:
  33929     canUseDOM && !!(window.addEventListener || window.attachEvent),
  33930 
  33931   canUseViewport: canUseDOM && !!window.screen,
  33932 
  33933   isInWorker: !canUseDOM // For now, this is true - might change in the future.
  33934 
  33935 };
  33936 
  33937 module.exports = ExecutionEnvironment;
  33938 
  33939 
  33940 /***/ }),
  33941 
  33942 /***/ "oMoS":
  33943 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33944 
  33945 "use strict";
  33946 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33947 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33948 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  33949 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  33950 
  33951 
  33952 /**
  33953  * WordPress dependencies
  33954  */
  33955 
  33956 const button = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  33957   viewBox: "0 0 24 24",
  33958   xmlns: "http://www.w3.org/2000/svg"
  33959 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  33960   d: "M19 6.5H5c-1.1 0-2 .9-2 2v7c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-7c0-1.1-.9-2-2-2zm.5 9c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5v-7c0-.3.2-.5.5-.5h14c.3 0 .5.2.5.5v7zM8 12.8h8v-1.5H8v1.5z"
  33961 }));
  33962 /* harmony default export */ __webpack_exports__["a"] = (button);
  33963 
  33964 
  33965 /***/ }),
  33966 
  33967 /***/ "onLe":
  33968 /***/ (function(module, exports) {
  33969 
  33970 (function() { module.exports = window["wp"]["notices"]; }());
  33971 
  33972 /***/ }),
  33973 
  33974 /***/ "plpT":
  33975 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  33976 
  33977 "use strict";
  33978 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  33979 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  33980 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  33981 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  33982 
  33983 
  33984 /**
  33985  * WordPress dependencies
  33986  */
  33987 
  33988 const alignCenter = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  33989   xmlns: "http://www.w3.org/2000/svg",
  33990   viewBox: "0 0 24 24"
  33991 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  33992   d: "M16.4 4.2H7.6v1.5h8.9V4.2zM4 11.2v1.5h16v-1.5H4zm3.6 8.6h8.9v-1.5H7.6v1.5z"
  33993 }));
  33994 /* harmony default export */ __webpack_exports__["a"] = (alignCenter);
  33995 
  33996 
  33997 /***/ }),
  33998 
  33999 /***/ "qRz9":
  34000 /***/ (function(module, exports) {
  34001 
  34002 (function() { module.exports = window["wp"]["richText"]; }());
  34003 
  34004 /***/ }),
  34005 
  34006 /***/ "rH4q":
  34007 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  34008 
  34009 "use strict";
  34010 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  34011 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  34012 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  34013 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  34014 
  34015 
  34016 /**
  34017  * WordPress dependencies
  34018  */
  34019 
  34020 const media = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  34021   xmlns: "http://www.w3.org/2000/svg",
  34022   viewBox: "0 0 24 24"
  34023 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  34024   d: "M18.7 3H5.3C4 3 3 4 3 5.3v13.4C3 20 4 21 5.3 21h13.4c1.3 0 2.3-1 2.3-2.3V5.3C21 4 20 3 18.7 3zm.8 15.7c0 .4-.4.8-.8.8H5.3c-.4 0-.8-.4-.8-.8V5.3c0-.4.4-.8.8-.8h13.4c.4 0 .8.4.8.8v13.4zM10 15l5-3-5-3v6z"
  34025 }));
  34026 /* harmony default export */ __webpack_exports__["a"] = (media);
  34027 
  34028 
  34029 /***/ }),
  34030 
  34031 /***/ "tI+e":
  34032 /***/ (function(module, exports) {
  34033 
  34034 (function() { module.exports = window["wp"]["components"]; }());
  34035 
  34036 /***/ }),
  34037 
  34038 /***/ "wJiJ":
  34039 /***/ (function(module, exports, __webpack_require__) {
  34040 
  34041 module.exports = __webpack_require__("1K8p");
  34042 
  34043 
  34044 /***/ }),
  34045 
  34046 /***/ "wx14":
  34047 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  34048 
  34049 "use strict";
  34050 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; });
  34051 function _extends() {
  34052   _extends = Object.assign || function (target) {
  34053     for (var i = 1; i < arguments.length; i++) {
  34054       var source = arguments[i];
  34055 
  34056       for (var key in source) {
  34057         if (Object.prototype.hasOwnProperty.call(source, key)) {
  34058           target[key] = source[key];
  34059         }
  34060       }
  34061     }
  34062 
  34063     return target;
  34064   };
  34065 
  34066   return _extends.apply(this, arguments);
  34067 }
  34068 
  34069 /***/ }),
  34070 
  34071 /***/ "wy2R":
  34072 /***/ (function(module, exports) {
  34073 
  34074 (function() { module.exports = window["moment"]; }());
  34075 
  34076 /***/ }),
  34077 
  34078 /***/ "xTGt":
  34079 /***/ (function(module, exports) {
  34080 
  34081 (function() { module.exports = window["wp"]["blob"]; }());
  34082 
  34083 /***/ }),
  34084 
  34085 /***/ "ywyh":
  34086 /***/ (function(module, exports) {
  34087 
  34088 (function() { module.exports = window["wp"]["apiFetch"]; }());
  34089 
  34090 /***/ }),
  34091 
  34092 /***/ "ziDm":
  34093 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  34094 
  34095 "use strict";
  34096 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("GRId");
  34097 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  34098 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("Tqx9");
  34099 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
  34100 
  34101 
  34102 /**
  34103  * WordPress dependencies
  34104  */
  34105 
  34106 const alignRight = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
  34107   xmlns: "http://www.w3.org/2000/svg",
  34108   viewBox: "0 0 24 24"
  34109 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
  34110   d: "M11.1 19.8H20v-1.5h-8.9v1.5zm0-15.6v1.5H20V4.2h-8.9zM4 12.8h16v-1.5H4v1.5z"
  34111 }));
  34112 /* harmony default export */ __webpack_exports__["a"] = (alignRight);
  34113 
  34114 
  34115 /***/ })
  34116 
  34117 /******/ });