Layout Grid Block - Version 1.5

Version Description

  • 8th February 2021 =
  • Improve editor responsive behaviour on smaller devices
  • Bump minimum WordPress version to 5.6
Download this release

Release Info

Developer johnny5
Plugin Icon 128x128 Layout Grid Block
Version 1.5
Comparing to
See all releases

Code changes from version 1.4 to 1.5

Files changed (4) hide show
  1. index.asset.php +1 -1
  2. index.js +1 -1
  3. index.php +1 -1
  4. readme.txt +7 -3
index.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array('lodash', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-data', 'wp-element', 'wp-i18n', 'wp-keycodes', 'wp-polyfill', 'wp-primitives'), 'version' => '990413635d46b5869ab8d94e9bb9a40c');
1
+ <?php return array('dependencies' => array('lodash', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-data', 'wp-element', 'wp-i18n', 'wp-keycodes', 'wp-polyfill', 'wp-primitives'), 'version' => '3a307d94edd9c8d1d9d323d4577441a2');
index.js CHANGED
@@ -1 +1 @@
1
- !function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=29)}([function(e,t){e.exports=window.wp.element},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t){e.exports=window.wp.i18n},function(e,t){e.exports=window.wp.components},function(e,t){e.exports=window.wp.blockEditor},function(e,t,n){var r;!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var c=typeof r;if("string"===c||"number"===c)e.push(r);else if(Array.isArray(r)&&r.length){var i=o.apply(null,r);i&&e.push(i)}else if("object"===c)for(var a in r)n.call(r,a)&&r[a]&&e.push(a)}}return e.join(" ")}e.exports?(o.default=o,e.exports=o):void 0===(r=function(){return o}.apply(t,[]))||(e.exports=r)}()},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t){e.exports=window.wp.primitives},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}e.exports=function(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}},function(e,t){function n(){return e.exports=n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},n.apply(this,arguments)}e.exports=n},function(e,t,n){var r=n(26);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){var r=n(27),o=n(6);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?o(e):t}},function(e,t){e.exports=window.wp.blocks},function(e,t){e.exports=window.wp.data},function(e,t){e.exports=window.wp.compose},function(e,t,n){var r=n(22),o=n(23),c=n(24),i=n(25);e.exports=function(e){return r(e)||o(e)||c(e)||i()}},function(e,t){e.exports=window.lodash},function(e,t){e.exports=window.wp.keycodes},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}},function(e,t,n){var r=n(28);e.exports=function(e,t){if(null==e)return{};var n,o,c=r(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(c[n]=e[n])}return c}},function(e,t,n){var r=n(20);e.exports=function(e){if(Array.isArray(e))return r(e)}},function(e,t){e.exports=function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}},function(e,t,n){var r=n(20);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},n(t,r)}e.exports=n},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,o={},c=Object.keys(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}},function(e,t,n){"use strict";n.r(t);var r=n(1),o=n.n(r),c=n(14),i=n(2),a=n(17),l=n.n(a),u=n(9),s=n.n(u),d=n(10),p=n.n(d),f=n(6),g=n.n(f),b=n(12),m=n.n(b),v=n(13),h=n.n(v),y=n(7),O=n.n(y),j=n(0),w=n(18),k=n(5),_=n.n(k),E=n(4),S=n(3),C=n(19),x=n(15),P=n(16),A=n(8),M=Object(j.createElement)(A.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Object(j.createElement)(A.Path,{d:"M20.5 16h-.7V8c0-1.1-.9-2-2-2H6.2c-1.1 0-2 .9-2 2v8h-.7c-.8 0-1.5.7-1.5 1.5h20c0-.8-.7-1.5-1.5-1.5zM5.7 8c0-.3.2-.5.5-.5h11.6c.3 0 .5.2.5.5v7.6H5.7V8z"})),z=Object(j.createElement)(A.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Object(j.createElement)(A.Path,{d:"M17 4H7c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 14c0 .3-.2.5-.5.5H7c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h10c.3 0 .5.2.5.5v12zm-7.5-.5h4V16h-4v1.5z"})),B=Object(j.createElement)(A.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Object(j.createElement)(A.Path,{d:"M15 4H9c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h6c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 14c0 .3-.2.5-.5.5H9c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h6c.3 0 .5.2.5.5v12zm-4.5-.5h2V16h-2v1.5z"}));function D(){return[{value:"small",label:Object(i.__)("Small","layout-grid")},{value:"medium",label:Object(i.__)("Medium","layout-grid")},{value:"large",label:Object(i.__)("Large","layout-grid")},{value:"huge",label:Object(i.__)("Huge","layout-grid")}]}var R=function(){return[{label:Object(i.__)("1 column","layout-grid"),value:1},{label:Object(i.__)("2 columns","layout-grid"),value:2},{label:Object(i.__)("3 columns","layout-grid"),value:3},{label:Object(i.__)("4 columns","layout-grid"),value:4}]},T=function(){return[{value:"Desktop",label:Object(i.__)("Desktop","layout-grid"),icon:M},{value:"Tablet",label:Object(i.__)("Tablet","layout-grid"),icon:z},{value:"Mobile",label:Object(i.__)("Mobile","layout-grid"),icon:B}]},V=["Desktop","Tablet","Mobile"];function N(e,t){return"column".concat(e+1).concat(t,"Span")}function G(e,t){return"column".concat(e+1).concat(t,"Offset")}var L=function(e){return"Tablet"===e?8:"Mobile"===e?4:12};function I(e,t,n){return"Tablet"===e?3===t&&2===n?L(e):t>1?L(e)/2:L(e):"Mobile"===e?L(e):L(e)/t}function H(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function U(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?H(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):H(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var X=function(e,t){return"column".concat(e+1,"-grid__span-").concat(t)},F=function(e,t){return"column".concat(e+1,"-grid__start-").concat(t)},K=function(e,t){return"column".concat(e+1,"-grid__row-").concat(t)},W=function(e,t){return"column".concat(e+1,"-grid__valign-").concat(t)},$=function(e,t,n){return"column".concat(e+1,"-").concat(n.toLowerCase(),"-grid__span-").concat(t)},q=function(e,t,n){return"column".concat(e+1,"-").concat(n.toLowerCase(),"-grid__start-").concat(t)},J=function(e,t,n){return"column".concat(e+1,"-").concat(n.toLowerCase(),"-grid__row-").concat(t)};function Q(e,t){return Math.floor(e/t)}function Y(e,t){return e%t}function Z(e,t,n,r){var o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];return{name:e,column:t,value:n,device:r,enabled:o}}function ee(e,t,n){for(var r=[],o=L(e),c=function(e,t,n){for(var r=[],o=0,c=0;c<e;c++){var i=N(c,t),a=G(c,t),l=n[i]||I(t,e,c),u=n[a]||0;r.push({position:o+u,span:l}),o+=u,o+=l}return r}(t,e,n),i=0;i<c.length;i++){var a=c[i],l=a.span,u=a.position,s=Q(u,o),d=Y(u,o);r.push(Z("span",i,l,e)),r.push(Z("offset",i,d+1,e,d>0)),r.push(Z("row",i,s+1,e))}return r}function te(e,t){var n={};return e.filter((function(e){return e.enabled&&t[e.name]})).map((function(e){return n[t[e.name](e.column,e.value,e.device)]=!0})),n}function ne(e){return e?e.replace(/column\d-\w*-grid__\w*-\d*/g,"").replace(/column\d-grid__\w*-\d*/g,"").replace(/\s{2,}/,"").replace(/wp-block-jetpack-layout-gutter__\w*/,"").replace(/is-vertically-aligned-\w*/,"").replace(/are-vertically-aligned-\w*/):e}function re(e){var t=e.gutterSize;return{"wp-block-jetpack-layout-gutter__nowrap":!e.addGutterEnds,"wp-block-jetpack-layout-gutter__none":"none"===t,"wp-block-jetpack-layout-gutter__small":"small"===t,"wp-block-jetpack-layout-gutter__medium":"medium"===t,"wp-block-jetpack-layout-gutter__huge":"huge"===t}}var oe=n(21),ce=n.n(oe),ie=n(11),ae=n.n(ie),le=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7 12v24h34V12H7zm32 22H9V14h30v20z"}))},ue=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7,12v24h34V12H7z M23,34H9V14h14V34z M39,34H25V14h14V34z"}))},se=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7 12v24h34V12H7zm23 2h9v20h-9V14zm-2 20h-8V14h8v20zM9 14h9v20H9V14z"}))},de=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7 12v24h34V12H7zm8 22H9V14h6v20zm8 0h-6V14h6v20zm8 0h-6V14h6v20zm8 0h-6V14h6v20z"}))},pe=function(e){var t=e.columns,n=ce()(e,["columns"]);return 4===t?Object(j.createElement)(de,n):3===t?Object(j.createElement)(se,n):2===t?Object(j.createElement)(ue,n):Object(j.createElement)(le,n)},fe=function(e){var t=e.direction,n=e.height,r=e.xPos,o=e.top,c=e.isSelected,i=_()("wpcom-overlay-resize__handle","components-resizable-box__container",{"is-selected":c}),a={height:n+"px",width:r+"px",top:o+"px"},l={left:r+"px"},u=_()("components-resizable-box__handle","components-resizable-box__side-handle",{"components-resizable-box__handle-left":"left"===t,"components-resizable-box__handle-right":"right"===t});return Object(j.createElement)("div",{className:i,style:a},Object(j.createElement)("span",null,Object(j.createElement)("div",{className:u,style:l})))};var ge=function(e){m()(c,e);var t,n,r=(t=c,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=O()(t);if(n){var o=O()(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return h()(this,e)});function c(e){var t;return s()(this,c),t=r.call(this,e),o()(g()(t),"onMouseDown",(function(e){var n=e.target;if((0===e.button||e.touches)&&(n.dataset.resizeRight||n.dataset.resizeLeft)){t.block=n.closest(".wp-block");var r=t.block.getBoundingClientRect(),o=r.height,c=r.right,i=r.left,a=r.top,l=n.getBoundingClientRect().width,u=t.getChildPosition(t.block),s=n.dataset.resizeLeft;t.setState({resizingColumn:u,xPos:t.getAdjustedOffset(t.getMouseX(e),l),height:o,width:l,top:t.getAdjustedTop(a),direction:s?"left":"right",max:s?t.getAdjustedOffset(c,l):t.getAdjustedOffset(i,l)}),0===e.button?(document.addEventListener("mousemove",t.onMouseMove),document.addEventListener("mouseup",t.onMouseUp),e.preventDefault()):(document.addEventListener("touchmove",t.onMouseMove),document.addEventListener("touchend",t.onMouseUp)),e.stopPropagation()}})),o()(g()(t),"onMouseMove",(function(e){e.stopPropagation(),void 0===e.touches&&e.preventDefault();var n=t.block.getBoundingClientRect().height;t.setState({xPos:t.getRestrictedOffset(t.getAdjustedOffset(t.getMouseX(e))),height:n});var r=t.getNearestColumn(t.state.direction,e);r&&t.props.onResize(t.state.resizingColumn,r)})),o()(g()(t),"onMouseUp",(function(e){t.setState({resizingColumn:-1}),document.removeEventListener("mousemove",t.onMouseMove),document.removeEventListener("mouseup",t.onMouseUp),document.removeEventListener("touchmove",t.onMouseMove),document.removeEventListener("touchend",t.onMouseUp)})),t.containerRef=Object(j.createRef)(),t.state={resizingColumn:-1,xPos:0,height:0},t}return p()(c,[{key:"getNearestColumn",value:function(e,t){var n=this.props,r=n.totalColumns,o=n.layoutGrid,c=o.getStart(this.state.resizingColumn),i=o.getSpan(this.state.resizingColumn),a=Math.min(r,Math.max(0,function(e,t,n,r){var o=e.getBoundingClientRect(),c=o.width/r,i=t-o.x,a=Math.floor(i/c),l=i%c;return"left"===n?l<=c/2?a:a+1:l<c/2?a:a+1}(this.containerRef.current,this.getMouseX(t),e,r)));if("left"===e){if(a===c)return null;var l=Math.abs(a-c),u={start:a,span:a>c?i-l:i+l,direction:e};return u.start>=c+i?null:(u.span=Math.max(1,u.span),u)}return{span:Math.max(1,a-c),direction:e}}},{key:"getMouseX",value:function(e){var t=e.clientX,n=e.targetTouches;return t||n&&n[0].clientX}},{key:"getAdjustedOffset",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.state.width,r=t>0?t:n;return e-this.containerRef.current.getBoundingClientRect().left-r/2}},{key:"getAdjustedTop",value:function(e){return e-this.containerRef.current.getBoundingClientRect().top}},{key:"getRestrictedOffset",value:function(e){var t=this.state,n=t.direction,r=t.max,o=t.width;return"left"===n?Math.min(r-o,e):Math.max(r+o,e)}},{key:"getChildPosition",value:function(e){for(var t=0;null!==e.previousSibling;)e=e.previousSibling,t++;return t}},{key:"render",value:function(){var e=this.props,t=e.className,n=e.children,r=e.isSelected,o=this.state,c=o.resizingColumn,i=o.xPos,a=o.height,l=_()(t,-1!==c?"wp-block-jetpack-layout-grid__resizing":null);return Object(j.createElement)("div",{className:l,onMouseDown:this.onMouseDown,onTouchStart:this.onMouseDown,ref:this.containerRef},-1!==c&&Object(j.createElement)(fe,{direction:this.state.direction,height:a,xPos:i,top:this.state.top,isSelected:r}),n)}}]),c}(j.Component);function be(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?be(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):be(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var ve=function(){function e(t,n,r){s()(this,e),this.attributes=t,this.device=n,this.columnCount=r}return p()(e,[{key:"getGridValues",value:function(){for(var e={},t=0;t<this.columnCount;t++){var n=I(this.device,this.columnCount,t);e[N(t,this.device)]=this.getSpan(t)||n,e[G(t,this.device)]=this.getOffset(t)}return e}},{key:"applyAdjustments",value:function(e){for(var t=this.getGridValues(),n=0;n<e.length;n++)t=me(me({},t),e[n]);return t}},{key:"getSpanAdjustment",value:function(e,t){return o()({},N(e,this.device),t)}},{key:"getAdjustOffset",value:function(e,t){return o()({},G(e,this.device),t)}},{key:"getShrinkOffset",value:function(e,t){var n=this.getOffset(e),r=t>=n?n:t;return{adjustment:this.getAdjustOffset(e,n-r),offsetUsed:r}}},{key:"hasOverlaps",value:function(e){for(var t=0;t<e.length;t++)for(var n=e[t],r=t+1;r<e.length;r++){var o=e[r];if(n.start>o.start&&n.start<o.end)return!0;if(n.end>o.start&&n.end<o.end)return!0}return!1}},{key:"validateGrid",value:function(e){for(var t,n,r=[],o=L(this.device),c=0,i=0,a=0;a<this.columnCount;a++){var l=e[N(a,this.device)],u=e[G(a,this.device)];if((i+=u)>=o&&(i-=o),(i+=l)>o)return!1;r.push({start:c+u,end:c+u+l}),c+=l+u}return!(c>(t=this.device,n=this.columnCount,"Tablet"===t&&n>2?2*L(t):"Mobile"===t?L(t)*n:L(t))||this.hasOverlaps(r))}},{key:"getEndAdjustments",value:function(e,t){var n=[];if(t<0)return[this.getAdjustOffset(e,this.getOffset(e)+Math.abs(t))];if(t>0)for(var r=e;r<this.columnCount&&t>0;r++){var o=this.getShrinkOffset(r,Math.abs(t));n.push(o.adjustment),t-=o.offsetUsed}return n}},{key:"getStartMovedLeft",value:function(e,t){for(var n=[],r=e;r>=0&&t>0;r--){var o=this.getShrinkOffset(r,t);n.push(o.adjustment),t-=o.offsetUsed}return n}},{key:"getStartAdjustments",value:function(e,t){var n=this.getOffset(e),r=this.getOffsetFromStart(e,t),o=r-n;return o<0?this.getStartMovedLeft(e,Math.abs(o)):[this.getAdjustOffset(e,r)]}},{key:"getSpan",value:function(e){return this.attributes[N(e,this.device)]}},{key:"getOffset",value:function(e){return this.attributes[G(e,this.device)]}},{key:"getStart",value:function(e){for(var t=0,n=0;n<e;n++)t+=this.getSpan(n)+this.getOffset(n);var r=Math.max(1,Math.floor(t/L(this.device)));return(t+this.getOffset(e))%(r*L(this.device))}},{key:"getOffsetFromStart",value:function(e,t){if(0===e)return t;var n=t-this.getStart(e);return this.getOffset(e)+n}},{key:"convertOffsetToStart",value:function(e,t){return this.getStart(e)+(t-this.getOffset(e))}},{key:"getAdjustedGrid",value:function(e,t){var n=t.start,r=void 0===n?this.getStart(e):n,o=t.span,c=void 0===o?this.getSpan(e):o,i=[];r!==this.getStart(e)&&c!==this.getSpan(e)?i=(i=i.concat(this.getStartAdjustments(e,r))).concat(this.getSpanAdjustment(e,c)):c!==this.getSpan(e)?i=(i=i.concat(this.getSpanAdjustment(e,c))).concat(this.getEndAdjustments(e+1,c-this.getSpan(e))):r!==this.getStart(e)&&(i=(i=i.concat(this.getStartAdjustments(e,r))).concat(this.getEndAdjustments(e+1,r-this.getStart(e))));var a=this.applyAdjustments(i);return i.length>0&&this.validateGrid(a)?a:null}}]),e}();function he(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ye(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?he(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):he(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Oe=["jetpack/layout-grid-column"],je=function(e){m()(c,e);var t,n,r=(t=c,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=O()(t);if(n){var o=O()(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return h()(this,e)});function c(e){var t;return s()(this,c),t=r.call(this,e),o()(g()(t),"onChangeLayout",(function(e){for(var n={},r=0;r<e;r++)for(var o=0;o<V.length;o++){var c=I(V[o],e,r);n[N(r,V[o])]=c,n[G(r,V[o])]=0}t.props.updateColumns(t.props.columns,e,n)})),o()(g()(t),"setDeviceType",(function(e){t.props.deviceType?t.props.setDeviceType(e):t.setState({selectedDevice:e})})),o()(g()(t),"onResize",(function(e,n){var r=t.props,o=r.attributes,c=r.columns,i=new ve(o,t.getDeviceType(),c).getAdjustedGrid(e,n);i&&t.adjustGrid(i)})),o()(g()(t),"onChangeSpan",(function(e,n,r){var o=t.props,c=o.attributes,i=o.columns,a=new ve(c,n,i).getAdjustedGrid(e,{span:parseInt(r,10)});a&&t.adjustGrid(a)})),o()(g()(t),"onChangeOffset",(function(e,n,r){var o=t.props,c=o.attributes,i=o.columns,a=new ve(c,n,i),l=a.getAdjustedGrid(e,{start:a.convertOffsetToStart(e,parseInt(r,10))});l&&t.adjustGrid(l)})),t.overlayRef=Object(j.createRef)(),t.state={selectedDevice:T()[0].value},t}return p()(c,[{key:"getDeviceType",value:function(){return this.props.deviceType?this.props.deviceType:this.state.selectedDevice}},{key:"adjustGrid",value:function(e){var t=this.props,n=t.setAttributes,r=t.attributes;n(ye(ye({},e),{},{className:ne(r.className)}))}},{key:"renderDeviceSettings",value:function(e,t,n){for(var r=this,o=new ve(n,t,this.props.columns),c=[],a=function(n){var a=o.getSpan(n)||I(t,e,n),l=o.getOffset(n)||0;c.push(Object(j.createElement)("div",{className:"jetpack-layout-grid-settings",key:n},Object(j.createElement)("strong",null,Object(i.__)("Column","layout-grid")," ",n+1),Object(j.createElement)("div",{className:"jetpack-layout-grid-settings__group"},Object(j.createElement)(S.TextControl,{type:"number",label:Object(i.__)("Offset","layout-grid"),value:l||0,min:0,max:L(t)-1,onChange:function(e){return r.onChangeOffset(n,t,e)}}),Object(j.createElement)(S.TextControl,{type:"number",label:Object(i.__)("Span","layout-grid"),value:a,min:1,max:L(t),onChange:function(e){return r.onChangeSpan(n,t,e)}}))))},l=0;l<e;l++)a(l);return c}},{key:"canResizeBreakpoint",value:function(e){return!(!this.overlayRef||!this.overlayRef.current)&&this.overlayRef.current.getBoundingClientRect().width/L(e)>50}},{key:"render",value:function(){var e=this,t=this.props,n=t.className,r=t.attributes,c=void 0===r?{}:r,a=t.isSelected,l=t.columns,u=t.setAttributes,s=t.updateAlignment,d=t.columnAttributes,p=this.getDeviceType(),f=function(e,t){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=ee(e,t,n),c={span:X,offset:F,row:K},i={},a=0;a<t;a++)r[a].verticalAlignment&&r[a].verticalAlignment!==n.verticalAlignment&&(i[W(a,r[a].verticalAlignment)]=!0);return U(U({},te(o,c)),i)}(p,l,c,d),g=c.gutterSize,b=c.addGutterEnds,m=c.verticalAlignment,v=new ve(c,p,l),h=_()(ne(n),f,o()({"wp-block-jetpack-layout-tablet":"Tablet"===p,"wp-block-jetpack-layout-desktop":"Desktop"===p,"wp-block-jetpack-layout-mobile":"Mobile"===p,"wp-block-jetpack-layout-resizable":this.canResizeBreakpoint(p)},"are-vertically-aligned-".concat(m),m),re(c));if(0===l)return Object(j.createElement)(S.Placeholder,{icon:"layout",label:Object(i.__)("Choose Layout","layout-grid"),instructions:Object(i.__)("Select a layout to start with:","layout-grid"),className:h},Object(j.createElement)("ul",{className:"block-editor-inner-blocks__template-picker-options"},R().map((function(t){return Object(j.createElement)("li",{key:t.value},Object(j.createElement)(S.IconButton,{isSecondary:!0,icon:Object(j.createElement)(pe,{columns:t.value}),onClick:function(){return e.onChangeLayout(t.value)},className:"block-editor-inner-blocks__template-picker-option",label:t.label}))}))));var y=Object(j.createElement)(S.ToggleControl,{label:Object(i.__)("Add end gutters","layout-grid"),help:b?Object(i.__)("Toggle off to remove the spacing left and right of the grid.","layout-grid"):Object(i.__)("Toggle on to add space left and right of the layout grid. ","layout-grid"),checked:b,onChange:function(e){return u({addGutterEnds:e})}});return Object(j.createElement)(j.Fragment,null,Object(j.createElement)(S.IsolatedEventContainer,null,Object(j.createElement)(ge,{className:h,onResize:this.onResize,totalColumns:L(p),layoutGrid:v,isSelected:a},Object(j.createElement)("div",{className:"wpcom-overlay-grid",ref:this.overlayRef},Object(w.times)(L(p)).map((function(e){return Object(j.createElement)("div",{className:"wpcom-overlay-grid__column",key:e})}))),Object(j.createElement)(E.InnerBlocks,{template:null,templateLock:"all",allowedBlocks:Oe}),Object(j.createElement)(E.InspectorControls,null,Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Layout","layout-grid")},Object(j.createElement)("div",{className:"jetpack-layout-grid-columns block-editor-block-styles"},R().map((function(t){return Object(j.createElement)("div",{key:t.value,className:_()("block-editor-block-styles__item",{"is-active":l===t.value}),onClick:function(){return e.onChangeLayout(t.value)},onKeyDown:function(n){C.ENTER!==n.keyCode&&C.SPACE!==n.keyCode||(n.preventDefault(),e.onChangeLayout(t.value))},role:"button",tabIndex:"0","aria-label":t.label},Object(j.createElement)("div",{className:"block-editor-block-styles__item-preview"},Object(j.createElement)(pe,{columns:t.value})),Object(j.createElement)("div",{className:"editor-block-styles__item-label block-editor-block-styles__item-label"},t.label))}))),Object(j.createElement)("p",null,Object(j.createElement)("em",null,Object(i.__)("Changing the number of columns will reset your layout and could remove content.","layout-grid")))),Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Responsive Breakpoints","layout-grid")},Object(j.createElement)("p",null,Object(j.createElement)("em",null,Object(i.__)("Note that previewing your post will show your browser's breakpoint, not the currently selected one.","layout-grid"))),Object(j.createElement)(S.ButtonGroup,null,T().map((function(t){return Object(j.createElement)(S.Button,{key:t.value,isPrimary:t.value===p,onClick:function(){return e.setDeviceType(t.value)}},t.label)}))),this.renderDeviceSettings(l,p,c)),Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Gutter","layout-grid")},Object(j.createElement)("p",null,Object(i.__)("Gutter size","layout-grid")),Object(j.createElement)(S.SelectControl,{value:g,onChange:function(e){return u({gutterSize:e,addGutterEnds:"none"!==e&&b})},options:[{value:"none",label:Object(i.__)("No gutter","layout-grid")}].concat(D())}),"none"===g?Object(j.createElement)(S.Disabled,null,y):y)))),Object(j.createElement)(E.BlockControls,null,Object(j.createElement)(E.BlockVerticalAlignmentToolbar,{onChange:s,value:m}),Object(j.createElement)(S.Dropdown,{renderToggle:function(e){var t=e.isOpen,n=e.onToggle;return Object(j.createElement)(S.ToolbarGroup,null,Object(j.createElement)(S.Button,{"aria-expanded":t,onClick:n,icon:T().find((function(e){return e.value===p})).icon}))},renderContent:function(t){return t.onClose,Object(j.createElement)(S.MenuGroup,null,T().map((function(t){return Object(j.createElement)(S.MenuItem,{key:t.value,isSelected:t.value===p,onClick:function(){return e.setDeviceType(t.value)},icon:t.icon},t.label)})))}})))}}]),c}(j.Component),we=Object(P.compose)([Object(x.withDispatch)((function(e,t,n){return{updateAlignment:function(r){var o=t.clientId,c=t.setAttributes,i=e("core/block-editor").updateBlockAttributes,a=n.select("core/block-editor").getBlockOrder;c({verticalAlignment:r}),a(o).forEach((function(e){i(e,{verticalAlignment:r})}))},updateColumns:function(r,o,i){var a=t.clientId,u=e("core/block-editor").replaceBlock,s=function(e,t,n){if(n>t)return[].concat(l()(e),l()(Object(w.times)(n-t,(function(){return Object(c.createBlock)("jetpack/layout-grid-column")}))));var r=l()(e),o=0;return r.reverse(),(r=r.filter((function(e){return!(o<t-n&&0===e.innerBlocks.length&&(o++,1))}))).slice(Math.max(0,t-n-o)).reverse()}((0,n.select("core/block-editor").getBlocks)(a),r,o);u(a,Object(c.createBlock)(t.name,ye(ye(ye({},t.attributes),i),{},{className:ne(t.attributes.className)}),s))},setDeviceType:function(t){(0,e("core/edit-post").__experimentalSetPreviewDeviceType)(t)}}})),Object(x.withSelect)((function(e,t){var n=t.clientId,r=e("core/block-editor"),o=r.getBlockOrder,c=r.getBlockCount,i=r.getBlocksByClientId,a=e("core/edit-post").__experimentalGetPreviewDeviceType,l=void 0===a?null:a;return{columns:c(n),columnAttributes:o(n).map((function(e){return i(e)[0].attributes})),deviceType:l?l():null}}))])(je);var ke=function(e){m()(c,e);var t,n,r=(t=c,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=O()(t);if(n){var o=O()(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return h()(this,e)});function c(e){var t;return s()(this,c),t=r.call(this,e),o()(g()(t),"onLeftIn",(function(){t.setState({direction:"left"}),document.addEventListener("mouseup",t.onLeftOut)})),o()(g()(t),"onLeftOut",(function(){t.setState({direction:null}),document.removeEventListener("mouseup",t.onLeftOut)})),o()(g()(t),"onRightIn",(function(){t.setState({direction:"right"}),document.addEventListener("mouseup",t.onRightOut)})),o()(g()(t),"onRightOut",(function(){t.setState({direction:null}),document.removeEventListener("mouseup",t.onRightOut)})),t.state={direction:null},t}return p()(c,[{key:"render",value:function(){var e,t=this.props,n=t.className,r=t.hasChildBlocks,c=t.backgroundColor,a=t.setBackgroundColor,l=t.attributes,u=t.setAttributes,s=t.updateAlignment,d=l.padding,p=l.verticalAlignment,f=this.state.direction,g=_()(n,c.class,(e={},o()(e,"wp-block-jetpack-layout-grid__padding-"+d,!0),o()(e,"has-background",c.color),o()(e,"components-resizable-box__container",!0),o()(e,c.class,c.class),o()(e,"wp-blocks-jetpack-layout-grid__showleft","right"===f),o()(e,"wp-blocks-jetpack-layout-grid__showright","left"===f),o()(e,"is-vertically-aligned-".concat(p),p),e)),b={backgroundColor:c.color};return Object(j.createElement)("div",{className:g,style:b},Object(j.createElement)("span",{className:"wp-blocks-jetpack-layout-grid__resize-handles"},Object(j.createElement)("div",{className:"components-resizable-box__handle components-resizable-box__side-handle components-resizable-box__handle-right",onMouseDown:this.onRightIn,"data-resize-right":!0}),Object(j.createElement)("div",{className:"components-resizable-box__handle components-resizable-box__side-handle components-resizable-box__handle-left",onMouseDown:this.onLeftIn,"data-resize-left":!0})),Object(j.createElement)(E.InnerBlocks,{templateLock:!1,renderAppender:r?void 0:function(){return Object(j.createElement)(E.InnerBlocks.ButtonBlockAppender,null)}}),Object(j.createElement)(E.InspectorControls,null,Object(j.createElement)(E.PanelColorSettings,{title:Object(i.__)("Column Color","layout-grid"),initialOpen:!0,colorSettings:[{value:c.color,onChange:a,label:Object(i.__)("Background","layout-grid")}]}),Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Column Padding","layout-grid")},Object(j.createElement)("p",null,Object(i.__)("Choose padding for this column:","layout-grid")),Object(j.createElement)(S.SelectControl,{value:d,onChange:function(e){return u({padding:e})},options:[{value:"none",label:Object(i.__)("No padding","layout-grid")}].concat(D())}))),Object(j.createElement)(E.BlockControls,null,Object(j.createElement)(E.BlockVerticalAlignmentToolbar,{onChange:s,value:p})))}}]),c}(j.Component),_e=Object(P.compose)(Object(E.withColors)("backgroundColor"),Object(x.withSelect)((function(e,t){var n=t.clientId;return{hasChildBlocks:(0,e("core/block-editor").getBlockOrder)(n).length>0}})),Object(x.withDispatch)((function(e,t,n){return{updateAlignment:function(r){var o=t.clientId,c=t.setAttributes,i=e("core/block-editor").updateBlockAttributes,a=n.select("core/block-editor").getBlockRootClientId;c({verticalAlignment:r}),i(a(o),{verticalAlignment:null})}}})))(ke),Ee=[{attributes:{backgroundColor:{type:"string"},customBackgroundColor:{type:"string"},padding:{type:"string",default:"none"},verticalAlignment:{type:"string"}},save:function(e){var t,n=e.attributes,r=void 0===n?{}:n,c=r.className,i=r.backgroundColor,a=r.customBackgroundColor,l=r.padding,u=r.verticalAlignment,s=Object(E.getColorClassName)("background-color",i),d=_()(c,(t={},o()(t,"wp-block-jetpack-layout-grid__padding-"+l,!0),o()(t,"has-background",i),o()(t,s,s),o()(t,"is-vertically-aligned-".concat(u),u),t)),p={backgroundColor:s?void 0:a};return Object(j.createElement)("div",{className:d,style:p},Object(j.createElement)(E.InnerBlocks.Content,null))}}];function Se(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}Object(c.registerBlockType)("jetpack/layout-grid",{title:Object(i.__)("Layout Grid","layout-grid"),description:Object(i.__)("Align blocks to a global grid, with support for responsive breakpoints.","layout-grid"),icon:function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24"},e),Object(j.createElement)(S.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-7.5 11.5H6c-.3 0-.5-.2-.5-.5V8c0-.3.2-.5.5-.5h5.5v10zm4 0H13v-10h2.5v10zm4-.5c0 .3-.2.5-.5.5h-2v-10h2c.3 0 .5.2.5.5v9z"}))},category:"design",supports:{align:["full"],html:!1},example:{attributes:{columns:2},innerBlocks:[{name:"jetpack/layout-grid-column",innerBlocks:[{name:"core/paragraph",attributes:{customFontSize:32,content:Object(i.__)("<strong>Snow Patrol</strong>","layout-grid"),align:"center"}}]},{name:"jetpack/layout-grid-column",innerBlocks:[{name:"core/image",attributes:{url:"https://s.w.org/images/core/5.3/Windbuchencom.jpg"}}]}]},attributes:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Se(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Se(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({align:{type:"string",default:"full"},gutterSize:{type:"string",default:"large"},addGutterEnds:{type:"boolean",default:!0},verticalAlignment:{type:"string"}},function(e,t){for(var n={},r=function(e){t.map((function(t){n[N(e,t)]={type:"number"},n[G(e,t)]={type:"number",default:0}}))},o=0;o<e;o++)r(o);return n}(4,V)),edit:we,save:function(e){var t=e.attributes,n=e.innerBlocks,r=t.className,o=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={},r={span:$,offset:q,row:J},o=0;o<V.length;o++)n=U(U({},n),te(ee(V[o],e,t),r));return t.addGutterEnds||(n["wp-block-jetpack-layout-gutter__nowrap"]=!0),t.verticalAlignment&&"top"!==t.verticalAlignment&&(n["are-vertically-aligned-".concat(t.verticalAlignment)]=!0),n}(n.length,t),c=_()(ne(r),o,re(t));return Object(j.createElement)("div",{className:c},Object(j.createElement)(E.InnerBlocks.Content,null))}}),Object(c.registerBlockType)("jetpack/layout-grid-column",{description:Object(i.__)("A column used inside a Layout Grid block.","layout-grid"),title:Object(i.__)("Column","layout-grid"),icon:function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24"},e),Object(j.createElement)(S.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-2zM5.5 17V8c0-.3.2-.5.5-.5h5.5v10H6c-.3 0-.5-.2-.5-.5zm14 0c0 .3-.2.5-.5.5h-2v-10h2c.3 0 .5.2.5.5v9z"}))},category:"design",parent:["jetpack/layout-grid"],supports:{inserter:!1,reusable:!1,html:!1},attributes:{backgroundColor:{type:"string"},customBackgroundColor:{type:"string"},padding:{type:"string",default:"none"},verticalAlignment:{type:"string"}},edit:_e,save:function(e){var t,n=e.attributes,r=void 0===n?{}:n,c=r.className,i=r.backgroundColor,a=r.customBackgroundColor,l=r.padding,u=r.verticalAlignment,s=Object(E.getColorClassName)("background-color",i),d=_()(c,(t={},o()(t,"wp-block-jetpack-layout-grid__padding-"+l,!0),o()(t,"has-background",i||a),o()(t,s,s),o()(t,"is-vertically-aligned-".concat(u),u),t)),p={backgroundColor:s?void 0:a};return Object(j.createElement)("div",{className:d,style:p},Object(j.createElement)(E.InnerBlocks.Content,null))},deprecated:Ee})}]);
1
+ !function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=33)}([function(e,t){e.exports=window.wp.element},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t){e.exports=window.wp.i18n},function(e,t){e.exports=window.wp.components},function(e,t){e.exports=window.wp.blockEditor},function(e,t,n){var r;!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var c=typeof r;if("string"===c||"number"===c)e.push(r);else if(Array.isArray(r)&&r.length){var i=o.apply(null,r);i&&e.push(i)}else if("object"===c)for(var a in r)n.call(r,a)&&r[a]&&e.push(a)}}return e.join(" ")}e.exports?(o.default=o,e.exports=o):void 0===(r=function(){return o}.apply(t,[]))||(e.exports=r)}()},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t){e.exports=window.wp.data},function(e,t){e.exports=window.wp.primitives},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}e.exports=function(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}},function(e,t){e.exports=window.wp.compose},function(e,t){function n(){return e.exports=n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},n.apply(this,arguments)}e.exports=n},function(e,t,n){var r=n(27);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){var r=n(28),o=n(6);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?o(e):t}},function(e,t){e.exports=window.wp.blocks},function(e,t,n){var r=n(24),o=n(25),c=n(21),i=n(26);e.exports=function(e){return r(e)||o(e)||c(e)||i()}},function(e,t){e.exports=window.lodash},function(e,t){e.exports=window.wp.keycodes},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}},function(e,t,n){var r=n(20);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}},function(e,t,n){var r=n(29);e.exports=function(e,t){if(null==e)return{};var n,o,c=r(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(c[n]=e[n])}return c}},function(e,t,n){var r=n(30),o=n(31),c=n(21),i=n(32);e.exports=function(e,t){return r(e)||o(e,t)||c(e,t)||i()}},function(e,t,n){var r=n(20);e.exports=function(e){if(Array.isArray(e))return r(e)}},function(e,t){e.exports=function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},n(t,r)}e.exports=n},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,o={},c=Object.keys(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,o=!1,c=void 0;try{for(var i,a=e[Symbol.iterator]();!(r=(i=a.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(e){o=!0,c=e}finally{try{r||null==a.return||a.return()}finally{if(o)throw c}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},function(e,t,n){"use strict";n.r(t);var r=n(1),o=n.n(r),c=n(16),i=n(2),a=n(17),l=n.n(a),u=n(10),s=n.n(u),p=n(11),f=n.n(p),d=n(6),b=n.n(d),g=n(14),m=n.n(g),v=n(15),h=n.n(v),y=n(7),O=n.n(y),j=n(0),w=n(18),k=n(5),_=n.n(k),E=n(4),S=n(3),x=n(19),C=n(8),P=n(12),M=n(9),A=Object(j.createElement)(M.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Object(j.createElement)(M.Path,{d:"M20.5 16h-.7V8c0-1.1-.9-2-2-2H6.2c-1.1 0-2 .9-2 2v8h-.7c-.8 0-1.5.7-1.5 1.5h20c0-.8-.7-1.5-1.5-1.5zM5.7 8c0-.3.2-.5.5-.5h11.6c.3 0 .5.2.5.5v7.6H5.7V8z"})),z=Object(j.createElement)(M.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Object(j.createElement)(M.Path,{d:"M17 4H7c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 14c0 .3-.2.5-.5.5H7c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h10c.3 0 .5.2.5.5v12zm-7.5-.5h4V16h-4v1.5z"})),B=Object(j.createElement)(M.SVG,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},Object(j.createElement)(M.Path,{d:"M15 4H9c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h6c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm.5 14c0 .3-.2.5-.5.5H9c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h6c.3 0 .5.2.5.5v12zm-4.5-.5h2V16h-2v1.5z"}));function D(){return[{value:"small",label:Object(i.__)("Small","layout-grid")},{value:"medium",label:Object(i.__)("Medium","layout-grid")},{value:"large",label:Object(i.__)("Large","layout-grid")},{value:"huge",label:Object(i.__)("Huge","layout-grid")}]}var R=function(){return[{label:Object(i.__)("1 column","layout-grid"),value:1},{label:Object(i.__)("2 columns","layout-grid"),value:2},{label:Object(i.__)("3 columns","layout-grid"),value:3},{label:Object(i.__)("4 columns","layout-grid"),value:4}]},T=function(){return[{value:"Desktop",label:Object(i.__)("Desktop","layout-grid"),icon:A},{value:"Tablet",label:Object(i.__)("Tablet","layout-grid"),icon:z},{value:"Mobile",label:Object(i.__)("Mobile","layout-grid"),icon:B}]},V=["Desktop","Tablet","Mobile"];function N(e,t){return"column".concat(e+1).concat(t,"Span")}function G(e,t){return"column".concat(e+1).concat(t,"Offset")}var I=function(e){return"Tablet"===e?8:"Mobile"===e?4:12};function L(e,t,n){return"Tablet"===e?3===t&&2===n?I(e):t>1?I(e)/2:I(e):"Mobile"===e?I(e):I(e)/t}function H(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function U(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?H(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):H(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var X=function(e,t){return"column".concat(e+1,"-grid__span-").concat(t)},F=function(e,t){return"column".concat(e+1,"-grid__start-").concat(t)},K=function(e,t){return"column".concat(e+1,"-grid__row-").concat(t)},W=function(e,t){return"column".concat(e+1,"-grid__valign-").concat(t)},$=function(e,t,n){return"column".concat(e+1,"-").concat(n.toLowerCase(),"-grid__span-").concat(t)},q=function(e,t,n){return"column".concat(e+1,"-").concat(n.toLowerCase(),"-grid__start-").concat(t)},J=function(e,t,n){return"column".concat(e+1,"-").concat(n.toLowerCase(),"-grid__row-").concat(t)};function Q(e,t){return Math.floor(e/t)}function Y(e,t){return e%t}function Z(e,t,n,r){var o=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];return{name:e,column:t,value:n,device:r,enabled:o}}function ee(e,t,n){for(var r=[],o=I(e),c=function(e,t,n){for(var r=[],o=0,c=0;c<e;c++){var i=N(c,t),a=G(c,t),l=n[i]||L(t,e,c),u=n[a]||0;r.push({position:o+u,span:l}),o+=u,o+=l}return r}(t,e,n),i=0;i<c.length;i++){var a=c[i],l=a.span,u=a.position,s=Q(u,o),p=Y(u,o);r.push(Z("span",i,l,e)),r.push(Z("offset",i,p+1,e,p>0)),r.push(Z("row",i,s+1,e))}return r}function te(e,t){var n={};return e.filter((function(e){return e.enabled&&t[e.name]})).map((function(e){return n[t[e.name](e.column,e.value,e.device)]=!0})),n}function ne(e){return e?e.replace(/column\d-\w*-grid__\w*-\d*/g,"").replace(/column\d-grid__\w*-\d*/g,"").replace(/\s{2,}/,"").replace(/wp-block-jetpack-layout-gutter__\w*/,"").replace(/is-vertically-aligned-\w*/,"").replace(/are-vertically-aligned-\w*/):e}function re(e){var t=e.gutterSize;return{"wp-block-jetpack-layout-gutter__nowrap":!e.addGutterEnds,"wp-block-jetpack-layout-gutter__none":"none"===t,"wp-block-jetpack-layout-gutter__small":"small"===t,"wp-block-jetpack-layout-gutter__medium":"medium"===t,"wp-block-jetpack-layout-gutter__huge":"huge"===t}}var oe=n(22),ce=n.n(oe),ie=n(13),ae=n.n(ie),le=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7 12v24h34V12H7zm32 22H9V14h30v20z"}))},ue=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7,12v24h34V12H7z M23,34H9V14h14V34z M39,34H25V14h14V34z"}))},se=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7 12v24h34V12H7zm23 2h9v20h-9V14zm-2 20h-8V14h8v20zM9 14h9v20H9V14z"}))},pe=function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 48 48"},e),Object(j.createElement)(S.Path,{d:"M7 12v24h34V12H7zm8 22H9V14h6v20zm8 0h-6V14h6v20zm8 0h-6V14h6v20zm8 0h-6V14h6v20z"}))},fe=function(e){var t=e.columns,n=ce()(e,["columns"]);return 4===t?Object(j.createElement)(pe,n):3===t?Object(j.createElement)(se,n):2===t?Object(j.createElement)(ue,n):Object(j.createElement)(le,n)},de=function(e){var t=e.direction,n=e.height,r=e.xPos,o=e.top,c=e.isSelected,i=_()("wpcom-overlay-resize__handle","components-resizable-box__container",{"is-selected":c}),a={height:n+"px",width:r+"px",top:o+"px"},l={left:r+"px"},u=_()("components-resizable-box__handle","components-resizable-box__side-handle",{"components-resizable-box__handle-left":"left"===t,"components-resizable-box__handle-right":"right"===t});return Object(j.createElement)("div",{className:i,style:a},Object(j.createElement)("span",null,Object(j.createElement)("div",{className:u,style:l})))};var be=function(e){m()(c,e);var t,n,r=(t=c,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=O()(t);if(n){var o=O()(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return h()(this,e)});function c(e){var t;return s()(this,c),t=r.call(this,e),o()(b()(t),"onMouseDown",(function(e){var n=e.target;if((0===e.button||e.touches)&&(n.dataset.resizeRight||n.dataset.resizeLeft)){t.block=n.closest(".wp-block");var r=t.block.getBoundingClientRect(),o=r.height,c=r.right,i=r.left,a=r.top,l=n.getBoundingClientRect().width,u=t.getChildPosition(t.block),s=n.dataset.resizeLeft;t.setState({resizingColumn:u,xPos:t.getAdjustedOffset(t.getMouseX(e),l),height:o,width:l,top:t.getAdjustedTop(a),direction:s?"left":"right",max:s?t.getAdjustedOffset(c,l):t.getAdjustedOffset(i,l)}),0===e.button?(document.addEventListener("mousemove",t.onMouseMove),document.addEventListener("mouseup",t.onMouseUp),e.preventDefault()):(document.addEventListener("touchmove",t.onMouseMove),document.addEventListener("touchend",t.onMouseUp)),e.stopPropagation()}})),o()(b()(t),"onMouseMove",(function(e){e.stopPropagation(),void 0===e.touches&&e.preventDefault();var n=t.block.getBoundingClientRect().height;t.setState({xPos:t.getRestrictedOffset(t.getAdjustedOffset(t.getMouseX(e))),height:n});var r=t.getNearestColumn(t.state.direction,e);r&&t.props.onResize(t.state.resizingColumn,r)})),o()(b()(t),"onMouseUp",(function(e){t.setState({resizingColumn:-1}),document.removeEventListener("mousemove",t.onMouseMove),document.removeEventListener("mouseup",t.onMouseUp),document.removeEventListener("touchmove",t.onMouseMove),document.removeEventListener("touchend",t.onMouseUp)})),t.containerRef=Object(j.createRef)(),t.state={resizingColumn:-1,xPos:0,height:0},t}return f()(c,[{key:"getNearestColumn",value:function(e,t){var n=this.props,r=n.totalColumns,o=n.layoutGrid,c=o.getStart(this.state.resizingColumn),i=o.getSpan(this.state.resizingColumn),a=Math.min(r,Math.max(0,function(e,t,n,r){var o=e.getBoundingClientRect(),c=o.width/r,i=t-o.x,a=Math.floor(i/c),l=i%c;return"left"===n?l<=c/2?a:a+1:l<c/2?a:a+1}(this.containerRef.current,this.getMouseX(t),e,r)));if("left"===e){if(a===c)return null;var l=Math.abs(a-c),u={start:a,span:a>c?i-l:i+l,direction:e};return u.start>=c+i?null:(u.span=Math.max(1,u.span),u)}return{span:Math.max(1,a-c),direction:e}}},{key:"getMouseX",value:function(e){var t=e.clientX,n=e.targetTouches;return t||n&&n[0].clientX}},{key:"getAdjustedOffset",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.state.width,r=t>0?t:n;return e-this.containerRef.current.getBoundingClientRect().left-r/2}},{key:"getAdjustedTop",value:function(e){return e-this.containerRef.current.getBoundingClientRect().top}},{key:"getRestrictedOffset",value:function(e){var t=this.state,n=t.direction,r=t.max,o=t.width;return"left"===n?Math.min(r-o,e):Math.max(r+o,e)}},{key:"getChildPosition",value:function(e){for(var t=0;null!==e.previousSibling;)e=e.previousSibling,t++;return t}},{key:"render",value:function(){var e=this.props,t=e.className,n=e.children,r=e.isSelected,o=this.state,c=o.resizingColumn,i=o.xPos,a=o.height,l=_()(t,-1!==c?"wp-block-jetpack-layout-grid__resizing":null);return Object(j.createElement)("div",{className:l,onMouseDown:this.onMouseDown,onTouchStart:this.onMouseDown,ref:this.containerRef},-1!==c&&Object(j.createElement)(de,{direction:this.state.direction,height:a,xPos:i,top:this.state.top,isSelected:r}),n)}}]),c}(j.Component);function ge(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ge(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ge(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var ve=function(){function e(t,n,r){s()(this,e),this.attributes=t,this.device=n,this.columnCount=r}return f()(e,[{key:"getGridValues",value:function(){for(var e={},t=0;t<this.columnCount;t++){var n=L(this.device,this.columnCount,t);e[N(t,this.device)]=this.getSpan(t)||n,e[G(t,this.device)]=this.getOffset(t)}return e}},{key:"applyAdjustments",value:function(e){for(var t=this.getGridValues(),n=0;n<e.length;n++)t=me(me({},t),e[n]);return t}},{key:"getSpanAdjustment",value:function(e,t){return o()({},N(e,this.device),t)}},{key:"getAdjustOffset",value:function(e,t){return o()({},G(e,this.device),t)}},{key:"getShrinkOffset",value:function(e,t){var n=this.getOffset(e),r=t>=n?n:t;return{adjustment:this.getAdjustOffset(e,n-r),offsetUsed:r}}},{key:"hasOverlaps",value:function(e){for(var t=0;t<e.length;t++)for(var n=e[t],r=t+1;r<e.length;r++){var o=e[r];if(n.start>o.start&&n.start<o.end)return!0;if(n.end>o.start&&n.end<o.end)return!0}return!1}},{key:"validateGrid",value:function(e){for(var t,n,r=[],o=I(this.device),c=0,i=0,a=0;a<this.columnCount;a++){var l=e[N(a,this.device)],u=e[G(a,this.device)];if((i+=u)>=o&&(i-=o),(i+=l)>o)return!1;r.push({start:c+u,end:c+u+l}),c+=l+u}return!(c>(t=this.device,n=this.columnCount,"Tablet"===t&&n>2?2*I(t):"Mobile"===t?I(t)*n:I(t))||this.hasOverlaps(r))}},{key:"getEndAdjustments",value:function(e,t){var n=[];if(t<0)return[this.getAdjustOffset(e,this.getOffset(e)+Math.abs(t))];if(t>0)for(var r=e;r<this.columnCount&&t>0;r++){var o=this.getShrinkOffset(r,Math.abs(t));n.push(o.adjustment),t-=o.offsetUsed}return n}},{key:"getStartMovedLeft",value:function(e,t){for(var n=[],r=e;r>=0&&t>0;r--){var o=this.getShrinkOffset(r,t);n.push(o.adjustment),t-=o.offsetUsed}return n}},{key:"getStartAdjustments",value:function(e,t){var n=this.getOffset(e),r=this.getOffsetFromStart(e,t),o=r-n;return o<0?this.getStartMovedLeft(e,Math.abs(o)):[this.getAdjustOffset(e,r)]}},{key:"getSpan",value:function(e){return this.attributes[N(e,this.device)]}},{key:"getOffset",value:function(e){return this.attributes[G(e,this.device)]}},{key:"getStart",value:function(e){for(var t=0,n=0;n<e;n++)t+=this.getSpan(n)+this.getOffset(n);var r=Math.max(1,Math.floor(t/I(this.device)));return(t+this.getOffset(e))%(r*I(this.device))}},{key:"getOffsetFromStart",value:function(e,t){if(0===e)return t;var n=t-this.getStart(e);return this.getOffset(e)+n}},{key:"convertOffsetToStart",value:function(e,t){return this.getStart(e)+(t-this.getOffset(e))}},{key:"getAdjustedGrid",value:function(e,t){var n=t.start,r=void 0===n?this.getStart(e):n,o=t.span,c=void 0===o?this.getSpan(e):o,i=[];r!==this.getStart(e)&&c!==this.getSpan(e)?i=(i=i.concat(this.getStartAdjustments(e,r))).concat(this.getSpanAdjustment(e,c)):c!==this.getSpan(e)?i=(i=i.concat(this.getSpanAdjustment(e,c))).concat(this.getEndAdjustments(e+1,c-this.getSpan(e))):r!==this.getStart(e)&&(i=(i=i.concat(this.getStartAdjustments(e,r))).concat(this.getEndAdjustments(e+1,r-this.getStart(e))));var a=this.applyAdjustments(i);return i.length>0&&this.validateGrid(a)?a:null}}]),e}(),he=n(23),ye=n.n(he),Oe=function(e){var t=e.viewPort,n=e.updateViewport,r=Object(C.useDispatch)("core/edit-post").__experimentalSetPreviewDeviceType,o=Object(C.useSelect)((function(e){return e("core/edit-post").__experimentalGetPreviewDeviceType()}),[]),c=Object(P.useResizeObserver)(),i=ye()(c,2),a=i[0],l=i[1],u=Object(P.useViewportMatch)("medium","<"),s=Object(P.useViewportMatch)("small","<");return Object(j.useEffect)((function(){var e=function(e,t){return e?"Mobile":t?"Tablet":"Desktop"}(s,u);e!==t&&n(e)}),[l]),Object(j.createElement)(j.Fragment,null,a,!s&&Object(j.createElement)(E.BlockControls,null,Object(j.createElement)(S.Dropdown,{renderToggle:function(e){var t=e.isOpen,n=e.onToggle;return Object(j.createElement)(S.ToolbarGroup,null,Object(j.createElement)(S.Button,{"aria-expanded":t,onClick:n,icon:T().find((function(e){return e.value===o})).icon}))},renderContent:function(){return Object(j.createElement)(S.MenuGroup,null,Object(j.createElement)(S.MenuItemsChoice,{value:o,onSelect:function(e){return r(e)},choices:T()}))}})))};function je(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function we(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?je(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):je(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var ke=["jetpack/layout-grid-column"],_e=function(e){m()(c,e);var t,n,r=(t=c,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=O()(t);if(n){var o=O()(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return h()(this,e)});function c(e){var t;return s()(this,c),t=r.call(this,e),o()(b()(t),"onChangeLayout",(function(e){for(var n={},r=0;r<e;r++)for(var o=0;o<V.length;o++){var c=L(V[o],e,r);n[N(r,V[o])]=c,n[G(r,V[o])]=0}t.props.updateColumns(t.props.columns,e,n)})),o()(b()(t),"onResize",(function(e,n){var r=t.props,o=r.attributes,c=r.columns,i=new ve(o,t.getPreviewMode(),c).getAdjustedGrid(e,n);i&&t.adjustGrid(i)})),o()(b()(t),"onChangeSpan",(function(e,n,r){var o=t.props,c=o.attributes,i=o.columns,a=new ve(c,n,i).getAdjustedGrid(e,{span:parseInt(r,10)});a&&t.adjustGrid(a)})),o()(b()(t),"onChangeOffset",(function(e,n,r){var o=t.props,c=o.attributes,i=o.columns,a=new ve(c,n,i),l=a.getAdjustedGrid(e,{start:a.convertOffsetToStart(e,parseInt(r,10))});l&&t.adjustGrid(l)})),t.overlayRef=Object(j.createRef)(),t.state={inspectorDeviceType:"Desktop",viewPort:"Desktop"},t}return f()(c,[{key:"adjustGrid",value:function(e){var t=this.props,n=t.setAttributes,r=t.attributes;n(we(we({},e),{},{className:ne(r.className)}))}},{key:"renderDeviceSettings",value:function(e,t,n){for(var r=this,o=new ve(n,t,this.props.columns),c=[],a=function(n){var a=o.getSpan(n)||L(t,e,n),l=o.getOffset(n)||0;c.push(Object(j.createElement)("div",{className:"jetpack-layout-grid-settings",key:n},Object(j.createElement)("strong",null,Object(i.__)("Column","layout-grid")," ",n+1),Object(j.createElement)("div",{className:"jetpack-layout-grid-settings__group"},Object(j.createElement)(S.TextControl,{type:"number",label:Object(i.__)("Offset","layout-grid"),value:l||0,min:0,max:I(t)-1,onChange:function(e){return r.onChangeOffset(n,t,e)}}),Object(j.createElement)(S.TextControl,{type:"number",label:Object(i.__)("Span","layout-grid"),value:a,min:1,max:I(t),onChange:function(e){return r.onChangeSpan(n,t,e)}}))))},l=0;l<e;l++)a(l);return c}},{key:"canResizeBreakpoint",value:function(e){return!(!this.overlayRef||!this.overlayRef.current)&&this.overlayRef.current.getBoundingClientRect().width/I(e)>50}},{key:"updateInspectorDevice",value:function(e){this.setState({inspectorDeviceType:e}),"Mobile"!==this.state.viewPort&&this.props.setPreviewDeviceType(e)}},{key:"getPreviewMode",value:function(){return"Desktop"===this.state.viewPort||"Mobile"===this.props.previewDeviceType?this.props.previewDeviceType:this.state.viewPort}},{key:"getInspectorMode",value:function(){return"Desktop"===this.state.viewPort?this.props.previewDeviceType:this.state.inspectorDeviceType}},{key:"render",value:function(){var e=this,t=this.props,n=t.className,r=t.attributes,c=void 0===r?{}:r,a=t.isSelected,l=t.columns,u=t.setAttributes,s=t.updateAlignment,p=t.columnAttributes,f=(t.previewDeviceType,this.state.viewPort),d=this.getPreviewMode(),b=this.getInspectorMode(),g=function(e,t){for(var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=ee(e,t,n),c={span:X,offset:F,row:K},i={},a=0;a<t;a++)r[a].verticalAlignment&&r[a].verticalAlignment!==n.verticalAlignment&&(i[W(a,r[a].verticalAlignment)]=!0);return U(U({},te(o,c)),i)}(d,l,c,p),m=c.gutterSize,v=c.addGutterEnds,h=c.verticalAlignment,y=new ve(c,d,l),O=_()(ne(n),g,o()({"wp-block-jetpack-layout-tablet":"Tablet"===d,"wp-block-jetpack-layout-desktop":"Desktop"===d,"wp-block-jetpack-layout-mobile":"Mobile"===d,"wp-block-jetpack-layout-resizable":this.canResizeBreakpoint(d)},"are-vertically-aligned-".concat(h),h),re(c));if(0===l)return Object(j.createElement)(S.Placeholder,{icon:"layout",label:Object(i.__)("Choose Layout","layout-grid"),instructions:Object(i.__)("Select a layout to start with:","layout-grid"),className:O},Object(j.createElement)("ul",{className:"block-editor-inner-blocks__template-picker-options"},R().map((function(t){return Object(j.createElement)("li",{key:t.value},Object(j.createElement)(S.IconButton,{isSecondary:!0,icon:Object(j.createElement)(fe,{columns:t.value}),onClick:function(){return e.onChangeLayout(t.value)},className:"block-editor-inner-blocks__template-picker-option",label:t.label}))}))));var k=Object(j.createElement)(S.ToggleControl,{label:Object(i.__)("Add end gutters","layout-grid"),help:v?Object(i.__)("Toggle off to remove the spacing left and right of the grid.","layout-grid"):Object(i.__)("Toggle on to add space left and right of the layout grid. ","layout-grid"),checked:v,onChange:function(e){return u({addGutterEnds:e})}});return Object(j.createElement)(j.Fragment,null,Object(j.createElement)(Oe,{currentViewport:f,updateViewport:function(t){return e.setState({viewPort:t,inspectorDeviceType:t})}}),Object(j.createElement)(S.IsolatedEventContainer,null,Object(j.createElement)(be,{className:O,onResize:this.onResize,totalColumns:I(d),layoutGrid:y,isSelected:a},Object(j.createElement)("div",{className:"wpcom-overlay-grid",ref:this.overlayRef},Object(w.times)(I(d)).map((function(e){return Object(j.createElement)("div",{className:"wpcom-overlay-grid__column",key:e})}))),Object(j.createElement)(E.InnerBlocks,{template:null,templateLock:"all",allowedBlocks:ke}),Object(j.createElement)(E.InspectorControls,null,Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Layout","layout-grid")},Object(j.createElement)("div",{className:"jetpack-layout-grid-columns block-editor-block-styles"},R().map((function(t){return Object(j.createElement)("div",{key:t.value,className:_()("block-editor-block-styles__item",{"is-active":l===t.value}),onClick:function(){return e.onChangeLayout(t.value)},onKeyDown:function(n){x.ENTER!==n.keyCode&&x.SPACE!==n.keyCode||(n.preventDefault(),e.onChangeLayout(t.value))},role:"button",tabIndex:"0","aria-label":t.label},Object(j.createElement)("div",{className:"block-editor-block-styles__item-preview"},Object(j.createElement)(fe,{columns:t.value})),Object(j.createElement)("div",{className:"editor-block-styles__item-label block-editor-block-styles__item-label"},t.label))}))),Object(j.createElement)("p",null,Object(j.createElement)("em",null,Object(i.__)("Changing the number of columns will reset your layout and could remove content.","layout-grid")))),Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Responsive Breakpoints","layout-grid")},Object(j.createElement)("p",null,Object(j.createElement)("em",null,Object(i.__)("Note that previewing your post will show your browser's breakpoint, not the currently selected one.","layout-grid"))),Object(j.createElement)(S.ButtonGroup,null,T().map((function(t){return Object(j.createElement)(S.Button,{key:t.value,isPrimary:t.value===b,onClick:function(){return e.updateInspectorDevice(t.value)}},t.label)}))),this.renderDeviceSettings(l,b,c)),Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Gutter","layout-grid")},Object(j.createElement)("p",null,Object(i.__)("Gutter size","layout-grid")),Object(j.createElement)(S.SelectControl,{value:m,onChange:function(e){return u({gutterSize:e,addGutterEnds:"none"!==e&&v})},options:[{value:"none",label:Object(i.__)("No gutter","layout-grid")}].concat(D())}),"none"===m?Object(j.createElement)(S.Disabled,null,k):k)))),Object(j.createElement)(E.BlockControls,null,Object(j.createElement)(E.BlockVerticalAlignmentToolbar,{onChange:s,value:h})))}}]),c}(j.Component),Ee=Object(P.compose)([Object(C.withDispatch)((function(e,t,n){return{updateAlignment:function(r){var o=t.clientId,c=t.setAttributes,i=e("core/block-editor").updateBlockAttributes,a=n.select("core/block-editor").getBlockOrder;c({verticalAlignment:r}),a(o).forEach((function(e){i(e,{verticalAlignment:r})}))},updateColumns:function(r,o,i){var a=t.clientId,u=e("core/block-editor").replaceBlock,s=function(e,t,n){if(n>t)return[].concat(l()(e),l()(Object(w.times)(n-t,(function(){return Object(c.createBlock)("jetpack/layout-grid-column")}))));var r=l()(e),o=0;return r.reverse(),(r=r.filter((function(e){return!(o<t-n&&0===e.innerBlocks.length&&(o++,1))}))).slice(Math.max(0,t-n-o)).reverse()}((0,n.select("core/block-editor").getBlocks)(a),r,o);u(a,Object(c.createBlock)(t.name,we(we(we({},t.attributes),i),{},{className:ne(t.attributes.className)}),s))},setPreviewDeviceType:function(t){(0,e("core/edit-post").__experimentalSetPreviewDeviceType)(t)}}})),Object(C.withSelect)((function(e,t){var n=t.clientId,r=e("core/block-editor"),o=r.getBlockOrder,c=r.getBlockCount,i=r.getBlocksByClientId,a=e("core/edit-post").__experimentalGetPreviewDeviceType,l=void 0===a?null:a;return{columns:c(n),columnAttributes:o(n).map((function(e){return i(e)[0].attributes})),previewDeviceType:l()}}))])(_e);var Se=function(e){m()(c,e);var t,n,r=(t=c,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=O()(t);if(n){var o=O()(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return h()(this,e)});function c(e){var t;return s()(this,c),t=r.call(this,e),o()(b()(t),"onLeftIn",(function(){t.setState({direction:"left"}),document.addEventListener("mouseup",t.onLeftOut)})),o()(b()(t),"onLeftOut",(function(){t.setState({direction:null}),document.removeEventListener("mouseup",t.onLeftOut)})),o()(b()(t),"onRightIn",(function(){t.setState({direction:"right"}),document.addEventListener("mouseup",t.onRightOut)})),o()(b()(t),"onRightOut",(function(){t.setState({direction:null}),document.removeEventListener("mouseup",t.onRightOut)})),t.state={direction:null},t}return f()(c,[{key:"render",value:function(){var e,t=this.props,n=t.className,r=t.hasChildBlocks,c=t.backgroundColor,a=t.setBackgroundColor,l=t.attributes,u=t.setAttributes,s=t.updateAlignment,p=l.padding,f=l.verticalAlignment,d=this.state.direction,b=_()(n,c.class,(e={},o()(e,"wp-block-jetpack-layout-grid__padding-"+p,!0),o()(e,"has-background",c.color),o()(e,"components-resizable-box__container",!0),o()(e,c.class,c.class),o()(e,"wp-blocks-jetpack-layout-grid__showleft","right"===d),o()(e,"wp-blocks-jetpack-layout-grid__showright","left"===d),o()(e,"is-vertically-aligned-".concat(f),f),e)),g={backgroundColor:c.color};return Object(j.createElement)("div",{className:b,style:g},Object(j.createElement)("span",{className:"wp-blocks-jetpack-layout-grid__resize-handles"},Object(j.createElement)("div",{className:"components-resizable-box__handle components-resizable-box__side-handle components-resizable-box__handle-right",onMouseDown:this.onRightIn,"data-resize-right":!0}),Object(j.createElement)("div",{className:"components-resizable-box__handle components-resizable-box__side-handle components-resizable-box__handle-left",onMouseDown:this.onLeftIn,"data-resize-left":!0})),Object(j.createElement)(E.InnerBlocks,{templateLock:!1,renderAppender:r?void 0:function(){return Object(j.createElement)(E.InnerBlocks.ButtonBlockAppender,null)}}),Object(j.createElement)(E.InspectorControls,null,Object(j.createElement)(E.PanelColorSettings,{title:Object(i.__)("Column Color","layout-grid"),initialOpen:!0,colorSettings:[{value:c.color,onChange:a,label:Object(i.__)("Background","layout-grid")}]}),Object(j.createElement)(S.PanelBody,{title:Object(i.__)("Column Padding","layout-grid")},Object(j.createElement)("p",null,Object(i.__)("Choose padding for this column:","layout-grid")),Object(j.createElement)(S.SelectControl,{value:p,onChange:function(e){return u({padding:e})},options:[{value:"none",label:Object(i.__)("No padding","layout-grid")}].concat(D())}))),Object(j.createElement)(E.BlockControls,null,Object(j.createElement)(E.BlockVerticalAlignmentToolbar,{onChange:s,value:f})))}}]),c}(j.Component),xe=Object(P.compose)(Object(E.withColors)("backgroundColor"),Object(C.withSelect)((function(e,t){var n=t.clientId;return{hasChildBlocks:(0,e("core/block-editor").getBlockOrder)(n).length>0}})),Object(C.withDispatch)((function(e,t,n){return{updateAlignment:function(r){var o=t.clientId,c=t.setAttributes,i=e("core/block-editor").updateBlockAttributes,a=n.select("core/block-editor").getBlockRootClientId;c({verticalAlignment:r}),i(a(o),{verticalAlignment:null})}}})))(Se),Ce=[{attributes:{backgroundColor:{type:"string"},customBackgroundColor:{type:"string"},padding:{type:"string",default:"none"},verticalAlignment:{type:"string"}},save:function(e){var t,n=e.attributes,r=void 0===n?{}:n,c=r.className,i=r.backgroundColor,a=r.customBackgroundColor,l=r.padding,u=r.verticalAlignment,s=Object(E.getColorClassName)("background-color",i),p=_()(c,(t={},o()(t,"wp-block-jetpack-layout-grid__padding-"+l,!0),o()(t,"has-background",i),o()(t,s,s),o()(t,"is-vertically-aligned-".concat(u),u),t)),f={backgroundColor:s?void 0:a};return Object(j.createElement)("div",{className:p,style:f},Object(j.createElement)(E.InnerBlocks.Content,null))}}];function Pe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}Object(c.registerBlockType)("jetpack/layout-grid",{title:Object(i.__)("Layout Grid","layout-grid"),description:Object(i.__)("Align blocks to a global grid, with support for responsive breakpoints.","layout-grid"),icon:function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24"},e),Object(j.createElement)(S.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-7.5 11.5H6c-.3 0-.5-.2-.5-.5V8c0-.3.2-.5.5-.5h5.5v10zm4 0H13v-10h2.5v10zm4-.5c0 .3-.2.5-.5.5h-2v-10h2c.3 0 .5.2.5.5v9z"}))},category:"design",supports:{align:["full"],html:!1},example:{attributes:{columns:2},innerBlocks:[{name:"jetpack/layout-grid-column",innerBlocks:[{name:"core/paragraph",attributes:{customFontSize:32,content:Object(i.__)("<strong>Snow Patrol</strong>","layout-grid"),align:"center"}}]},{name:"jetpack/layout-grid-column",innerBlocks:[{name:"core/image",attributes:{url:"https://s.w.org/images/core/5.3/Windbuchencom.jpg"}}]}]},attributes:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Pe(Object(n),!0).forEach((function(t){o()(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Pe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({align:{type:"string",default:"full"},gutterSize:{type:"string",default:"large"},addGutterEnds:{type:"boolean",default:!0},verticalAlignment:{type:"string"}},function(e,t){for(var n={},r=function(e){t.map((function(t){n[N(e,t)]={type:"number"},n[G(e,t)]={type:"number",default:0}}))},o=0;o<e;o++)r(o);return n}(4,V)),edit:Ee,save:function(e){var t=e.attributes,n=e.innerBlocks,r=t.className,o=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={},r={span:$,offset:q,row:J},o=0;o<V.length;o++)n=U(U({},n),te(ee(V[o],e,t),r));return t.addGutterEnds||(n["wp-block-jetpack-layout-gutter__nowrap"]=!0),t.verticalAlignment&&"top"!==t.verticalAlignment&&(n["are-vertically-aligned-".concat(t.verticalAlignment)]=!0),n}(n.length,t),c=_()(ne(r),o,re(t));return Object(j.createElement)("div",{className:c},Object(j.createElement)(E.InnerBlocks.Content,null))}}),Object(c.registerBlockType)("jetpack/layout-grid-column",{description:Object(i.__)("A column used inside a Layout Grid block.","layout-grid"),title:Object(i.__)("Column","layout-grid"),icon:function(e){return Object(j.createElement)(S.SVG,ae()({xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24"},e),Object(j.createElement)(S.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-2zM5.5 17V8c0-.3.2-.5.5-.5h5.5v10H6c-.3 0-.5-.2-.5-.5zm14 0c0 .3-.2.5-.5.5h-2v-10h2c.3 0 .5.2.5.5v9z"}))},category:"design",parent:["jetpack/layout-grid"],supports:{inserter:!1,reusable:!1,html:!1},attributes:{backgroundColor:{type:"string"},customBackgroundColor:{type:"string"},padding:{type:"string",default:"none"},verticalAlignment:{type:"string"}},edit:xe,save:function(e){var t,n=e.attributes,r=void 0===n?{}:n,c=r.className,i=r.backgroundColor,a=r.customBackgroundColor,l=r.padding,u=r.verticalAlignment,s=Object(E.getColorClassName)("background-color",i),p=_()(c,(t={},o()(t,"wp-block-jetpack-layout-grid__padding-"+l,!0),o()(t,"has-background",i||a),o()(t,s,s),o()(t,"is-vertically-aligned-".concat(u),u),t)),f={backgroundColor:s?void 0:a};return Object(j.createElement)("div",{className:p,style:f},Object(j.createElement)(E.InnerBlocks.Content,null))},deprecated:Ce})}]);
index.php CHANGED
@@ -2,7 +2,7 @@
2
  /**
3
  * Plugin Name: Layout Grid
4
  * Description: Let any blocks align to a global grid
5
- * Version: 1.4
6
  * Author: Automattic
7
  * Author URI: https://automattic.com
8
  * License: GPL v2 or later
2
  /**
3
  * Plugin Name: Layout Grid
4
  * Description: Let any blocks align to a global grid
5
+ * Version: 1.5
6
  * Author: Automattic
7
  * Author URI: https://automattic.com
8
  * License: GPL v2 or later
readme.txt CHANGED
@@ -1,8 +1,8 @@
1
  === Layout Grid Block ===
2
  Contributors: automattic, jasmussen, johnny5, mkaz
3
- Stable tag: 1.4
4
- Tested up to: 5.6
5
- Requires at least: 5.5
6
  License: GPLv2 or later
7
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
8
  Tags: blocks, layout, grid, design
@@ -24,6 +24,10 @@ You can follow development, file an issue, suggest features, and view the source
24
 
25
  == Changelog ==
26
 
 
 
 
 
27
  = 1.4 - 15th January 2021 =
28
  * Use hyphenation for text inside a grid column
29
  * Add missing `has-background` for columns with a custom background colour
1
  === Layout Grid Block ===
2
  Contributors: automattic, jasmussen, johnny5, mkaz
3
+ Stable tag: trunk
4
+ Tested up to: 5.6.1
5
+ Requires at least: 5.6
6
  License: GPLv2 or later
7
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
8
  Tags: blocks, layout, grid, design
24
 
25
  == Changelog ==
26
 
27
+ = 1.5 - 8th February 2021 =
28
+ * Improve editor responsive behaviour on smaller devices
29
+ * Bump minimum WordPress version to 5.6
30
+
31
  = 1.4 - 15th January 2021 =
32
  * Use hyphenation for text inside a grid column
33
  * Add missing `has-background` for columns with a custom background colour