/******/ (function() { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ 7078: /***/ (function(module) { /** * Checks if the block is experimental based on the metadata loaded * from block.json. * * This function is in a separate file and uses the older JS syntax so * that it can be imported in both: * – block-library/src/index.js * – block-library/src/babel-plugin.js * * @param {Object} metadata Parsed block.json metadata. * @return {boolean} Is the block experimental? */ module.exports = function isBlockMetadataExperimental(metadata) { return metadata && '__experimental' in metadata && metadata.__experimental !== false; }; /***/ }), /***/ 3827: /***/ (function(module, exports) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ /* global define */ (function () { 'use strict'; var classNames = (function () { // don't inherit from Object so we can skip hasOwnProperty check later // http://stackoverflow.com/questions/15518328/creating-js-object-with-object-createnull#answer-21079232 function StorageObject() {} StorageObject.prototype = Object.create(null); function _parseArray (resultSet, array) { var length = array.length; for (var i = 0; i < length; ++i) { _parse(resultSet, array[i]); } } var hasOwn = {}.hasOwnProperty; function _parseNumber (resultSet, num) { resultSet[num] = true; } function _parseObject (resultSet, object) { if (object.toString !== Object.prototype.toString && !object.toString.toString().includes('[native code]')) { resultSet[object.toString()] = true; return; } for (var k in object) { if (hasOwn.call(object, k)) { // set value to false instead of deleting it to avoid changing object structure // https://www.smashingmagazine.com/2012/11/writing-fast-memory-efficient-javascript/#de-referencing-misconceptions resultSet[k] = !!object[k]; } } } var SPACE = /\s+/; function _parseString (resultSet, str) { var array = str.split(SPACE); var length = array.length; for (var i = 0; i < length; ++i) { resultSet[array[i]] = true; } } function _parse (resultSet, arg) { if (!arg) return; var argType = typeof arg; // 'foo bar' if (argType === 'string') { _parseString(resultSet, arg); // ['foo', 'bar', ...] } else if (Array.isArray(arg)) { _parseArray(resultSet, arg); // { 'foo': true, ... } } else if (argType === 'object') { _parseObject(resultSet, arg); // '130' } else if (argType === 'number') { _parseNumber(resultSet, arg); } } function _classNames () { // don't leak arguments // https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#32-leaking-arguments var len = arguments.length; var args = Array(len); for (var i = 0; i < len; i++) { args[i] = arguments[i]; } var classSet = new StorageObject(); _parseArray(classSet, args); var list = []; for (var k in classSet) { if (classSet[k]) { list.push(k) } } return list.join(' '); } return _classNames; })(); if ( true && module.exports) { classNames.default = classNames; module.exports = classNames; } else if (true) { // register as 'classnames', consistent with npm package name !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { return classNames; }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else {} }()); /***/ }), /***/ 4403: /***/ (function(module, exports) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ /* global define */ (function () { 'use strict'; var hasOwn = {}.hasOwnProperty; var nativeCodeString = '[native code]'; function classNames() { var classes = []; for (var i = 0; i < arguments.length; i++) { var arg = arguments[i]; if (!arg) continue; var argType = typeof arg; if (argType === 'string' || argType === 'number') { classes.push(arg); } else if (Array.isArray(arg)) { if (arg.length) { var inner = classNames.apply(null, arg); if (inner) { classes.push(inner); } } } else if (argType === 'object') { if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) { classes.push(arg.toString()); continue; } for (var key in arg) { if (hasOwn.call(arg, key) && arg[key]) { classes.push(key); } } } } return classes.join(' '); } if ( true && module.exports) { classNames.default = classNames; module.exports = classNames; } else if (true) { // register as 'classnames', consistent with npm package name !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () { return classNames; }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else {} }()); /***/ }), /***/ 5027: /***/ (function(module) { /*! Fast Average Color | © 2019 Denis Seleznev | MIT License | https://github.com/hcodes/fast-average-color/ */ (function (global, factory) { true ? module.exports = factory() : 0; }(this, (function () { 'use strict'; function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } function _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } var FastAverageColor = /*#__PURE__*/ function () { function FastAverageColor() { _classCallCheck(this, FastAverageColor); } _createClass(FastAverageColor, [{ key: "getColorAsync", /** * Get asynchronously the average color from not loaded image. * * @param {HTMLImageElement} resource * @param {Function} callback * @param {Object|null} [options] * @param {Array} [options.defaultColor=[255, 255, 255, 255]] * @param {*} [options.data] * @param {string} [options.mode="speed"] "precision" or "speed" * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant" * @param {number} [options.step=1] * @param {number} [options.left=0] * @param {number} [options.top=0] * @param {number} [options.width=width of resource] * @param {number} [options.height=height of resource] */ value: function getColorAsync(resource, callback, options) { if (resource.complete) { callback.call(resource, this.getColor(resource, options), options && options.data); } else { this._bindImageEvents(resource, callback, options); } } /** * Get the average color from images, videos and canvas. * * @param {HTMLImageElement|HTMLVideoElement|HTMLCanvasElement} resource * @param {Object|null} [options] * @param {Array} [options.defaultColor=[255, 255, 255, 255]] * @param {*} [options.data] * @param {string} [options.mode="speed"] "precision" or "speed" * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant" * @param {number} [options.step=1] * @param {number} [options.left=0] * @param {number} [options.top=0] * @param {number} [options.width=width of resource] * @param {number} [options.height=height of resource] * * @returns {Object} */ }, { key: "getColor", value: function getColor(resource, options) { options = options || {}; var defaultColor = this._getDefaultColor(options), originalSize = this._getOriginalSize(resource), size = this._prepareSizeAndPosition(originalSize, options); var error = null, value = defaultColor; if (!size.srcWidth || !size.srcHeight || !size.destWidth || !size.destHeight) { return this._prepareResult(defaultColor, new Error('FastAverageColor: Incorrect sizes.')); } if (!this._ctx) { this._canvas = this._makeCanvas(); this._ctx = this._canvas.getContext && this._canvas.getContext('2d'); if (!this._ctx) { return this._prepareResult(defaultColor, new Error('FastAverageColor: Canvas Context 2D is not supported in this browser.')); } } this._canvas.width = size.destWidth; this._canvas.height = size.destHeight; try { this._ctx.clearRect(0, 0, size.destWidth, size.destHeight); this._ctx.drawImage(resource, size.srcLeft, size.srcTop, size.srcWidth, size.srcHeight, 0, 0, size.destWidth, size.destHeight); var bitmapData = this._ctx.getImageData(0, 0, size.destWidth, size.destHeight).data; value = this.getColorFromArray4(bitmapData, options); } catch (e) { // Security error, CORS // https://developer.mozilla.org/en/docs/Web/HTML/CORS_enabled_image error = e; } return this._prepareResult(value, error); } /** * Get the average color from a array when 1 pixel is 4 bytes. * * @param {Array|Uint8Array} arr * @param {Object} [options] * @param {string} [options.algorithm="sqrt"] "simple", "sqrt" or "dominant" * @param {Array} [options.defaultColor=[255, 255, 255, 255]] * @param {number} [options.step=1] * * @returns {Array} [red (0-255), green (0-255), blue (0-255), alpha (0-255)] */ }, { key: "getColorFromArray4", value: function getColorFromArray4(arr, options) { options = options || {}; var bytesPerPixel = 4, arrLength = arr.length; if (arrLength < bytesPerPixel) { return this._getDefaultColor(options); } var len = arrLength - arrLength % bytesPerPixel, preparedStep = (options.step || 1) * bytesPerPixel, algorithm = '_' + (options.algorithm || 'sqrt') + 'Algorithm'; if (typeof this[algorithm] !== 'function') { throw new Error("FastAverageColor: ".concat(options.algorithm, " is unknown algorithm.")); } return this[algorithm](arr, len, preparedStep); } /** * Destroy the instance. */ }, { key: "destroy", value: function destroy() { delete this._canvas; delete this._ctx; } }, { key: "_getDefaultColor", value: function _getDefaultColor(options) { return this._getOption(options, 'defaultColor', [255, 255, 255, 255]); } }, { key: "_getOption", value: function _getOption(options, name, defaultValue) { return typeof options[name] === 'undefined' ? defaultValue : options[name]; } }, { key: "_prepareSizeAndPosition", value: function _prepareSizeAndPosition(originalSize, options) { var srcLeft = this._getOption(options, 'left', 0), srcTop = this._getOption(options, 'top', 0), srcWidth = this._getOption(options, 'width', originalSize.width), srcHeight = this._getOption(options, 'height', originalSize.height), destWidth = srcWidth, destHeight = srcHeight; if (options.mode === 'precision') { return { srcLeft: srcLeft, srcTop: srcTop, srcWidth: srcWidth, srcHeight: srcHeight, destWidth: destWidth, destHeight: destHeight }; } var maxSize = 100, minSize = 10; var factor; if (srcWidth > srcHeight) { factor = srcWidth / srcHeight; destWidth = maxSize; destHeight = Math.round(destWidth / factor); } else { factor = srcHeight / srcWidth; destHeight = maxSize; destWidth = Math.round(destHeight / factor); } if (destWidth > srcWidth || destHeight > srcHeight || destWidth < minSize || destHeight < minSize) { destWidth = srcWidth; destHeight = srcHeight; } return { srcLeft: srcLeft, srcTop: srcTop, srcWidth: srcWidth, srcHeight: srcHeight, destWidth: destWidth, destHeight: destHeight }; } }, { key: "_simpleAlgorithm", value: function _simpleAlgorithm(arr, len, preparedStep) { var redTotal = 0, greenTotal = 0, blueTotal = 0, alphaTotal = 0, count = 0; for (var i = 0; i < len; i += preparedStep) { var alpha = arr[i + 3], red = arr[i] * alpha, green = arr[i + 1] * alpha, blue = arr[i + 2] * alpha; redTotal += red; greenTotal += green; blueTotal += blue; alphaTotal += alpha; count++; } return alphaTotal ? [Math.round(redTotal / alphaTotal), Math.round(greenTotal / alphaTotal), Math.round(blueTotal / alphaTotal), Math.round(alphaTotal / count)] : [0, 0, 0, 0]; } }, { key: "_sqrtAlgorithm", value: function _sqrtAlgorithm(arr, len, preparedStep) { var redTotal = 0, greenTotal = 0, blueTotal = 0, alphaTotal = 0, count = 0; for (var i = 0; i < len; i += preparedStep) { var red = arr[i], green = arr[i + 1], blue = arr[i + 2], alpha = arr[i + 3]; redTotal += red * red * alpha; greenTotal += green * green * alpha; blueTotal += blue * blue * alpha; alphaTotal += alpha; count++; } return alphaTotal ? [Math.round(Math.sqrt(redTotal / alphaTotal)), Math.round(Math.sqrt(greenTotal / alphaTotal)), Math.round(Math.sqrt(blueTotal / alphaTotal)), Math.round(alphaTotal / count)] : [0, 0, 0, 0]; } }, { key: "_dominantAlgorithm", value: function _dominantAlgorithm(arr, len, preparedStep) { var colorHash = {}, divider = 24; for (var i = 0; i < len; i += preparedStep) { var red = arr[i], green = arr[i + 1], blue = arr[i + 2], alpha = arr[i + 3], key = Math.round(red / divider) + ',' + Math.round(green / divider) + ',' + Math.round(blue / divider); if (colorHash[key]) { colorHash[key] = [colorHash[key][0] + red * alpha, colorHash[key][1] + green * alpha, colorHash[key][2] + blue * alpha, colorHash[key][3] + alpha, colorHash[key][4] + 1]; } else { colorHash[key] = [red * alpha, green * alpha, blue * alpha, alpha, 1]; } } var buffer = Object.keys(colorHash).map(function (key) { return colorHash[key]; }).sort(function (a, b) { var countA = a[4], countB = b[4]; return countA > countB ? -1 : countA === countB ? 0 : 1; }); var _buffer$ = _slicedToArray(buffer[0], 5), redTotal = _buffer$[0], greenTotal = _buffer$[1], blueTotal = _buffer$[2], alphaTotal = _buffer$[3], count = _buffer$[4]; return alphaTotal ? [Math.round(redTotal / alphaTotal), Math.round(greenTotal / alphaTotal), Math.round(blueTotal / alphaTotal), Math.round(alphaTotal / count)] : [0, 0, 0, 0]; } }, { key: "_bindImageEvents", value: function _bindImageEvents(resource, callback, options) { var _this = this; options = options || {}; var data = options && options.data, defaultColor = this._getDefaultColor(options), onload = function onload() { unbindEvents(); callback.call(resource, _this.getColor(resource, options), data); }, onerror = function onerror() { unbindEvents(); callback.call(resource, _this._prepareResult(defaultColor, new Error('Image error')), data); }, onabort = function onabort() { unbindEvents(); callback.call(resource, _this._prepareResult(defaultColor, new Error('Image abort')), data); }, unbindEvents = function unbindEvents() { resource.removeEventListener('load', onload); resource.removeEventListener('error', onerror); resource.removeEventListener('abort', onabort); }; resource.addEventListener('load', onload); resource.addEventListener('error', onerror); resource.addEventListener('abort', onabort); } }, { key: "_prepareResult", value: function _prepareResult(value, error) { var rgb = value.slice(0, 3), rgba = [].concat(rgb, value[3] / 255), isDark = this._isDark(value); return { error: error, value: value, rgb: 'rgb(' + rgb.join(',') + ')', rgba: 'rgba(' + rgba.join(',') + ')', hex: this._arrayToHex(rgb), hexa: this._arrayToHex(value), isDark: isDark, isLight: !isDark }; } }, { key: "_getOriginalSize", value: function _getOriginalSize(resource) { if (resource instanceof HTMLImageElement) { return { width: resource.naturalWidth, height: resource.naturalHeight }; } if (resource instanceof HTMLVideoElement) { return { width: resource.videoWidth, height: resource.videoHeight }; } return { width: resource.width, height: resource.height }; } }, { key: "_toHex", value: function _toHex(num) { var str = num.toString(16); return str.length === 1 ? '0' + str : str; } }, { key: "_arrayToHex", value: function _arrayToHex(arr) { return '#' + arr.map(this._toHex).join(''); } }, { key: "_isDark", value: function _isDark(color) { // http://www.w3.org/TR/AERT#color-contrast var result = (color[0] * 299 + color[1] * 587 + color[2] * 114) / 1000; return result < 128; } }, { key: "_makeCanvas", value: function _makeCanvas() { return typeof window === 'undefined' ? new OffscreenCanvas(1, 1) : document.createElement('canvas'); } }]); return FastAverageColor; }(); return FastAverageColor; }))); /***/ }), /***/ 9756: /***/ (function(module) { /** * Memize options object. * * @typedef MemizeOptions * * @property {number} [maxSize] Maximum size of the cache. */ /** * Internal cache entry. * * @typedef MemizeCacheNode * * @property {?MemizeCacheNode|undefined} [prev] Previous node. * @property {?MemizeCacheNode|undefined} [next] Next node. * @property {Array<*>} args Function arguments for cache * entry. * @property {*} val Function result. */ /** * Properties of the enhanced function for controlling cache. * * @typedef MemizeMemoizedFunction * * @property {()=>void} clear Clear the cache. */ /** * Accepts a function to be memoized, and returns a new memoized function, with * optional options. * * @template {Function} F * * @param {F} fn Function to memoize. * @param {MemizeOptions} [options] Options object. * * @return {F & MemizeMemoizedFunction} Memoized function. */ function memize( fn, options ) { var size = 0; /** @type {?MemizeCacheNode|undefined} */ var head; /** @type {?MemizeCacheNode|undefined} */ var tail; options = options || {}; function memoized( /* ...args */ ) { var node = head, len = arguments.length, args, i; searchCache: while ( node ) { // Perform a shallow equality test to confirm that whether the node // under test is a candidate for the arguments passed. Two arrays // are shallowly equal if their length matches and each entry is // strictly equal between the two sets. Avoid abstracting to a // function which could incur an arguments leaking deoptimization. // Check whether node arguments match arguments length if ( node.args.length !== arguments.length ) { node = node.next; continue; } // Check whether node arguments match arguments values for ( i = 0; i < len; i++ ) { if ( node.args[ i ] !== arguments[ i ] ) { node = node.next; continue searchCache; } } // At this point we can assume we've found a match // Surface matched node to head if not already if ( node !== head ) { // As tail, shift to previous. Must only shift if not also // head, since if both head and tail, there is no previous. if ( node === tail ) { tail = node.prev; } // Adjust siblings to point to each other. If node was tail, // this also handles new tail's empty `next` assignment. /** @type {MemizeCacheNode} */ ( node.prev ).next = node.next; if ( node.next ) { node.next.prev = node.prev; } node.next = head; node.prev = null; /** @type {MemizeCacheNode} */ ( head ).prev = node; head = node; } // Return immediately return node.val; } // No cached value found. Continue to insertion phase: // Create a copy of arguments (avoid leaking deoptimization) args = new Array( len ); for ( i = 0; i < len; i++ ) { args[ i ] = arguments[ i ]; } node = { args: args, // Generate the result from original function val: fn.apply( null, args ), }; // Don't need to check whether node is already head, since it would // have been returned above already if it was // Shift existing head down list if ( head ) { head.prev = node; node.next = head; } else { // If no head, follows that there's no tail (at initial or reset) tail = node; } // Trim tail if we're reached max size and are pending cache insertion if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) { tail = /** @type {MemizeCacheNode} */ ( tail ).prev; /** @type {MemizeCacheNode} */ ( tail ).next = null; } else { size++; } head = node; return node.val; } memoized.clear = function() { head = null; tail = null; size = 0; }; if ( false ) {} // Ignore reason: There's not a clear solution to create an intersection of // the function with additional properties, where the goal is to retain the // function signature of the incoming argument and add control properties // on the return value. // @ts-ignore return memoized; } module.exports = memize; /***/ }), /***/ 4793: /***/ (function(module) { var characterMap = { "À": "A", "Á": "A", "Â": "A", "Ã": "A", "Ä": "A", "Å": "A", "Ấ": "A", "Ắ": "A", "Ẳ": "A", "Ẵ": "A", "Ặ": "A", "Æ": "AE", "Ầ": "A", "Ằ": "A", "Ȃ": "A", "Ç": "C", "Ḉ": "C", "È": "E", "É": "E", "Ê": "E", "Ë": "E", "Ế": "E", "Ḗ": "E", "Ề": "E", "Ḕ": "E", "Ḝ": "E", "Ȇ": "E", "Ì": "I", "Í": "I", "Î": "I", "Ï": "I", "Ḯ": "I", "Ȋ": "I", "Ð": "D", "Ñ": "N", "Ò": "O", "Ó": "O", "Ô": "O", "Õ": "O", "Ö": "O", "Ø": "O", "Ố": "O", "Ṍ": "O", "Ṓ": "O", "Ȏ": "O", "Ù": "U", "Ú": "U", "Û": "U", "Ü": "U", "Ý": "Y", "à": "a", "á": "a", "â": "a", "ã": "a", "ä": "a", "å": "a", "ấ": "a", "ắ": "a", "ẳ": "a", "ẵ": "a", "ặ": "a", "æ": "ae", "ầ": "a", "ằ": "a", "ȃ": "a", "ç": "c", "ḉ": "c", "è": "e", "é": "e", "ê": "e", "ë": "e", "ế": "e", "ḗ": "e", "ề": "e", "ḕ": "e", "ḝ": "e", "ȇ": "e", "ì": "i", "í": "i", "î": "i", "ï": "i", "ḯ": "i", "ȋ": "i", "ð": "d", "ñ": "n", "ò": "o", "ó": "o", "ô": "o", "õ": "o", "ö": "o", "ø": "o", "ố": "o", "ṍ": "o", "ṓ": "o", "ȏ": "o", "ù": "u", "ú": "u", "û": "u", "ü": "u", "ý": "y", "ÿ": "y", "Ā": "A", "ā": "a", "Ă": "A", "ă": "a", "Ą": "A", "ą": "a", "Ć": "C", "ć": "c", "Ĉ": "C", "ĉ": "c", "Ċ": "C", "ċ": "c", "Č": "C", "č": "c", "C̆": "C", "c̆": "c", "Ď": "D", "ď": "d", "Đ": "D", "đ": "d", "Ē": "E", "ē": "e", "Ĕ": "E", "ĕ": "e", "Ė": "E", "ė": "e", "Ę": "E", "ę": "e", "Ě": "E", "ě": "e", "Ĝ": "G", "Ǵ": "G", "ĝ": "g", "ǵ": "g", "Ğ": "G", "ğ": "g", "Ġ": "G", "ġ": "g", "Ģ": "G", "ģ": "g", "Ĥ": "H", "ĥ": "h", "Ħ": "H", "ħ": "h", "Ḫ": "H", "ḫ": "h", "Ĩ": "I", "ĩ": "i", "Ī": "I", "ī": "i", "Ĭ": "I", "ĭ": "i", "Į": "I", "į": "i", "İ": "I", "ı": "i", "IJ": "IJ", "ij": "ij", "Ĵ": "J", "ĵ": "j", "Ķ": "K", "ķ": "k", "Ḱ": "K", "ḱ": "k", "K̆": "K", "k̆": "k", "Ĺ": "L", "ĺ": "l", "Ļ": "L", "ļ": "l", "Ľ": "L", "ľ": "l", "Ŀ": "L", "ŀ": "l", "Ł": "l", "ł": "l", "Ḿ": "M", "ḿ": "m", "M̆": "M", "m̆": "m", "Ń": "N", "ń": "n", "Ņ": "N", "ņ": "n", "Ň": "N", "ň": "n", "ʼn": "n", "N̆": "N", "n̆": "n", "Ō": "O", "ō": "o", "Ŏ": "O", "ŏ": "o", "Ő": "O", "ő": "o", "Œ": "OE", "œ": "oe", "P̆": "P", "p̆": "p", "Ŕ": "R", "ŕ": "r", "Ŗ": "R", "ŗ": "r", "Ř": "R", "ř": "r", "R̆": "R", "r̆": "r", "Ȓ": "R", "ȓ": "r", "Ś": "S", "ś": "s", "Ŝ": "S", "ŝ": "s", "Ş": "S", "Ș": "S", "ș": "s", "ş": "s", "Š": "S", "š": "s", "Ţ": "T", "ţ": "t", "ț": "t", "Ț": "T", "Ť": "T", "ť": "t", "Ŧ": "T", "ŧ": "t", "T̆": "T", "t̆": "t", "Ũ": "U", "ũ": "u", "Ū": "U", "ū": "u", "Ŭ": "U", "ŭ": "u", "Ů": "U", "ů": "u", "Ű": "U", "ű": "u", "Ų": "U", "ų": "u", "Ȗ": "U", "ȗ": "u", "V̆": "V", "v̆": "v", "Ŵ": "W", "ŵ": "w", "Ẃ": "W", "ẃ": "w", "X̆": "X", "x̆": "x", "Ŷ": "Y", "ŷ": "y", "Ÿ": "Y", "Y̆": "Y", "y̆": "y", "Ź": "Z", "ź": "z", "Ż": "Z", "ż": "z", "Ž": "Z", "ž": "z", "ſ": "s", "ƒ": "f", "Ơ": "O", "ơ": "o", "Ư": "U", "ư": "u", "Ǎ": "A", "ǎ": "a", "Ǐ": "I", "ǐ": "i", "Ǒ": "O", "ǒ": "o", "Ǔ": "U", "ǔ": "u", "Ǖ": "U", "ǖ": "u", "Ǘ": "U", "ǘ": "u", "Ǚ": "U", "ǚ": "u", "Ǜ": "U", "ǜ": "u", "Ứ": "U", "ứ": "u", "Ṹ": "U", "ṹ": "u", "Ǻ": "A", "ǻ": "a", "Ǽ": "AE", "ǽ": "ae", "Ǿ": "O", "ǿ": "o", "Þ": "TH", "þ": "th", "Ṕ": "P", "ṕ": "p", "Ṥ": "S", "ṥ": "s", "X́": "X", "x́": "x", "Ѓ": "Г", "ѓ": "г", "Ќ": "К", "ќ": "к", "A̋": "A", "a̋": "a", "E̋": "E", "e̋": "e", "I̋": "I", "i̋": "i", "Ǹ": "N", "ǹ": "n", "Ồ": "O", "ồ": "o", "Ṑ": "O", "ṑ": "o", "Ừ": "U", "ừ": "u", "Ẁ": "W", "ẁ": "w", "Ỳ": "Y", "ỳ": "y", "Ȁ": "A", "ȁ": "a", "Ȅ": "E", "ȅ": "e", "Ȉ": "I", "ȉ": "i", "Ȍ": "O", "ȍ": "o", "Ȑ": "R", "ȑ": "r", "Ȕ": "U", "ȕ": "u", "B̌": "B", "b̌": "b", "Č̣": "C", "č̣": "c", "Ê̌": "E", "ê̌": "e", "F̌": "F", "f̌": "f", "Ǧ": "G", "ǧ": "g", "Ȟ": "H", "ȟ": "h", "J̌": "J", "ǰ": "j", "Ǩ": "K", "ǩ": "k", "M̌": "M", "m̌": "m", "P̌": "P", "p̌": "p", "Q̌": "Q", "q̌": "q", "Ř̩": "R", "ř̩": "r", "Ṧ": "S", "ṧ": "s", "V̌": "V", "v̌": "v", "W̌": "W", "w̌": "w", "X̌": "X", "x̌": "x", "Y̌": "Y", "y̌": "y", "A̧": "A", "a̧": "a", "B̧": "B", "b̧": "b", "Ḑ": "D", "ḑ": "d", "Ȩ": "E", "ȩ": "e", "Ɛ̧": "E", "ɛ̧": "e", "Ḩ": "H", "ḩ": "h", "I̧": "I", "i̧": "i", "Ɨ̧": "I", "ɨ̧": "i", "M̧": "M", "m̧": "m", "O̧": "O", "o̧": "o", "Q̧": "Q", "q̧": "q", "U̧": "U", "u̧": "u", "X̧": "X", "x̧": "x", "Z̧": "Z", "z̧": "z", }; var chars = Object.keys(characterMap).join('|'); var allAccents = new RegExp(chars, 'g'); var firstAccent = new RegExp(chars, ''); function matcher(match) { return characterMap[match]; } var removeAccents = function(string) { return string.replace(allAccents, matcher); }; var hasAccents = function(string) { return !!string.match(firstAccent); }; module.exports = removeAccents; module.exports.has = hasAccents; module.exports.remove = removeAccents; /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ if (cachedModule !== undefined) { /******/ return cachedModule.exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/compat get default export */ /******/ !function() { /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function() { return module['default']; } : /******/ function() { return module; }; /******/ __webpack_require__.d(getter, { a: getter }); /******/ return getter; /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/define property getters */ /******/ !function() { /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = function(exports, definition) { /******/ for(var key in definition) { /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); /******/ } /******/ } /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ /******/ !function() { /******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } /******/ }(); /******/ /******/ /* webpack/runtime/make namespace object */ /******/ !function() { /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ }(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry need to be wrapped in an IIFE because it need to be in strict mode. !function() { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, { "__experimentalGetCoreBlocks": function() { return /* binding */ __experimentalGetCoreBlocks; }, "__experimentalRegisterExperimentalCoreBlocks": function() { return /* binding */ __experimentalRegisterExperimentalCoreBlocks; }, "registerCoreBlocks": function() { return /* binding */ registerCoreBlocks; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/archives/index.js var archives_namespaceObject = {}; __webpack_require__.r(archives_namespaceObject); __webpack_require__.d(archives_namespaceObject, { "init": function() { return init; }, "metadata": function() { return metadata; }, "name": function() { return archives_name; }, "settings": function() { return settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/avatar/index.js var avatar_namespaceObject = {}; __webpack_require__.r(avatar_namespaceObject); __webpack_require__.d(avatar_namespaceObject, { "init": function() { return avatar_init; }, "metadata": function() { return avatar_metadata; }, "name": function() { return avatar_name; }, "settings": function() { return avatar_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/audio/index.js var build_module_audio_namespaceObject = {}; __webpack_require__.r(build_module_audio_namespaceObject); __webpack_require__.d(build_module_audio_namespaceObject, { "init": function() { return audio_init; }, "metadata": function() { return audio_metadata; }, "name": function() { return audio_name; }, "settings": function() { return audio_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/button/index.js var build_module_button_namespaceObject = {}; __webpack_require__.r(build_module_button_namespaceObject); __webpack_require__.d(build_module_button_namespaceObject, { "init": function() { return button_init; }, "metadata": function() { return button_metadata; }, "name": function() { return button_name; }, "settings": function() { return button_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/buttons/index.js var build_module_buttons_namespaceObject = {}; __webpack_require__.r(build_module_buttons_namespaceObject); __webpack_require__.d(build_module_buttons_namespaceObject, { "init": function() { return buttons_init; }, "metadata": function() { return buttons_metadata; }, "name": function() { return buttons_name; }, "settings": function() { return buttons_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/calendar/index.js var build_module_calendar_namespaceObject = {}; __webpack_require__.r(build_module_calendar_namespaceObject); __webpack_require__.d(build_module_calendar_namespaceObject, { "init": function() { return calendar_init; }, "metadata": function() { return calendar_metadata; }, "name": function() { return calendar_name; }, "settings": function() { return calendar_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/categories/index.js var categories_namespaceObject = {}; __webpack_require__.r(categories_namespaceObject); __webpack_require__.d(categories_namespaceObject, { "init": function() { return categories_init; }, "metadata": function() { return categories_metadata; }, "name": function() { return categories_name; }, "settings": function() { return categories_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/freeform/index.js var freeform_namespaceObject = {}; __webpack_require__.r(freeform_namespaceObject); __webpack_require__.d(freeform_namespaceObject, { "init": function() { return freeform_init; }, "metadata": function() { return freeform_metadata; }, "name": function() { return freeform_name; }, "settings": function() { return freeform_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/code/index.js var build_module_code_namespaceObject = {}; __webpack_require__.r(build_module_code_namespaceObject); __webpack_require__.d(build_module_code_namespaceObject, { "init": function() { return code_init; }, "metadata": function() { return code_metadata; }, "name": function() { return code_name; }, "settings": function() { return code_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/column/index.js var build_module_column_namespaceObject = {}; __webpack_require__.r(build_module_column_namespaceObject); __webpack_require__.d(build_module_column_namespaceObject, { "init": function() { return column_init; }, "metadata": function() { return column_metadata; }, "name": function() { return column_name; }, "settings": function() { return column_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/columns/index.js var build_module_columns_namespaceObject = {}; __webpack_require__.r(build_module_columns_namespaceObject); __webpack_require__.d(build_module_columns_namespaceObject, { "init": function() { return columns_init; }, "metadata": function() { return columns_metadata; }, "name": function() { return columns_name; }, "settings": function() { return columns_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comments/index.js var comments_namespaceObject = {}; __webpack_require__.r(comments_namespaceObject); __webpack_require__.d(comments_namespaceObject, { "init": function() { return comments_init; }, "metadata": function() { return comments_metadata; }, "name": function() { return comments_name; }, "settings": function() { return comments_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comment-author-avatar/index.js var build_module_comment_author_avatar_namespaceObject = {}; __webpack_require__.r(build_module_comment_author_avatar_namespaceObject); __webpack_require__.d(build_module_comment_author_avatar_namespaceObject, { "init": function() { return comment_author_avatar_init; }, "metadata": function() { return comment_author_avatar_metadata; }, "name": function() { return comment_author_avatar_name; }, "settings": function() { return comment_author_avatar_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comment-author-name/index.js var build_module_comment_author_name_namespaceObject = {}; __webpack_require__.r(build_module_comment_author_name_namespaceObject); __webpack_require__.d(build_module_comment_author_name_namespaceObject, { "init": function() { return comment_author_name_init; }, "metadata": function() { return comment_author_name_metadata; }, "name": function() { return comment_author_name_name; }, "settings": function() { return comment_author_name_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comment-content/index.js var build_module_comment_content_namespaceObject = {}; __webpack_require__.r(build_module_comment_content_namespaceObject); __webpack_require__.d(build_module_comment_content_namespaceObject, { "init": function() { return comment_content_init; }, "metadata": function() { return comment_content_metadata; }, "name": function() { return comment_content_name; }, "settings": function() { return comment_content_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comment-date/index.js var comment_date_namespaceObject = {}; __webpack_require__.r(comment_date_namespaceObject); __webpack_require__.d(comment_date_namespaceObject, { "init": function() { return comment_date_init; }, "metadata": function() { return comment_date_metadata; }, "name": function() { return comment_date_name; }, "settings": function() { return comment_date_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comment-edit-link/index.js var build_module_comment_edit_link_namespaceObject = {}; __webpack_require__.r(build_module_comment_edit_link_namespaceObject); __webpack_require__.d(build_module_comment_edit_link_namespaceObject, { "init": function() { return comment_edit_link_init; }, "metadata": function() { return comment_edit_link_metadata; }, "name": function() { return comment_edit_link_name; }, "settings": function() { return comment_edit_link_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comment-reply-link/index.js var build_module_comment_reply_link_namespaceObject = {}; __webpack_require__.r(build_module_comment_reply_link_namespaceObject); __webpack_require__.d(build_module_comment_reply_link_namespaceObject, { "init": function() { return comment_reply_link_init; }, "metadata": function() { return comment_reply_link_metadata; }, "name": function() { return comment_reply_link_name; }, "settings": function() { return comment_reply_link_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comment-template/index.js var comment_template_namespaceObject = {}; __webpack_require__.r(comment_template_namespaceObject); __webpack_require__.d(comment_template_namespaceObject, { "init": function() { return comment_template_init; }, "metadata": function() { return comment_template_metadata; }, "name": function() { return comment_template_name; }, "settings": function() { return comment_template_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comments-pagination-previous/index.js var comments_pagination_previous_namespaceObject = {}; __webpack_require__.r(comments_pagination_previous_namespaceObject); __webpack_require__.d(comments_pagination_previous_namespaceObject, { "init": function() { return comments_pagination_previous_init; }, "metadata": function() { return comments_pagination_previous_metadata; }, "name": function() { return comments_pagination_previous_name; }, "settings": function() { return comments_pagination_previous_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comments-pagination/index.js var comments_pagination_namespaceObject = {}; __webpack_require__.r(comments_pagination_namespaceObject); __webpack_require__.d(comments_pagination_namespaceObject, { "init": function() { return comments_pagination_init; }, "metadata": function() { return comments_pagination_metadata; }, "name": function() { return comments_pagination_name; }, "settings": function() { return comments_pagination_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comments-pagination-next/index.js var comments_pagination_next_namespaceObject = {}; __webpack_require__.r(comments_pagination_next_namespaceObject); __webpack_require__.d(comments_pagination_next_namespaceObject, { "init": function() { return comments_pagination_next_init; }, "metadata": function() { return comments_pagination_next_metadata; }, "name": function() { return comments_pagination_next_name; }, "settings": function() { return comments_pagination_next_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comments-pagination-numbers/index.js var comments_pagination_numbers_namespaceObject = {}; __webpack_require__.r(comments_pagination_numbers_namespaceObject); __webpack_require__.d(comments_pagination_numbers_namespaceObject, { "init": function() { return comments_pagination_numbers_init; }, "metadata": function() { return comments_pagination_numbers_metadata; }, "name": function() { return comments_pagination_numbers_name; }, "settings": function() { return comments_pagination_numbers_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/comments-title/index.js var comments_title_namespaceObject = {}; __webpack_require__.r(comments_title_namespaceObject); __webpack_require__.d(comments_title_namespaceObject, { "init": function() { return comments_title_init; }, "metadata": function() { return comments_title_metadata; }, "name": function() { return comments_title_name; }, "settings": function() { return comments_title_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/cover/index.js var build_module_cover_namespaceObject = {}; __webpack_require__.r(build_module_cover_namespaceObject); __webpack_require__.d(build_module_cover_namespaceObject, { "init": function() { return cover_init; }, "metadata": function() { return cover_metadata; }, "name": function() { return cover_name; }, "settings": function() { return cover_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/embed/index.js var embed_namespaceObject = {}; __webpack_require__.r(embed_namespaceObject); __webpack_require__.d(embed_namespaceObject, { "init": function() { return embed_init; }, "metadata": function() { return embed_metadata; }, "name": function() { return embed_name; }, "settings": function() { return embed_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/file/index.js var build_module_file_namespaceObject = {}; __webpack_require__.r(build_module_file_namespaceObject); __webpack_require__.d(build_module_file_namespaceObject, { "init": function() { return file_init; }, "metadata": function() { return file_metadata; }, "name": function() { return file_name; }, "settings": function() { return file_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/gallery/index.js var build_module_gallery_namespaceObject = {}; __webpack_require__.r(build_module_gallery_namespaceObject); __webpack_require__.d(build_module_gallery_namespaceObject, { "init": function() { return gallery_init; }, "metadata": function() { return gallery_metadata; }, "name": function() { return gallery_name; }, "settings": function() { return gallery_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/group/index.js var build_module_group_namespaceObject = {}; __webpack_require__.r(build_module_group_namespaceObject); __webpack_require__.d(build_module_group_namespaceObject, { "init": function() { return group_init; }, "metadata": function() { return group_metadata; }, "name": function() { return group_name; }, "settings": function() { return group_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/heading/index.js var build_module_heading_namespaceObject = {}; __webpack_require__.r(build_module_heading_namespaceObject); __webpack_require__.d(build_module_heading_namespaceObject, { "init": function() { return heading_init; }, "metadata": function() { return heading_metadata; }, "name": function() { return heading_name; }, "settings": function() { return heading_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/home-link/index.js var home_link_namespaceObject = {}; __webpack_require__.r(home_link_namespaceObject); __webpack_require__.d(home_link_namespaceObject, { "init": function() { return home_link_init; }, "metadata": function() { return home_link_metadata; }, "name": function() { return home_link_name; }, "settings": function() { return home_link_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/html/index.js var build_module_html_namespaceObject = {}; __webpack_require__.r(build_module_html_namespaceObject); __webpack_require__.d(build_module_html_namespaceObject, { "init": function() { return html_init; }, "metadata": function() { return html_metadata; }, "name": function() { return html_name; }, "settings": function() { return html_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/image/index.js var build_module_image_namespaceObject = {}; __webpack_require__.r(build_module_image_namespaceObject); __webpack_require__.d(build_module_image_namespaceObject, { "init": function() { return image_init; }, "metadata": function() { return image_metadata; }, "name": function() { return image_name; }, "settings": function() { return image_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/latest-comments/index.js var latest_comments_namespaceObject = {}; __webpack_require__.r(latest_comments_namespaceObject); __webpack_require__.d(latest_comments_namespaceObject, { "init": function() { return latest_comments_init; }, "metadata": function() { return latest_comments_metadata; }, "name": function() { return latest_comments_name; }, "settings": function() { return latest_comments_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/latest-posts/index.js var latest_posts_namespaceObject = {}; __webpack_require__.r(latest_posts_namespaceObject); __webpack_require__.d(latest_posts_namespaceObject, { "init": function() { return latest_posts_init; }, "metadata": function() { return latest_posts_metadata; }, "name": function() { return latest_posts_name; }, "settings": function() { return latest_posts_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/list/index.js var build_module_list_namespaceObject = {}; __webpack_require__.r(build_module_list_namespaceObject); __webpack_require__.d(build_module_list_namespaceObject, { "init": function() { return list_init; }, "metadata": function() { return list_metadata; }, "name": function() { return list_name; }, "settings": function() { return list_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/list-item/index.js var build_module_list_item_namespaceObject = {}; __webpack_require__.r(build_module_list_item_namespaceObject); __webpack_require__.d(build_module_list_item_namespaceObject, { "init": function() { return list_item_init; }, "metadata": function() { return list_item_metadata; }, "name": function() { return list_item_name; }, "settings": function() { return list_item_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/loginout/index.js var loginout_namespaceObject = {}; __webpack_require__.r(loginout_namespaceObject); __webpack_require__.d(loginout_namespaceObject, { "init": function() { return loginout_init; }, "metadata": function() { return loginout_metadata; }, "name": function() { return loginout_name; }, "settings": function() { return loginout_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/media-text/index.js var media_text_namespaceObject = {}; __webpack_require__.r(media_text_namespaceObject); __webpack_require__.d(media_text_namespaceObject, { "init": function() { return media_text_init; }, "metadata": function() { return media_text_metadata; }, "name": function() { return media_text_name; }, "settings": function() { return media_text_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/missing/index.js var missing_namespaceObject = {}; __webpack_require__.r(missing_namespaceObject); __webpack_require__.d(missing_namespaceObject, { "init": function() { return missing_init; }, "metadata": function() { return missing_metadata; }, "name": function() { return missing_name; }, "settings": function() { return missing_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/more/index.js var build_module_more_namespaceObject = {}; __webpack_require__.r(build_module_more_namespaceObject); __webpack_require__.d(build_module_more_namespaceObject, { "init": function() { return more_init; }, "metadata": function() { return more_metadata; }, "name": function() { return more_name; }, "settings": function() { return more_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/navigation/index.js var build_module_navigation_namespaceObject = {}; __webpack_require__.r(build_module_navigation_namespaceObject); __webpack_require__.d(build_module_navigation_namespaceObject, { "init": function() { return navigation_init; }, "metadata": function() { return navigation_metadata; }, "name": function() { return navigation_name; }, "settings": function() { return navigation_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/navigation-link/index.js var navigation_link_namespaceObject = {}; __webpack_require__.r(navigation_link_namespaceObject); __webpack_require__.d(navigation_link_namespaceObject, { "init": function() { return navigation_link_init; }, "metadata": function() { return navigation_link_metadata; }, "name": function() { return navigation_link_name; }, "settings": function() { return navigation_link_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/navigation-submenu/index.js var navigation_submenu_namespaceObject = {}; __webpack_require__.r(navigation_submenu_namespaceObject); __webpack_require__.d(navigation_submenu_namespaceObject, { "init": function() { return navigation_submenu_init; }, "metadata": function() { return navigation_submenu_metadata; }, "name": function() { return navigation_submenu_name; }, "settings": function() { return navigation_submenu_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/nextpage/index.js var nextpage_namespaceObject = {}; __webpack_require__.r(nextpage_namespaceObject); __webpack_require__.d(nextpage_namespaceObject, { "init": function() { return nextpage_init; }, "metadata": function() { return nextpage_metadata; }, "name": function() { return nextpage_name; }, "settings": function() { return nextpage_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/pattern/index.js var pattern_namespaceObject = {}; __webpack_require__.r(pattern_namespaceObject); __webpack_require__.d(pattern_namespaceObject, { "init": function() { return pattern_init; }, "metadata": function() { return pattern_metadata; }, "name": function() { return pattern_name; }, "settings": function() { return pattern_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/page-list/index.js var page_list_namespaceObject = {}; __webpack_require__.r(page_list_namespaceObject); __webpack_require__.d(page_list_namespaceObject, { "init": function() { return page_list_init; }, "metadata": function() { return page_list_metadata; }, "name": function() { return page_list_name; }, "settings": function() { return page_list_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/paragraph/index.js var build_module_paragraph_namespaceObject = {}; __webpack_require__.r(build_module_paragraph_namespaceObject); __webpack_require__.d(build_module_paragraph_namespaceObject, { "init": function() { return paragraph_init; }, "metadata": function() { return paragraph_metadata; }, "name": function() { return paragraph_name; }, "settings": function() { return paragraph_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-author/index.js var build_module_post_author_namespaceObject = {}; __webpack_require__.r(build_module_post_author_namespaceObject); __webpack_require__.d(build_module_post_author_namespaceObject, { "init": function() { return post_author_init; }, "metadata": function() { return post_author_metadata; }, "name": function() { return post_author_name; }, "settings": function() { return post_author_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-author-name/index.js var post_author_name_namespaceObject = {}; __webpack_require__.r(post_author_name_namespaceObject); __webpack_require__.d(post_author_name_namespaceObject, { "init": function() { return post_author_name_init; }, "metadata": function() { return post_author_name_metadata; }, "name": function() { return post_author_name_name; }, "settings": function() { return post_author_name_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-author-biography/index.js var post_author_biography_namespaceObject = {}; __webpack_require__.r(post_author_biography_namespaceObject); __webpack_require__.d(post_author_biography_namespaceObject, { "init": function() { return post_author_biography_init; }, "metadata": function() { return post_author_biography_metadata; }, "name": function() { return post_author_biography_name; }, "settings": function() { return post_author_biography_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-comment/index.js var post_comment_namespaceObject = {}; __webpack_require__.r(post_comment_namespaceObject); __webpack_require__.d(post_comment_namespaceObject, { "init": function() { return post_comment_init; }, "metadata": function() { return post_comment_metadata; }, "name": function() { return post_comment_name; }, "settings": function() { return post_comment_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-comments-count/index.js var build_module_post_comments_count_namespaceObject = {}; __webpack_require__.r(build_module_post_comments_count_namespaceObject); __webpack_require__.d(build_module_post_comments_count_namespaceObject, { "init": function() { return post_comments_count_init; }, "metadata": function() { return post_comments_count_metadata; }, "name": function() { return post_comments_count_name; }, "settings": function() { return post_comments_count_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-comments-form/index.js var build_module_post_comments_form_namespaceObject = {}; __webpack_require__.r(build_module_post_comments_form_namespaceObject); __webpack_require__.d(build_module_post_comments_form_namespaceObject, { "init": function() { return post_comments_form_init; }, "metadata": function() { return post_comments_form_metadata; }, "name": function() { return post_comments_form_name; }, "settings": function() { return post_comments_form_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-comments-link/index.js var post_comments_link_namespaceObject = {}; __webpack_require__.r(post_comments_link_namespaceObject); __webpack_require__.d(post_comments_link_namespaceObject, { "init": function() { return post_comments_link_init; }, "metadata": function() { return post_comments_link_metadata; }, "name": function() { return post_comments_link_name; }, "settings": function() { return post_comments_link_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-content/index.js var build_module_post_content_namespaceObject = {}; __webpack_require__.r(build_module_post_content_namespaceObject); __webpack_require__.d(build_module_post_content_namespaceObject, { "init": function() { return post_content_init; }, "metadata": function() { return post_content_metadata; }, "name": function() { return post_content_name; }, "settings": function() { return post_content_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-date/index.js var build_module_post_date_namespaceObject = {}; __webpack_require__.r(build_module_post_date_namespaceObject); __webpack_require__.d(build_module_post_date_namespaceObject, { "init": function() { return post_date_init; }, "metadata": function() { return post_date_metadata; }, "name": function() { return post_date_name; }, "settings": function() { return post_date_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-excerpt/index.js var build_module_post_excerpt_namespaceObject = {}; __webpack_require__.r(build_module_post_excerpt_namespaceObject); __webpack_require__.d(build_module_post_excerpt_namespaceObject, { "init": function() { return post_excerpt_init; }, "metadata": function() { return post_excerpt_metadata; }, "name": function() { return post_excerpt_name; }, "settings": function() { return post_excerpt_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-featured-image/index.js var build_module_post_featured_image_namespaceObject = {}; __webpack_require__.r(build_module_post_featured_image_namespaceObject); __webpack_require__.d(build_module_post_featured_image_namespaceObject, { "init": function() { return post_featured_image_init; }, "metadata": function() { return post_featured_image_metadata; }, "name": function() { return post_featured_image_name; }, "settings": function() { return post_featured_image_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-navigation-link/index.js var post_navigation_link_namespaceObject = {}; __webpack_require__.r(post_navigation_link_namespaceObject); __webpack_require__.d(post_navigation_link_namespaceObject, { "init": function() { return post_navigation_link_init; }, "metadata": function() { return post_navigation_link_metadata; }, "name": function() { return post_navigation_link_name; }, "settings": function() { return post_navigation_link_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-template/index.js var post_template_namespaceObject = {}; __webpack_require__.r(post_template_namespaceObject); __webpack_require__.d(post_template_namespaceObject, { "init": function() { return post_template_init; }, "metadata": function() { return post_template_metadata; }, "name": function() { return post_template_name; }, "settings": function() { return post_template_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-terms/index.js var build_module_post_terms_namespaceObject = {}; __webpack_require__.r(build_module_post_terms_namespaceObject); __webpack_require__.d(build_module_post_terms_namespaceObject, { "init": function() { return post_terms_init; }, "metadata": function() { return post_terms_metadata; }, "name": function() { return post_terms_name; }, "settings": function() { return post_terms_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/post-title/index.js var post_title_namespaceObject = {}; __webpack_require__.r(post_title_namespaceObject); __webpack_require__.d(post_title_namespaceObject, { "init": function() { return post_title_init; }, "metadata": function() { return post_title_metadata; }, "name": function() { return post_title_name; }, "settings": function() { return post_title_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/preformatted/index.js var build_module_preformatted_namespaceObject = {}; __webpack_require__.r(build_module_preformatted_namespaceObject); __webpack_require__.d(build_module_preformatted_namespaceObject, { "init": function() { return preformatted_init; }, "metadata": function() { return preformatted_metadata; }, "name": function() { return preformatted_name; }, "settings": function() { return preformatted_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/pullquote/index.js var build_module_pullquote_namespaceObject = {}; __webpack_require__.r(build_module_pullquote_namespaceObject); __webpack_require__.d(build_module_pullquote_namespaceObject, { "init": function() { return pullquote_init; }, "metadata": function() { return pullquote_metadata; }, "name": function() { return pullquote_name; }, "settings": function() { return pullquote_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query/index.js var query_namespaceObject = {}; __webpack_require__.r(query_namespaceObject); __webpack_require__.d(query_namespaceObject, { "init": function() { return query_init; }, "metadata": function() { return query_metadata; }, "name": function() { return query_name; }, "settings": function() { return query_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-no-results/index.js var query_no_results_namespaceObject = {}; __webpack_require__.r(query_no_results_namespaceObject); __webpack_require__.d(query_no_results_namespaceObject, { "init": function() { return query_no_results_init; }, "metadata": function() { return query_no_results_metadata; }, "name": function() { return query_no_results_name; }, "settings": function() { return query_no_results_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination/index.js var build_module_query_pagination_namespaceObject = {}; __webpack_require__.r(build_module_query_pagination_namespaceObject); __webpack_require__.d(build_module_query_pagination_namespaceObject, { "init": function() { return query_pagination_init; }, "metadata": function() { return query_pagination_metadata; }, "name": function() { return query_pagination_name; }, "settings": function() { return query_pagination_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination-next/index.js var build_module_query_pagination_next_namespaceObject = {}; __webpack_require__.r(build_module_query_pagination_next_namespaceObject); __webpack_require__.d(build_module_query_pagination_next_namespaceObject, { "init": function() { return query_pagination_next_init; }, "metadata": function() { return query_pagination_next_metadata; }, "name": function() { return query_pagination_next_name; }, "settings": function() { return query_pagination_next_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination-numbers/index.js var build_module_query_pagination_numbers_namespaceObject = {}; __webpack_require__.r(build_module_query_pagination_numbers_namespaceObject); __webpack_require__.d(build_module_query_pagination_numbers_namespaceObject, { "init": function() { return query_pagination_numbers_init; }, "metadata": function() { return query_pagination_numbers_metadata; }, "name": function() { return query_pagination_numbers_name; }, "settings": function() { return query_pagination_numbers_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-pagination-previous/index.js var build_module_query_pagination_previous_namespaceObject = {}; __webpack_require__.r(build_module_query_pagination_previous_namespaceObject); __webpack_require__.d(build_module_query_pagination_previous_namespaceObject, { "init": function() { return query_pagination_previous_init; }, "metadata": function() { return query_pagination_previous_metadata; }, "name": function() { return query_pagination_previous_name; }, "settings": function() { return query_pagination_previous_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/query-title/index.js var query_title_namespaceObject = {}; __webpack_require__.r(query_title_namespaceObject); __webpack_require__.d(query_title_namespaceObject, { "init": function() { return query_title_init; }, "metadata": function() { return query_title_metadata; }, "name": function() { return query_title_name; }, "settings": function() { return query_title_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/quote/index.js var build_module_quote_namespaceObject = {}; __webpack_require__.r(build_module_quote_namespaceObject); __webpack_require__.d(build_module_quote_namespaceObject, { "init": function() { return quote_init; }, "metadata": function() { return quote_metadata; }, "name": function() { return quote_name; }, "settings": function() { return quote_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/block/index.js var block_namespaceObject = {}; __webpack_require__.r(block_namespaceObject); __webpack_require__.d(block_namespaceObject, { "init": function() { return block_init; }, "metadata": function() { return block_metadata; }, "name": function() { return block_name; }, "settings": function() { return block_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/read-more/index.js var read_more_namespaceObject = {}; __webpack_require__.r(read_more_namespaceObject); __webpack_require__.d(read_more_namespaceObject, { "init": function() { return read_more_init; }, "metadata": function() { return read_more_metadata; }, "name": function() { return read_more_name; }, "settings": function() { return read_more_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/rss/index.js var build_module_rss_namespaceObject = {}; __webpack_require__.r(build_module_rss_namespaceObject); __webpack_require__.d(build_module_rss_namespaceObject, { "init": function() { return rss_init; }, "metadata": function() { return rss_metadata; }, "name": function() { return rss_name; }, "settings": function() { return rss_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/search/index.js var build_module_search_namespaceObject = {}; __webpack_require__.r(build_module_search_namespaceObject); __webpack_require__.d(build_module_search_namespaceObject, { "init": function() { return search_init; }, "metadata": function() { return search_metadata; }, "name": function() { return search_name; }, "settings": function() { return search_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/separator/index.js var build_module_separator_namespaceObject = {}; __webpack_require__.r(build_module_separator_namespaceObject); __webpack_require__.d(build_module_separator_namespaceObject, { "init": function() { return separator_init; }, "metadata": function() { return separator_metadata; }, "name": function() { return separator_name; }, "settings": function() { return separator_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/shortcode/index.js var build_module_shortcode_namespaceObject = {}; __webpack_require__.r(build_module_shortcode_namespaceObject); __webpack_require__.d(build_module_shortcode_namespaceObject, { "init": function() { return shortcode_init; }, "metadata": function() { return shortcode_metadata; }, "name": function() { return shortcode_name; }, "settings": function() { return shortcode_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/site-logo/index.js var build_module_site_logo_namespaceObject = {}; __webpack_require__.r(build_module_site_logo_namespaceObject); __webpack_require__.d(build_module_site_logo_namespaceObject, { "init": function() { return site_logo_init; }, "metadata": function() { return site_logo_metadata; }, "name": function() { return site_logo_name; }, "settings": function() { return site_logo_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/site-tagline/index.js var site_tagline_namespaceObject = {}; __webpack_require__.r(site_tagline_namespaceObject); __webpack_require__.d(site_tagline_namespaceObject, { "init": function() { return site_tagline_init; }, "metadata": function() { return site_tagline_metadata; }, "name": function() { return site_tagline_name; }, "settings": function() { return site_tagline_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/site-title/index.js var site_title_namespaceObject = {}; __webpack_require__.r(site_title_namespaceObject); __webpack_require__.d(site_title_namespaceObject, { "init": function() { return site_title_init; }, "metadata": function() { return site_title_metadata; }, "name": function() { return site_title_name; }, "settings": function() { return site_title_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/social-link/index.js var social_link_namespaceObject = {}; __webpack_require__.r(social_link_namespaceObject); __webpack_require__.d(social_link_namespaceObject, { "init": function() { return social_link_init; }, "metadata": function() { return social_link_metadata; }, "name": function() { return social_link_name; }, "settings": function() { return social_link_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/social-links/index.js var social_links_namespaceObject = {}; __webpack_require__.r(social_links_namespaceObject); __webpack_require__.d(social_links_namespaceObject, { "init": function() { return social_links_init; }, "metadata": function() { return social_links_metadata; }, "name": function() { return social_links_name; }, "settings": function() { return social_links_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/spacer/index.js var spacer_namespaceObject = {}; __webpack_require__.r(spacer_namespaceObject); __webpack_require__.d(spacer_namespaceObject, { "init": function() { return spacer_init; }, "metadata": function() { return spacer_metadata; }, "name": function() { return spacer_name; }, "settings": function() { return spacer_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/table/index.js var build_module_table_namespaceObject = {}; __webpack_require__.r(build_module_table_namespaceObject); __webpack_require__.d(build_module_table_namespaceObject, { "init": function() { return table_init; }, "metadata": function() { return table_metadata; }, "name": function() { return table_name; }, "settings": function() { return table_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/table-of-contents/index.js var table_of_contents_namespaceObject = {}; __webpack_require__.r(table_of_contents_namespaceObject); __webpack_require__.d(table_of_contents_namespaceObject, { "init": function() { return table_of_contents_init; }, "metadata": function() { return table_of_contents_metadata; }, "name": function() { return table_of_contents_name; }, "settings": function() { return table_of_contents_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/tag-cloud/index.js var tag_cloud_namespaceObject = {}; __webpack_require__.r(tag_cloud_namespaceObject); __webpack_require__.d(tag_cloud_namespaceObject, { "init": function() { return tag_cloud_init; }, "metadata": function() { return tag_cloud_metadata; }, "name": function() { return tag_cloud_name; }, "settings": function() { return tag_cloud_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/template-part/index.js var template_part_namespaceObject = {}; __webpack_require__.r(template_part_namespaceObject); __webpack_require__.d(template_part_namespaceObject, { "init": function() { return template_part_init; }, "metadata": function() { return template_part_metadata; }, "name": function() { return template_part_name; }, "settings": function() { return template_part_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/term-description/index.js var build_module_term_description_namespaceObject = {}; __webpack_require__.r(build_module_term_description_namespaceObject); __webpack_require__.d(build_module_term_description_namespaceObject, { "init": function() { return term_description_init; }, "metadata": function() { return term_description_metadata; }, "name": function() { return term_description_name; }, "settings": function() { return term_description_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/text-columns/index.js var text_columns_namespaceObject = {}; __webpack_require__.r(text_columns_namespaceObject); __webpack_require__.d(text_columns_namespaceObject, { "init": function() { return text_columns_init; }, "metadata": function() { return text_columns_metadata; }, "name": function() { return text_columns_name; }, "settings": function() { return text_columns_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/verse/index.js var build_module_verse_namespaceObject = {}; __webpack_require__.r(build_module_verse_namespaceObject); __webpack_require__.d(build_module_verse_namespaceObject, { "init": function() { return verse_init; }, "metadata": function() { return verse_metadata; }, "name": function() { return verse_name; }, "settings": function() { return verse_settings; } }); // NAMESPACE OBJECT: ./node_modules/@wordpress/block-library/build-module/video/index.js var build_module_video_namespaceObject = {}; __webpack_require__.r(build_module_video_namespaceObject); __webpack_require__.d(build_module_video_namespaceObject, { "init": function() { return video_init; }, "metadata": function() { return video_metadata; }, "name": function() { return video_name; }, "settings": function() { return video_settings; } }); ;// CONCATENATED MODULE: external ["wp","blocks"] var external_wp_blocks_namespaceObject = window["wp"]["blocks"]; ;// CONCATENATED MODULE: external ["wp","element"] var external_wp_element_namespaceObject = window["wp"]["element"]; ;// CONCATENATED MODULE: external ["wp","primitives"] var external_wp_primitives_namespaceObject = window["wp"]["primitives"]; ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/archive.js /** * WordPress dependencies */ const archive = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_archive = (archive); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/utils/init-block.js /** * WordPress dependencies */ /** * Function to register an individual block. * * @param {Object} block The block to be registered. * * @return {?WPBlockType} The block, if it has been successfully registered; * otherwise `undefined`. */ function initBlock(block) { if (!block) { return; } const { metadata, settings, name } = block; return (0,external_wp_blocks_namespaceObject.registerBlockType)({ name, ...metadata }, settings); } ;// CONCATENATED MODULE: external ["wp","components"] var external_wp_components_namespaceObject = window["wp"]["components"]; ;// CONCATENATED MODULE: external ["wp","i18n"] var external_wp_i18n_namespaceObject = window["wp"]["i18n"]; ;// CONCATENATED MODULE: external ["wp","blockEditor"] var external_wp_blockEditor_namespaceObject = window["wp"]["blockEditor"]; ;// CONCATENATED MODULE: external ["wp","serverSideRender"] var external_wp_serverSideRender_namespaceObject = window["wp"]["serverSideRender"]; var external_wp_serverSideRender_default = /*#__PURE__*/__webpack_require__.n(external_wp_serverSideRender_namespaceObject); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/archives/edit.js /** * WordPress dependencies */ function ArchivesEdit(_ref) { let { attributes, setAttributes } = _ref; const { showLabel, showPostCounts, displayAsDropdown, type } = attributes; return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.PanelBody, { title: (0,external_wp_i18n_namespaceObject.__)('Settings') }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Display as dropdown'), checked: displayAsDropdown, onChange: () => setAttributes({ displayAsDropdown: !displayAsDropdown }) }), displayAsDropdown && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Show label'), checked: showLabel, onChange: () => setAttributes({ showLabel: !showLabel }) }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Show post counts'), checked: showPostCounts, onChange: () => setAttributes({ showPostCounts: !showPostCounts }) }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SelectControl, { label: (0,external_wp_i18n_namespaceObject.__)('Group by:'), options: [{ label: (0,external_wp_i18n_namespaceObject.__)('Year'), value: 'yearly' }, { label: (0,external_wp_i18n_namespaceObject.__)('Month'), value: 'monthly' }, { label: (0,external_wp_i18n_namespaceObject.__)('Week'), value: 'weekly' }, { label: (0,external_wp_i18n_namespaceObject.__)('Day'), value: 'daily' }], value: type, onChange: value => setAttributes({ type: value }) }))), (0,external_wp_element_namespaceObject.createElement)("div", (0,external_wp_blockEditor_namespaceObject.useBlockProps)(), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Disabled, null, (0,external_wp_element_namespaceObject.createElement)((external_wp_serverSideRender_default()), { block: "core/archives", attributes: attributes })))); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/archives/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/archives", title: "Archives", category: "widgets", description: "Display a date archive of your posts.", textdomain: "default", attributes: { displayAsDropdown: { type: "boolean", "default": false }, showLabel: { type: "boolean", "default": true }, showPostCounts: { type: "boolean", "default": false }, type: { type: "string", "default": "monthly" } }, supports: { align: true, html: false, spacing: { margin: true, padding: true }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } } }, editorStyle: "wp-block-archives-editor" }; const { name: archives_name } = metadata; const settings = { icon: library_archive, example: {}, edit: ArchivesEdit }; const init = () => initBlock({ name: archives_name, metadata, settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/comment-author-avatar.js /** * WordPress dependencies */ const commentAuthorAvatar = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { fillRule: "evenodd", d: "M7.25 16.437a6.5 6.5 0 1 1 9.5 0V16A2.75 2.75 0 0 0 14 13.25h-4A2.75 2.75 0 0 0 7.25 16v.437Zm1.5 1.193a6.47 6.47 0 0 0 3.25.87 6.47 6.47 0 0 0 3.25-.87V16c0-.69-.56-1.25-1.25-1.25h-4c-.69 0-1.25.56-1.25 1.25v1.63ZM4 12a8 8 0 1 1 16 0 8 8 0 0 1-16 0Zm10-2a2 2 0 1 1-4 0 2 2 0 0 1 4 0Z", clipRule: "evenodd" })); /* harmony default export */ var comment_author_avatar = (commentAuthorAvatar); ;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } // EXTERNAL MODULE: ./node_modules/classnames/index.js var classnames = __webpack_require__(4403); var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames); ;// CONCATENATED MODULE: external ["wp","url"] var external_wp_url_namespaceObject = window["wp"]["url"]; ;// CONCATENATED MODULE: external ["wp","coreData"] var external_wp_coreData_namespaceObject = window["wp"]["coreData"]; ;// CONCATENATED MODULE: external ["wp","data"] var external_wp_data_namespaceObject = window["wp"]["data"]; ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/avatar/hooks.js /** * WordPress dependencies */ function getAvatarSizes(sizes) { const minSize = sizes ? sizes[0] : 24; const maxSize = sizes ? sizes[sizes.length - 1] : 96; const maxSizeBuffer = Math.floor(maxSize * 2.5); return { minSize, maxSize: maxSizeBuffer }; } function useDefaultAvatar() { const { avatarURL: defaultAvatarUrl } = (0,external_wp_data_namespaceObject.useSelect)(select => { const { getSettings } = select(external_wp_blockEditor_namespaceObject.store); const { __experimentalDiscussionSettings } = getSettings(); return __experimentalDiscussionSettings; }); return defaultAvatarUrl; } function useCommentAvatar(_ref) { let { commentId } = _ref; const [avatars] = (0,external_wp_coreData_namespaceObject.useEntityProp)('root', 'comment', 'author_avatar_urls', commentId); const [authorName] = (0,external_wp_coreData_namespaceObject.useEntityProp)('root', 'comment', 'author_name', commentId); const avatarUrls = avatars ? Object.values(avatars) : null; const sizes = avatars ? Object.keys(avatars) : null; const { minSize, maxSize } = getAvatarSizes(sizes); const defaultAvatar = useDefaultAvatar(); return { src: avatarUrls ? avatarUrls[avatarUrls.length - 1] : defaultAvatar, minSize, maxSize, // translators: %s is the Author name. alt: authorName ? // translators: %s is the Author name. (0,external_wp_i18n_namespaceObject.sprintf)((0,external_wp_i18n_namespaceObject.__)('%s Avatar'), authorName) : (0,external_wp_i18n_namespaceObject.__)('Default Avatar') }; } function useUserAvatar(_ref2) { let { userId, postId, postType } = _ref2; const { authorDetails } = (0,external_wp_data_namespaceObject.useSelect)(select => { var _getEditedEntityRecor; const { getEditedEntityRecord, getUser } = select(external_wp_coreData_namespaceObject.store); if (userId) { return { authorDetails: getUser(userId) }; } const _authorId = (_getEditedEntityRecor = getEditedEntityRecord('postType', postType, postId)) === null || _getEditedEntityRecor === void 0 ? void 0 : _getEditedEntityRecor.author; return { authorDetails: _authorId ? getUser(_authorId) : null }; }, [postType, postId, userId]); const avatarUrls = authorDetails !== null && authorDetails !== void 0 && authorDetails.avatar_urls ? Object.values(authorDetails.avatar_urls) : null; const sizes = authorDetails !== null && authorDetails !== void 0 && authorDetails.avatar_urls ? Object.keys(authorDetails.avatar_urls) : null; const { minSize, maxSize } = getAvatarSizes(sizes); const defaultAvatar = useDefaultAvatar(); return { src: avatarUrls ? avatarUrls[avatarUrls.length - 1] : defaultAvatar, minSize, maxSize, alt: authorDetails ? // translators: %s is the Author name. (0,external_wp_i18n_namespaceObject.sprintf)((0,external_wp_i18n_namespaceObject.__)('%s Avatar'), authorDetails === null || authorDetails === void 0 ? void 0 : authorDetails.name) : (0,external_wp_i18n_namespaceObject.__)('Default Avatar') }; } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/avatar/user-control.js /** * WordPress dependencies */ const AUTHORS_QUERY = { who: 'authors', per_page: -1, _fields: 'id,name', context: 'view' }; function UserControl(_ref) { let { value, onChange } = _ref; const [filteredAuthorsList, setFilteredAuthorsList] = (0,external_wp_element_namespaceObject.useState)(); const authorsList = (0,external_wp_data_namespaceObject.useSelect)(select => { const { getUsers } = select(external_wp_coreData_namespaceObject.store); return getUsers(AUTHORS_QUERY); }, []); if (!authorsList) { return null; } const options = authorsList.map(author => { return { label: author.name, value: author.id }; }); return (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ComboboxControl, { label: (0,external_wp_i18n_namespaceObject.__)('User'), help: (0,external_wp_i18n_namespaceObject.__)('Select the avatar user to display, if it is blank it will use the post/page author.'), value: value, onChange: onChange, options: filteredAuthorsList || options, onFilterValueChange: inputValue => setFilteredAuthorsList(options.filter(option => option.label.toLowerCase().startsWith(inputValue.toLowerCase()))) }); } /* harmony default export */ var user_control = (UserControl); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/avatar/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const AvatarInspectorControls = _ref => { let { setAttributes, avatar, attributes, selectUser } = _ref; return (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.PanelBody, { title: (0,external_wp_i18n_namespaceObject.__)('Settings') }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.RangeControl, { label: (0,external_wp_i18n_namespaceObject.__)('Image size'), onChange: newSize => setAttributes({ size: newSize }), min: avatar.minSize, max: avatar.maxSize, initialPosition: attributes === null || attributes === void 0 ? void 0 : attributes.size, value: attributes === null || attributes === void 0 ? void 0 : attributes.size }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Link to user profile'), onChange: () => setAttributes({ isLink: !attributes.isLink }), checked: attributes.isLink }), attributes.isLink && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Open in new tab'), onChange: value => setAttributes({ linkTarget: value ? '_blank' : '_self' }), checked: attributes.linkTarget === '_blank' }), selectUser && (0,external_wp_element_namespaceObject.createElement)(user_control, { value: attributes === null || attributes === void 0 ? void 0 : attributes.userId, onChange: value => { setAttributes({ userId: value }); } }))); }; const ResizableAvatar = _ref2 => { let { setAttributes, attributes, avatar, blockProps, isSelected } = _ref2; const borderProps = (0,external_wp_blockEditor_namespaceObject.__experimentalUseBorderProps)(attributes); const doubledSizedSrc = (0,external_wp_url_namespaceObject.addQueryArgs)((0,external_wp_url_namespaceObject.removeQueryArgs)(avatar === null || avatar === void 0 ? void 0 : avatar.src, ['s']), { s: (attributes === null || attributes === void 0 ? void 0 : attributes.size) * 2 }); return (0,external_wp_element_namespaceObject.createElement)("div", blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ResizableBox, { size: { width: attributes.size, height: attributes.size }, showHandle: isSelected, onResizeStop: (event, direction, elt, delta) => { setAttributes({ size: parseInt(attributes.size + (delta.height || delta.width), 10) }); }, lockAspectRatio: true, enable: { top: false, right: !(0,external_wp_i18n_namespaceObject.isRTL)(), bottom: true, left: (0,external_wp_i18n_namespaceObject.isRTL)() }, minWidth: avatar.minSize, maxWidth: avatar.maxSize }, (0,external_wp_element_namespaceObject.createElement)("img", _extends({ src: doubledSizedSrc, alt: avatar.alt }, borderProps, { className: classnames_default()('avatar', 'avatar-' + attributes.size, 'photo', 'wp-block-avatar__image', borderProps.className), style: { ...borderProps.style // Border radius, width and style. } })))); }; const CommentEdit = _ref3 => { let { attributes, context, setAttributes, isSelected } = _ref3; const { commentId } = context; const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)(); const avatar = useCommentAvatar({ commentId }); return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(AvatarInspectorControls, { avatar: avatar, setAttributes: setAttributes, attributes: attributes, selectUser: false }), attributes.isLink ? (0,external_wp_element_namespaceObject.createElement)("a", { href: "#avatar-pseudo-link", className: "wp-block-avatar__link", onClick: event => event.preventDefault() }, (0,external_wp_element_namespaceObject.createElement)(ResizableAvatar, { attributes: attributes, avatar: avatar, blockProps: blockProps, isSelected: isSelected, setAttributes: setAttributes })) : (0,external_wp_element_namespaceObject.createElement)(ResizableAvatar, { attributes: attributes, avatar: avatar, blockProps: blockProps, isSelected: isSelected, setAttributes: setAttributes })); }; const UserEdit = _ref4 => { let { attributes, context, setAttributes, isSelected } = _ref4; const { postId, postType } = context; const avatar = useUserAvatar({ userId: attributes === null || attributes === void 0 ? void 0 : attributes.userId, postId, postType }); const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)(); return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(AvatarInspectorControls, { selectUser: true, attributes: attributes, avatar: avatar, setAttributes: setAttributes }), (0,external_wp_element_namespaceObject.createElement)("div", null, attributes.isLink ? (0,external_wp_element_namespaceObject.createElement)("a", { href: "#avatar-pseudo-link", className: "wp-block-avatar__link", onClick: event => event.preventDefault() }, (0,external_wp_element_namespaceObject.createElement)(ResizableAvatar, { attributes: attributes, avatar: avatar, blockProps: blockProps, isSelected: isSelected, setAttributes: setAttributes })) : (0,external_wp_element_namespaceObject.createElement)(ResizableAvatar, { attributes: attributes, avatar: avatar, blockProps: blockProps, isSelected: isSelected, setAttributes: setAttributes }))); }; function Edit(props) { var _props$context, _props$context2; // Don't show the Comment Edit controls if we have a comment ID set, or if we're in the Site Editor (where it is `null`). if (props !== null && props !== void 0 && (_props$context = props.context) !== null && _props$context !== void 0 && _props$context.commentId || (props === null || props === void 0 ? void 0 : (_props$context2 = props.context) === null || _props$context2 === void 0 ? void 0 : _props$context2.commentId) === null) { return (0,external_wp_element_namespaceObject.createElement)(CommentEdit, props); } return (0,external_wp_element_namespaceObject.createElement)(UserEdit, props); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/avatar/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const avatar_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/avatar", title: "Avatar", category: "theme", description: "Add a user's avatar.", textdomain: "default", attributes: { userId: { type: "number" }, size: { type: "number", "default": 96 }, isLink: { type: "boolean", "default": false }, linkTarget: { type: "string", "default": "_self" } }, usesContext: ["postType", "postId", "commentId"], supports: { html: false, align: true, alignWide: false, spacing: { margin: true, padding: true }, __experimentalBorder: { __experimentalSkipSerialization: true, radius: true, width: true, color: true, style: true, __experimentalDefaultControls: { radius: true } }, color: { text: false, background: false, __experimentalDuotone: "img" } }, editorStyle: "wp-block-avatar", style: "wp-block-avatar" }; const { name: avatar_name } = avatar_metadata; const avatar_settings = { icon: comment_author_avatar, edit: Edit }; const avatar_init = () => initBlock({ name: avatar_name, metadata: avatar_metadata, settings: avatar_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/audio.js /** * WordPress dependencies */ const audio = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_audio = (audio); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/deprecated.js /** * WordPress dependencies */ /* harmony default export */ var deprecated = ([{ attributes: { src: { type: 'string', source: 'attribute', selector: 'audio', attribute: 'src' }, caption: { type: 'string', source: 'html', selector: 'figcaption' }, id: { type: 'number' }, autoplay: { type: 'boolean', source: 'attribute', selector: 'audio', attribute: 'autoplay' }, loop: { type: 'boolean', source: 'attribute', selector: 'audio', attribute: 'loop' }, preload: { type: 'string', source: 'attribute', selector: 'audio', attribute: 'preload' } }, supports: { align: true }, save(_ref) { let { attributes } = _ref; const { autoplay, caption, loop, preload, src } = attributes; return (0,external_wp_element_namespaceObject.createElement)("figure", null, (0,external_wp_element_namespaceObject.createElement)("audio", { controls: "controls", src: src, autoPlay: autoplay, loop: loop, preload: preload }), !external_wp_blockEditor_namespaceObject.RichText.isEmpty(caption) && (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "figcaption", value: caption })); } }]); ;// CONCATENATED MODULE: external ["wp","blob"] var external_wp_blob_namespaceObject = window["wp"]["blob"]; ;// CONCATENATED MODULE: external ["wp","notices"] var external_wp_notices_namespaceObject = window["wp"]["notices"]; ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/constants.js const ASPECT_RATIOS = [// Common video resolutions. { ratio: '2.33', className: 'wp-embed-aspect-21-9' }, { ratio: '2.00', className: 'wp-embed-aspect-18-9' }, { ratio: '1.78', className: 'wp-embed-aspect-16-9' }, { ratio: '1.33', className: 'wp-embed-aspect-4-3' }, // Vertical video and instagram square video support. { ratio: '1.00', className: 'wp-embed-aspect-1-1' }, { ratio: '0.56', className: 'wp-embed-aspect-9-16' }, { ratio: '0.50', className: 'wp-embed-aspect-1-2' }]; const WP_EMBED_TYPE = 'wp-embed'; ;// CONCATENATED MODULE: external "lodash" var external_lodash_namespaceObject = window["lodash"]; // EXTERNAL MODULE: ./node_modules/classnames/dedupe.js var dedupe = __webpack_require__(3827); var dedupe_default = /*#__PURE__*/__webpack_require__.n(dedupe); // EXTERNAL MODULE: ./node_modules/memize/index.js var memize = __webpack_require__(9756); var memize_default = /*#__PURE__*/__webpack_require__.n(memize); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/embed/util.js /** * Internal dependencies */ /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const util_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/embed", title: "Embed", category: "embed", description: "Add a block that displays content pulled from other sites, like Twitter or YouTube.", textdomain: "default", attributes: { url: { type: "string" }, caption: { type: "string", source: "html", selector: "figcaption" }, type: { type: "string" }, providerNameSlug: { type: "string" }, allowResponsive: { type: "boolean", "default": true }, responsive: { type: "boolean", "default": false }, previewable: { type: "boolean", "default": true } }, supports: { align: true }, editorStyle: "wp-block-embed-editor", style: "wp-block-embed" }; const { name: DEFAULT_EMBED_BLOCK } = util_metadata; /** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */ /** * Returns the embed block's information by matching the provided service provider * * @param {string} provider The embed block's provider * @return {WPBlockVariation} The embed block's information */ const getEmbedInfoByProvider = provider => { var _getBlockVariations; return (_getBlockVariations = (0,external_wp_blocks_namespaceObject.getBlockVariations)(DEFAULT_EMBED_BLOCK)) === null || _getBlockVariations === void 0 ? void 0 : _getBlockVariations.find(_ref => { let { name } = _ref; return name === provider; }); }; /** * Returns true if any of the regular expressions match the URL. * * @param {string} url The URL to test. * @param {Array} patterns The list of regular expressions to test agains. * @return {boolean} True if any of the regular expressions match the URL. */ const matchesPatterns = function (url) { let patterns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; return patterns.some(pattern => url.match(pattern)); }; /** * Finds the block variation that should be used for the URL, * based on the provided URL and the variation's patterns. * * @param {string} url The URL to test. * @return {WPBlockVariation} The block variation that should be used for this URL */ const findMoreSuitableBlock = url => { var _getBlockVariations2; return (_getBlockVariations2 = (0,external_wp_blocks_namespaceObject.getBlockVariations)(DEFAULT_EMBED_BLOCK)) === null || _getBlockVariations2 === void 0 ? void 0 : _getBlockVariations2.find(_ref2 => { let { patterns } = _ref2; return matchesPatterns(url, patterns); }); }; const isFromWordPress = html => html && html.includes('class="wp-embedded-content"'); const getPhotoHtml = photo => { // If full image url not found use thumbnail. const imageUrl = photo.url || photo.thumbnail_url; // 100% width for the preview so it fits nicely into the document, some "thumbnails" are // actually the full size photo. const photoPreview = (0,external_wp_element_namespaceObject.createElement)("p", null, (0,external_wp_element_namespaceObject.createElement)("img", { src: imageUrl, alt: photo.title, width: "100%" })); return (0,external_wp_element_namespaceObject.renderToString)(photoPreview); }; /** * Creates a more suitable embed block based on the passed in props * and attributes generated from an embed block's preview. * * We require `attributesFromPreview` to be generated from the latest attributes * and preview, and because of the way the react lifecycle operates, we can't * guarantee that the attributes contained in the block's props are the latest * versions, so we require that these are generated separately. * See `getAttributesFromPreview` in the generated embed edit component. * * @param {Object} props The block's props. * @param {Object} [attributesFromPreview] Attributes generated from the block's most up to date preview. * @return {Object|undefined} A more suitable embed block if one exists. */ const createUpgradedEmbedBlock = function (props) { var _getBlockVariations3; let attributesFromPreview = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; const { preview, attributes = {} } = props; const { url, providerNameSlug, type, ...restAttributes } = attributes; if (!url || !(0,external_wp_blocks_namespaceObject.getBlockType)(DEFAULT_EMBED_BLOCK)) return; const matchedBlock = findMoreSuitableBlock(url); // WordPress blocks can work on multiple sites, and so don't have patterns, // so if we're in a WordPress block, assume the user has chosen it for a WordPress URL. const isCurrentBlockWP = providerNameSlug === 'wordpress' || type === WP_EMBED_TYPE; // If current block is not WordPress and a more suitable block found // that is different from the current one, create the new matched block. const shouldCreateNewBlock = !isCurrentBlockWP && matchedBlock && (matchedBlock.attributes.providerNameSlug !== providerNameSlug || !providerNameSlug); if (shouldCreateNewBlock) { return (0,external_wp_blocks_namespaceObject.createBlock)(DEFAULT_EMBED_BLOCK, { url, ...restAttributes, ...matchedBlock.attributes }); } const wpVariation = (_getBlockVariations3 = (0,external_wp_blocks_namespaceObject.getBlockVariations)(DEFAULT_EMBED_BLOCK)) === null || _getBlockVariations3 === void 0 ? void 0 : _getBlockVariations3.find(_ref3 => { let { name } = _ref3; return name === 'wordpress'; }); // We can't match the URL for WordPress embeds, we have to check the HTML instead. if (!wpVariation || !preview || !isFromWordPress(preview.html) || isCurrentBlockWP) { return; } // This is not the WordPress embed block so transform it into one. return (0,external_wp_blocks_namespaceObject.createBlock)(DEFAULT_EMBED_BLOCK, { url, ...wpVariation.attributes, // By now we have the preview, but when the new block first renders, it // won't have had all the attributes set, and so won't get the correct // type and it won't render correctly. So, we pass through the current attributes // here so that the initial render works when we switch to the WordPress // block. This only affects the WordPress block because it can't be // rendered in the usual Sandbox (it has a sandbox of its own) and it // relies on the preview to set the correct render type. ...attributesFromPreview }); }; /** * Removes all previously set aspect ratio related classes and return the rest * existing class names. * * @param {string} existingClassNames Any existing class names. * @return {string} The class names without any aspect ratio related class. */ const removeAspectRatioClasses = existingClassNames => { if (!existingClassNames) { // Avoids extraneous work and also, by returning the same value as // received, ensures the post is not dirtied by a change of the block // attribute from `undefined` to an emtpy string. return existingClassNames; } const aspectRatioClassNames = ASPECT_RATIOS.reduce((accumulator, _ref4) => { let { className } = _ref4; accumulator[className] = false; return accumulator; }, { 'wp-has-aspect-ratio': false }); return dedupe_default()(existingClassNames, aspectRatioClassNames); }; /** * Returns class names with any relevant responsive aspect ratio names. * * @param {string} html The preview HTML that possibly contains an iframe with width and height set. * @param {string} existingClassNames Any existing class names. * @param {boolean} allowResponsive If the responsive class names should be added, or removed. * @return {string} Deduped class names. */ function getClassNames(html, existingClassNames) { let allowResponsive = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; if (!allowResponsive) { return removeAspectRatioClasses(existingClassNames); } const previewDocument = document.implementation.createHTMLDocument(''); previewDocument.body.innerHTML = html; const iframe = previewDocument.body.querySelector('iframe'); // If we have a fixed aspect iframe, and it's a responsive embed block. if (iframe && iframe.height && iframe.width) { const aspectRatio = (iframe.width / iframe.height).toFixed(2); // Given the actual aspect ratio, find the widest ratio to support it. for (let ratioIndex = 0; ratioIndex < ASPECT_RATIOS.length; ratioIndex++) { const potentialRatio = ASPECT_RATIOS[ratioIndex]; if (aspectRatio >= potentialRatio.ratio) { // Evaluate the difference between actual aspect ratio and closest match. // If the difference is too big, do not scale the embed according to aspect ratio. const ratioDiff = aspectRatio - potentialRatio.ratio; if (ratioDiff > 0.1) { // No close aspect ratio match found. return removeAspectRatioClasses(existingClassNames); } // Close aspect ratio match found. return dedupe_default()(removeAspectRatioClasses(existingClassNames), potentialRatio.className, 'wp-has-aspect-ratio'); } } } return existingClassNames; } /** * Fallback behaviour for unembeddable URLs. * Creates a paragraph block containing a link to the URL, and calls `onReplace`. * * @param {string} url The URL that could not be embedded. * @param {Function} onReplace Function to call with the created fallback block. */ function fallback(url, onReplace) { const link = (0,external_wp_element_namespaceObject.createElement)("a", { href: url }, url); onReplace((0,external_wp_blocks_namespaceObject.createBlock)('core/paragraph', { content: (0,external_wp_element_namespaceObject.renderToString)(link) })); } /*** * Gets block attributes based on the preview and responsive state. * * @param {Object} preview The preview data. * @param {string} title The block's title, e.g. Twitter. * @param {Object} currentClassNames The block's current class names. * @param {boolean} isResponsive Boolean indicating if the block supports responsive content. * @param {boolean} allowResponsive Apply responsive classes to fixed size content. * @return {Object} Attributes and values. */ const getAttributesFromPreview = memize_default()(function (preview, title, currentClassNames, isResponsive) { let allowResponsive = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true; if (!preview) { return {}; } const attributes = {}; // Some plugins only return HTML with no type info, so default this to 'rich'. let { type = 'rich' } = preview; // If we got a provider name from the API, use it for the slug, otherwise we use the title, // because not all embed code gives us a provider name. const { html, provider_name: providerName } = preview; const providerNameSlug = (0,external_lodash_namespaceObject.kebabCase)((providerName || title).toLowerCase()); if (isFromWordPress(html)) { type = WP_EMBED_TYPE; } if (html || 'photo' === type) { attributes.type = type; attributes.providerNameSlug = providerNameSlug; } attributes.className = getClassNames(html, currentClassNames, isResponsive && allowResponsive); return attributes; }); /** * Returns the attributes derived from the preview, merged with the current attributes. * * @param {Object} currentAttributes The current attributes of the block. * @param {Object} preview The preview data. * @param {string} title The block's title, e.g. Twitter. * @param {boolean} isResponsive Boolean indicating if the block supports responsive content. * @param {boolean} ignorePreviousClassName Determines if the previous className attribute should be ignored when merging. * @return {Object} Merged attributes. */ const getMergedAttributesWithPreview = function (currentAttributes, preview, title, isResponsive) { let ignorePreviousClassName = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; const { allowResponsive, className } = currentAttributes; return { ...currentAttributes, ...getAttributesFromPreview(preview, title, ignorePreviousClassName ? undefined : className, isResponsive, allowResponsive) }; }; ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const ALLOWED_MEDIA_TYPES = ['audio']; function AudioEdit(_ref) { let { attributes, className, setAttributes, onReplace, isSelected, insertBlocksAfter } = _ref; const { id, autoplay, caption, loop, preload, src } = attributes; const isTemporaryAudio = !id && (0,external_wp_blob_namespaceObject.isBlobURL)(src); const mediaUpload = (0,external_wp_data_namespaceObject.useSelect)(select => { const { getSettings } = select(external_wp_blockEditor_namespaceObject.store); return getSettings().mediaUpload; }, []); (0,external_wp_element_namespaceObject.useEffect)(() => { if (!id && (0,external_wp_blob_namespaceObject.isBlobURL)(src)) { const file = (0,external_wp_blob_namespaceObject.getBlobByURL)(src); if (file) { mediaUpload({ filesList: [file], onFileChange: _ref2 => { let [media] = _ref2; return onSelectAudio(media); }, onError: e => onUploadError(e), allowedTypes: ALLOWED_MEDIA_TYPES }); } } }, []); function toggleAttribute(attribute) { return newValue => { setAttributes({ [attribute]: newValue }); }; } function onSelectURL(newSrc) { // Set the block's src from the edit component's state, and switch off // the editing UI. if (newSrc !== src) { // Check if there's an embed block that handles this URL. const embedBlock = createUpgradedEmbedBlock({ attributes: { url: newSrc } }); if (undefined !== embedBlock && onReplace) { onReplace(embedBlock); return; } setAttributes({ src: newSrc, id: undefined }); } } const { createErrorNotice } = (0,external_wp_data_namespaceObject.useDispatch)(external_wp_notices_namespaceObject.store); function onUploadError(message) { createErrorNotice(message, { type: 'snackbar' }); } function getAutoplayHelp(checked) { return checked ? (0,external_wp_i18n_namespaceObject.__)('Autoplay may cause usability issues for some users.') : null; } function onSelectAudio(media) { if (!media || !media.url) { // In this case there was an error and we should continue in the editing state // previous attributes should be removed because they may be temporary blob urls. setAttributes({ src: undefined, id: undefined }); return; } // Sets the block's attribute and updates the edit component from the // selected media, then switches off the editing UI. setAttributes({ src: media.url, id: media.id }); } const classes = classnames_default()(className, { 'is-transient': isTemporaryAudio }); const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)({ className: classes }); if (!src) { return (0,external_wp_element_namespaceObject.createElement)("div", blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.MediaPlaceholder, { icon: (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockIcon, { icon: library_audio }), onSelect: onSelectAudio, onSelectURL: onSelectURL, accept: "audio/*", allowedTypes: ALLOWED_MEDIA_TYPES, value: attributes, onError: onUploadError })); } return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockControls, { group: "other" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.MediaReplaceFlow, { mediaId: id, mediaURL: src, allowedTypes: ALLOWED_MEDIA_TYPES, accept: "audio/*", onSelect: onSelectAudio, onSelectURL: onSelectURL, onError: onUploadError })), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.PanelBody, { title: (0,external_wp_i18n_namespaceObject.__)('Settings') }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Autoplay'), onChange: toggleAttribute('autoplay'), checked: autoplay, help: getAutoplayHelp }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Loop'), onChange: toggleAttribute('loop'), checked: loop }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SelectControl, { label: (0,external_wp_i18n_namespaceObject._x)('Preload', 'noun; Audio block parameter'), value: preload || '' // `undefined` is required for the preload attribute to be unset. , onChange: value => setAttributes({ preload: value || undefined }), options: [{ value: '', label: (0,external_wp_i18n_namespaceObject.__)('Browser default') }, { value: 'auto', label: (0,external_wp_i18n_namespaceObject.__)('Auto') }, { value: 'metadata', label: (0,external_wp_i18n_namespaceObject.__)('Metadata') }, { value: 'none', label: (0,external_wp_i18n_namespaceObject._x)('None', 'Preload value') }] }))), (0,external_wp_element_namespaceObject.createElement)("figure", blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Disabled, { isDisabled: !isSelected }, (0,external_wp_element_namespaceObject.createElement)("audio", { controls: "controls", src: src })), isTemporaryAudio && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Spinner, null), (!external_wp_blockEditor_namespaceObject.RichText.isEmpty(caption) || isSelected) && (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText, { tagName: "figcaption", className: (0,external_wp_blockEditor_namespaceObject.__experimentalGetElementClassName)('caption'), "aria-label": (0,external_wp_i18n_namespaceObject.__)('Audio caption text'), placeholder: (0,external_wp_i18n_namespaceObject.__)('Add caption'), value: caption, onChange: value => setAttributes({ caption: value }), inlineToolbar: true, __unstableOnSplitAtEnd: () => insertBlocksAfter((0,external_wp_blocks_namespaceObject.createBlock)((0,external_wp_blocks_namespaceObject.getDefaultBlockName)())) }))); } /* harmony default export */ var edit = (AudioEdit); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/save.js /** * WordPress dependencies */ function save(_ref) { let { attributes } = _ref; const { autoplay, caption, loop, preload, src } = attributes; return src && (0,external_wp_element_namespaceObject.createElement)("figure", external_wp_blockEditor_namespaceObject.useBlockProps.save(), (0,external_wp_element_namespaceObject.createElement)("audio", { controls: "controls", src: src, autoPlay: autoplay, loop: loop, preload: preload }), !external_wp_blockEditor_namespaceObject.RichText.isEmpty(caption) && (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "figcaption", value: caption, className: (0,external_wp_blockEditor_namespaceObject.__experimentalGetElementClassName)('caption') })); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/transforms.js /** * WordPress dependencies */ const transforms = { from: [{ type: 'files', isMatch(files) { return files.length === 1 && files[0].type.indexOf('audio/') === 0; }, transform(files) { const file = files[0]; // We don't need to upload the media directly here // It's already done as part of the `componentDidMount` // in the audio block. const block = (0,external_wp_blocks_namespaceObject.createBlock)('core/audio', { src: (0,external_wp_blob_namespaceObject.createBlobURL)(file) }); return block; } }, { type: 'shortcode', tag: 'audio', attributes: { src: { type: 'string', shortcode: _ref => { let { named: { src, mp3, m4a, ogg, wav, wma } } = _ref; return src || mp3 || m4a || ogg || wav || wma; } }, loop: { type: 'string', shortcode: _ref2 => { let { named: { loop } } = _ref2; return loop; } }, autoplay: { type: 'string', shortcode: _ref3 => { let { named: { autoplay } } = _ref3; return autoplay; } }, preload: { type: 'string', shortcode: _ref4 => { let { named: { preload } } = _ref4; return preload; } } } }] }; /* harmony default export */ var audio_transforms = (transforms); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/audio/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const audio_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/audio", title: "Audio", category: "media", description: "Embed a simple audio player.", keywords: ["music", "sound", "podcast", "recording"], textdomain: "default", attributes: { src: { type: "string", source: "attribute", selector: "audio", attribute: "src", __experimentalRole: "content" }, caption: { type: "string", source: "html", selector: "figcaption", __experimentalRole: "content" }, id: { type: "number", __experimentalRole: "content" }, autoplay: { type: "boolean", source: "attribute", selector: "audio", attribute: "autoplay" }, loop: { type: "boolean", source: "attribute", selector: "audio", attribute: "loop" }, preload: { type: "string", source: "attribute", selector: "audio", attribute: "preload" } }, supports: { anchor: true, align: true, spacing: { margin: true, padding: true } }, editorStyle: "wp-block-audio-editor", style: "wp-block-audio" }; const { name: audio_name } = audio_metadata; const audio_settings = { icon: library_audio, example: { attributes: { src: 'https://upload.wikimedia.org/wikipedia/commons/d/dd/Armstrong_Small_Step.ogg' } }, transforms: audio_transforms, deprecated: deprecated, edit: edit, save: save }; const audio_init = () => initBlock({ name: audio_name, metadata: audio_metadata, settings: audio_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/button.js /** * WordPress dependencies */ const button_button = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_button = (button_button); ;// CONCATENATED MODULE: external ["wp","compose"] var external_wp_compose_namespaceObject = window["wp"]["compose"]; ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/utils/clean-empty-object.js /** * External dependencies */ const identity = x => x; /** * Removed empty nodes from nested objects. * * @param {Object} object * @return {Object} Object cleaned from empty nodes. */ const cleanEmptyObject = object => { if (object === null || typeof object !== 'object' || Array.isArray(object)) { return object; } const cleanedNestedObjects = (0,external_lodash_namespaceObject.pickBy)((0,external_lodash_namespaceObject.mapValues)(object, cleanEmptyObject), identity); return (0,external_lodash_namespaceObject.isEmpty)(cleanedNestedObjects) ? undefined : cleanedNestedObjects; }; /* harmony default export */ var clean_empty_object = (cleanEmptyObject); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/utils/migrate-font-family.js /** * Internal dependencies */ /** * Migrates the current style.typography.fontFamily attribute, * whose value was "var:preset|font-family|helvetica-arial", * to the style.fontFamily attribute, whose value will be "helvetica-arial". * * @param {Object} attributes The current attributes * @return {Object} The updated attributes. */ /* harmony default export */ function migrate_font_family(attributes) { var _attributes$style, _attributes$style$typ; if (!(attributes !== null && attributes !== void 0 && (_attributes$style = attributes.style) !== null && _attributes$style !== void 0 && (_attributes$style$typ = _attributes$style.typography) !== null && _attributes$style$typ !== void 0 && _attributes$style$typ.fontFamily)) { return attributes; } const { fontFamily, ...typography } = attributes.style.typography; return { ...attributes, style: clean_empty_object({ ...attributes.style, typography }), fontFamily: fontFamily.split('|').pop() }; } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const migrateBorderRadius = attributes => { var _newAttributes$style, _newAttributes$style$, _newAttributes$style2; const { borderRadius, ...newAttributes } = attributes; // We have to check old property `borderRadius` and if // `styles.border.radius` is a `number` const oldBorderRadius = [borderRadius, (_newAttributes$style = newAttributes.style) === null || _newAttributes$style === void 0 ? void 0 : (_newAttributes$style$ = _newAttributes$style.border) === null || _newAttributes$style$ === void 0 ? void 0 : _newAttributes$style$.radius].find(possibleBorderRadius => { return typeof possibleBorderRadius === 'number' && possibleBorderRadius !== 0; }); if (!oldBorderRadius) { return newAttributes; } return { ...newAttributes, style: { ...newAttributes.style, border: { ...((_newAttributes$style2 = newAttributes.style) === null || _newAttributes$style2 === void 0 ? void 0 : _newAttributes$style2.border), radius: `${oldBorderRadius}px` } } }; }; const migrateCustomColorsAndGradients = attributes => { if (!attributes.customTextColor && !attributes.customBackgroundColor && !attributes.customGradient) { return attributes; } const style = { color: {} }; if (attributes.customTextColor) { style.color.text = attributes.customTextColor; } if (attributes.customBackgroundColor) { style.color.background = attributes.customBackgroundColor; } if (attributes.customGradient) { style.color.gradient = attributes.customGradient; } const { customTextColor, customBackgroundColor, customGradient, ...restAttributes } = attributes; return { ...restAttributes, style }; }; const oldColorsMigration = attributes => { const { color, textColor, ...restAttributes } = { ...attributes, customTextColor: attributes.textColor && '#' === attributes.textColor[0] ? attributes.textColor : undefined, customBackgroundColor: attributes.color && '#' === attributes.color[0] ? attributes.color : undefined }; return migrateCustomColorsAndGradients(restAttributes); }; const blockAttributes = { url: { type: 'string', source: 'attribute', selector: 'a', attribute: 'href' }, title: { type: 'string', source: 'attribute', selector: 'a', attribute: 'title' }, text: { type: 'string', source: 'html', selector: 'a' } }; const v11 = { attributes: { url: { type: 'string', source: 'attribute', selector: 'a', attribute: 'href' }, title: { type: 'string', source: 'attribute', selector: 'a', attribute: 'title' }, text: { type: 'string', source: 'html', selector: 'a' }, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, gradient: { type: 'string' }, width: { type: 'number' } }, supports: { anchor: true, align: true, alignWide: false, color: { __experimentalSkipSerialization: true, gradients: true, __experimentalDefaultControls: { background: true, text: true } }, typography: { fontSize: true, __experimentalFontFamily: true, __experimentalDefaultControls: { fontSize: true } }, reusable: false, spacing: { __experimentalSkipSerialization: true, padding: ['horizontal', 'vertical'], __experimentalDefaultControls: { padding: true } }, __experimentalBorder: { radius: true, __experimentalSkipSerialization: true, __experimentalDefaultControls: { radius: true } }, __experimentalSelector: '.wp-block-button__link' }, save(_ref) { var _style$border, _style$typography; let { attributes, className } = _ref; const { fontSize, linkTarget, rel, style, text, title, url, width } = attributes; if (!text) { return null; } const borderProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetBorderClassesAndStyles)(attributes); const colorProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetColorClassesAndStyles)(attributes); const spacingProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetSpacingClassesAndStyles)(attributes); const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, borderProps.className, { // For backwards compatibility add style that isn't provided via // block support. 'no-border-radius': (style === null || style === void 0 ? void 0 : (_style$border = style.border) === null || _style$border === void 0 ? void 0 : _style$border.radius) === 0 }); const buttonStyle = { ...borderProps.style, ...colorProps.style, ...spacingProps.style }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. const wrapperClasses = classnames_default()(className, { [`has-custom-width wp-block-button__width-${width}`]: width, [`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) }); return (0,external_wp_element_namespaceObject.createElement)("div", external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: wrapperClasses }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); } }; const v10 = { attributes: { url: { type: 'string', source: 'attribute', selector: 'a', attribute: 'href' }, title: { type: 'string', source: 'attribute', selector: 'a', attribute: 'title' }, text: { type: 'string', source: 'html', selector: 'a' }, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, gradient: { type: 'string' }, width: { type: 'number' } }, supports: { anchor: true, align: true, alignWide: false, color: { __experimentalSkipSerialization: true, gradients: true }, typography: { fontSize: true, __experimentalFontFamily: true }, reusable: false, spacing: { __experimentalSkipSerialization: true, padding: ['horizontal', 'vertical'], __experimentalDefaultControls: { padding: true } }, __experimentalBorder: { radius: true, __experimentalSkipSerialization: true }, __experimentalSelector: '.wp-block-button__link' }, save(_ref2) { var _style$border2, _style$typography2; let { attributes, className } = _ref2; const { fontSize, linkTarget, rel, style, text, title, url, width } = attributes; if (!text) { return null; } const borderProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetBorderClassesAndStyles)(attributes); const colorProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetColorClassesAndStyles)(attributes); const spacingProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetSpacingClassesAndStyles)(attributes); const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, borderProps.className, { // For backwards compatibility add style that isn't provided via // block support. 'no-border-radius': (style === null || style === void 0 ? void 0 : (_style$border2 = style.border) === null || _style$border2 === void 0 ? void 0 : _style$border2.radius) === 0 }); const buttonStyle = { ...borderProps.style, ...colorProps.style, ...spacingProps.style }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. const wrapperClasses = classnames_default()(className, { [`has-custom-width wp-block-button__width-${width}`]: width, [`has-custom-font-size`]: fontSize || (style === null || style === void 0 ? void 0 : (_style$typography2 = style.typography) === null || _style$typography2 === void 0 ? void 0 : _style$typography2.fontSize) }); return (0,external_wp_element_namespaceObject.createElement)("div", external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: wrapperClasses }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); }, migrate: migrate_font_family, isEligible(_ref3) { var _style$typography3; let { style } = _ref3; return style === null || style === void 0 ? void 0 : (_style$typography3 = style.typography) === null || _style$typography3 === void 0 ? void 0 : _style$typography3.fontFamily; } }; const deprecated_deprecated = [v11, v10, { supports: { anchor: true, align: true, alignWide: false, color: { __experimentalSkipSerialization: true, gradients: true }, typography: { fontSize: true, __experimentalFontFamily: true }, reusable: false, __experimentalSelector: '.wp-block-button__link' }, attributes: { ...blockAttributes, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, gradient: { type: 'string' }, width: { type: 'number' } }, isEligible(_ref4) { var _style$border3; let { style } = _ref4; return typeof (style === null || style === void 0 ? void 0 : (_style$border3 = style.border) === null || _style$border3 === void 0 ? void 0 : _style$border3.radius) === 'number'; }, save(_ref5) { var _style$border4, _style$border5, _style$typography4; let { attributes, className } = _ref5; const { fontSize, linkTarget, rel, style, text, title, url, width } = attributes; if (!text) { return null; } const borderRadius = style === null || style === void 0 ? void 0 : (_style$border4 = style.border) === null || _style$border4 === void 0 ? void 0 : _style$border4.radius; const colorProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetColorClassesAndStyles)(attributes); const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, { 'no-border-radius': (style === null || style === void 0 ? void 0 : (_style$border5 = style.border) === null || _style$border5 === void 0 ? void 0 : _style$border5.radius) === 0 }); const buttonStyle = { borderRadius: borderRadius ? borderRadius : undefined, ...colorProps.style }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. const wrapperClasses = classnames_default()(className, { [`has-custom-width wp-block-button__width-${width}`]: width, [`has-custom-font-size`]: fontSize || (style === null || style === void 0 ? void 0 : (_style$typography4 = style.typography) === null || _style$typography4 === void 0 ? void 0 : _style$typography4.fontSize) }); return (0,external_wp_element_namespaceObject.createElement)("div", external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: wrapperClasses }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); }, migrate: (0,external_wp_compose_namespaceObject.compose)(migrate_font_family, migrateBorderRadius) }, { supports: { anchor: true, align: true, alignWide: false, color: { __experimentalSkipSerialization: true }, reusable: false, __experimentalSelector: '.wp-block-button__link' }, attributes: { ...blockAttributes, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' }, borderRadius: { type: 'number' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, gradient: { type: 'string' }, style: { type: 'object' }, width: { type: 'number' } }, save(_ref6) { let { attributes, className } = _ref6; const { borderRadius, linkTarget, rel, text, title, url, width } = attributes; const colorProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetColorClassesAndStyles)(attributes); const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, { 'no-border-radius': borderRadius === 0 }); const buttonStyle = { borderRadius: borderRadius ? borderRadius + 'px' : undefined, ...colorProps.style }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. const wrapperClasses = classnames_default()(className, { [`has-custom-width wp-block-button__width-${width}`]: width }); return (0,external_wp_element_namespaceObject.createElement)("div", external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: wrapperClasses }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); }, migrate: (0,external_wp_compose_namespaceObject.compose)(migrate_font_family, migrateBorderRadius) }, { supports: { anchor: true, align: true, alignWide: false, color: { __experimentalSkipSerialization: true }, reusable: false, __experimentalSelector: '.wp-block-button__link' }, attributes: { ...blockAttributes, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' }, borderRadius: { type: 'number' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, gradient: { type: 'string' }, style: { type: 'object' }, width: { type: 'number' } }, save(_ref7) { let { attributes, className } = _ref7; const { borderRadius, linkTarget, rel, text, title, url, width } = attributes; const colorProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetColorClassesAndStyles)(attributes); const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, { 'no-border-radius': borderRadius === 0 }); const buttonStyle = { borderRadius: borderRadius ? borderRadius + 'px' : undefined, ...colorProps.style }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. const wrapperClasses = classnames_default()(className, { [`has-custom-width wp-block-button__width-${width}`]: width }); return (0,external_wp_element_namespaceObject.createElement)("div", external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: wrapperClasses }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); }, migrate: (0,external_wp_compose_namespaceObject.compose)(migrate_font_family, migrateBorderRadius) }, { supports: { align: true, alignWide: false, color: { gradients: true } }, attributes: { ...blockAttributes, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' }, borderRadius: { type: 'number' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, gradient: { type: 'string' }, style: { type: 'object' } }, save(_ref8) { let { attributes } = _ref8; const { borderRadius, linkTarget, rel, text, title, url } = attributes; const buttonClasses = classnames_default()('wp-block-button__link', { 'no-border-radius': borderRadius === 0 }); const buttonStyle = { borderRadius: borderRadius ? borderRadius + 'px' : undefined }; return (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel }); }, migrate: migrateBorderRadius }, { supports: { align: true, alignWide: false }, attributes: { ...blockAttributes, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' }, borderRadius: { type: 'number' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, customTextColor: { type: 'string' }, customGradient: { type: 'string' }, gradient: { type: 'string' } }, isEligible: attributes => !!attributes.customTextColor || !!attributes.customBackgroundColor || !!attributes.customGradient, migrate: (0,external_wp_compose_namespaceObject.compose)(migrateBorderRadius, migrateCustomColorsAndGradients), save(_ref9) { let { attributes } = _ref9; const { backgroundColor, borderRadius, customBackgroundColor, customTextColor, customGradient, linkTarget, gradient, rel, text, textColor, title, url } = attributes; const textClass = (0,external_wp_blockEditor_namespaceObject.getColorClassName)('color', textColor); const backgroundClass = !customGradient && (0,external_wp_blockEditor_namespaceObject.getColorClassName)('background-color', backgroundColor); const gradientClass = (0,external_wp_blockEditor_namespaceObject.__experimentalGetGradientClass)(gradient); const buttonClasses = classnames_default()('wp-block-button__link', { 'has-text-color': textColor || customTextColor, [textClass]: textClass, 'has-background': backgroundColor || customBackgroundColor || customGradient || gradient, [backgroundClass]: backgroundClass, 'no-border-radius': borderRadius === 0, [gradientClass]: gradientClass }); const buttonStyle = { background: customGradient ? customGradient : undefined, backgroundColor: backgroundClass || customGradient || gradient ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor, borderRadius: borderRadius ? borderRadius + 'px' : undefined }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. return (0,external_wp_element_namespaceObject.createElement)("div", null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); } }, { attributes: { ...blockAttributes, align: { type: 'string', default: 'none' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, customTextColor: { type: 'string' }, linkTarget: { type: 'string', source: 'attribute', selector: 'a', attribute: 'target' }, rel: { type: 'string', source: 'attribute', selector: 'a', attribute: 'rel' }, placeholder: { type: 'string' } }, isEligible(attribute) { return attribute.className && attribute.className.includes('is-style-squared'); }, migrate(attributes) { let newClassName = attributes.className; if (newClassName) { newClassName = newClassName.replace(/is-style-squared[\s]?/, '').trim(); } return migrateBorderRadius(migrateCustomColorsAndGradients({ ...attributes, className: newClassName ? newClassName : undefined, borderRadius: 0 })); }, save(_ref10) { let { attributes } = _ref10; const { backgroundColor, customBackgroundColor, customTextColor, linkTarget, rel, text, textColor, title, url } = attributes; const textClass = (0,external_wp_blockEditor_namespaceObject.getColorClassName)('color', textColor); const backgroundClass = (0,external_wp_blockEditor_namespaceObject.getColorClassName)('background-color', backgroundColor); const buttonClasses = classnames_default()('wp-block-button__link', { 'has-text-color': textColor || customTextColor, [textClass]: textClass, 'has-background': backgroundColor || customBackgroundColor, [backgroundClass]: backgroundClass }); const buttonStyle = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return (0,external_wp_element_namespaceObject.createElement)("div", null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); } }, { attributes: { ...blockAttributes, align: { type: 'string', default: 'none' }, backgroundColor: { type: 'string' }, textColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, customTextColor: { type: 'string' } }, migrate: oldColorsMigration, save(_ref11) { let { attributes } = _ref11; const { url, text, title, backgroundColor, textColor, customBackgroundColor, customTextColor } = attributes; const textClass = (0,external_wp_blockEditor_namespaceObject.getColorClassName)('color', textColor); const backgroundClass = (0,external_wp_blockEditor_namespaceObject.getColorClassName)('background-color', backgroundColor); const buttonClasses = classnames_default()('wp-block-button__link', { 'has-text-color': textColor || customTextColor, [textClass]: textClass, 'has-background': backgroundColor || customBackgroundColor, [backgroundClass]: backgroundClass }); const buttonStyle = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return (0,external_wp_element_namespaceObject.createElement)("div", null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text })); } }, { attributes: { ...blockAttributes, color: { type: 'string' }, textColor: { type: 'string' }, align: { type: 'string', default: 'none' } }, save(_ref12) { let { attributes } = _ref12; const { url, text, title, align, color, textColor } = attributes; const buttonStyle = { backgroundColor: color, color: textColor }; const linkClass = 'wp-block-button__link'; return (0,external_wp_element_namespaceObject.createElement)("div", { className: `align${align}` }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: linkClass, href: url, title: title, style: buttonStyle, value: text })); }, migrate: oldColorsMigration }, { attributes: { ...blockAttributes, color: { type: 'string' }, textColor: { type: 'string' }, align: { type: 'string', default: 'none' } }, save(_ref13) { let { attributes } = _ref13; const { url, text, title, align, color, textColor } = attributes; return (0,external_wp_element_namespaceObject.createElement)("div", { className: `align${align}`, style: { backgroundColor: color } }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", href: url, title: title, style: { color: textColor }, value: text })); }, migrate: oldColorsMigration }]; /* harmony default export */ var button_deprecated = (deprecated_deprecated); ;// CONCATENATED MODULE: external ["wp","keycodes"] var external_wp_keycodes_namespaceObject = window["wp"]["keycodes"]; ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/link.js /** * WordPress dependencies */ const link_link = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_link = (link_link); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/link-off.js /** * WordPress dependencies */ const linkOff = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var link_off = (linkOff); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/edit.js /** * External dependencies */ /** * WordPress dependencies */ const NEW_TAB_REL = 'noreferrer noopener'; function WidthPanel(_ref) { let { selectedWidth, setAttributes } = _ref; function handleChange(newWidth) { // Check if we are toggling the width off const width = selectedWidth === newWidth ? undefined : newWidth; // Update attributes. setAttributes({ width }); } return (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.PanelBody, { title: (0,external_wp_i18n_namespaceObject.__)('Width settings') }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ButtonGroup, { "aria-label": (0,external_wp_i18n_namespaceObject.__)('Button width') }, [25, 50, 75, 100].map(widthValue => { return (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Button, { key: widthValue, isSmall: true, variant: widthValue === selectedWidth ? 'primary' : undefined, onClick: () => handleChange(widthValue) }, widthValue, "%"); }))); } function ButtonEdit(props) { var _style$border; const { attributes, setAttributes, className, isSelected, onReplace, mergeBlocks } = props; const { linkTarget, placeholder, rel, style, text, url, width } = attributes; const onSetLinkRel = (0,external_wp_element_namespaceObject.useCallback)(value => { setAttributes({ rel: value }); }, [setAttributes]); function onToggleOpenInNewTab(value) { const newLinkTarget = value ? '_blank' : undefined; let updatedRel = rel; if (newLinkTarget && !rel) { updatedRel = NEW_TAB_REL; } else if (!newLinkTarget && rel === NEW_TAB_REL) { updatedRel = undefined; } setAttributes({ linkTarget: newLinkTarget, rel: updatedRel }); } function setButtonText(newText) { // Remove anchor tags from button text content. setAttributes({ text: newText.replace(/<\/?a[^>]*>/g, '') }); } function onKeyDown(event) { if (external_wp_keycodes_namespaceObject.isKeyboardEvent.primary(event, 'k')) { startEditing(event); } else if (external_wp_keycodes_namespaceObject.isKeyboardEvent.primaryShift(event, 'k')) { var _richTextRef$current; unlink(); (_richTextRef$current = richTextRef.current) === null || _richTextRef$current === void 0 ? void 0 : _richTextRef$current.focus(); } } // Use internal state instead of a ref to make sure that the component // re-renders when the popover's anchor updates. const [popoverAnchor, setPopoverAnchor] = (0,external_wp_element_namespaceObject.useState)(null); const borderProps = (0,external_wp_blockEditor_namespaceObject.__experimentalUseBorderProps)(attributes); const colorProps = (0,external_wp_blockEditor_namespaceObject.__experimentalUseColorProps)(attributes); const spacingProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetSpacingClassesAndStyles)(attributes); const ref = (0,external_wp_element_namespaceObject.useRef)(); const richTextRef = (0,external_wp_element_namespaceObject.useRef)(); const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)({ ref: (0,external_wp_compose_namespaceObject.useMergeRefs)([setPopoverAnchor, ref]), onKeyDown }); const [isEditingURL, setIsEditingURL] = (0,external_wp_element_namespaceObject.useState)(false); const isURLSet = !!url; const opensInNewTab = linkTarget === '_blank'; function startEditing(event) { event.preventDefault(); setIsEditingURL(true); } function unlink() { setAttributes({ url: undefined, linkTarget: undefined, rel: undefined }); setIsEditingURL(false); } (0,external_wp_element_namespaceObject.useEffect)(() => { if (!isSelected) { setIsEditingURL(false); } }, [isSelected]); return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)("div", _extends({}, blockProps, { className: classnames_default()(blockProps.className, { [`has-custom-width wp-block-button__width-${width}`]: width, [`has-custom-font-size`]: blockProps.style.fontSize }) }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText, { ref: richTextRef, "aria-label": (0,external_wp_i18n_namespaceObject.__)('Button text'), placeholder: placeholder || (0,external_wp_i18n_namespaceObject.__)('Add text…'), value: text, onChange: value => setButtonText(value), withoutInteractiveFormatting: true, className: classnames_default()(className, 'wp-block-button__link', colorProps.className, borderProps.className, { // For backwards compatibility add style that isn't // provided via block support. 'no-border-radius': (style === null || style === void 0 ? void 0 : (_style$border = style.border) === null || _style$border === void 0 ? void 0 : _style$border.radius) === 0 }, (0,external_wp_blockEditor_namespaceObject.__experimentalGetElementClassName)('button')), style: { ...borderProps.style, ...colorProps.style, ...spacingProps.style }, onSplit: value => (0,external_wp_blocks_namespaceObject.createBlock)('core/button', { ...attributes, text: value }), onReplace: onReplace, onMerge: mergeBlocks, identifier: "text" })), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockControls, { group: "block" }, !isURLSet && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToolbarButton, { name: "link", icon: library_link, title: (0,external_wp_i18n_namespaceObject.__)('Link'), shortcut: external_wp_keycodes_namespaceObject.displayShortcut.primary('k'), onClick: startEditing }), isURLSet && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToolbarButton, { name: "link", icon: link_off, title: (0,external_wp_i18n_namespaceObject.__)('Unlink'), shortcut: external_wp_keycodes_namespaceObject.displayShortcut.primaryShift('k'), onClick: unlink, isActive: true })), isSelected && (isEditingURL || isURLSet) && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Popover, { position: "bottom center", onClose: () => { var _richTextRef$current2; setIsEditingURL(false); (_richTextRef$current2 = richTextRef.current) === null || _richTextRef$current2 === void 0 ? void 0 : _richTextRef$current2.focus(); }, anchor: popoverAnchor, focusOnMount: isEditingURL ? 'firstElement' : false, __unstableSlotName: '__unstable-block-tools-after', shift: true }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.__experimentalLinkControl, { className: "wp-block-navigation-link__inline-link-input", value: { url, opensInNewTab }, onChange: _ref2 => { let { url: newURL = '', opensInNewTab: newOpensInNewTab } = _ref2; setAttributes({ url: newURL }); if (opensInNewTab !== newOpensInNewTab) { onToggleOpenInNewTab(newOpensInNewTab); } }, onRemove: () => { var _richTextRef$current3; unlink(); (_richTextRef$current3 = richTextRef.current) === null || _richTextRef$current3 === void 0 ? void 0 : _richTextRef$current3.focus(); }, forceIsEditingLink: isEditingURL })), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(WidthPanel, { selectedWidth: width, setAttributes: setAttributes })), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, { __experimentalGroup: "advanced" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.TextControl, { label: (0,external_wp_i18n_namespaceObject.__)('Link rel'), value: rel || '', onChange: onSetLinkRel }))); } /* harmony default export */ var button_edit = (ButtonEdit); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/save.js /** * External dependencies */ /** * WordPress dependencies */ function save_save(_ref) { var _style$border, _style$typography; let { attributes, className } = _ref; const { fontSize, linkTarget, rel, style, text, title, url, width } = attributes; if (!text) { return null; } const borderProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetBorderClassesAndStyles)(attributes); const colorProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetColorClassesAndStyles)(attributes); const spacingProps = (0,external_wp_blockEditor_namespaceObject.__experimentalGetSpacingClassesAndStyles)(attributes); const buttonClasses = classnames_default()('wp-block-button__link', colorProps.className, borderProps.className, { // For backwards compatibility add style that isn't provided via // block support. 'no-border-radius': (style === null || style === void 0 ? void 0 : (_style$border = style.border) === null || _style$border === void 0 ? void 0 : _style$border.radius) === 0 }, (0,external_wp_blockEditor_namespaceObject.__experimentalGetElementClassName)('button')); const buttonStyle = { ...borderProps.style, ...colorProps.style, ...spacingProps.style }; // The use of a `title` attribute here is soft-deprecated, but still applied // if it had already been assigned, for the sake of backward-compatibility. // A title will no longer be assigned for new or updated button block links. const wrapperClasses = classnames_default()(className, { [`has-custom-width wp-block-button__width-${width}`]: width, [`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) }); return (0,external_wp_element_namespaceObject.createElement)("div", external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: wrapperClasses }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "a", className: buttonClasses, href: url, title: title, style: buttonStyle, value: text, target: linkTarget, rel: rel })); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/button/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const button_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/button", title: "Button", category: "design", parent: ["core/buttons"], description: "Prompt visitors to take action with a button-style link.", keywords: ["link"], textdomain: "default", attributes: { url: { type: "string", source: "attribute", selector: "a", attribute: "href" }, title: { type: "string", source: "attribute", selector: "a", attribute: "title" }, text: { type: "string", source: "html", selector: "a" }, linkTarget: { type: "string", source: "attribute", selector: "a", attribute: "target" }, rel: { type: "string", source: "attribute", selector: "a", attribute: "rel" }, placeholder: { type: "string" }, backgroundColor: { type: "string" }, textColor: { type: "string" }, gradient: { type: "string" }, width: { type: "number" } }, supports: { anchor: true, align: true, alignWide: false, color: { __experimentalSkipSerialization: true, gradients: true, __experimentalDefaultControls: { background: true, text: true } }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } }, reusable: false, spacing: { __experimentalSkipSerialization: true, padding: ["horizontal", "vertical"], __experimentalDefaultControls: { padding: true } }, __experimentalBorder: { radius: true, __experimentalSkipSerialization: true, __experimentalDefaultControls: { radius: true } }, __experimentalSelector: ".wp-block-button .wp-block-button__link" }, styles: [{ name: "fill", label: "Fill", isDefault: true }, { name: "outline", label: "Outline" }], editorStyle: "wp-block-button-editor", style: "wp-block-button" }; const { name: button_name } = button_metadata; const button_settings = { icon: library_button, example: { attributes: { className: 'is-style-fill', text: (0,external_wp_i18n_namespaceObject.__)('Call to Action') } }, edit: button_edit, save: save_save, deprecated: button_deprecated, merge: (a, _ref) => { let { text = '' } = _ref; return { ...a, text: (a.text || '') + text }; } }; const button_init = () => initBlock({ name: button_name, metadata: button_metadata, settings: button_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/buttons.js /** * WordPress dependencies */ const buttons = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_buttons = (buttons); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ /** * @param {Object} attributes Block's attributes. */ const migrateWithLayout = attributes => { if (!!attributes.layout) { return attributes; } const { contentJustification, orientation, ...updatedAttributes } = attributes; if (contentJustification || orientation) { Object.assign(updatedAttributes, { layout: { type: 'flex', ...(contentJustification && { justifyContent: contentJustification }), ...(orientation && { orientation }) } }); } return updatedAttributes; }; const buttons_deprecated_deprecated = [{ attributes: { contentJustification: { type: 'string' }, orientation: { type: 'string', default: 'horizontal' } }, supports: { anchor: true, align: ['wide', 'full'], __experimentalExposeControlsToChildren: true, spacing: { blockGap: true, margin: ['top', 'bottom'], __experimentalDefaultControls: { blockGap: true } } }, isEligible: _ref => { let { contentJustification, orientation } = _ref; return !!contentJustification || !!orientation; }, migrate: migrateWithLayout, save(_ref2) { let { attributes: { contentJustification, orientation } } = _ref2; return (0,external_wp_element_namespaceObject.createElement)("div", external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: classnames_default()({ [`is-content-justification-${contentJustification}`]: contentJustification, 'is-vertical': orientation === 'vertical' }) }), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InnerBlocks.Content, null)); } }, { supports: { align: ['center', 'left', 'right'], anchor: true }, save() { return (0,external_wp_element_namespaceObject.createElement)("div", null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InnerBlocks.Content, null)); }, isEligible(_ref3) { let { align } = _ref3; return align && ['center', 'left', 'right'].includes(align); }, migrate(attributes) { return migrateWithLayout({ ...attributes, align: undefined, // Floating Buttons blocks shouldn't have been supported in the // first place. Most users using them probably expected them to // act like content justification controls, so these blocks are // migrated to use content justification. // As for center-aligned Buttons blocks, the content justification // equivalent will create an identical end result in most cases. contentJustification: attributes.align }); } }]; /* harmony default export */ var buttons_deprecated = (buttons_deprecated_deprecated); ;// CONCATENATED MODULE: external ["wp","richText"] var external_wp_richText_namespaceObject = window["wp"]["richText"]; ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/transforms.js /** * WordPress dependencies */ /** * Internal dependencies */ const { name: transforms_name } = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/buttons", title: "Buttons", category: "design", description: "Prompt visitors to take action with a group of button-style links.", keywords: ["link"], textdomain: "default", supports: { anchor: true, align: ["wide", "full"], __experimentalExposeControlsToChildren: true, spacing: { blockGap: true, margin: ["top", "bottom"], __experimentalDefaultControls: { blockGap: true } }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } }, __experimentalLayout: { allowSwitching: false, allowInheriting: false, "default": { type: "flex" } } }, editorStyle: "wp-block-buttons-editor", style: "wp-block-buttons" }; const transforms_transforms = { from: [{ type: 'block', isMultiBlock: true, blocks: ['core/button'], transform: buttons => // Creates the buttons block. (0,external_wp_blocks_namespaceObject.createBlock)(transforms_name, {}, // Loop the selected buttons. buttons.map(attributes => // Create singular button in the buttons block. (0,external_wp_blocks_namespaceObject.createBlock)('core/button', attributes))) }, { type: 'block', isMultiBlock: true, blocks: ['core/paragraph'], transform: buttons => // Creates the buttons block. (0,external_wp_blocks_namespaceObject.createBlock)(transforms_name, {}, // Loop the selected buttons. buttons.map(attributes => { const element = (0,external_wp_richText_namespaceObject.__unstableCreateElement)(document, attributes.content); // Remove any HTML tags. const text = element.innerText || ''; // Get first url. const link = element.querySelector('a'); const url = link === null || link === void 0 ? void 0 : link.getAttribute('href'); // Create singular button in the buttons block. return (0,external_wp_blocks_namespaceObject.createBlock)('core/button', { text, url }); })), isMatch: paragraphs => { return paragraphs.every(attributes => { const element = (0,external_wp_richText_namespaceObject.__unstableCreateElement)(document, attributes.content); const text = element.innerText || ''; const links = element.querySelectorAll('a'); return text.length <= 30 && links.length <= 1; }); } }] }; /* harmony default export */ var buttons_transforms = (transforms_transforms); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const ALLOWED_BLOCKS = [button_name]; const DEFAULT_BLOCK = { name: button_name, attributesToCopy: ['backgroundColor', 'border', 'className', 'fontFamily', 'fontSize', 'gradient', 'style', 'textColor', 'width'] }; function ButtonsEdit(_ref) { var _style$typography; let { attributes, className } = _ref; const { fontSize, layout = {}, style } = attributes; const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)({ className: classnames_default()(className, { '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) }) }); const preferredStyle = (0,external_wp_data_namespaceObject.useSelect)(select => { var _preferredStyleVariat; const preferredStyleVariations = select(external_wp_blockEditor_namespaceObject.store).getSettings().__experimentalPreferredStyleVariations; return preferredStyleVariations === null || preferredStyleVariations === void 0 ? void 0 : (_preferredStyleVariat = preferredStyleVariations.value) === null || _preferredStyleVariat === void 0 ? void 0 : _preferredStyleVariat[button_name]; }, []); const innerBlocksProps = (0,external_wp_blockEditor_namespaceObject.useInnerBlocksProps)(blockProps, { allowedBlocks: ALLOWED_BLOCKS, __experimentalDefaultBlock: DEFAULT_BLOCK, __experimentalDirectInsert: true, template: [[button_name, { className: preferredStyle && `is-style-${preferredStyle}` }]], __experimentalLayout: layout, templateInsertUpdatesSelection: true }); return (0,external_wp_element_namespaceObject.createElement)("div", innerBlocksProps); } /* harmony default export */ var buttons_edit = (ButtonsEdit); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/save.js /** * External dependencies */ /** * WordPress dependencies */ function buttons_save_save(_ref) { var _style$typography; let { attributes, className } = _ref; const { fontSize, style } = attributes; const blockProps = external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: classnames_default()(className, { '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) }) }); const innerBlocksProps = external_wp_blockEditor_namespaceObject.useInnerBlocksProps.save(blockProps); return (0,external_wp_element_namespaceObject.createElement)("div", innerBlocksProps); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/buttons/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const buttons_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/buttons", title: "Buttons", category: "design", description: "Prompt visitors to take action with a group of button-style links.", keywords: ["link"], textdomain: "default", supports: { anchor: true, align: ["wide", "full"], __experimentalExposeControlsToChildren: true, spacing: { blockGap: true, margin: ["top", "bottom"], __experimentalDefaultControls: { blockGap: true } }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } }, __experimentalLayout: { allowSwitching: false, allowInheriting: false, "default": { type: "flex" } } }, editorStyle: "wp-block-buttons-editor", style: "wp-block-buttons" }; const { name: buttons_name } = buttons_metadata; const buttons_settings = { icon: library_buttons, example: { innerBlocks: [{ name: 'core/button', attributes: { text: (0,external_wp_i18n_namespaceObject.__)('Find out more') } }, { name: 'core/button', attributes: { text: (0,external_wp_i18n_namespaceObject.__)('Contact us') } }] }, deprecated: buttons_deprecated, transforms: buttons_transforms, edit: buttons_edit, save: buttons_save_save }; const buttons_init = () => initBlock({ name: buttons_name, metadata: buttons_metadata, settings: buttons_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/calendar.js /** * WordPress dependencies */ const calendar = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_calendar = (calendar); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/calendar/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Returns the year and month of a specified date. * * @see `WP_REST_Posts_Controller::prepare_date_response()`. * * @param {string} date Date in `ISO8601/RFC3339` format. * @return {Object} Year and date of the specified date. */ const getYearMonth = memize_default()(date => { if (!date) { return {}; } const dateObj = new Date(date); return { year: dateObj.getFullYear(), month: dateObj.getMonth() + 1 }; }); function CalendarEdit(_ref) { let { attributes } = _ref; const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)(); const { date, hasPosts, hasPostsResolved } = (0,external_wp_data_namespaceObject.useSelect)(select => { const { getEntityRecords, hasFinishedResolution } = select(external_wp_coreData_namespaceObject.store); const singlePublishedPostQuery = { status: 'publish', per_page: 1 }; const posts = getEntityRecords('postType', 'post', singlePublishedPostQuery); const postsResolved = hasFinishedResolution('getEntityRecords', ['postType', 'post', singlePublishedPostQuery]); let _date; // FIXME: @wordpress/block-library should not depend on @wordpress/editor. // Blocks can be loaded into a *non-post* block editor. // eslint-disable-next-line @wordpress/data-no-store-string-literals const editorSelectors = select('core/editor'); if (editorSelectors) { const postType = editorSelectors.getEditedPostAttribute('type'); // Dates are used to overwrite year and month used on the calendar. // This overwrite should only happen for 'post' post types. // For other post types the calendar always displays the current month. if (postType === 'post') { _date = editorSelectors.getEditedPostAttribute('date'); } } return { date: _date, hasPostsResolved: postsResolved, hasPosts: postsResolved && (posts === null || posts === void 0 ? void 0 : posts.length) === 1 }; }, []); if (!hasPosts) { return (0,external_wp_element_namespaceObject.createElement)("div", blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Placeholder, { icon: library_calendar, label: (0,external_wp_i18n_namespaceObject.__)('Calendar') }, !hasPostsResolved ? (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Spinner, null) : (0,external_wp_i18n_namespaceObject.__)('No published posts found.'))); } return (0,external_wp_element_namespaceObject.createElement)("div", blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Disabled, null, (0,external_wp_element_namespaceObject.createElement)((external_wp_serverSideRender_default()), { block: "core/calendar", attributes: { ...attributes, ...getYearMonth(date) } }))); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/calendar/transforms.js /** * WordPress dependencies */ const calendar_transforms_transforms = { from: [{ type: 'block', blocks: ['core/archives'], transform: () => (0,external_wp_blocks_namespaceObject.createBlock)('core/calendar') }], to: [{ type: 'block', blocks: ['core/archives'], transform: () => (0,external_wp_blocks_namespaceObject.createBlock)('core/archives') }] }; /* harmony default export */ var calendar_transforms = (calendar_transforms_transforms); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/calendar/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const calendar_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/calendar", title: "Calendar", category: "widgets", description: "A calendar of your site\u2019s posts.", keywords: ["posts", "archive"], textdomain: "default", attributes: { month: { type: "integer" }, year: { type: "integer" } }, supports: { align: true, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } } }, style: "wp-block-calendar" }; const { name: calendar_name } = calendar_metadata; const calendar_settings = { icon: library_calendar, example: {}, edit: CalendarEdit, transforms: calendar_transforms }; const calendar_init = () => initBlock({ name: calendar_name, metadata: calendar_metadata, settings: calendar_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/category.js /** * WordPress dependencies */ const category = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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", fillRule: "evenodd", clipRule: "evenodd" })); /* harmony default export */ var library_category = (category); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/pin.js /** * WordPress dependencies */ const pin = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { d: "m21.5 9.1-6.6-6.6-4.2 5.6c-1.2-.1-2.4.1-3.6.7-.1 0-.1.1-.2.1-.5.3-.9.6-1.2.9l3.7 3.7-5.7 5.7v1.1h1.1l5.7-5.7 3.7 3.7c.4-.4.7-.8.9-1.2.1-.1.1-.2.2-.3.6-1.1.8-2.4.6-3.6l5.6-4.1zm-7.3 3.5.1.9c.1.9 0 1.8-.4 2.6l-6-6c.8-.4 1.7-.5 2.6-.4l.9.1L15 4.9 19.1 9l-4.9 3.6z" })); /* harmony default export */ var library_pin = (pin); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/categories/edit.js /** * External dependencies */ /** * WordPress dependencies */ function CategoriesEdit(_ref) { let { attributes: { displayAsDropdown, showHierarchy, showPostCounts, showOnlyTopLevel, showEmpty }, setAttributes, className } = _ref; const selectId = (0,external_wp_compose_namespaceObject.useInstanceId)(CategoriesEdit, 'blocks-category-select'); const query = { per_page: -1, hide_empty: !showEmpty, context: 'view' }; if (showOnlyTopLevel) { query.parent = 0; } const { records: categories, isResolving } = (0,external_wp_coreData_namespaceObject.useEntityRecords)('taxonomy', 'category', query); const getCategoriesList = parentId => { if (!(categories !== null && categories !== void 0 && categories.length)) { return []; } if (parentId === null) { return categories; } return categories.filter(_ref2 => { let { parent } = _ref2; return parent === parentId; }); }; const toggleAttribute = attributeName => newValue => setAttributes({ [attributeName]: newValue }); const renderCategoryName = name => !name ? (0,external_wp_i18n_namespaceObject.__)('(Untitled)') : (0,external_lodash_namespaceObject.unescape)(name).trim(); const renderCategoryList = () => { const parentId = showHierarchy ? 0 : null; const categoriesList = getCategoriesList(parentId); return categoriesList.map(category => renderCategoryListItem(category, 0)); }; const renderCategoryListItem = category => { const childCategories = getCategoriesList(category.id); const { id, link, count, name } = category; return (0,external_wp_element_namespaceObject.createElement)("li", { key: id, className: `cat-item cat-item-${id}` }, (0,external_wp_element_namespaceObject.createElement)("a", { href: link, target: "_blank", rel: "noreferrer noopener" }, renderCategoryName(name)), showPostCounts && ` (${count})`, showHierarchy && !!childCategories.length && (0,external_wp_element_namespaceObject.createElement)("ul", { className: "children" }, childCategories.map(childCategory => renderCategoryListItem(childCategory)))); }; const renderCategoryDropdown = () => { const parentId = showHierarchy ? 0 : null; const categoriesList = getCategoriesList(parentId); return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.VisuallyHidden, { as: "label", htmlFor: selectId }, (0,external_wp_i18n_namespaceObject.__)('Categories')), (0,external_wp_element_namespaceObject.createElement)("select", { id: selectId }, (0,external_wp_element_namespaceObject.createElement)("option", null, (0,external_wp_i18n_namespaceObject.__)('Select Category')), categoriesList.map(category => renderCategoryDropdownItem(category, 0)))); }; const renderCategoryDropdownItem = (category, level) => { const { id, count, name } = category; const childCategories = getCategoriesList(id); return [(0,external_wp_element_namespaceObject.createElement)("option", { key: id, className: `level-${level}` }, Array.from({ length: level * 3 }).map(() => '\xa0'), renderCategoryName(name), showPostCounts && ` (${count})`), showHierarchy && !!childCategories.length && childCategories.map(childCategory => renderCategoryDropdownItem(childCategory, level + 1))]; }; const TagName = !!(categories !== null && categories !== void 0 && categories.length) && !displayAsDropdown && !isResolving ? 'ul' : 'div'; const classes = classnames_default()(className, { 'wp-block-categories-list': !!(categories !== null && categories !== void 0 && categories.length) && !displayAsDropdown && !isResolving, 'wp-block-categories-dropdown': !!(categories !== null && categories !== void 0 && categories.length) && displayAsDropdown && !isResolving }); const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)({ className: classes }); return (0,external_wp_element_namespaceObject.createElement)(TagName, blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.PanelBody, { title: (0,external_wp_i18n_namespaceObject.__)('Settings') }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Display as dropdown'), checked: displayAsDropdown, onChange: toggleAttribute('displayAsDropdown') }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Show post counts'), checked: showPostCounts, onChange: toggleAttribute('showPostCounts') }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Show only top level categories'), checked: showOnlyTopLevel, onChange: toggleAttribute('showOnlyTopLevel') }), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Show empty categories'), checked: showEmpty, onChange: toggleAttribute('showEmpty') }), !showOnlyTopLevel && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Show hierarchy'), checked: showHierarchy, onChange: toggleAttribute('showHierarchy') }))), isResolving && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Placeholder, { icon: library_pin, label: (0,external_wp_i18n_namespaceObject.__)('Categories') }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Spinner, null)), !isResolving && (categories === null || categories === void 0 ? void 0 : categories.length) === 0 && (0,external_wp_element_namespaceObject.createElement)("p", null, (0,external_wp_i18n_namespaceObject.__)('Your site does not have any posts, so there is nothing to display here at the moment.')), !isResolving && (categories === null || categories === void 0 ? void 0 : categories.length) > 0 && (displayAsDropdown ? renderCategoryDropdown() : renderCategoryList())); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/categories/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const categories_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/categories", title: "Categories List", category: "widgets", description: "Display a list of all categories.", textdomain: "default", attributes: { displayAsDropdown: { type: "boolean", "default": false }, showHierarchy: { type: "boolean", "default": false }, showPostCounts: { type: "boolean", "default": false }, showOnlyTopLevel: { type: "boolean", "default": false }, showEmpty: { type: "boolean", "default": false } }, supports: { align: true, html: false, spacing: { margin: true, padding: true }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } } }, editorStyle: "wp-block-categories-editor", style: "wp-block-categories" }; const { name: categories_name } = categories_metadata; const categories_settings = { icon: library_category, example: {}, edit: CategoriesEdit }; const categories_init = () => initBlock({ name: categories_name, metadata: categories_metadata, settings: categories_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/classic.js /** * WordPress dependencies */ const classic = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_classic = (classic); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/convert-to-blocks-button.js /** * WordPress dependencies */ const ConvertToBlocksButton = _ref => { let { clientId } = _ref; const { replaceBlocks } = (0,external_wp_data_namespaceObject.useDispatch)(external_wp_blockEditor_namespaceObject.store); const block = (0,external_wp_data_namespaceObject.useSelect)(select => { return select(external_wp_blockEditor_namespaceObject.store).getBlock(clientId); }, [clientId]); return (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToolbarButton, { onClick: () => replaceBlocks(block.clientId, (0,external_wp_blocks_namespaceObject.rawHandler)({ HTML: (0,external_wp_blocks_namespaceObject.serialize)(block) })) }, (0,external_wp_i18n_namespaceObject.__)('Convert to blocks')); }; /* harmony default export */ var convert_to_blocks_button = (ConvertToBlocksButton); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ const { wp } = window; function isTmceEmpty(editor) { // When tinyMce is empty the content seems to be: //


// avoid expensive checks for large documents const body = editor.getBody(); if (body.childNodes.length > 1) { return false; } else if (body.childNodes.length === 0) { return true; } if (body.childNodes[0].childNodes.length > 1) { return false; } return /^\n?$/.test(body.innerText || body.textContent); } function ClassicEdit(_ref) { let { clientId, attributes: { content }, setAttributes, onReplace } = _ref; const { getMultiSelectedBlockClientIds } = (0,external_wp_data_namespaceObject.useSelect)(external_wp_blockEditor_namespaceObject.store); const didMount = (0,external_wp_element_namespaceObject.useRef)(false); (0,external_wp_element_namespaceObject.useEffect)(() => { if (!didMount.current) { return; } const editor = window.tinymce.get(`editor-${clientId}`); const currentContent = editor === null || editor === void 0 ? void 0 : editor.getContent(); if (currentContent !== content) { editor.setContent(content || ''); } }, [content]); (0,external_wp_element_namespaceObject.useEffect)(() => { const { baseURL, suffix } = window.wpEditorL10n.tinymce; didMount.current = true; window.tinymce.EditorManager.overrideDefaults({ base_url: baseURL, suffix }); function onSetup(editor) { let bookmark; if (content) { editor.on('loadContent', () => editor.setContent(content)); } editor.on('blur', () => { var _getMultiSelectedBloc; 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. // This causes a scroll to the top of editor content on return from some content updating dialogs so tracking // scroll position until this is fixed in core. const scrollContainer = document.querySelector('.interface-interface-skeleton__content'); const scrollPosition = scrollContainer.scrollTop; // Only update attributes if we aren't multi-selecting blocks. // Updating during multi-selection can overwrite attributes of other blocks. if (!((_getMultiSelectedBloc = getMultiSelectedBlockClientIds()) !== null && _getMultiSelectedBloc !== void 0 && _getMultiSelectedBloc.length)) { setAttributes({ content: editor.getContent() }); } editor.once('focus', () => { if (bookmark) { editor.selection.moveToBookmark(bookmark); if (scrollContainer.scrollTop !== scrollPosition) { scrollContainer.scrollTop = scrollPosition; } } }); return false; }); editor.on('mousedown touchstart', () => { bookmark = null; }); const debouncedOnChange = (0,external_lodash_namespaceObject.debounce)(() => { const value = editor.getContent(); if (value !== editor._lastChange) { editor._lastChange = value; setAttributes({ content: value }); } }, 250); editor.on('Paste Change input Undo Redo', debouncedOnChange); // We need to cancel the debounce call because when we remove // the editor (onUnmount) this callback is executed in // another tick. This results in setting the content to empty. editor.on('remove', debouncedOnChange.cancel); editor.on('keydown', event => { if (external_wp_keycodes_namespaceObject.isKeyboardEvent.primary(event, 'z')) { // Prevent the gutenberg undo kicking in so TinyMCE undo stack works as expected. event.stopPropagation(); } if ((event.keyCode === external_wp_keycodes_namespaceObject.BACKSPACE || event.keyCode === external_wp_keycodes_namespaceObject.DELETE) && isTmceEmpty(editor)) { // Delete the block. onReplace([]); event.preventDefault(); event.stopImmediatePropagation(); } const { altKey } = event; /* * Prevent Mousetrap from kicking in: TinyMCE already uses its own * `alt+f10` shortcut to focus its toolbar. */ if (altKey && event.keyCode === external_wp_keycodes_namespaceObject.F10) { event.stopPropagation(); } }); editor.on('init', () => { const rootNode = editor.getBody(); // Create the toolbar by refocussing the editor. if (rootNode.ownerDocument.activeElement === rootNode) { rootNode.blur(); editor.focus(); } }); } function initialize() { const { settings } = window.wpEditorL10n.tinymce; wp.oldEditor.initialize(`editor-${clientId}`, { tinymce: { ...settings, inline: true, content_css: false, fixed_toolbar_container: `#toolbar-${clientId}`, setup: onSetup } }); } function onReadyStateChange() { if (document.readyState === 'complete') { initialize(); } } if (document.readyState === 'complete') { initialize(); } else { document.addEventListener('readystatechange', onReadyStateChange); } return () => { document.removeEventListener('readystatechange', onReadyStateChange); wp.oldEditor.remove(`editor-${clientId}`); }; }, []); function focus() { const editor = window.tinymce.get(`editor-${clientId}`); if (editor) { editor.focus(); } } function onToolbarKeyDown(event) { // Prevent WritingFlow from kicking in and allow arrows navigation on the toolbar. event.stopPropagation(); // Prevent Mousetrap from moving focus to the top toolbar when pressing `alt+f10` on this block toolbar. event.nativeEvent.stopImmediatePropagation(); } // Disable reasons: // // jsx-a11y/no-static-element-interactions // - the toolbar itself is non-interactive, but must capture events // from the KeyboardShortcuts component to stop their propagation. /* eslint-disable jsx-a11y/no-static-element-interactions */ return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToolbarGroup, null, (0,external_wp_element_namespaceObject.createElement)(convert_to_blocks_button, { clientId: clientId }))), (0,external_wp_element_namespaceObject.createElement)("div", (0,external_wp_blockEditor_namespaceObject.useBlockProps)(), (0,external_wp_element_namespaceObject.createElement)("div", { key: "toolbar", id: `toolbar-${clientId}`, className: "block-library-classic__toolbar", onClick: focus, "data-placeholder": (0,external_wp_i18n_namespaceObject.__)('Classic'), onKeyDown: onToolbarKeyDown }), (0,external_wp_element_namespaceObject.createElement)("div", { key: "editor", id: `editor-${clientId}`, className: "wp-block-freeform block-library-rich-text__tinymce" }))); /* eslint-enable jsx-a11y/no-static-element-interactions */ } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/save.js /** * WordPress dependencies */ function freeform_save_save(_ref) { let { attributes } = _ref; const { content } = attributes; return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.RawHTML, null, content); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/freeform/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const freeform_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/freeform", title: "Classic", category: "text", description: "Use the classic WordPress editor.", textdomain: "default", attributes: { content: { type: "string", source: "html" } }, supports: { className: false, customClassName: false, reusable: false }, editorStyle: "wp-block-freeform-editor" }; const { name: freeform_name } = freeform_metadata; const freeform_settings = { icon: library_classic, edit: ClassicEdit, save: freeform_save_save }; const freeform_init = () => initBlock({ name: freeform_name, metadata: freeform_metadata, settings: freeform_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/code.js /** * WordPress dependencies */ const code = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_code = (code); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/edit.js /** * WordPress dependencies */ function CodeEdit(_ref) { let { attributes, setAttributes, onRemove } = _ref; const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)(); return (0,external_wp_element_namespaceObject.createElement)("pre", blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText, { tagName: "code", value: attributes.content, onChange: content => setAttributes({ content }), onRemove: onRemove, placeholder: (0,external_wp_i18n_namespaceObject.__)('Write code…'), "aria-label": (0,external_wp_i18n_namespaceObject.__)('Code'), preserveWhiteSpace: true, __unstablePastePlainText: true })); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/utils.js /** * External dependencies */ /** * Escapes ampersands, shortcodes, and links. * * @param {string} content The content of a code block. * @return {string} The given content with some characters escaped. */ function utils_escape(content) { return (0,external_lodash_namespaceObject.flow)(escapeOpeningSquareBrackets, escapeProtocolInIsolatedUrls)(content || ''); } /** * Returns the given content with all opening shortcode characters converted * into their HTML entity counterpart (i.e. [ => [). For instance, a * shortcode like [embed] becomes [embed] * * This function replicates the escaping of HTML tags, where a tag like * becomes <strong>. * * @param {string} content The content of a code block. * @return {string} The given content with its opening shortcode characters * converted into their HTML entity counterpart * (i.e. [ => [) */ function escapeOpeningSquareBrackets(content) { return content.replace(/\[/g, '['); } /** * Converts the first two forward slashes of any isolated URL into their HTML * counterparts (i.e. // => //). For instance, https://youtube.com/watch?x * becomes https://youtube.com/watch?x. * * An isolated URL is a URL that sits in its own line, surrounded only by spacing * characters. * * See https://github.com/WordPress/wordpress-develop/blob/5.1.1/src/wp-includes/class-wp-embed.php#L403 * * @param {string} content The content of a code block. * @return {string} The given content with its ampersands converted into * their HTML entity counterpart (i.e. & => &) */ function escapeProtocolInIsolatedUrls(content) { return content.replace(/^(\s*https?:)\/\/([^\s<>"]+\s*)$/m, '$1//$2'); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/save.js /** * WordPress dependencies */ /** * Internal dependencies */ function code_save_save(_ref) { let { attributes } = _ref; return (0,external_wp_element_namespaceObject.createElement)("pre", external_wp_blockEditor_namespaceObject.useBlockProps.save(), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.RichText.Content, { tagName: "code", value: utils_escape(attributes.content) })); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/transforms.js /** * WordPress dependencies */ const code_transforms_transforms = { from: [{ type: 'enter', regExp: /^```$/, transform: () => (0,external_wp_blocks_namespaceObject.createBlock)('core/code') }, { type: 'block', blocks: ['core/html', 'core/paragraph'], transform: _ref => { let { content } = _ref; return (0,external_wp_blocks_namespaceObject.createBlock)('core/code', { content }); } }, { type: 'raw', isMatch: node => node.nodeName === 'PRE' && node.children.length === 1 && node.firstChild.nodeName === 'CODE', schema: { pre: { children: { code: { children: { '#text': {} } } } } } }], to: [{ type: 'block', blocks: ['core/paragraph'], transform: _ref2 => { let { content } = _ref2; return (0,external_wp_blocks_namespaceObject.createBlock)('core/paragraph', { content }); } }] }; /* harmony default export */ var code_transforms = (code_transforms_transforms); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/code/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const code_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/code", title: "Code", category: "text", description: "Display code snippets that respect your spacing and tabs.", textdomain: "default", attributes: { content: { type: "string", source: "html", selector: "code" } }, supports: { anchor: true, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } }, spacing: { margin: ["top", "bottom"], padding: true }, __experimentalBorder: { radius: true, color: true, width: true, style: true, __experimentalDefaultControls: { width: true, color: true } }, color: { text: true, background: true, gradients: true, __experimentalDefaultControls: { background: true, text: true } } }, style: "wp-block-code" }; const { name: code_name } = code_metadata; const code_settings = { icon: library_code, example: { attributes: { /* eslint-disable @wordpress/i18n-no-collapsible-whitespace */ // translators: Preserve \n markers for line breaks content: (0,external_wp_i18n_namespaceObject.__)('// 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 );') /* eslint-enable @wordpress/i18n-no-collapsible-whitespace */ } }, transforms: code_transforms, edit: CodeEdit, save: code_save_save }; const code_init = () => initBlock({ name: code_name, metadata: code_metadata, settings: code_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/column.js /** * WordPress dependencies */ const column = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_column = (column); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ const column_deprecated_deprecated = [{ attributes: { verticalAlignment: { type: 'string' }, width: { type: 'number', min: 0, max: 100 } }, isEligible(_ref) { let { width } = _ref; return isFinite(width); }, migrate(attributes) { return { ...attributes, width: `${attributes.width}%` }; }, save(_ref2) { let { attributes } = _ref2; const { verticalAlignment, width } = attributes; const wrapperClasses = classnames_default()({ [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment }); const style = { flexBasis: width + '%' }; return (0,external_wp_element_namespaceObject.createElement)("div", { className: wrapperClasses, style: style }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InnerBlocks.Content, null)); } }]; /* harmony default export */ var column_deprecated = (column_deprecated_deprecated); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/edit.js /** * External dependencies */ /** * WordPress dependencies */ function ColumnEdit(_ref) { let { attributes: { verticalAlignment, width, templateLock, allowedBlocks }, setAttributes, clientId } = _ref; const classes = classnames_default()('block-core-columns', { [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment }); const units = (0,external_wp_components_namespaceObject.__experimentalUseCustomUnits)({ availableUnits: (0,external_wp_blockEditor_namespaceObject.useSetting)('spacing.units') || ['%', 'px', 'em', 'rem', 'vw'] }); const { columnsIds, hasChildBlocks, rootClientId } = (0,external_wp_data_namespaceObject.useSelect)(select => { const { getBlockOrder, getBlockRootClientId } = select(external_wp_blockEditor_namespaceObject.store); const rootId = getBlockRootClientId(clientId); return { hasChildBlocks: getBlockOrder(clientId).length > 0, rootClientId: rootId, columnsIds: getBlockOrder(rootId) }; }, [clientId]); const { updateBlockAttributes } = (0,external_wp_data_namespaceObject.useDispatch)(external_wp_blockEditor_namespaceObject.store); const updateAlignment = value => { // Update own alignment. setAttributes({ verticalAlignment: value }); // Reset parent Columns block. updateBlockAttributes(rootClientId, { verticalAlignment: null }); }; const widthWithUnit = Number.isFinite(width) ? width + '%' : width; const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)({ className: classes, style: widthWithUnit ? { flexBasis: widthWithUnit } : undefined }); const columnsCount = columnsIds.length; const currentColumnPosition = columnsIds.indexOf(clientId) + 1; const label = (0,external_wp_i18n_namespaceObject.sprintf)( /* translators: 1: Block label (i.e. "Block: Column"), 2: Position of the selected block, 3: Total number of sibling blocks of the same type */ (0,external_wp_i18n_namespaceObject.__)('%1$s (%2$d of %3$d)'), blockProps['aria-label'], currentColumnPosition, columnsCount); const innerBlocksProps = (0,external_wp_blockEditor_namespaceObject.useInnerBlocksProps)({ ...blockProps, 'aria-label': label }, { templateLock, allowedBlocks, renderAppender: hasChildBlocks ? undefined : external_wp_blockEditor_namespaceObject.InnerBlocks.ButtonBlockAppender }); return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockVerticalAlignmentToolbar, { onChange: updateAlignment, value: verticalAlignment })), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.PanelBody, { title: (0,external_wp_i18n_namespaceObject.__)('Column settings') }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.__experimentalUnitControl, { label: (0,external_wp_i18n_namespaceObject.__)('Width'), labelPosition: "edge", __unstableInputWidth: "80px", value: width || '', onChange: nextWidth => { nextWidth = 0 > parseFloat(nextWidth) ? '0' : nextWidth; setAttributes({ width: nextWidth }); }, units: units }))), (0,external_wp_element_namespaceObject.createElement)("div", innerBlocksProps)); } /* harmony default export */ var column_edit = (ColumnEdit); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/save.js /** * External dependencies */ /** * WordPress dependencies */ function column_save_save(_ref) { let { attributes } = _ref; const { verticalAlignment, width } = attributes; const wrapperClasses = classnames_default()({ [`is-vertically-aligned-${verticalAlignment}`]: verticalAlignment }); let style; if (width && /\d/.test(width)) { // Numbers are handled for backward compatibility as they can be still provided with templates. let flexBasis = Number.isFinite(width) ? width + '%' : width; // In some cases we need to round the width to a shorter float. if (!Number.isFinite(width) && width !== null && width !== void 0 && width.endsWith('%')) { const multiplier = 1000000000000; // Shrink the number back to a reasonable float. flexBasis = Math.round(Number.parseFloat(width) * multiplier) / multiplier + '%'; } style = { flexBasis }; } const blockProps = external_wp_blockEditor_namespaceObject.useBlockProps.save({ className: wrapperClasses, style }); const innerBlocksProps = external_wp_blockEditor_namespaceObject.useInnerBlocksProps.save(blockProps); return (0,external_wp_element_namespaceObject.createElement)("div", innerBlocksProps); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/column/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const column_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/column", title: "Column", category: "text", parent: ["core/columns"], description: "A single column within a columns block.", textdomain: "default", attributes: { verticalAlignment: { type: "string" }, width: { type: "string" }, allowedBlocks: { type: "array" }, templateLock: { type: ["string", "boolean"], "enum": ["all", "insert", "contentOnly", false] } }, supports: { anchor: true, reusable: false, html: false, color: { gradients: true, link: true, __experimentalDefaultControls: { background: true, text: true } }, spacing: { blockGap: true, padding: true, __experimentalDefaultControls: { padding: true } }, __experimentalBorder: { color: true, style: true, width: true, __experimentalDefaultControls: { color: true, style: true, width: true } }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } }, __experimentalLayout: true } }; const { name: column_name } = column_metadata; const column_settings = { icon: library_column, edit: column_edit, save: column_save_save, deprecated: column_deprecated }; const column_init = () => initBlock({ name: column_name, metadata: column_metadata, settings: column_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/columns.js /** * WordPress dependencies */ const columns = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { 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" })); /* harmony default export */ var library_columns = (columns); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/deprecated.js /** * External dependencies */ /** * WordPress dependencies */ /** * Given an HTML string for a deprecated columns inner block, returns the * column index to which the migrated inner block should be assigned. Returns * undefined if the inner block was not assigned to a column. * * @param {string} originalContent Deprecated Columns inner block HTML. * * @return {?number} Column to which inner block is to be assigned. */ function getDeprecatedLayoutColumn(originalContent) { let { doc } = getDeprecatedLayoutColumn; if (!doc) { doc = document.implementation.createHTMLDocument(''); getDeprecatedLayoutColumn.doc = doc; } let columnMatch; doc.body.innerHTML = originalContent; for (const classListItem of doc.body.firstChild.classList) { if (columnMatch = classListItem.match(/^layout-column-(\d+)$/)) { return Number(columnMatch[1]) - 1; } } } const migrateCustomColors = attributes => { if (!attributes.customTextColor && !attributes.customBackgroundColor) { return attributes; } const style = { color: {} }; if (attributes.customTextColor) { style.color.text = attributes.customTextColor; } if (attributes.customBackgroundColor) { style.color.background = attributes.customBackgroundColor; } const { customTextColor, customBackgroundColor, ...restAttributes } = attributes; return { ...restAttributes, style, isStackedOnMobile: true }; }; /* harmony default export */ var columns_deprecated = ([{ attributes: { verticalAlignment: { type: 'string' }, backgroundColor: { type: 'string' }, customBackgroundColor: { type: 'string' }, customTextColor: { type: 'string' }, textColor: { type: 'string' } }, migrate: migrateCustomColors, save(_ref) { let { attributes } = _ref; const { verticalAlignment, backgroundColor, customBackgroundColor, textColor, customTextColor } = attributes; const backgroundClass = (0,external_wp_blockEditor_namespaceObject.getColorClassName)('background-color', backgroundColor); const textClass = (0,external_wp_blockEditor_namespaceObject.getColorClassName)('color', textColor); const className = classnames_default()({ 'has-background': backgroundColor || customBackgroundColor, 'has-text-color': textColor || customTextColor, [backgroundClass]: backgroundClass, [textClass]: textClass, [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment }); const style = { backgroundColor: backgroundClass ? undefined : customBackgroundColor, color: textClass ? undefined : customTextColor }; return (0,external_wp_element_namespaceObject.createElement)("div", { className: className ? className : undefined, style: style }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InnerBlocks.Content, null)); } }, { attributes: { columns: { type: 'number', default: 2 } }, isEligible(attributes, innerBlocks) { // Since isEligible is called on every valid instance of the // Columns block and a deprecation is the unlikely case due to // its subsequent migration, optimize for the `false` condition // by performing a naive, inaccurate pass at inner blocks. const isFastPassEligible = innerBlocks.some(innerBlock => /layout-column-\d+/.test(innerBlock.originalContent)); if (!isFastPassEligible) { return false; } // Only if the fast pass is considered eligible is the more // accurate, durable, slower condition performed. return innerBlocks.some(innerBlock => getDeprecatedLayoutColumn(innerBlock.originalContent) !== undefined); }, migrate(attributes, innerBlocks) { const columns = innerBlocks.reduce((accumulator, innerBlock) => { const { originalContent } = innerBlock; let columnIndex = getDeprecatedLayoutColumn(originalContent); if (columnIndex === undefined) { columnIndex = 0; } if (!accumulator[columnIndex]) { accumulator[columnIndex] = []; } accumulator[columnIndex].push(innerBlock); return accumulator; }, []); const migratedInnerBlocks = columns.map(columnBlocks => (0,external_wp_blocks_namespaceObject.createBlock)('core/column', {}, columnBlocks)); const { columns: ignoredColumns, ...restAttributes } = attributes; return [{ ...restAttributes, isStackedOnMobile: true }, migratedInnerBlocks]; }, save(_ref2) { let { attributes } = _ref2; const { columns } = attributes; return (0,external_wp_element_namespaceObject.createElement)("div", { className: `has-${columns}-columns` }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InnerBlocks.Content, null)); } }, { attributes: { columns: { type: 'number', default: 2 } }, migrate(attributes, innerBlocks) { const { columns, ...restAttributes } = attributes; attributes = { ...restAttributes, isStackedOnMobile: true }; return [attributes, innerBlocks]; }, save(_ref3) { let { attributes } = _ref3; const { verticalAlignment, columns } = attributes; const wrapperClasses = classnames_default()(`has-${columns}-columns`, { [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment }); return (0,external_wp_element_namespaceObject.createElement)("div", { className: wrapperClasses }, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InnerBlocks.Content, null)); } }]); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/utils.js /** * External dependencies */ /** * Returns a column width attribute value rounded to standard precision. * Returns `undefined` if the value is not a valid finite number. * * @param {?number} value Raw value. * * @return {number} Value rounded to standard precision. */ const toWidthPrecision = value => { const unitlessValue = parseFloat(value); return Number.isFinite(unitlessValue) ? parseFloat(unitlessValue.toFixed(2)) : undefined; }; /** * Returns an effective width for a given block. An effective width is equal to * its attribute value if set, or a computed value assuming equal distribution. * * @param {WPBlock} block Block object. * @param {number} totalBlockCount Total number of blocks in Columns. * * @return {number} Effective column width. */ function getEffectiveColumnWidth(block, totalBlockCount) { const { width = 100 / totalBlockCount } = block.attributes; return toWidthPrecision(width); } /** * Returns the total width occupied by the given set of column blocks. * * @param {WPBlock[]} blocks Block objects. * @param {?number} totalBlockCount Total number of blocks in Columns. * Defaults to number of blocks passed. * * @return {number} Total width occupied by blocks. */ function getTotalColumnsWidth(blocks) { let totalBlockCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : blocks.length; return blocks.reduce((sum, block) => sum + getEffectiveColumnWidth(block, totalBlockCount), 0); } /** * Returns an object of `clientId` → `width` of effective column widths. * * @param {WPBlock[]} blocks Block objects. * @param {?number} totalBlockCount Total number of blocks in Columns. * Defaults to number of blocks passed. * * @return {Object} Column widths. */ function getColumnWidths(blocks) { let totalBlockCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : blocks.length; return blocks.reduce((accumulator, block) => { const width = getEffectiveColumnWidth(block, totalBlockCount); return Object.assign(accumulator, { [block.clientId]: width }); }, {}); } /** * Returns an object of `clientId` → `width` of column widths as redistributed * proportional to their current widths, constrained or expanded to fit within * the given available width. * * @param {WPBlock[]} blocks Block objects. * @param {number} availableWidth Maximum width to fit within. * @param {?number} totalBlockCount Total number of blocks in Columns. * Defaults to number of blocks passed. * * @return {Object} Redistributed column widths. */ function getRedistributedColumnWidths(blocks, availableWidth) { let totalBlockCount = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : blocks.length; const totalWidth = getTotalColumnsWidth(blocks, totalBlockCount); return (0,external_lodash_namespaceObject.mapValues)(getColumnWidths(blocks, totalBlockCount), width => { const newWidth = availableWidth * width / totalWidth; return toWidthPrecision(newWidth); }); } /** * Returns true if column blocks within the provided set are assigned with * explicit widths, or false otherwise. * * @param {WPBlock[]} blocks Block objects. * * @return {boolean} Whether columns have explicit widths. */ function hasExplicitPercentColumnWidths(blocks) { return blocks.every(block => { var _blockWidth$endsWith; const blockWidth = block.attributes.width; return Number.isFinite(blockWidth !== null && blockWidth !== void 0 && (_blockWidth$endsWith = blockWidth.endsWith) !== null && _blockWidth$endsWith !== void 0 && _blockWidth$endsWith.call(blockWidth, '%') ? parseFloat(blockWidth) : blockWidth); }); } /** * Returns a copy of the given set of blocks with new widths assigned from the * provided object of redistributed column widths. * * @param {WPBlock[]} blocks Block objects. * @param {Object} widths Redistributed column widths. * * @return {WPBlock[]} blocks Mapped block objects. */ function getMappedColumnWidths(blocks, widths) { return blocks.map(block => (0,external_lodash_namespaceObject.merge)({}, block, { attributes: { width: `${widths[block.clientId]}%` } })); } /** * Returns an array with columns widths values, parsed or no depends on `withParsing` flag. * * @param {WPBlock[]} blocks Block objects. * @param {?boolean} withParsing Whether value has to be parsed. * * @return {Array} Column widths. */ function getWidths(blocks) { let withParsing = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true; return blocks.map(innerColumn => { const innerColumnWidth = innerColumn.attributes.width || 100 / blocks.length; return withParsing ? parseFloat(innerColumnWidth) : innerColumnWidth; }); } /** * Returns a column width with unit. * * @param {string} width Column width. * @param {string} unit Column width unit. * * @return {string} Column width with unit. */ function getWidthWithUnit(width, unit) { width = 0 > parseFloat(width) ? '0' : width; if (isPercentageUnit(unit)) { width = Math.min(width, 100); } return `${width}${unit}`; } /** * Returns a boolean whether passed unit is percentage * * @param {string} unit Column width unit. * * @return {boolean} Whether unit is '%'. */ function isPercentageUnit(unit) { return unit === '%'; } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/edit.js /** * External dependencies */ /** * WordPress dependencies */ /** * Internal dependencies */ /** * Allowed blocks constant is passed to InnerBlocks precisely as specified here. * The contents of the array should never change. * The array should contain the name of each block that is allowed. * In columns block, the only block we allow is 'core/column'. * * @constant * @type {string[]} */ const edit_ALLOWED_BLOCKS = ['core/column']; function ColumnsEditContainer(_ref) { let { attributes, setAttributes, updateAlignment, updateColumns, clientId } = _ref; const { isStackedOnMobile, verticalAlignment } = attributes; const { count } = (0,external_wp_data_namespaceObject.useSelect)(select => { return { count: select(external_wp_blockEditor_namespaceObject.store).getBlockCount(clientId) }; }, [clientId]); const classes = classnames_default()({ [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment, [`is-not-stacked-on-mobile`]: !isStackedOnMobile }); const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)({ className: classes }); const innerBlocksProps = (0,external_wp_blockEditor_namespaceObject.useInnerBlocksProps)(blockProps, { allowedBlocks: edit_ALLOWED_BLOCKS, orientation: 'horizontal', renderAppender: false }); return (0,external_wp_element_namespaceObject.createElement)(external_wp_element_namespaceObject.Fragment, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.BlockVerticalAlignmentToolbar, { onChange: updateAlignment, value: verticalAlignment })), (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.PanelBody, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.RangeControl, { label: (0,external_wp_i18n_namespaceObject.__)('Columns'), value: count, onChange: value => updateColumns(count, value), min: 1, max: Math.max(6, count) }), count > 6 && (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Notice, { status: "warning", isDismissible: false }, (0,external_wp_i18n_namespaceObject.__)('This column count exceeds the recommended amount and may cause visual breakage.')), (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.ToggleControl, { label: (0,external_wp_i18n_namespaceObject.__)('Stack on mobile'), checked: isStackedOnMobile, onChange: () => setAttributes({ isStackedOnMobile: !isStackedOnMobile }) }))), (0,external_wp_element_namespaceObject.createElement)("div", innerBlocksProps)); } const ColumnsEditContainerWrapper = (0,external_wp_data_namespaceObject.withDispatch)((dispatch, ownProps, registry) => ({ /** * Update all child Column blocks with a new vertical alignment setting * based on whatever alignment is passed in. This allows change to parent * to overide anything set on a individual column basis. * * @param {string} verticalAlignment the vertical alignment setting */ updateAlignment(verticalAlignment) { const { clientId, setAttributes } = ownProps; const { updateBlockAttributes } = dispatch(external_wp_blockEditor_namespaceObject.store); const { getBlockOrder } = registry.select(external_wp_blockEditor_namespaceObject.store); // Update own alignment. setAttributes({ verticalAlignment }); // Update all child Column Blocks to match. const innerBlockClientIds = getBlockOrder(clientId); innerBlockClientIds.forEach(innerBlockClientId => { updateBlockAttributes(innerBlockClientId, { verticalAlignment }); }); }, /** * Updates the column count, including necessary revisions to child Column * blocks to grant required or redistribute available space. * * @param {number} previousColumns Previous column count. * @param {number} newColumns New column count. */ updateColumns(previousColumns, newColumns) { const { clientId } = ownProps; const { replaceInnerBlocks } = dispatch(external_wp_blockEditor_namespaceObject.store); const { getBlocks } = registry.select(external_wp_blockEditor_namespaceObject.store); let innerBlocks = getBlocks(clientId); const hasExplicitWidths = hasExplicitPercentColumnWidths(innerBlocks); // Redistribute available width for existing inner blocks. const isAddingColumn = newColumns > previousColumns; if (isAddingColumn && hasExplicitWidths) { // If adding a new column, assign width to the new column equal to // as if it were `1 / columns` of the total available space. const newColumnWidth = toWidthPrecision(100 / newColumns); // Redistribute in consideration of pending block insertion as // constraining the available working width. const widths = getRedistributedColumnWidths(innerBlocks, 100 - newColumnWidth); innerBlocks = [...getMappedColumnWidths(innerBlocks, widths), ...Array.from({ length: newColumns - previousColumns }).map(() => { return (0,external_wp_blocks_namespaceObject.createBlock)('core/column', { width: `${newColumnWidth}%` }); })]; } else if (isAddingColumn) { innerBlocks = [...innerBlocks, ...Array.from({ length: newColumns - previousColumns }).map(() => { return (0,external_wp_blocks_namespaceObject.createBlock)('core/column'); })]; } else { // The removed column will be the last of the inner blocks. innerBlocks = innerBlocks.slice(0, -(previousColumns - newColumns)); if (hasExplicitWidths) { // Redistribute as if block is already removed. const widths = getRedistributedColumnWidths(innerBlocks, 100); innerBlocks = getMappedColumnWidths(innerBlocks, widths); } } replaceInnerBlocks(clientId, innerBlocks); } }))(ColumnsEditContainer); function Placeholder(_ref2) { let { clientId, name, setAttributes } = _ref2; const { blockType, defaultVariation, variations } = (0,external_wp_data_namespaceObject.useSelect)(select => { const { getBlockVariations, getBlockType, getDefaultBlockVariation } = select(external_wp_blocks_namespaceObject.store); return { blockType: getBlockType(name), defaultVariation: getDefaultBlockVariation(name, 'block'), variations: getBlockVariations(name, 'block') }; }, [name]); const { replaceInnerBlocks } = (0,external_wp_data_namespaceObject.useDispatch)(external_wp_blockEditor_namespaceObject.store); const blockProps = (0,external_wp_blockEditor_namespaceObject.useBlockProps)(); return (0,external_wp_element_namespaceObject.createElement)("div", blockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.__experimentalBlockVariationPicker, { icon: (0,external_lodash_namespaceObject.get)(blockType, ['icon', 'src']), label: (0,external_lodash_namespaceObject.get)(blockType, ['title']), variations: variations, onSelect: function () { let nextVariation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultVariation; if (nextVariation.attributes) { setAttributes(nextVariation.attributes); } if (nextVariation.innerBlocks) { replaceInnerBlocks(clientId, (0,external_wp_blocks_namespaceObject.createBlocksFromInnerBlocksTemplate)(nextVariation.innerBlocks), true); } }, allowSkip: true })); } const ColumnsEdit = props => { const { clientId } = props; const hasInnerBlocks = (0,external_wp_data_namespaceObject.useSelect)(select => select(external_wp_blockEditor_namespaceObject.store).getBlocks(clientId).length > 0, [clientId]); const Component = hasInnerBlocks ? ColumnsEditContainerWrapper : Placeholder; return (0,external_wp_element_namespaceObject.createElement)(Component, props); }; /* harmony default export */ var columns_edit = (ColumnsEdit); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/save.js /** * External dependencies */ /** * WordPress dependencies */ function columns_save_save(_ref) { let { attributes } = _ref; const { isStackedOnMobile, verticalAlignment } = attributes; const className = classnames_default()({ [`are-vertically-aligned-${verticalAlignment}`]: verticalAlignment, [`is-not-stacked-on-mobile`]: !isStackedOnMobile }); const blockProps = external_wp_blockEditor_namespaceObject.useBlockProps.save({ className }); const innerBlocksProps = external_wp_blockEditor_namespaceObject.useInnerBlocksProps.save(blockProps); return (0,external_wp_element_namespaceObject.createElement)("div", innerBlocksProps); } ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/variations.js /** * WordPress dependencies */ /** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */ /** * Template option choices for predefined columns layouts. * * @type {WPBlockVariation[]} */ const variations = [{ name: 'one-column-full', title: (0,external_wp_i18n_namespaceObject.__)('100'), description: (0,external_wp_i18n_namespaceObject.__)('One column'), icon: (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SVG, { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Path, { fillRule: "evenodd", clipRule: "evenodd", 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" })), innerBlocks: [['core/column']], scope: ['block'] }, { name: 'two-columns-equal', title: (0,external_wp_i18n_namespaceObject.__)('50 / 50'), description: (0,external_wp_i18n_namespaceObject.__)('Two columns; equal split'), icon: (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SVG, { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Path, { fillRule: "evenodd", clipRule: "evenodd", d: "M39 12C40.1046 12 41 12.8954 41 14V34C41 35.1046 40.1046 36 39 36H9C7.89543 36 7 35.1046 7 34V14C7 12.8954 7.89543 12 9 12H39ZM39 34V14H25V34H39ZM23 34H9V14H23V34Z" })), isDefault: true, innerBlocks: [['core/column'], ['core/column']], scope: ['block'] }, { name: 'two-columns-one-third-two-thirds', title: (0,external_wp_i18n_namespaceObject.__)('33 / 66'), description: (0,external_wp_i18n_namespaceObject.__)('Two columns; one-third, two-thirds split'), icon: (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SVG, { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Path, { fillRule: "evenodd", clipRule: "evenodd", d: "M39 12C40.1046 12 41 12.8954 41 14V34C41 35.1046 40.1046 36 39 36H9C7.89543 36 7 35.1046 7 34V14C7 12.8954 7.89543 12 9 12H39ZM39 34V14H20V34H39ZM18 34H9V14H18V34Z" })), innerBlocks: [['core/column', { width: '33.33%' }], ['core/column', { width: '66.66%' }]], scope: ['block'] }, { name: 'two-columns-two-thirds-one-third', title: (0,external_wp_i18n_namespaceObject.__)('66 / 33'), description: (0,external_wp_i18n_namespaceObject.__)('Two columns; two-thirds, one-third split'), icon: (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SVG, { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Path, { fillRule: "evenodd", clipRule: "evenodd", d: "M39 12C40.1046 12 41 12.8954 41 14V34C41 35.1046 40.1046 36 39 36H9C7.89543 36 7 35.1046 7 34V14C7 12.8954 7.89543 12 9 12H39ZM39 34V14H30V34H39ZM28 34H9V14H28V34Z" })), innerBlocks: [['core/column', { width: '66.66%' }], ['core/column', { width: '33.33%' }]], scope: ['block'] }, { name: 'three-columns-equal', title: (0,external_wp_i18n_namespaceObject.__)('33 / 33 / 33'), description: (0,external_wp_i18n_namespaceObject.__)('Three columns; equal split'), icon: (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SVG, { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Path, { fillRule: "evenodd", d: "M41 14a2 2 0 0 0-2-2H9a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h30a2 2 0 0 0 2-2V14zM28.5 34h-9V14h9v20zm2 0V14H39v20h-8.5zm-13 0H9V14h8.5v20z" })), innerBlocks: [['core/column'], ['core/column'], ['core/column']], scope: ['block'] }, { name: 'three-columns-wider-center', title: (0,external_wp_i18n_namespaceObject.__)('25 / 50 / 25'), description: (0,external_wp_i18n_namespaceObject.__)('Three columns; wide center column'), icon: (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SVG, { width: "48", height: "48", viewBox: "0 0 48 48", xmlns: "http://www.w3.org/2000/svg" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.Path, { fillRule: "evenodd", d: "M41 14a2 2 0 0 0-2-2H9a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h30a2 2 0 0 0 2-2V14zM31 34H17V14h14v20zm2 0V14h6v20h-6zm-18 0H9V14h6v20z" })), innerBlocks: [['core/column', { width: '25%' }], ['core/column', { width: '50%' }], ['core/column', { width: '25%' }]], scope: ['block'] }]; /* harmony default export */ var columns_variations = (variations); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/transforms.js /** * WordPress dependencies */ const MAXIMUM_SELECTED_BLOCKS = 6; const columns_transforms_transforms = { from: [{ type: 'block', isMultiBlock: true, blocks: ['*'], __experimentalConvert: blocks => { const columnWidth = +(100 / blocks.length).toFixed(2); const innerBlocksTemplate = blocks.map(_ref => { let { name, attributes, innerBlocks } = _ref; return ['core/column', { width: `${columnWidth}%` }, [[name, { ...attributes }, innerBlocks]]]; }); return (0,external_wp_blocks_namespaceObject.createBlock)('core/columns', {}, (0,external_wp_blocks_namespaceObject.createBlocksFromInnerBlocksTemplate)(innerBlocksTemplate)); }, isMatch: (_ref2, blocks) => { let { length: selectedBlocksLength } = _ref2; // If a user is trying to transform a single Columns block, skip // the transformation. Enabling this functiontionality creates // nested Columns blocks resulting in an unintuitive user experience. // Multiple Columns blocks can still be transformed. if (blocks.length === 1 && blocks[0].name === 'core/columns') { return false; } return selectedBlocksLength && selectedBlocksLength <= MAXIMUM_SELECTED_BLOCKS; } }, { type: 'block', blocks: ['core/media-text'], priority: 1, transform: (attributes, innerBlocks) => { const { align, backgroundColor, textColor, style, mediaAlt: alt, mediaId: id, mediaPosition, mediaSizeSlug: sizeSlug, mediaType, mediaUrl: url, mediaWidth, verticalAlignment } = attributes; let media; if (mediaType === 'image' || !mediaType) { const imageAttrs = { id, alt, url, sizeSlug }; const linkAttrs = { href: attributes.href, linkClass: attributes.linkClass, linkDestination: attributes.linkDestination, linkTarget: attributes.linkTarget, rel: attributes.rel }; media = ['core/image', { ...imageAttrs, ...linkAttrs }]; } else { media = ['core/video', { id, src: url }]; } const innerBlocksTemplate = [['core/column', { width: `${mediaWidth}%` }, [media]], ['core/column', { width: `${100 - mediaWidth}%` }, innerBlocks]]; if (mediaPosition === 'right') { innerBlocksTemplate.reverse(); } return (0,external_wp_blocks_namespaceObject.createBlock)('core/columns', { align, backgroundColor, textColor, style, verticalAlignment }, (0,external_wp_blocks_namespaceObject.createBlocksFromInnerBlocksTemplate)(innerBlocksTemplate)); } }] }; /* harmony default export */ var columns_transforms = (columns_transforms_transforms); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/columns/index.js /** * WordPress dependencies */ /** * Internal dependencies */ const columns_metadata = { $schema: "https://schemas.wp.org/trunk/block.json", apiVersion: 2, name: "core/columns", title: "Columns", category: "design", description: "Display content in multiple columns, with blocks added to each column.", textdomain: "default", attributes: { verticalAlignment: { type: "string" }, isStackedOnMobile: { type: "boolean", "default": true } }, supports: { anchor: true, align: ["wide", "full"], html: false, color: { gradients: true, link: true, __experimentalDefaultControls: { background: true, text: true } }, spacing: { blockGap: { __experimentalDefault: "2em", sides: ["horizontal", "vertical"] }, margin: ["top", "bottom"], padding: true, __experimentalDefaultControls: { padding: true } }, __experimentalLayout: { allowSwitching: false, allowInheriting: false, allowEditing: false, "default": { type: "flex", flexWrap: "nowrap" } }, __experimentalBorder: { color: true, radius: true, style: true, width: true, __experimentalDefaultControls: { color: true, radius: true, style: true, width: true } }, typography: { fontSize: true, lineHeight: true, __experimentalFontFamily: true, __experimentalFontWeight: true, __experimentalFontStyle: true, __experimentalTextTransform: true, __experimentalTextDecoration: true, __experimentalLetterSpacing: true, __experimentalDefaultControls: { fontSize: true } } }, editorStyle: "wp-block-columns-editor", style: "wp-block-columns" }; const { name: columns_name } = columns_metadata; const columns_settings = { icon: library_columns, variations: columns_variations, example: { viewportWidth: 600, // Columns collapse "@media (max-width: 599px)". innerBlocks: [{ name: 'core/column', innerBlocks: [{ name: 'core/paragraph', attributes: { /* translators: example text. */ content: (0,external_wp_i18n_namespaceObject.__)('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent et eros eu felis.') } }, { name: 'core/image', attributes: { url: 'https://s.w.org/images/core/5.3/Windbuchencom.jpg' } }, { name: 'core/paragraph', attributes: { /* translators: example text. */ content: (0,external_wp_i18n_namespaceObject.__)('Suspendisse commodo neque lacus, a dictum orci interdum et.') } }] }, { name: 'core/column', innerBlocks: [{ name: 'core/paragraph', attributes: { /* translators: example text. */ content: (0,external_wp_i18n_namespaceObject.__)('Etiam et egestas lorem. Vivamus sagittis sit amet dolor quis lobortis. Integer sed fermentum arcu, id vulputate lacus. Etiam fermentum sem eu quam hendrerit.') } }, { name: 'core/paragraph', attributes: { /* translators: example text. */ content: (0,external_wp_i18n_namespaceObject.__)('Nam risus massa, ullamcorper consectetur eros fermentum, porta aliquet ligula. Sed vel mauris nec enim.') } }] }] }, deprecated: columns_deprecated, edit: columns_edit, save: columns_save_save, transforms: columns_transforms }; const columns_init = () => initBlock({ name: columns_name, metadata: columns_metadata, settings: columns_settings }); ;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/post-comments.js /** * WordPress dependencies */ const postComments = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { d: "M14 10.1V4c0-.6-.4-1-1-1H5c-.6 0-1 .4-1 1v8.3c0 .3.2.7.6.8.1.1.2.1.3.1.2 0 .5-.1.6-.3l1.8-1.8H13c.6 0 1-.4 1-1zm-1.5-.5H6.7l-1.2 1.2V4.5h7v5.1zM19 12h-8c-.6 0-1 .4-1 1v6.1c0 .6.4 1 1 1h5.7l1.8 1.8c.1.2.4.3.6.3.1 0 .2 0 .3-.1.4-.1.6-.5.6-.8V13c0-.6-.4-1-1-1zm-.5 7.8l-1.2-1.2h-5.8v-5.1h7v6.3z" })); /* harmony default export */ var post_comments = (postComments); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/comments/deprecated.js /** * WordPress dependencies */ // v1: Deprecate the initial version of the block which was called "Comments // Query Loop" instead of "Comments". const v1 = { attributes: { tagName: { type: 'string', default: 'div' } }, apiVersion: 2, supports: { align: ['wide', 'full'], html: false, color: { gradients: true, link: true, __experimentalDefaultControls: { background: true, text: true, link: true } } }, save(_ref) { let { attributes: { tagName: Tag } } = _ref; const blockProps = external_wp_blockEditor_namespaceObject.useBlockProps.save(); const { className } = blockProps; const classes = (className === null || className === void 0 ? void 0 : className.split(' ')) || []; // The ID of the previous version of the block // didn't have the `wp-block-comments` class, // so we need to remove it here in order to mimic it. const newClasses = classes === null || classes === void 0 ? void 0 : classes.filter(cls => cls !== 'wp-block-comments'); const newBlockProps = { ...blockProps, className: newClasses.join(' ') }; return (0,external_wp_element_namespaceObject.createElement)(Tag, newBlockProps, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InnerBlocks.Content, null)); } }; /* harmony default export */ var comments_deprecated = ([v1]); ;// CONCATENATED MODULE: ./node_modules/@wordpress/block-library/build-module/comments/edit/comments-inspector-controls.js /** * WordPress dependencies */ function CommentsInspectorControls(_ref) { let { attributes: { TagName }, setAttributes } = _ref; return (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, null, (0,external_wp_element_namespaceObject.createElement)(external_wp_blockEditor_namespaceObject.InspectorControls, { __experimentalGroup: "advanced" }, (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.SelectControl, { label: (0,external_wp_i18n_namespaceObject.__)('HTML element'), options: [{ label: (0,external_wp_i18n_namespaceObject.__)('Default (
)'), value: 'div' }, { label: '
', value: 'section' }, { label: '