grid-layout-plus
Version:
<p align="center"> <a href="https://grid-layout-plus.netlify.app/" target="_blank" rel="noopener noreferrer"> <img src="./docs/public/grid-layout-plus.svg" width="180" style="width: 120px;" /> </a> </p>
3 lines (2 loc) • 3.82 kB
JavaScript
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=Symbol("LAYOUT_KEY"),v=Symbol("EMITTER_KEY");function A(e){let t=0,n;for(let r=0,i=e.length;r<i;r++)n=e[r].y+e[r].h,n>t&&(t=n);return t}function Y(e){const t=Array(e.length);for(let n=0,r=e.length;n<r;n++)t[n]=y(e[n]);return t}function y(e){return{...e}}function g(e,t){return!(e===t||e.x+e.w<=t.x||e.x>=t.x+t.w||e.y+e.h<=t.y||e.y>=t.y+t.h)}function C(e,t,n){const r=w(e),i=x(e),o=Array(e.length);for(let s=0,f=i.length;s<f;s++){let c=i[s];c.static||(c=b(r,c,t,n),r.push(c)),o[e.indexOf(c)]=c,c.moved=!1}return o}function b(e,t,n,r){if(n)for(;t.y>0&&!u(e,t);)t.y--;else if(r){const o=r[t.i].y;for(;t.y>o&&!u(e,t);)t.y--}let i;for(;i=u(e,t);)t.y=i.y+i.h;return t}function _(e,t){const n=w(e);for(let r=0,i=e.length;r<i;r++){const o=e[r];if(o.x+o.w>t.cols&&(o.x=t.cols-o.w),o.x<0&&(o.x=0,o.w=t.cols),!o.static)n.push(o);else for(;u(n,o);)o.y++}return e}function R(e,t){for(let n=0,r=e.length;n<r;n++)if(e[n].i===t)return e[n]}function u(e,t){for(let n=0,r=e.length;n<r;n++)if(g(e[n],t))return e[n]}function E(e,t){return e.filter(n=>g(n,t))}function w(e){return e.filter(t=>t.static)}function m(e,t,n,r,i=!1,o=!1){if(t.static)return e;const s=t.x,f=t.y,c=r&&t.y>r;typeof n=="number"&&(t.x=n),typeof r=="number"&&(t.y=r),t.moved=!0;let h=x(e);c&&(h=h.reverse());const p=E(h,t);if(o&&p.length)return t.x=s,t.y=f,t.moved=!1,e;for(let a=0,L=p.length;a<L;a++){const l=p[a];l.moved||t.y>l.y&&t.y-l.y>l.h/4||(l.static?e=d(e,l,t,i):e=d(e,t,l,i))}return e}function d(e,t,n,r){if(r){const o={x:n.x,y:n.y,w:n.w,h:n.h,i:"-1"};if(o.y=Math.max(t.y-n.h,0),!u(e,o))return m(e,n,void 0,o.y,!1)}return m(e,n,void 0,n.y+1,!1)}function $(e,t,n,r){const i="translate3d("+t+"px,"+e+"px, 0)";return{transform:i,WebkitTransform:i,MozTransform:i,msTransform:i,OTransform:i,width:n+"px",height:r+"px",position:"absolute"}}function O(e,t,n,r){const i="translate3d("+t*-1+"px,"+e+"px, 0)";return{transform:i,WebkitTransform:i,MozTransform:i,msTransform:i,OTransform:i,width:n+"px",height:r+"px",position:"absolute"}}function K(e,t,n,r){return{top:e+"px",left:t+"px",width:n+"px",height:r+"px",position:"absolute"}}function S(e,t,n,r){return{top:e+"px",right:t+"px",width:n+"px",height:r+"px",position:"absolute"}}function x(e){return Array.from(e).sort(function(t,n){return t.y===n.y&&t.x===n.x?0:t.y>n.y||t.y===n.y&&t.x>n.x?1:-1})}function G(e,t){t=t||"Layout";const n=["x","y","w","h"],r=[];if(!Array.isArray(e))throw new Error(t+" must be an array!");for(let i=0,o=e.length;i<o;i++){const s=e[i];for(let f=0;f<n.length;f++)if(typeof s[n[f]]!="number")throw new Error("VueGridLayout: "+t+"["+i+"]."+n[f]+" must be a number!");if(s.i===void 0||s.i===null)throw new Error("VueGridLayout: "+t+"["+i+"].i cannot be null!");if(typeof s.i!="number"&&typeof s.i!="string")throw new Error("VueGridLayout: "+t+"["+i+"].i must be a string or number!");if(r.indexOf(s.i)>=0)throw new Error("VueGridLayout: "+t+"["+i+"].i must be unique!");if(r.push(s.i),s.static!==void 0&&typeof s.static!="boolean")throw new Error("VueGridLayout: "+t+"["+i+"].static must be a boolean!")}}function V(e,t="vgl"){const n=()=>`${t}-${e}`;return{b:n,be:s=>`${n()}__${s}`,bm:s=>`${n()}--${s}`,bem:(s,f)=>`${n()}__${s}--${f}`}}exports.EMITTER_KEY=v;exports.LAYOUT_KEY=T;exports.bottom=A;exports.cloneLayout=Y;exports.cloneLayoutItem=y;exports.collides=g;exports.compact=C;exports.compactItem=b;exports.correctBounds=_;exports.getAllCollisions=E;exports.getFirstCollision=u;exports.getLayoutItem=R;exports.getStatics=w;exports.moveElement=m;exports.moveElementAwayFromCollision=d;exports.setTopLeft=K;exports.setTopRight=S;exports.setTransform=$;exports.setTransformRtl=O;exports.sortLayoutItemsByRowCol=x;exports.useNameHelper=V;exports.validateLayout=G;
//# sourceMappingURL=common.js.map
;