forked from hnqso/minigrid
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathminigrid.min.js
2 lines (2 loc) · 1.28 KB
/
minigrid.min.js
1
2
/* @license minigrid v1.6.5 - minimal cascading grid layout http://alves.im/minigrid */
!function(t){"use strict";function e(t,e){if(t)for(var n=0,i=t.length;i>n;n++)t[n]&&e(t[n],n,t)}function n(t,n,o,r,u){var f=t instanceof Node?t:document.querySelector(t);if(!f)return!1;var s=f.querySelectorAll(n);if(0===s.length)return!1;o="number"==typeof o&&isFinite(o)&&Math.floor(o)===o?o:6,f.style.width="";var l=f.getBoundingClientRect().width,a=s[0].getBoundingClientRect().width+o,d=Math.max(Math.floor((l-o)/a),1),c=0;l=a*d+o+"px",f.style.width=l,f.style.position="relative";for(var h=[],p=[],v=0;d>v;++v)p.push(v*a+o),h.push(o);e(s,function(t){var e=h.slice(0).sort(function(t,e){return t-e}).shift();e=h.indexOf(e);var n=p[e],u=h[e];return t.style.position="absolute",!r&&i&&(t.style[i]="translate3D("+n+"px,"+u+"px, 0)"),h[e]+=t.getBoundingClientRect().height+o,c+=1,r?r(t,n,u,c):void 0});var m=h.slice(0).sort(function(t,e){return t-e}).pop();f.style.height=m+"px","function"==typeof u&&u(s)}var i;!function(){var t,e=document.createElement("a").style;void 0!==e[t="webkitTransform"]&&(i=t),void 0!==e[t="msTransform"]&&(i=t),void 0!==e[t="transform"]&&(i=t)}(),"function"==typeof define&&define.amd?define(function(){return n}):"undefined"!=typeof module&&module.exports?module.exports=n:t.minigrid=n}(this);