diff --git a/dist/gridstack.min.js b/dist/gridstack.min.js index aeb47ae..c61dd14 100644 --- a/dist/gridstack.min.js +++ b/dist/gridstack.min.js @@ -1 +1,2 @@ -(function(scope,_){var Utils={is_intercepted:function(a,b){return!(a.x+a.width<=b.x||b.x+b.width<=a.x||a.y+a.height<=b.y||b.y+b.height<=a.y)},sort:function(nodes,dir,width){width=width||_.chain(nodes).map(function(node){return node.x+node.width}).max().value();dir=dir!=-1?1:-1;return _.sortBy(nodes,function(n){return dir*(n.x+n.y*width)})},create_stylesheet:function(){var style=document.createElement("style");style.appendChild(document.createTextNode(""));document.head.appendChild(style);return style.sheet},toBool:function(v){if(typeof v=="boolean")return v;if(typeof v=="string"){v=v.toLowerCase();return!(v==""||v=="no"||v=="false"||v=="0")}return Boolean(v)}};var id_seq=0;var GridStackEngine=function(width,onchange,float,height,items){this.width=width;this.float=float||false;this.height=height||0;this.nodes=items||[];this.onchange=onchange||function(){}};GridStackEngine.prototype._fix_collisions=function(node){this._sort_nodes(-1);var nn=node,has_locked=Boolean(_.find(this.nodes,function(n){return n.locked}));if(!this.float&&!has_locked){nn={x:0,y:node.y,width:this.width,height:node.height}}while(true){var collision_node=_.find(this.nodes,function(n){return n!=node&&Utils.is_intercepted(n,nn)},this);if(typeof collision_node=="undefined"){return}this.move_node(collision_node,collision_node.x,node.y+node.height,collision_node.width,collision_node.height,true)}};GridStackEngine.prototype._sort_nodes=function(dir){this.nodes=Utils.sort(this.nodes,dir,this.width)};GridStackEngine.prototype._pack_nodes=function(){this._sort_nodes();if(this.float){_.each(this.nodes,function(n,i){if(n._updating||typeof n._orig_y=="undefined"||n.y==n._orig_y)return;var new_y=n.y;while(new_y>=n._orig_y){var collision_node=_.chain(this.nodes).find(function(bn){return n!=bn&&Utils.is_intercepted({x:n.x,y:new_y,width:n.width,height:n.height},bn)}).value();if(!collision_node){n._dirty=true;n.y=new_y}--new_y}},this)}else{_.each(this.nodes,function(n,i){if(n.locked)return;while(n.y>0){var new_y=n.y-1;var can_be_moved=i==0;if(i>0){var collision_node=_.chain(this.nodes).first(i).find(function(bn){return Utils.is_intercepted({x:n.x,y:new_y,width:n.width,height:n.height},bn)}).value();can_be_moved=typeof collision_node=="undefined"}if(!can_be_moved){break}n._dirty=n.y!=new_y;n.y=new_y}},this)}};GridStackEngine.prototype._prepare_node=function(node,resizing){node=_.defaults(node||{},{width:1,height:1,x:0,y:0});node.x=parseInt(""+node.x);node.y=parseInt(""+node.y);node.width=parseInt(""+node.width);node.height=parseInt(""+node.height);node.auto_position=node.auto_position||false;node.no_resize=node.no_resize||false;node.no_move=node.no_move||false;if(node.width>this.width){node.width=this.width}else if(node.width<1){node.width=1}if(node.height<1){node.height=1}if(node.x<0){node.x=0}if(node.x+node.width>this.width){if(resizing){node.width=this.width-node.x}else{node.x=this.width-node.width}}if(node.y<0){node.y=0}return node};GridStackEngine.prototype._notify=function(){var deleted_nodes=Array.prototype.slice.call(arguments,1).concat(this.get_dirty_nodes());deleted_nodes=deleted_nodes.concat(this.get_dirty_nodes());this.onchange(deleted_nodes)};GridStackEngine.prototype.clean_nodes=function(){_.each(this.nodes,function(n){n._dirty=false})};GridStackEngine.prototype.get_dirty_nodes=function(){return _.filter(this.nodes,function(n){return n._dirty})};GridStackEngine.prototype.add_node=function(node){node=this._prepare_node(node);if(typeof node.max_width!="undefined")node.width=Math.min(node.width,node.max_width);if(typeof node.max_height!="undefined")node.height=Math.min(node.height,node.max_height);if(typeof node.min_width!="undefined")node.width=Math.max(node.width,node.min_width);if(typeof node.min_height!="undefined")node.height=Math.max(node.height,node.min_height);node._id=++id_seq;node._dirty=true;if(node.auto_position){this._sort_nodes();for(var i=0;;++i){var x=i%this.width,y=Math.floor(i/this.width);if(x+node.width>this.width){continue}if(!_.find(this.nodes,function(n){return Utils.is_intercepted({x:x,y:y,width:node.width,height:node.height},n)})){node.x=x;node.y=y;break}}}this.nodes.push(node);this._fix_collisions(node);this._pack_nodes();this._notify();return node};GridStackEngine.prototype.remove_node=function(node){node._id=null;this.nodes=_.without(this.nodes,node);this._pack_nodes();this._notify(node)};GridStackEngine.prototype.can_move_node=function(node,x,y,width,height){var has_locked=Boolean(_.find(this.nodes,function(n){return n.locked}));if(!this.height&&!has_locked)return true;var cloned_node;var clone=new GridStackEngine(this.width,null,this.float,0,_.map(this.nodes,function(n){if(n==node){cloned_node=$.extend({},n);return cloned_node}return $.extend({},n)}));clone.move_node(cloned_node,x,y,width,height);var res=true;if(has_locked)res&=!Boolean(_.find(clone.nodes,function(n){return n!=cloned_node&&Boolean(n.locked)&&Boolean(n._dirty)}));if(this.height)res&=clone.get_grid_height()<=this.height;return res};GridStackEngine.prototype.can_be_placed_with_respect_to_height=function(node){if(!this.height)return true;var clone=new GridStackEngine(this.width,null,this.float,0,_.map(this.nodes,function(n){return $.extend({},n)}));clone.add_node(node);return clone.get_grid_height()<=this.height};GridStackEngine.prototype.move_node=function(node,x,y,width,height,no_pack){if(typeof x!="number")x=node.x;if(typeof y!="number")y=node.y;if(typeof width!="number")width=node.width;if(typeof height!="number")height=node.height;if(typeof node.max_width!="undefined")width=Math.min(width,node.max_width);if(typeof node.max_height!="undefined")height=Math.min(height,node.max_height);if(typeof node.min_width!="undefined")width=Math.max(width,node.min_width);if(typeof node.min_height!="undefined")height=Math.max(height,node.min_height);if(node.x==x&&node.y==y&&node.width==width&&node.height==height){return node}var resizing=node.width!=width;node._dirty=true;node.x=x;node.y=y;node.width=width;node.height=height;node=this._prepare_node(node,resizing);this._fix_collisions(node);if(!no_pack){this._pack_nodes();this._notify()}return node};GridStackEngine.prototype.get_grid_height=function(){return _.reduce(this.nodes,function(memo,n){return Math.max(memo,n.y+n.height)},0)};GridStackEngine.prototype.begin_update=function(node){_.each(this.nodes,function(n){n._orig_y=n.y});node._updating=true};GridStackEngine.prototype.end_update=function(){var n=_.find(this.nodes,function(n){return n._updating});if(n){n._updating=false}};var GridStack=function(el,opts){var self=this,one_column_mode;this.container=$(el);this.opts=_.defaults(opts||{},{width:parseInt(this.container.attr("data-gs-width"))||12,height:parseInt(this.container.attr("data-gs-height"))||0,item_class:"grid-stack-item",placeholder_class:"grid-stack-placeholder",handle:".grid-stack-item-content",cell_height:60,vertical_margin:20,auto:true,min_width:768,"float":false,_class:"grid-stack-"+(Math.random()*1e4).toFixed(0),animate:Boolean(this.container.attr("data-gs-animate"))||false,always_show_resize_handle:opts.always_show_resize_handle||false});this.container.addClass(this.opts._class);this._styles=Utils.create_stylesheet();this._styles._max=0;this.grid=new GridStackEngine(this.opts.width,function(nodes){var max_height=0;_.each(nodes,function(n){if(n._id==null){n.el.remove()}else{n.el.attr("data-gs-x",n.x).attr("data-gs-y",n.y).attr("data-gs-width",n.width).attr("data-gs-height",n.height);max_height=Math.max(max_height,n.y+n.height)}});self._update_styles(max_height+10)},this.opts.float,this.opts.height);if(this.opts.auto){var elements=[];this.container.find("."+this.opts.item_class).each(function(index,el){el=$(el);elements.push({el:el,i:parseInt(el.attr("data-gs-x"))+parseInt(el.attr("data-gs-y"))*parseInt(el.attr("data-gs-width"))})});_.chain(elements).sortBy(function(x){return x.i}).each(function(i){self._prepare_element(i.el)})}this.set_animation(this.opts.animate);this.placeholder=$('
').hide();this.container.append(this.placeholder);this.container.height(this.grid.get_grid_height()*(this.opts.cell_height+this.opts.vertical_margin)-this.opts.vertical_margin);var on_resize_handler=function(){if(self._is_one_column_mode()){if(one_column_mode)return;one_column_mode=true;self.grid._sort_nodes();_.each(self.grid.nodes,function(node){self.container.append(node.el);if(!node.no_move){node.el.draggable("disable")}if(!node.no_resize){node.el.resizable("disable")}})}else{if(!one_column_mode)return;one_column_mode=false;_.each(self.grid.nodes,function(node){if(!node.no_move){node.el.draggable("enable")}if(!node.no_resize){node.el.resizable("enable")}})}};$(window).resize(on_resize_handler);on_resize_handler()};GridStack.prototype._update_styles=function(max_height){if(typeof max_height=="undefined"){max_height=this._styles._max;this._styles._max=0;while(this._styles.rules.length){this._styles.removeRule(0)}this._update_container_height()}if(max_height>this._styles._max){for(var i=this._styles._max;i=t._orig_y;){var o=e.chain(this.nodes).find(function(e){return t!=e&&i.is_intercepted({x:t.x,y:n,width:t.width,height:t.height},e)}).value();o||(t._dirty=!0,t.y=n),--n}},this):e.each(this.nodes,function(t,n){if(!t.locked)for(;t.y>0;){var o=t.y-1,a=0==n;if(n>0){var h=e.chain(this.nodes).first(n).find(function(e){return i.is_intercepted({x:t.x,y:o,width:t.width,height:t.height},e)}).value();a="undefined"==typeof h}if(!a)break;t._dirty=t.y!=o,t.y=o}},this)},o.prototype._prepare_node=function(t,i){return t=e.defaults(t||{},{width:1,height:1,x:0,y:0}),t.x=parseInt(""+t.x),t.y=parseInt(""+t.y),t.width=parseInt(""+t.width),t.height=parseInt(""+t.height),t.auto_position=t.auto_position||!1,t.no_resize=t.no_resize||!1,t.no_move=t.no_move||!1,t.width>this.width?t.width=this.width:t.width<1&&(t.width=1),t.height<1&&(t.height=1),t.x<0&&(t.x=0),t.x+t.width>this.width&&(i?t.width=this.width-t.x:t.x=this.width-t.width),t.y<0&&(t.y=0),t},o.prototype._notify=function(){var t=Array.prototype.slice.call(arguments,1).concat(this.get_dirty_nodes());t=t.concat(this.get_dirty_nodes()),this.onchange(t)},o.prototype.clean_nodes=function(){e.each(this.nodes,function(t){t._dirty=!1})},o.prototype.get_dirty_nodes=function(){return e.filter(this.nodes,function(t){return t._dirty})},o.prototype.add_node=function(t){if(t=this._prepare_node(t),"undefined"!=typeof t.max_width&&(t.width=Math.min(t.width,t.max_width)),"undefined"!=typeof t.max_height&&(t.height=Math.min(t.height,t.max_height)),"undefined"!=typeof t.min_width&&(t.width=Math.max(t.width,t.min_width)),"undefined"!=typeof t.min_height&&(t.height=Math.max(t.height,t.min_height)),t._id=++n,t._dirty=!0,t.auto_position){this._sort_nodes();for(var o=0;;++o){var a=o%this.width,h=Math.floor(o/this.width);if(!(a+t.width>this.width||e.find(this.nodes,function(e){return i.is_intercepted({x:a,y:h,width:t.width,height:t.height},e)}))){t.x=a,t.y=h;break}}}return this.nodes.push(t),this._fix_collisions(t),this._pack_nodes(),this._notify(),t},o.prototype.remove_node=function(t){t._id=null,this.nodes=e.without(this.nodes,t),this._pack_nodes(),this._notify(t)},o.prototype.can_move_node=function(t,i,n,a,h){var s=Boolean(e.find(this.nodes,function(t){return t.locked}));if(!this.height&&!s)return!0;var d,r=new o(this.width,null,this["float"],0,e.map(this.nodes,function(e){return e==t?d=$.extend({},e):$.extend({},e)}));r.move_node(d,i,n,a,h);var _=!0;return s&&(_&=!Boolean(e.find(r.nodes,function(t){return t!=d&&Boolean(t.locked)&&Boolean(t._dirty)}))),this.height&&(_&=r.get_grid_height()<=this.height),_},o.prototype.can_be_placed_with_respect_to_height=function(t){if(!this.height)return!0;var i=new o(this.width,null,this["float"],0,e.map(this.nodes,function(t){return $.extend({},t)}));return i.add_node(t),i.get_grid_height()<=this.height},o.prototype.move_node=function(t,e,i,n,o,a){if("number"!=typeof e&&(e=t.x),"number"!=typeof i&&(i=t.y),"number"!=typeof n&&(n=t.width),"number"!=typeof o&&(o=t.height),"undefined"!=typeof t.max_width&&(n=Math.min(n,t.max_width)),"undefined"!=typeof t.max_height&&(o=Math.min(o,t.max_height)),"undefined"!=typeof t.min_width&&(n=Math.max(n,t.min_width)),"undefined"!=typeof t.min_height&&(o=Math.max(o,t.min_height)),t.x==e&&t.y==i&&t.width==n&&t.height==o)return t;var h=t.width!=n;return t._dirty=!0,t.x=e,t.y=i,t.width=n,t.height=o,t=this._prepare_node(t,h),this._fix_collisions(t),a||(this._pack_nodes(),this._notify()),t},o.prototype.get_grid_height=function(){return e.reduce(this.nodes,function(t,e){return Math.max(t,e.y+e.height)},0)},o.prototype.begin_update=function(t){e.each(this.nodes,function(t){t._orig_y=t.y}),t._updating=!0},o.prototype.end_update=function(){var t=e.find(this.nodes,function(t){return t._updating});t&&(t._updating=!1)};var a=function(t,n){var a,h=this;if(this.container=$(t),this.opts=e.defaults(n||{},{width:parseInt(this.container.attr("data-gs-width"))||12,height:parseInt(this.container.attr("data-gs-height"))||0,item_class:"grid-stack-item",placeholder_class:"grid-stack-placeholder",handle:".grid-stack-item-content",cell_height:60,vertical_margin:20,auto:!0,min_width:768,"float":!1,_class:"grid-stack-"+(1e4*Math.random()).toFixed(0),animate:Boolean(this.container.attr("data-gs-animate"))||!1,always_show_resize_handle:n.always_show_resize_handle||!1}),this.container.addClass(this.opts._class),this._styles=i.create_stylesheet(),this._styles._max=0,this.grid=new o(this.opts.width,function(t){var i=0;e.each(t,function(t){null==t._id?t.el.remove():(t.el.attr("data-gs-x",t.x).attr("data-gs-y",t.y).attr("data-gs-width",t.width).attr("data-gs-height",t.height),i=Math.max(i,t.y+t.height))}),h._update_styles(i+10)},this.opts["float"],this.opts.height),this.opts.auto){var s=[];this.container.find("."+this.opts.item_class).each(function(t,e){e=$(e),s.push({el:e,i:parseInt(e.attr("data-gs-x"))+parseInt(e.attr("data-gs-y"))*parseInt(e.attr("data-gs-width"))})}),e.chain(s).sortBy(function(t){return t.i}).each(function(t){h._prepare_element(t.el)})}this.set_animation(this.opts.animate),this.placeholder=$('
').hide(),this.container.append(this.placeholder),this.container.height(this.grid.get_grid_height()*(this.opts.cell_height+this.opts.vertical_margin)-this.opts.vertical_margin);var d=function(){if(h._is_one_column_mode()){if(a)return;a=!0,h.grid._sort_nodes(),e.each(h.grid.nodes,function(t){h.container.append(t.el),t.no_move||t.el.draggable("disable"),t.no_resize||t.el.resizable("disable")})}else{if(!a)return;a=!1,e.each(h.grid.nodes,function(t){t.no_move||t.el.draggable("enable"),t.no_resize||t.el.resizable("enable")})}};$(window).resize(d),d()};a.prototype._update_styles=function(t){if("undefined"==typeof t){for(t=this._styles._max,this._styles._max=0;this._styles.rules.length;)this._styles.removeRule(0);this._update_container_height()}if(t>this._styles._max){for(var e=this._styles._max;t>e;++e){var i;i="."+this.opts._class+" ."+this.opts.item_class+'[data-gs-height="'+(e+1)+'"] { height: '+(this.opts.cell_height*(e+1)+this.opts.vertical_margin*e)+"px; }",this._styles.insertRule(i,e),i="."+this.opts._class+" ."+this.opts.item_class+'[data-gs-y="'+e+'"] { top: '+(this.opts.cell_height*e+this.opts.vertical_margin*e)+"px; }",this._styles.insertRule(i,e)}this._styles._max=t}},a.prototype._update_container_height=function(){this.container.height(this.grid.get_grid_height()*(this.opts.cell_height+this.opts.vertical_margin)-this.opts.vertical_margin)},a.prototype._is_one_column_mode=function(){return $(window).width()<=this.opts.min_width},a.prototype._prepare_element=function(t){var e=this;t=$(t),t.addClass(this.opts.item_class);var n=e.grid.add_node({x:t.attr("data-gs-x"),y:t.attr("data-gs-y"),width:t.attr("data-gs-width"),height:t.attr("data-gs-height"),max_width:t.attr("data-gs-max-width"),min_width:t.attr("data-gs-min-width"),max_height:t.attr("data-gs-max-height")||100,min_height:t.attr("data-gs-min-height"),auto_position:i.toBool(t.attr("data-gs-auto-position")),no_resize:i.toBool(t.attr("data-gs-no-resize")),no_move:i.toBool(t.attr("data-gs-no-move")),locked:i.toBool(t.attr("data-gs-locked")),el:t});t.data("_gridstack_node",n);var o,a,h=function(){var t=$(this);e.grid.clean_nodes(),e.grid.begin_update(n),o=Math.ceil(t.outerWidth()/t.attr("data-gs-width")),a=e.opts.cell_height+e.opts.vertical_margin,e.placeholder.attr("data-gs-x",t.attr("data-gs-x")).attr("data-gs-y",t.attr("data-gs-y")).attr("data-gs-width",t.attr("data-gs-width")).attr("data-gs-height",t.attr("data-gs-height")).show(),n.el=e.placeholder},s=function(){var t=$(this);n.el=t,e.placeholder.hide(),t.attr("data-gs-x",n.x).attr("data-gs-y",n.y).attr("data-gs-width",n.width).attr("data-gs-height",n.height).removeAttr("style"),e._update_container_height(),e.container.trigger("change",[e.grid.get_dirty_nodes()]),e.grid.end_update()};t.draggable({handle:this.opts.handle,scroll:!0,appendTo:"body",start:h,stop:s,drag:function(t,i){var h=Math.round(i.position.left/o),s=Math.floor((i.position.top+a/2)/a);e.grid.can_move_node(n,h,s,n.width,n.height)&&(e.grid.move_node(n,h,s),e._update_container_height())}}).resizable({autoHide:!this.opts.always_show_resize_handle,handles:"se",minHeight:this.opts.cell_height-10,minWidth:70,start:h,stop:s,resize:function(t,i){var h=Math.round(i.size.width/o),s=Math.round(i.size.height/a);e.grid.can_move_node(n,n.x,n.y,h,s)&&(e.grid.move_node(n,n.x,n.y,h,s),e._update_container_height())}}),(n.no_move||this._is_one_column_mode())&&t.draggable("disable"),(n.no_resize||this._is_one_column_mode())&&t.resizable("disable"),t.attr("data-gs-locked",n.locked?"yes":null)},a.prototype.set_animation=function(t){t?this.container.addClass("grid-stack-animate"):this.container.removeClass("grid-stack-animate")},a.prototype.add_widget=function(t,e,i,n,o,a){t=$(t),"undefined"!=typeof e&&t.attr("data-gs-x",e),"undefined"!=typeof i&&t.attr("data-gs-y",i),"undefined"!=typeof n&&t.attr("data-gs-width",n),"undefined"!=typeof o&&t.attr("data-gs-height",o),"undefined"!=typeof a&&t.attr("data-gs-auto-position",a?"yes":null),this.container.append(t),this._prepare_element(t),this._update_container_height()},a.prototype.will_it_fit=function(t,e,i,n,o){var a={x:t,y:e,width:i,height:n,auto_position:o};return this.grid.can_be_placed_with_respect_to_height(a)},a.prototype.remove_widget=function(t){t=$(t);var e=t.data("_gridstack_node");this.grid.remove_node(e),t.remove(),this._update_container_height()},a.prototype.remove_all=function(){e.each(this.grid.nodes,function(t){t.el.remove()}),this.grid.nodes=[],this._update_container_height()},a.prototype.resizable=function(t,e){return t=$(t),t.each(function(t,i){i=$(i);var n=i.data("_gridstack_node");"undefined"!=typeof n&&(n.no_resize=!e,i.resizable(n.no_resize?"disable":"enable"))}),this},a.prototype.movable=function(t,e){return t=$(t),t.each(function(t,i){i=$(i);var n=i.data("_gridstack_node");"undefined"!=typeof n&&(n.no_move=!e,i.draggable(n.no_move?"disable":"enable"))}),this},a.prototype.locked=function(t,e){return t=$(t),t.each(function(t,i){i=$(i);var n=i.data("_gridstack_node");"undefined"!=typeof n&&(n.locked=e||!1,i.attr("data-gs-locked",n.locked?"yes":null))}),this},a.prototype._update_element=function(t,e){t=$(t).first();var i=t.data("_gridstack_node");if("undefined"!=typeof i){var n=this;n.grid.clean_nodes(),n.grid.begin_update(i),e.call(this,t,i),n._update_container_height(),n.container.trigger("change",[n.grid.get_dirty_nodes()]),n.grid.end_update()}},a.prototype.resize=function(t,e,i){this._update_element(t,function(t,n){e=null!=e&&"undefined"!=typeof e?e:n.width,i=null!=i&&"undefined"!=typeof i?i:n.height,this.grid.move_node(n,n.x,n.y,e,i)})},a.prototype.move=function(t,e,i){this._update_element(t,function(t,n){e=null!=e&&"undefined"!=typeof e?e:n.x,i=null!=i&&"undefined"!=typeof i?i:n.y,this.grid.move_node(n,e,i,n.width,n.height)})},a.prototype.cell_height=function(t){return"undefined"==typeof t?this.opts.cell_height:(t=parseInt(t),void(t!=this.opts.cell_height&&(this.opts.cell_height=t||this.opts.cell_height,this._update_styles())))},a.prototype.cell_width=function(){var t=this.container.find("."+this.opts.item_class).first();return Math.ceil(t.outerWidth()/t.attr("data-gs-width"))},t.GridStackUI=a,t.GridStackUI.Utils=i,$.fn.gridstack=function(t){return this.each(function(){$(this).data("gridstack")||$(this).data("gridstack",new a(this,t))})}}(window,_); +//# sourceMappingURL=gridstack.min.map \ No newline at end of file diff --git a/dist/gridstack.min.map b/dist/gridstack.min.map new file mode 100644 index 0000000..eeab90a --- /dev/null +++ b/dist/gridstack.min.map @@ -0,0 +1 @@ +{"version":3,"file":"dist/gridstack.min.js","sources":["src/gridstack.js"],"names":["scope","_","Utils","is_intercepted","a","b","x","width","y","height","sort","nodes","dir","chain","map","node","max","value","sortBy","n","create_stylesheet","style","document","createElement","appendChild","createTextNode","head","sheet","toBool","v","toLowerCase","Boolean","id_seq","GridStackEngine","onchange","float","items","this","prototype","_fix_collisions","_sort_nodes","nn","has_locked","find","locked","collision_node","move_node","_pack_nodes","each","_updating","_orig_y","new_y","bn","_dirty","i","can_be_moved","first","_prepare_node","resizing","defaults","parseInt","auto_position","no_resize","no_move","_notify","deleted_nodes","Array","slice","call","arguments","concat","get_dirty_nodes","clean_nodes","filter","add_node","max_width","Math","min","max_height","min_width","min_height","_id","floor","push","remove_node","without","can_move_node","cloned_node","clone","$","extend","res","get_grid_height","can_be_placed_with_respect_to_height","no_pack","reduce","memo","begin_update","end_update","GridStack","el","opts","one_column_mode","self","container","attr","item_class","placeholder_class","handle","cell_height","vertical_margin","auto","_class","random","toFixed","animate","always_show_resize_handle","addClass","_styles","_max","grid","remove","_update_styles","elements","index","_prepare_element","set_animation","placeholder","hide","append","on_resize_handler","_is_one_column_mode","draggable","resizable","window","resize","rules","length","removeRule","_update_container_height","css","insertRule","data","cell_width","on_start_moving","o","ceil","outerWidth","show","on_end_moving","removeAttr","trigger","scroll","appendTo","start","stop","drag","event","ui","round","position","left","top","autoHide","handles","minHeight","minWidth","size","enable","removeClass","add_widget","will_it_fit","remove_widget","remove_all","val","movable","_update_element","callback","move","GridStackUI","fn","gridstack"],"mappings":"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"} \ No newline at end of file