diff --git a/dist/gridstack.min.js b/dist/gridstack.min.js index 03a29f7..a50d981 100644 --- a/dist/gridstack.min.js +++ b/dist/gridstack.min.js @@ -1,2 +1,2 @@ -!function(t){"function"==typeof define&&define.amd?define(["jquery","underscore"],t):t(jQuery,_)}(function(t,e){var i=window,n={is_intercepted:function(t,e){return!(t.x+t.width<=e.x||e.x+e.width<=t.x||t.y+t.height<=e.y||e.y+e.height<=t.y)},sort:function(t,i,n){return n=n||e.chain(t).map(function(t){return t.x+t.width}).max().value(),i=-1!=i?1:-1,e.sortBy(t,function(t){return i*(t.x+t.y*n)})},create_stylesheet:function(){var t=document.createElement("style");return t.setAttribute("type","text/css"),t.styleSheet?t.styleSheet.cssText="":t.appendChild(document.createTextNode("")),document.getElementsByTagName("head")[0].appendChild(t),t.sheet},insert_css_rule:function(t,e,i,n){"function"==typeof t.insertRule?t.insertRule(e+"{"+i+"}",n):"function"==typeof t.addRule&&t.addRule(e,i,n)},toBool:function(t){return"boolean"==typeof t?t:"string"==typeof t?(t=t.toLowerCase(),!(""==t||"no"==t||"false"==t||"0"==t)):Boolean(t)}},o=0,s=function(t,e,i,n,o){this.width=t,this["float"]=i||!1,this.height=n||0,this.nodes=o||[],this.onchange=e||function(){},this._update_counter=0,this._float=this["float"]};s.prototype.batch_update=function(){this._update_counter=1,this["float"]=!0},s.prototype.commit=function(){this._update_counter=0,0==this._update_counter&&(this["float"]=this._float,this._pack_nodes(),this._notify())},s.prototype._fix_collisions=function(t){this._sort_nodes(-1);var i=t,o=Boolean(e.find(this.nodes,function(t){return t.locked}));for(this["float"]||o||(i={x:0,y:t.y,width:this.width,height:t.height});;){var s=e.find(this.nodes,function(e){return e!=t&&n.is_intercepted(e,i)},this);if("undefined"==typeof s)return;this.move_node(s,s.x,t.y+t.height,s.width,s.height,!0)}},s.prototype._sort_nodes=function(t){this.nodes=n.sort(this.nodes,t,this.width)},s.prototype._pack_nodes=function(){this._sort_nodes(),this["float"]?e.each(this.nodes,function(t){if(!t._updating&&"undefined"!=typeof t._orig_y&&t.y!=t._orig_y)for(var i=t.y;i>=t._orig_y;){var o=e.chain(this.nodes).find(function(e){return t!=e&&n.is_intercepted({x:t.x,y:i,width:t.width,height:t.height},e)}).value();o||(t._dirty=!0,t.y=i),--i}},this):e.each(this.nodes,function(t,i){if(!t.locked)for(;t.y>0;){var o=t.y-1,s=0==i;if(i>0){var a=e.chain(this.nodes).first(i).find(function(e){return n.is_intercepted({x:t.x,y:o,width:t.width,height:t.height},e)}).value();s="undefined"==typeof a}if(!s)break;t._dirty=t.y!=o,t.y=o}},this)},s.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},s.prototype._notify=function(){if(!this._update_counter){var t=Array.prototype.slice.call(arguments,1).concat(this.get_dirty_nodes());t=t.concat(this.get_dirty_nodes()),this.onchange(t)}},s.prototype.clean_nodes=function(){e.each(this.nodes,function(t){t._dirty=!1})},s.prototype.get_dirty_nodes=function(){return e.filter(this.nodes,function(t){return t._dirty})},s.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=++o,t._dirty=!0,t.auto_position){this._sort_nodes();for(var i=0;;++i){var s=i%this.width,a=Math.floor(i/this.width);if(!(s+t.width>this.width||e.find(this.nodes,function(e){return n.is_intercepted({x:s,y:a,width:t.width,height:t.height},e)}))){t.x=s,t.y=a;break}}}return this.nodes.push(t),this._fix_collisions(t),this._pack_nodes(),this._notify(),t},s.prototype.remove_node=function(t){t._id=null,this.nodes=e.without(this.nodes,t),this._pack_nodes(),this._notify(t)},s.prototype.can_move_node=function(i,n,o,a,h){var d=Boolean(e.find(this.nodes,function(t){return t.locked}));if(!this.height&&!d)return!0;var r,_=new s(this.width,null,this["float"],0,e.map(this.nodes,function(e){return e==i?r=t.extend({},e):t.extend({},e)}));_.move_node(r,n,o,a,h);var l=!0;return d&&(l&=!Boolean(e.find(_.nodes,function(t){return t!=r&&Boolean(t.locked)&&Boolean(t._dirty)}))),this.height&&(l&=_.get_grid_height()<=this.height),l},s.prototype.can_be_placed_with_respect_to_height=function(i){if(!this.height)return!0;var n=new s(this.width,null,this["float"],0,e.map(this.nodes,function(e){return t.extend({},e)}));return n.add_node(i),n.get_grid_height()<=this.height},s.prototype.move_node=function(t,e,i,n,o,s){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 a=t.width!=n;return t._dirty=!0,t.x=e,t.y=i,t.width=n,t.height=o,t=this._prepare_node(t,a),this._fix_collisions(t),s||(this._pack_nodes(),this._notify()),t},s.prototype.get_grid_height=function(){return e.reduce(this.nodes,function(t,e){return Math.max(t,e.y+e.height)},0)},s.prototype.begin_update=function(t){e.each(this.nodes,function(t){t._orig_y=t.y}),t._updating=!0},s.prototype.end_update=function(){var t=e.find(this.nodes,function(t){return t._updating});t&&(t._updating=!1)};var a=function(i,o){var a,h=this;if(this.container=t(i),this.opts=e.defaults(o||{},{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:o.always_show_resize_handle||!1,resizable:e.defaults(o.resizable||{},{autoHide:!o.always_show_resize_handle,handles:"se"}),draggable:e.defaults(o.draggable||{},{handle:".grid-stack-item-content",scroll:!0,appendTo:"body"})}),this.container.addClass(this.opts._class),this._styles=n.create_stylesheet(),null!=this._styles&&(this._styles._max=0),this.grid=new s(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 d=[];this.container.find("."+this.opts.item_class).each(function(e,i){i=t(i),d.push({el:i,i:parseInt(i.attr("data-gs-x"))+parseInt(i.attr("data-gs-y"))*parseInt(i.attr("data-gs-width"))})}),e.chain(d).sortBy(function(t){return t.i}).each(function(t){h._prepare_element(t.el)})}this.set_animation(this.opts.animate),this.placeholder=t('
').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 r=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")})}};t(window).resize(r),r()};return a.prototype._update_styles=function(t){if(null!=this._styles){var e="."+this.opts._class+" ."+this.opts.item_class;if("undefined"==typeof t){t=this._styles._max,this._styles._max=0;var i=function(){};for("function"==typeof this._styles.removeRule?i=this._styles.removeRule:"function"==typeof this._styles.deleteRule&&(i=this._styles.deleteRule);this._styles.rules.length;)i.call(this._styles,0);this._update_container_height()}if(0==this._styles._max&&n.insert_css_rule(this._styles,e,"min-height: "+this.opts.cell_height+"px;",0),t>this._styles._max){for(var o=this._styles._max;t>o;++o)n.insert_css_rule(this._styles,e+'[data-gs-height="'+(o+1)+'"]',"height: "+(this.opts.cell_height*(o+1)+this.opts.vertical_margin*o)+"px;",o),n.insert_css_rule(this._styles,e+'[data-gs-min-height="'+(o+1)+'"]',"min-height: "+(this.opts.cell_height*(o+1)+this.opts.vertical_margin*o)+"px;",o),n.insert_css_rule(this._styles,e+'[data-gs-max-height="'+(o+1)+'"]',"max-height: "+(this.opts.cell_height*(o+1)+this.opts.vertical_margin*o)+"px;",o),n.insert_css_rule(this._styles,e+'[data-gs-y="'+o+'"]',"top: "+(this.opts.cell_height*o+this.opts.vertical_margin*o)+"px;",o);this._styles._max=t}}},a.prototype._update_container_height=function(){this.grid._update_counter||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 t(window).width()<=this.opts.min_width},a.prototype._prepare_element=function(i){var o=this;i=t(i),i.addClass(this.opts.item_class);var s=o.grid.add_node({x:i.attr("data-gs-x"),y:i.attr("data-gs-y"),width:i.attr("data-gs-width"),height:i.attr("data-gs-height"),max_width:i.attr("data-gs-max-width"),min_width:i.attr("data-gs-min-width"),max_height:i.attr("data-gs-max-height"),min_height:i.attr("data-gs-min-height"),auto_position:n.toBool(i.attr("data-gs-auto-position")),no_resize:n.toBool(i.attr("data-gs-no-resize")),no_move:n.toBool(i.attr("data-gs-no-move")),locked:n.toBool(i.attr("data-gs-locked")),el:i});i.data("_gridstack_node",s);var a,h,d=function(){var e=t(this);o.grid.clean_nodes(),o.grid.begin_update(s),a=Math.ceil(e.outerWidth()/e.attr("data-gs-width")),h=o.opts.cell_height+o.opts.vertical_margin,o.placeholder.attr("data-gs-x",e.attr("data-gs-x")).attr("data-gs-y",e.attr("data-gs-y")).attr("data-gs-width",e.attr("data-gs-width")).attr("data-gs-height",e.attr("data-gs-height")).show(),s.el=o.placeholder},r=function(){var e=t(this);s.el=e,o.placeholder.hide(),e.attr("data-gs-x",s.x).attr("data-gs-y",s.y).attr("data-gs-width",s.width).attr("data-gs-height",s.height).removeAttr("style"),o._update_container_height(),o.container.trigger("change",[o.grid.get_dirty_nodes()]),o.grid.end_update()};i.draggable(e.extend(this.opts.draggable,{start:d,stop:r,drag:function(t,e){var i=Math.round(e.position.left/a),n=Math.floor((e.position.top+h/2)/h);o.grid.can_move_node(s,i,n,s.width,s.height)&&(o.grid.move_node(s,i,n),o._update_container_height())}})).resizable(e.extend(this.opts.resizable,{start:d,stop:r,resize:function(t,e){var i=Math.round(e.position.left/a),n=Math.floor((e.position.top+h/2)/h),d=Math.round(e.size.width/a),r=Math.round(e.size.height/h);o.grid.can_move_node(s,i,n,d,r)&&(o.grid.move_node(s,i,n,d,r),o._update_container_height())}})),(s.no_move||this._is_one_column_mode())&&i.draggable("disable"),(s.no_resize||this._is_one_column_mode())&&i.resizable("disable"),i.attr("data-gs-locked",s.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(e,i,n,o,s,a){return e=t(e),"undefined"!=typeof i&&e.attr("data-gs-x",i),"undefined"!=typeof n&&e.attr("data-gs-y",n),"undefined"!=typeof o&&e.attr("data-gs-width",o),"undefined"!=typeof s&&e.attr("data-gs-height",s),"undefined"!=typeof a&&e.attr("data-gs-auto-position",a?"yes":null),this.container.append(e),this._prepare_element(e),this._update_container_height(),e},a.prototype.will_it_fit=function(t,e,i,n,o){var s={x:t,y:e,width:i,height:n,auto_position:o};return this.grid.can_be_placed_with_respect_to_height(s)},a.prototype.remove_widget=function(e){e=t(e);var i=e.data("_gridstack_node");this.grid.remove_node(i),e.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(e,i){return e=t(e),e.each(function(e,n){n=t(n);var o=n.data("_gridstack_node");"undefined"!=typeof o&&(o.no_resize=!i,n.resizable(o.no_resize?"disable":"enable"))}),this},a.prototype.movable=function(e,i){return e=t(e),e.each(function(e,n){n=t(n);var o=n.data("_gridstack_node");"undefined"!=typeof o&&(o.no_move=!i,n.draggable(o.no_move?"disable":"enable"))}),this},a.prototype.disable=function(){this.movable(this.container.find("."+this.opts.item_class),!1),this.resizable(this.container.find("."+this.opts.item_class),!1)},a.prototype.enable=function(){this.movable(this.container.find("."+this.opts.item_class),!0),this.resizable(this.container.find("."+this.opts.item_class),!0)},a.prototype.locked=function(e,i){return e=t(e),e.each(function(e,n){n=t(n);var o=n.data("_gridstack_node");"undefined"!=typeof o&&(o.locked=i||!1,n.attr("data-gs-locked",o.locked?"yes":null))}),this},a.prototype._update_element=function(e,i){e=t(e).first();var n=e.data("_gridstack_node");if("undefined"!=typeof n){var o=this;o.grid.clean_nodes(),o.grid.begin_update(n),i.call(this,e,n),o._update_container_height(),o.container.trigger("change",[o.grid.get_dirty_nodes()]),o.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.update=function(t,e,i,n,o){this._update_element(t,function(t,s){e=null!=e&&"undefined"!=typeof e?e:s.x,i=null!=i&&"undefined"!=typeof i?i:s.y,n=null!=n&&"undefined"!=typeof n?n:s.width,o=null!=o&&"undefined"!=typeof o?o:s.height,this.grid.move_node(s,e,i,n,o)})},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"))},a.prototype.get_cell_from_pixel=function(t){var e=this.container.position(),i=t.left-e.left,n=t.top-e.top,o=Math.floor(this.container.width()/this.opts.width),s=this.opts.cell_height+this.opts.vertical_margin;return{x:Math.floor(i/o),y:Math.floor(n/s)}},a.prototype.batch_update=function(){this.grid.batch_update()},a.prototype.commit=function(){this.grid.commit(),this._update_container_height()},i.GridStackUI=a,i.GridStackUI.Utils=n,t.fn.gridstack=function(e){return this.each(function(){t(this).data("gridstack")||t(this).data("gridstack",new a(this,e))})},i.GridStackUI}); +!function(t){"function"==typeof define&&define.amd?define(["jquery","underscore"],t):t(jQuery,_)}(function(t,e){var i=window,n={is_intercepted:function(t,e){return!(t.x+t.width<=e.x||e.x+e.width<=t.x||t.y+t.height<=e.y||e.y+e.height<=t.y)},sort:function(t,i,n){return n=n||e.chain(t).map(function(t){return t.x+t.width}).max().value(),i=-1!=i?1:-1,e.sortBy(t,function(t){return i*(t.x+t.y*n)})},create_stylesheet:function(t){var e=document.createElement("style");return e.setAttribute("type","text/css"),e.setAttribute("data-gs-id",t),e.styleSheet?e.styleSheet.cssText="":e.appendChild(document.createTextNode("")),document.getElementsByTagName("head")[0].appendChild(e),e.sheet},insert_css_rule:function(t,e,i,n){"function"==typeof t.insertRule?t.insertRule(e+"{"+i+"}",n):"function"==typeof t.addRule&&t.addRule(e,i,n)},toBool:function(t){return"boolean"==typeof t?t:"string"==typeof t?(t=t.toLowerCase(),!(""==t||"no"==t||"false"==t||"0"==t)):Boolean(t)}},o=0,s=function(t,e,i,n,o){this.width=t,this["float"]=i||!1,this.height=n||0,this.nodes=o||[],this.onchange=e||function(){},this._update_counter=0,this._float=this["float"]};s.prototype.batch_update=function(){this._update_counter=1,this["float"]=!0},s.prototype.commit=function(){this._update_counter=0,0==this._update_counter&&(this["float"]=this._float,this._pack_nodes(),this._notify())},s.prototype._fix_collisions=function(t){this._sort_nodes(-1);var i=t,o=Boolean(e.find(this.nodes,function(t){return t.locked}));for(this["float"]||o||(i={x:0,y:t.y,width:this.width,height:t.height});;){var s=e.find(this.nodes,function(e){return e!=t&&n.is_intercepted(e,i)},this);if("undefined"==typeof s)return;this.move_node(s,s.x,t.y+t.height,s.width,s.height,!0)}},s.prototype._sort_nodes=function(t){this.nodes=n.sort(this.nodes,t,this.width)},s.prototype._pack_nodes=function(){this._sort_nodes(),this["float"]?e.each(this.nodes,function(t){if(!t._updating&&"undefined"!=typeof t._orig_y&&t.y!=t._orig_y)for(var i=t.y;i>=t._orig_y;){var o=e.chain(this.nodes).find(function(e){return t!=e&&n.is_intercepted({x:t.x,y:i,width:t.width,height:t.height},e)}).value();o||(t._dirty=!0,t.y=i),--i}},this):e.each(this.nodes,function(t,i){if(!t.locked)for(;t.y>0;){var o=t.y-1,s=0==i;if(i>0){var a=e.chain(this.nodes).first(i).find(function(e){return n.is_intercepted({x:t.x,y:o,width:t.width,height:t.height},e)}).value();s="undefined"==typeof a}if(!s)break;t._dirty=t.y!=o,t.y=o}},this)},s.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},s.prototype._notify=function(){if(!this._update_counter){var t=Array.prototype.slice.call(arguments,1).concat(this.get_dirty_nodes());t=t.concat(this.get_dirty_nodes()),this.onchange(t)}},s.prototype.clean_nodes=function(){e.each(this.nodes,function(t){t._dirty=!1})},s.prototype.get_dirty_nodes=function(){return e.filter(this.nodes,function(t){return t._dirty})},s.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=++o,t._dirty=!0,t.auto_position){this._sort_nodes();for(var i=0;;++i){var s=i%this.width,a=Math.floor(i/this.width);if(!(s+t.width>this.width||e.find(this.nodes,function(e){return n.is_intercepted({x:s,y:a,width:t.width,height:t.height},e)}))){t.x=s,t.y=a;break}}}return this.nodes.push(t),this._fix_collisions(t),this._pack_nodes(),this._notify(),t},s.prototype.remove_node=function(t){t._id=null,this.nodes=e.without(this.nodes,t),this._pack_nodes(),this._notify(t)},s.prototype.can_move_node=function(i,n,o,a,h){var d=Boolean(e.find(this.nodes,function(t){return t.locked}));if(!this.height&&!d)return!0;var r,_=new s(this.width,null,this["float"],0,e.map(this.nodes,function(e){return e==i?r=t.extend({},e):t.extend({},e)}));_.move_node(r,n,o,a,h);var l=!0;return d&&(l&=!Boolean(e.find(_.nodes,function(t){return t!=r&&Boolean(t.locked)&&Boolean(t._dirty)}))),this.height&&(l&=_.get_grid_height()<=this.height),l},s.prototype.can_be_placed_with_respect_to_height=function(i){if(!this.height)return!0;var n=new s(this.width,null,this["float"],0,e.map(this.nodes,function(e){return t.extend({},e)}));return n.add_node(i),n.get_grid_height()<=this.height},s.prototype.move_node=function(t,e,i,n,o,s){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 a=t.width!=n;return t._dirty=!0,t.x=e,t.y=i,t.width=n,t.height=o,t=this._prepare_node(t,a),this._fix_collisions(t),s||(this._pack_nodes(),this._notify()),t},s.prototype.get_grid_height=function(){return e.reduce(this.nodes,function(t,e){return Math.max(t,e.y+e.height)},0)},s.prototype.begin_update=function(t){e.each(this.nodes,function(t){t._orig_y=t.y}),t._updating=!0},s.prototype.end_update=function(){var t=e.find(this.nodes,function(t){return t._updating});t&&(t._updating=!1)};var a=function(i,n){var o,a=this;if(this.container=t(i),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,resizable:e.defaults(n.resizable||{},{autoHide:!n.always_show_resize_handle,handles:"se"}),draggable:e.defaults(n.draggable||{},{handle:".grid-stack-item-content",scroll:!0,appendTo:"body"})}),this.container.addClass(this.opts._class),this._init_styles(),this.grid=new s(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))}),a._update_styles(i+10)},this.opts["float"],this.opts.height),this.opts.auto){var h=[];this.container.find("."+this.opts.item_class).each(function(e,i){i=t(i),h.push({el:i,i:parseInt(i.attr("data-gs-x"))+parseInt(i.attr("data-gs-y"))*parseInt(i.attr("data-gs-width"))})}),e.chain(h).sortBy(function(t){return t.i}).each(function(t){a._prepare_element(t.el)})}this.set_animation(this.opts.animate),this.placeholder=t('
').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(a._is_one_column_mode()){if(o)return;o=!0,a.grid._sort_nodes(),e.each(a.grid.nodes,function(t){a.container.append(t.el),t.no_move||t.el.draggable("disable"),t.no_resize||t.el.resizable("disable")})}else{if(!o)return;o=!1,e.each(a.grid.nodes,function(t){t.no_move||t.el.draggable("enable"),t.no_resize||t.el.resizable("enable")})}};t(window).resize(d),d()};return a.prototype._init_styles=function(){this._styles_id&&t('[data-gs-id="'+this._styles_id+'"]').remove(),this._styles_id="gridstack-style-"+(1e5*Math.random()).toFixed(),this._styles=n.create_stylesheet(this._styles_id),null!=this._styles&&(this._styles._max=0)},a.prototype._update_styles=function(t){if(null!=this._styles){var e="."+this.opts._class+" ."+this.opts.item_class;if("undefined"==typeof t&&(t=this._styles._max,this._init_styles(),this._update_container_height()),0==this._styles._max&&n.insert_css_rule(this._styles,e,"min-height: "+this.opts.cell_height+"px;",0),t>this._styles._max){for(var i=this._styles._max;t>i;++i)n.insert_css_rule(this._styles,e+'[data-gs-height="'+(i+1)+'"]',"height: "+(this.opts.cell_height*(i+1)+this.opts.vertical_margin*i)+"px;",i),n.insert_css_rule(this._styles,e+'[data-gs-min-height="'+(i+1)+'"]',"min-height: "+(this.opts.cell_height*(i+1)+this.opts.vertical_margin*i)+"px;",i),n.insert_css_rule(this._styles,e+'[data-gs-max-height="'+(i+1)+'"]',"max-height: "+(this.opts.cell_height*(i+1)+this.opts.vertical_margin*i)+"px;",i),n.insert_css_rule(this._styles,e+'[data-gs-y="'+i+'"]',"top: "+(this.opts.cell_height*i+this.opts.vertical_margin*i)+"px;",i);this._styles._max=t}}},a.prototype._update_container_height=function(){this.grid._update_counter||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 t(window).width()<=this.opts.min_width},a.prototype._prepare_element=function(i){var o=this;i=t(i),i.addClass(this.opts.item_class);var s=o.grid.add_node({x:i.attr("data-gs-x"),y:i.attr("data-gs-y"),width:i.attr("data-gs-width"),height:i.attr("data-gs-height"),max_width:i.attr("data-gs-max-width"),min_width:i.attr("data-gs-min-width"),max_height:i.attr("data-gs-max-height"),min_height:i.attr("data-gs-min-height"),auto_position:n.toBool(i.attr("data-gs-auto-position")),no_resize:n.toBool(i.attr("data-gs-no-resize")),no_move:n.toBool(i.attr("data-gs-no-move")),locked:n.toBool(i.attr("data-gs-locked")),el:i});i.data("_gridstack_node",s);var a,h,d=function(){var e=t(this);o.grid.clean_nodes(),o.grid.begin_update(s),a=Math.ceil(e.outerWidth()/e.attr("data-gs-width")),h=o.opts.cell_height+o.opts.vertical_margin,o.placeholder.attr("data-gs-x",e.attr("data-gs-x")).attr("data-gs-y",e.attr("data-gs-y")).attr("data-gs-width",e.attr("data-gs-width")).attr("data-gs-height",e.attr("data-gs-height")).show(),s.el=o.placeholder},r=function(){var e=t(this);s.el=e,o.placeholder.hide(),e.attr("data-gs-x",s.x).attr("data-gs-y",s.y).attr("data-gs-width",s.width).attr("data-gs-height",s.height).removeAttr("style"),o._update_container_height(),o.container.trigger("change",[o.grid.get_dirty_nodes()]),o.grid.end_update()};i.draggable(e.extend(this.opts.draggable,{start:d,stop:r,drag:function(t,e){var i=Math.round(e.position.left/a),n=Math.floor((e.position.top+h/2)/h);o.grid.can_move_node(s,i,n,s.width,s.height)&&(o.grid.move_node(s,i,n),o._update_container_height())}})).resizable(e.extend(this.opts.resizable,{start:d,stop:r,resize:function(t,e){var i=Math.round(e.position.left/a),n=Math.floor((e.position.top+h/2)/h),d=Math.round(e.size.width/a),r=Math.round(e.size.height/h);o.grid.can_move_node(s,i,n,d,r)&&(o.grid.move_node(s,i,n,d,r),o._update_container_height())}})),(s.no_move||this._is_one_column_mode())&&i.draggable("disable"),(s.no_resize||this._is_one_column_mode())&&i.resizable("disable"),i.attr("data-gs-locked",s.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(e,i,n,o,s,a){return e=t(e),"undefined"!=typeof i&&e.attr("data-gs-x",i),"undefined"!=typeof n&&e.attr("data-gs-y",n),"undefined"!=typeof o&&e.attr("data-gs-width",o),"undefined"!=typeof s&&e.attr("data-gs-height",s),"undefined"!=typeof a&&e.attr("data-gs-auto-position",a?"yes":null),this.container.append(e),this._prepare_element(e),this._update_container_height(),e},a.prototype.will_it_fit=function(t,e,i,n,o){var s={x:t,y:e,width:i,height:n,auto_position:o};return this.grid.can_be_placed_with_respect_to_height(s)},a.prototype.remove_widget=function(e){e=t(e);var i=e.data("_gridstack_node");this.grid.remove_node(i),e.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(e,i){return e=t(e),e.each(function(e,n){n=t(n);var o=n.data("_gridstack_node");"undefined"!=typeof o&&(o.no_resize=!i,n.resizable(o.no_resize?"disable":"enable"))}),this},a.prototype.movable=function(e,i){return e=t(e),e.each(function(e,n){n=t(n);var o=n.data("_gridstack_node");"undefined"!=typeof o&&(o.no_move=!i,n.draggable(o.no_move?"disable":"enable"))}),this},a.prototype.disable=function(){this.movable(this.container.find("."+this.opts.item_class),!1),this.resizable(this.container.find("."+this.opts.item_class),!1)},a.prototype.enable=function(){this.movable(this.container.find("."+this.opts.item_class),!0),this.resizable(this.container.find("."+this.opts.item_class),!0)},a.prototype.locked=function(e,i){return e=t(e),e.each(function(e,n){n=t(n);var o=n.data("_gridstack_node");"undefined"!=typeof o&&(o.locked=i||!1,n.attr("data-gs-locked",o.locked?"yes":null))}),this},a.prototype._update_element=function(e,i){e=t(e).first();var n=e.data("_gridstack_node");if("undefined"!=typeof n){var o=this;o.grid.clean_nodes(),o.grid.begin_update(n),i.call(this,e,n),o._update_container_height(),o.container.trigger("change",[o.grid.get_dirty_nodes()]),o.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.update=function(t,e,i,n,o){this._update_element(t,function(t,s){e=null!=e&&"undefined"!=typeof e?e:s.x,i=null!=i&&"undefined"!=typeof i?i:s.y,n=null!=n&&"undefined"!=typeof n?n:s.width,o=null!=o&&"undefined"!=typeof o?o:s.height,this.grid.move_node(s,e,i,n,o)})},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"))},a.prototype.get_cell_from_pixel=function(t){var e=this.container.position(),i=t.left-e.left,n=t.top-e.top,o=Math.floor(this.container.width()/this.opts.width),s=this.opts.cell_height+this.opts.vertical_margin;return{x:Math.floor(i/o),y:Math.floor(n/s)}},a.prototype.batch_update=function(){this.grid.batch_update()},a.prototype.commit=function(){this.grid.commit(),this._update_container_height()},i.GridStackUI=a,i.GridStackUI.Utils=n,t.fn.gridstack=function(e){return this.each(function(){t(this).data("gridstack")||t(this).data("gridstack",new a(this,e))})},i.GridStackUI}); //# sourceMappingURL=gridstack.min.map \ No newline at end of file diff --git a/dist/gridstack.min.map b/dist/gridstack.min.map index c845e45..36f84f5 100644 --- a/dist/gridstack.min.map +++ b/dist/gridstack.min.map @@ -1 +1 @@ -{"version":3,"file":"dist/gridstack.min.js","sources":["src/gridstack.js"],"names":["factory","define","amd","jQuery","_","$","scope","window","Utils","is_intercepted","a","b","x","width","y","height","sort","nodes","dir","chain","map","node","max","value","sortBy","n","create_stylesheet","style","document","createElement","setAttribute","styleSheet","cssText","appendChild","createTextNode","getElementsByTagName","sheet","insert_css_rule","selector","rules","index","insertRule","addRule","toBool","v","toLowerCase","Boolean","id_seq","GridStackEngine","onchange","float","items","this","_update_counter","_float","prototype","batch_update","commit","_pack_nodes","_notify","_fix_collisions","_sort_nodes","nn","has_locked","find","locked","collision_node","move_node","each","_updating","_orig_y","new_y","bn","_dirty","i","can_be_moved","first","_prepare_node","resizing","defaults","parseInt","auto_position","no_resize","no_move","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","resizable","autoHide","handles","draggable","scroll","appendTo","addClass","_styles","_max","grid","remove","_update_styles","elements","_prepare_element","set_animation","placeholder","hide","append","on_resize_handler","_is_one_column_mode","resize","prefix","f","removeRule","deleteRule","length","_update_container_height","data","cell_width","on_start_moving","o","ceil","outerWidth","show","on_end_moving","removeAttr","trigger","start","stop","drag","event","ui","round","position","left","top","size","enable","removeClass","add_widget","will_it_fit","remove_widget","remove_all","val","movable","disable","_update_element","callback","move","update","get_cell_from_pixel","containerPos","relativeLeft","relativeTop","column_width","row_height","GridStackUI","fn","gridstack"],"mappings":"CAKA,SAAWA,GACe,kBAAXC,SAAyBA,OAAOC,IACvCD,QAAQ,SAAU,cAAeD,GAGjCA,EAAQG,OAAQC,IAErB,SAAUC,EAAGD,GAEZ,GAAIE,GAAQC,OAERC,GACAC,eAAgB,SAAUC,EAAGC,GACzB,QAASD,EAAEE,EAAIF,EAAEG,OAASF,EAAEC,GAAKD,EAAEC,EAAID,EAAEE,OAASH,EAAEE,GAAKF,EAAEI,EAAIJ,EAAEK,QAAUJ,EAAEG,GAAKH,EAAEG,EAAIH,EAAEI,QAAUL,EAAEI,IAG1GE,KAAM,SAAUC,EAAOC,EAAKL,GAGxB,MAFAA,GAAQA,GAAST,EAAEe,MAAMF,GAAOG,IAAI,SAAUC,GAAQ,MAAOA,GAAKT,EAAIS,EAAKR,QAAUS,MAAMC,QAC3FL,EAAa,IAAPA,EAAY,EAAI,GACfd,EAAEoB,OAAOP,EAAO,SAAUQ,GAAK,MAAOP,IAAOO,EAAEb,EAAIa,EAAEX,EAAID,MAGpEa,kBAAmB,WACf,GAAIC,GAAQC,SAASC,cAAc,QASnC,OARAF,GAAMG,aAAa,OAAQ,YACvBH,EAAMI,WACNJ,EAAMI,WAAWC,QAAU,GAG3BL,EAAMM,YAAYL,SAASM,eAAe,KAE9CN,SAASO,qBAAqB,QAAQ,GAAGF,YAAYN,GAC9CA,EAAMS,OAGjBC,gBAAiB,SAAUD,EAAOE,EAAUC,EAAOC,GAChB,kBAArBJ,GAAMK,WACZL,EAAMK,WAAWH,EAAW,IAAMC,EAAQ,IAAKC,GAElB,kBAAlBJ,GAAMM,SACjBN,EAAMM,QAAQJ,EAAUC,EAAOC,IAIvCG,OAAQ,SAAUC,GACd,MAAgB,iBAALA,GACAA,EACK,gBAALA,IACPA,EAAIA,EAAEC,gBACQ,IAALD,GAAgB,MAALA,GAAkB,SAALA,GAAqB,KAALA,IAE9CE,QAAQF,KAInBG,EAAS,EAETC,EAAkB,SAAUnC,EAAOoC,EAAUC,EAAOnC,EAAQoC,GAC5DC,KAAKvC,MAAQA,EACbuC,KAAAA,SAAaF,IAAS,EACtBE,KAAKrC,OAASA,GAAU,EAExBqC,KAAKnC,MAAQkC,MACbC,KAAKH,SAAWA,GAAY,aAE5BG,KAAKC,gBAAkB,EACvBD,KAAKE,OAASF,KAAAA,SAGlBJ,GAAgBO,UAAUC,aAAe,WACrCJ,KAAKC,gBAAkB,EACvBD,KAAAA,UAAa,GAGjBJ,EAAgBO,UAAUE,OAAS,WAC/BL,KAAKC,gBAAkB,EACK,GAAxBD,KAAKC,kBACLD,KAAAA,SAAaA,KAAKE,OAClBF,KAAKM,cACLN,KAAKO,YAIbX,EAAgBO,UAAUK,gBAAkB,SAAUvC,GAClD+B,KAAKS,YAAY,GAEjB,IAAIC,GAAKzC,EAAM0C,EAAajB,QAAQ1C,EAAE4D,KAAKZ,KAAKnC,MAAO,SAAUQ,GAAK,MAAOA,GAAEwC,SAK/E,KAJKb,KAAAA,UAAeW,IAChBD,GAAMlD,EAAG,EAAGE,EAAGO,EAAKP,EAAGD,MAAOuC,KAAKvC,MAAOE,OAAQM,EAAKN,WAG9C,CACT,GAAImD,GAAiB9D,EAAE4D,KAAKZ,KAAKnC,MAAO,SAAUQ,GAC9C,MAAOA,IAAKJ,GAAQb,EAAMC,eAAegB,EAAGqC,IAC7CV,KACH,IAA6B,mBAAlBc,GACP,MAEJd,MAAKe,UAAUD,EAAgBA,EAAetD,EAAGS,EAAKP,EAAIO,EAAKN,OAC3DmD,EAAerD,MAAOqD,EAAenD,QAAQ,KAIzDiC,EAAgBO,UAAUM,YAAc,SAAU3C,GAC9CkC,KAAKnC,MAAQT,EAAMQ,KAAKoC,KAAKnC,MAAOC,EAAKkC,KAAKvC,QAGlDmC,EAAgBO,UAAUG,YAAc,WACpCN,KAAKS,cAEDT,KAAAA,SACAhD,EAAEgE,KAAKhB,KAAKnC,MAAO,SAAUQ,GACzB,IAAIA,EAAE4C,WAAiC,mBAAb5C,GAAE6C,SAA0B7C,EAAEX,GAAKW,EAAE6C,QAI/D,IADA,GAAIC,GAAQ9C,EAAEX,EACPyD,GAAS9C,EAAE6C,SAAS,CACvB,GAAIJ,GAAiB9D,EAAEe,MAAMiC,KAAKnC,OAC7B+C,KAAK,SAAUQ,GACZ,MAAO/C,IAAK+C,GAAMhE,EAAMC,gBAAgBG,EAAGa,EAAEb,EAAGE,EAAGyD,EAAO1D,MAAOY,EAAEZ,MAAOE,OAAQU,EAAEV,QAASyD,KAEhGjD,OAEA2C,KACDzC,EAAEgD,QAAS,EACXhD,EAAEX,EAAIyD,KAERA,IAEPnB,MAGHhD,EAAEgE,KAAKhB,KAAKnC,MAAO,SAAUQ,EAAGiD,GAC5B,IAAIjD,EAAEwC,OAEN,KAAOxC,EAAEX,EAAI,GAAG,CACZ,GAAIyD,GAAQ9C,EAAEX,EAAI,EACd6D,EAAoB,GAALD,CAEnB,IAAIA,EAAI,EAAG,CACP,GAAIR,GAAiB9D,EAAEe,MAAMiC,KAAKnC,OAC7B2D,MAAMF,GACNV,KAAK,SAAUQ,GACZ,MAAOhE,GAAMC,gBAAgBG,EAAGa,EAAEb,EAAGE,EAAGyD,EAAO1D,MAAOY,EAAEZ,MAAOE,OAAQU,EAAEV,QAASyD,KAErFjD,OACLoD,GAAwC,mBAAlBT,GAG1B,IAAKS,EACD,KAEJlD,GAAEgD,OAAShD,EAAEX,GAAKyD,EAClB9C,EAAEX,EAAIyD,IAEXnB,OAIXJ,EAAgBO,UAAUsB,cAAgB,SAAUxD,EAAMyD,GAuCtD,MAtCAzD,GAAOjB,EAAE2E,SAAS1D,OAAaR,MAAO,EAAGE,OAAQ,EAAGH,EAAG,EAAGE,EAAG,IAE7DO,EAAKT,EAAIoE,SAAS,GAAK3D,EAAKT,GAC5BS,EAAKP,EAAIkE,SAAS,GAAK3D,EAAKP,GAC5BO,EAAKR,MAAQmE,SAAS,GAAK3D,EAAKR,OAChCQ,EAAKN,OAASiE,SAAS,GAAK3D,EAAKN,QACjCM,EAAK4D,cAAgB5D,EAAK4D,gBAAiB,EAC3C5D,EAAK6D,UAAY7D,EAAK6D,YAAa,EACnC7D,EAAK8D,QAAU9D,EAAK8D,UAAW,EAE3B9D,EAAKR,MAAQuC,KAAKvC,MAClBQ,EAAKR,MAAQuC,KAAKvC,MAEbQ,EAAKR,MAAQ,IAClBQ,EAAKR,MAAQ,GAGbQ,EAAKN,OAAS,IACdM,EAAKN,OAAS,GAGdM,EAAKT,EAAI,IACTS,EAAKT,EAAI,GAGTS,EAAKT,EAAIS,EAAKR,MAAQuC,KAAKvC,QACvBiE,EACAzD,EAAKR,MAAQuC,KAAKvC,MAAQQ,EAAKT,EAG/BS,EAAKT,EAAIwC,KAAKvC,MAAQQ,EAAKR,OAI/BQ,EAAKP,EAAI,IACTO,EAAKP,EAAI,GAGNO,GAGX2B,EAAgBO,UAAUI,QAAU,WAChC,IAAIP,KAAKC,gBAAT,CAGA,GAAI+B,GAAgBC,MAAM9B,UAAU+B,MAAMC,KAAKC,UAAW,GAAGC,OAAOrC,KAAKsC,kBACzEN,GAAgBA,EAAcK,OAAOrC,KAAKsC,mBAC1CtC,KAAKH,SAASmC,KAGlBpC,EAAgBO,UAAUoC,YAAc,WACpCvF,EAAEgE,KAAKhB,KAAKnC,MAAO,SAAUQ,GAAIA,EAAEgD,QAAS,KAGhDzB,EAAgBO,UAAUmC,gBAAkB,WACxC,MAAOtF,GAAEwF,OAAOxC,KAAKnC,MAAO,SAAUQ,GAAK,MAAOA,GAAEgD,UAGxDzB,EAAgBO,UAAUsC,SAAW,SAASxE,GAW1C,GAVAA,EAAO+B,KAAKyB,cAAcxD,GAEG,mBAAlBA,GAAKyE,YAA0BzE,EAAKR,MAAQkF,KAAKC,IAAI3E,EAAKR,MAAOQ,EAAKyE,YACnD,mBAAnBzE,GAAK4E,aAA2B5E,EAAKN,OAASgF,KAAKC,IAAI3E,EAAKN,OAAQM,EAAK4E,aACvD,mBAAlB5E,GAAK6E,YAA0B7E,EAAKR,MAAQkF,KAAKzE,IAAID,EAAKR,MAAOQ,EAAK6E,YACnD,mBAAnB7E,GAAK8E,aAA2B9E,EAAKN,OAASgF,KAAKzE,IAAID,EAAKN,OAAQM,EAAK8E,aAEpF9E,EAAK+E,MAAQrD,EACb1B,EAAKoD,QAAS,EAEVpD,EAAK4D,cAAe,CACpB7B,KAAKS,aAEL,KAAK,GAAIa,GAAI,KAAOA,EAAG,CACnB,GAAI9D,GAAI8D,EAAItB,KAAKvC,MAAOC,EAAIiF,KAAKM,MAAM3B,EAAItB,KAAKvC,MAChD,MAAID,EAAIS,EAAKR,MAAQuC,KAAKvC,OAGrBT,EAAE4D,KAAKZ,KAAKnC,MAAO,SAAUQ,GAC9B,MAAOjB,GAAMC,gBAAgBG,EAAGA,EAAGE,EAAGA,EAAGD,MAAOQ,EAAKR,MAAOE,OAAQM,EAAKN,QAASU,MAClF,CACAJ,EAAKT,EAAIA,EACTS,EAAKP,EAAIA,CACT,SAUZ,MALAsC,MAAKnC,MAAMqF,KAAKjF,GAEhB+B,KAAKQ,gBAAgBvC,GACrB+B,KAAKM,cACLN,KAAKO,UACEtC,GAGX2B,EAAgBO,UAAUgD,YAAc,SAAUlF,GAC9CA,EAAK+E,IAAM,KACXhD,KAAKnC,MAAQb,EAAEoG,QAAQpD,KAAKnC,MAAOI,GACnC+B,KAAKM,cACLN,KAAKO,QAAQtC,IAGjB2B,EAAgBO,UAAUkD,cAAgB,SAAUpF,EAAMT,EAAGE,EAAGD,EAAOE,GACnE,GAAIgD,GAAajB,QAAQ1C,EAAE4D,KAAKZ,KAAKnC,MAAO,SAAUQ,GAAK,MAAOA,GAAEwC,SAEpE,KAAKb,KAAKrC,SAAWgD,EACjB,OAAO,CAEX,IAAI2C,GACAC,EAAQ,GAAI3D,GACZI,KAAKvC,MACL,KACAuC,KAAAA,SACA,EACAhD,EAAEgB,IAAIgC,KAAKnC,MAAO,SAAUQ,GAAK,MAAIA,IAAKJ,EAAQqF,EAAcrG,EAAEuG,UAAWnF,GAAiCpB,EAAEuG,UAAWnF,KAE/HkF,GAAMxC,UAAUuC,EAAa9F,EAAGE,EAAGD,EAAOE,EAE1C,IAAI8F,IAAM,CAOV,OALI9C,KACA8C,IAAQ/D,QAAQ1C,EAAE4D,KAAK2C,EAAM1F,MAAO,SAAUQ,GAAK,MAAOA,IAAKiF,GAAe5D,QAAQrB,EAAEwC,SAAWnB,QAAQrB,EAAEgD,YAC7GrB,KAAKrC,SACL8F,GAAOF,EAAMG,mBAAqB1D,KAAKrC,QAEpC8F,GAGX7D,EAAgBO,UAAUwD,qCAAuC,SAAU1F,GACvE,IAAK+B,KAAKrC,OACN,OAAO,CAEX,IAAI4F,GAAQ,GAAI3D,GACZI,KAAKvC,MACL,KACAuC,KAAAA,SACA,EACAhD,EAAEgB,IAAIgC,KAAKnC,MAAO,SAAUQ,GAAK,MAAOpB,GAAEuG,UAAWnF,KAEzD,OADAkF,GAAMd,SAASxE,GACRsF,EAAMG,mBAAqB1D,KAAKrC,QAG3CiC,EAAgBO,UAAUY,UAAY,SAAU9C,EAAMT,EAAGE,EAAGD,EAAOE,EAAQiG,GAWvE,GAVgB,gBAALpG,KAAeA,EAAIS,EAAKT,GACnB,gBAALE,KAAeA,EAAIO,EAAKP,GACf,gBAATD,KAAmBA,EAAQQ,EAAKR,OACtB,gBAAVE,KAAoBA,EAASM,EAAKN,QAEhB,mBAAlBM,GAAKyE,YAA0BjF,EAAQkF,KAAKC,IAAInF,EAAOQ,EAAKyE,YACzC,mBAAnBzE,GAAK4E,aAA2BlF,EAASgF,KAAKC,IAAIjF,EAAQM,EAAK4E,aAC7C,mBAAlB5E,GAAK6E,YAA0BrF,EAAQkF,KAAKzE,IAAIT,EAAOQ,EAAK6E,YACzC,mBAAnB7E,GAAK8E,aAA2BpF,EAASgF,KAAKzE,IAAIP,EAAQM,EAAK8E,aAEtE9E,EAAKT,GAAKA,GAAKS,EAAKP,GAAKA,GAAKO,EAAKR,OAASA,GAASQ,EAAKN,QAAUA,EACpE,MAAOM,EAGX,IAAIyD,GAAWzD,EAAKR,OAASA,CAe7B,OAdAQ,GAAKoD,QAAS,EAEdpD,EAAKT,EAAIA,EACTS,EAAKP,EAAIA,EACTO,EAAKR,MAAQA,EACbQ,EAAKN,OAASA,EAEdM,EAAO+B,KAAKyB,cAAcxD,EAAMyD,GAEhC1B,KAAKQ,gBAAgBvC,GAChB2F,IACD5D,KAAKM,cACLN,KAAKO,WAEFtC,GAGX2B,EAAgBO,UAAUuD,gBAAkB,WACxC,MAAO1G,GAAE6G,OAAO7D,KAAKnC,MAAO,SAAUiG,EAAMzF,GAAK,MAAOsE,MAAKzE,IAAI4F,EAAMzF,EAAEX,EAAIW,EAAEV,SAAY,IAG/FiC,EAAgBO,UAAU4D,aAAe,SAAU9F,GAC/CjB,EAAEgE,KAAKhB,KAAKnC,MAAO,SAAUQ,GACzBA,EAAE6C,QAAU7C,EAAEX,IAElBO,EAAKgD,WAAY,GAGrBrB,EAAgBO,UAAU6D,WAAa,WACnC,GAAI3F,GAAIrB,EAAE4D,KAAKZ,KAAKnC,MAAO,SAAUQ,GAAK,MAAOA,GAAE4C,WAC/C5C,KACAA,EAAE4C,WAAY,GAItB,IAAIgD,GAAY,SAAUC,EAAIC,GAC1B,GAAiBC,GAAbC,EAAOrE,IAoDX,IAlDAA,KAAKsE,UAAYrH,EAAEiH,GAEnBlE,KAAKmE,KAAOnH,EAAE2E,SAASwC,OACnB1G,MAAOmE,SAAS5B,KAAKsE,UAAUC,KAAK,mBAAqB,GACzD5G,OAAQiE,SAAS5B,KAAKsE,UAAUC,KAAK,oBAAsB,EAC3DC,WAAY,kBACZC,kBAAmB,yBACnBC,OAAQ,2BACRC,YAAa,GACbC,gBAAiB,GACjBC,MAAM,EACN/B,UAAW,IACXhD,SAAO,EACPgF,OAAQ,eAAiC,IAAhBnC,KAAKoC,UAAkBC,QAAQ,GACxDC,QAASvF,QAAQM,KAAKsE,UAAUC,KAAK,sBAAuB,EAC5DW,0BAA2Bf,EAAKe,4BAA6B,EAC7DC,UAAWnI,EAAE2E,SAASwC,EAAKgB,eACvBC,UAAYjB,EAAKe,0BACjBG,QAAS,OAEbC,UAAWtI,EAAE2E,SAASwC,EAAKmB,eACvBZ,OAAQ,2BACRa,QAAQ,EACRC,SAAU,WAIlBxF,KAAKsE,UAAUmB,SAASzF,KAAKmE,KAAKW,QAClC9E,KAAK0F,QAAUtI,EAAMkB,oBACD,MAAhB0B,KAAK0F,UACL1F,KAAK0F,QAAQC,KAAO,GAExB3F,KAAK4F,KAAO,GAAIhG,GAAgBI,KAAKmE,KAAK1G,MAAO,SAAUI,GACvD,GAAIgF,GAAa,CACjB7F,GAAEgE,KAAKnD,EAAO,SAAUQ,GACP,MAATA,EAAE2E,IACF3E,EAAE6F,GAAG2B,UAGLxH,EAAE6F,GACGK,KAAK,YAAalG,EAAEb,GACpB+G,KAAK,YAAalG,EAAEX,GACpB6G,KAAK,gBAAiBlG,EAAEZ,OACxB8G,KAAK,iBAAkBlG,EAAEV,QAC9BkF,EAAaF,KAAKzE,IAAI2E,EAAYxE,EAAEX,EAAIW,EAAEV,WAGlD0G,EAAKyB,eAAejD,EAAa,KAClC7C,KAAKmE,KAALnE,SAAiBA,KAAKmE,KAAKxG,QAE1BqC,KAAKmE,KAAKU,KAAM,CAChB,GAAIkB,KACJ/F,MAAKsE,UAAU1D,KAAK,IAAMZ,KAAKmE,KAAKK,YAAYxD,KAAK,SAAU5B,EAAO8E,GAClEA,EAAKjH,EAAEiH,GACP6B,EAAS7C,MACLgB,GAAIA,EACJ5C,EAAGM,SAASsC,EAAGK,KAAK,cAAgB3C,SAASsC,EAAGK,KAAK,cAAgB3C,SAASsC,EAAGK,KAAK,sBAG9FvH,EAAEe,MAAMgI,GAAU3H,OAAO,SAAUZ,GAAK,MAAOA,GAAE8D,IAAMN,KAAK,SAAUM,GAClE+C,EAAK2B,iBAAiB1E,EAAE4C,MAIhClE,KAAKiG,cAAcjG,KAAKmE,KAAKc,SAE7BjF,KAAKkG,YAAcjJ,EAAE,eAAiB+C,KAAKmE,KAAKM,kBAAoB,IAAMzE,KAAKmE,KAAKK,WAAa,+CAA+C2B,OAChJnG,KAAKsE,UAAU8B,OAAOpG,KAAKkG,aAC3BlG,KAAKsE,UAAU3G,OAAQqC,KAAK4F,KAAKlC,mBAAsB1D,KAAKmE,KAAKQ,YAAc3E,KAAKmE,KAAKS,iBAAmB5E,KAAKmE,KAAKS,gBAEtH,IAAIyB,GAAoB,WACpB,GAAIhC,EAAKiC,sBAAuB,CAC5B,GAAIlC,EACA,MAEJA,IAAkB,EAElBC,EAAKuB,KAAKnF,cACVzD,EAAEgE,KAAKqD,EAAKuB,KAAK/H,MAAO,SAAUI,GAC9BoG,EAAKC,UAAU8B,OAAOnI,EAAKiG,IAEtBjG,EAAK8D,SACN9D,EAAKiG,GAAGoB,UAAU,WAEjBrH,EAAK6D,WACN7D,EAAKiG,GAAGiB,UAAU,iBAIzB,CACD,IAAKf,EACD,MAEJA,IAAkB,EAElBpH,EAAEgE,KAAKqD,EAAKuB,KAAK/H,MAAO,SAAUI,GACzBA,EAAK8D,SACN9D,EAAKiG,GAAGoB,UAAU,UAEjBrH,EAAK6D,WACN7D,EAAKiG,GAAGiB,UAAU,aAMlClI,GAAEE,QAAQoJ,OAAOF,GACjBA,IA+WJ,OA5WApC,GAAU9D,UAAU2F,eAAiB,SAAUjD,GAC3C,GAAoB,MAAhB7C,KAAK0F,QAAT,CAIA,GAAIc,GAAS,IAAMxG,KAAKmE,KAAKW,OAAS,KAAO9E,KAAKmE,KAAKK,UAEvD,IAAyB,mBAAd3B,GAA2B,CAClCA,EAAa7C,KAAK0F,QAAQC,KAC1B3F,KAAK0F,QAAQC,KAAO,CACpB,IAAIc,GAAI,YAKR,KAJuC,kBAA5BzG,MAAK0F,QAAQgB,WACpBD,EAAIzG,KAAK0F,QAAQgB,WACuB,kBAA5B1G,MAAK0F,QAAQiB,aACzBF,EAAIzG,KAAK0F,QAAQiB,YACd3G,KAAK0F,QAAQvG,MAAMyH,QACtBH,EAAEtE,KAAKnC,KAAK0F,QAAS,EAEzB1F,MAAK6G,2BAOT,GAJyB,GAArB7G,KAAK0F,QAAQC,MACbvI,EAAM6B,gBAAgBe,KAAK0F,QAASc,EAAQ,eAAkBxG,KAAKmE,KAAgB,YAAI,MAAO,GAG9FtB,EAAa7C,KAAK0F,QAAQC,KAAM,CAChC,IAAK,GAAIrE,GAAItB,KAAK0F,QAAQC,KAAU9C,EAAJvB,IAAkBA,EAC9ClE,EAAM6B,gBAAgBe,KAAK0F,QACvBc,EAAS,qBAAuBlF,EAAI,GAAK,KACzC,YAActB,KAAKmE,KAAKQ,aAAerD,EAAI,GAAKtB,KAAKmE,KAAKS,gBAAkBtD,GAAK,MACjFA,GAEJlE,EAAM6B,gBAAgBe,KAAK0F,QACvBc,EAAS,yBAA2BlF,EAAI,GAAK,KAC7C,gBAAkBtB,KAAKmE,KAAKQ,aAAerD,EAAI,GAAKtB,KAAKmE,KAAKS,gBAAkBtD,GAAK,MACrFA,GAEJlE,EAAM6B,gBAAgBe,KAAK0F,QACvBc,EAAS,yBAA2BlF,EAAI,GAAK,KAC7C,gBAAkBtB,KAAKmE,KAAKQ,aAAerD,EAAI,GAAKtB,KAAKmE,KAAKS,gBAAkBtD,GAAK,MACrFA,GAEJlE,EAAM6B,gBAAgBe,KAAK0F,QACvBc,EAAS,eAAiBlF,EAAI,KAC9B,SAAWtB,KAAKmE,KAAKQ,YAAcrD,EAAItB,KAAKmE,KAAKS,gBAAkBtD,GAAK,MACxEA,EAGRtB,MAAK0F,QAAQC,KAAO9C,KAI5BoB,EAAU9D,UAAU0G,yBAA2B,WACvC7G,KAAK4F,KAAK3F,iBAGdD,KAAKsE,UAAU3G,OAAOqC,KAAK4F,KAAKlC,mBAAqB1D,KAAKmE,KAAKQ,YAAc3E,KAAKmE,KAAKS,iBAAmB5E,KAAKmE,KAAKS,kBAGxHX,EAAU9D,UAAUmG,oBAAsB,WACtC,MAAOrJ,GAAEE,QAAQM,SAAWuC,KAAKmE,KAAKrB,WAG1CmB,EAAU9D,UAAU6F,iBAAmB,SAAU9B,GAC7C,GAAIG,GAAOrE,IACXkE,GAAKjH,EAAEiH,GAEPA,EAAGuB,SAASzF,KAAKmE,KAAKK,WAEtB,IAAIvG,GAAOoG,EAAKuB,KAAKnD,UACjBjF,EAAG0G,EAAGK,KAAK,aACX7G,EAAGwG,EAAGK,KAAK,aACX9G,MAAOyG,EAAGK,KAAK,iBACf5G,OAAQuG,EAAGK,KAAK,kBAChB7B,UAAWwB,EAAGK,KAAK,qBACnBzB,UAAWoB,EAAGK,KAAK,qBACnB1B,WAAYqB,EAAGK,KAAK,sBACpBxB,WAAYmB,EAAGK,KAAK,sBACpB1C,cAAezE,EAAMmC,OAAO2E,EAAGK,KAAK,0BACpCzC,UAAW1E,EAAMmC,OAAO2E,EAAGK,KAAK,sBAChCxC,QAAS3E,EAAMmC,OAAO2E,EAAGK,KAAK,oBAC9B1D,OAAQzD,EAAMmC,OAAO2E,EAAGK,KAAK,mBAC7BL,GAAIA,GAERA,GAAG4C,KAAK,kBAAmB7I,EAE3B,IAAI8I,GAAYpC,EAEZqC,EAAkB,WAClB,GAAIC,GAAIhK,EAAE+C,KACVqE,GAAKuB,KAAKrD,cACV8B,EAAKuB,KAAK7B,aAAa9F,GACvB8I,EAAapE,KAAKuE,KAAKD,EAAEE,aAAeF,EAAE1C,KAAK,kBAC/CI,EAAcN,EAAKF,KAAKQ,YAAcN,EAAKF,KAAKS,gBAChDP,EAAK6B,YACA3B,KAAK,YAAa0C,EAAE1C,KAAK,cACzBA,KAAK,YAAa0C,EAAE1C,KAAK,cACzBA,KAAK,gBAAiB0C,EAAE1C,KAAK,kBAC7BA,KAAK,iBAAkB0C,EAAE1C,KAAK,mBAC9B6C,OACLnJ,EAAKiG,GAAKG,EAAK6B,aAGfmB,EAAgB,WAChB,GAAIJ,GAAIhK,EAAE+C,KACV/B,GAAKiG,GAAK+C,EACV5C,EAAK6B,YAAYC,OACjBc,EACK1C,KAAK,YAAatG,EAAKT,GACvB+G,KAAK,YAAatG,EAAKP,GACvB6G,KAAK,gBAAiBtG,EAAKR,OAC3B8G,KAAK,iBAAkBtG,EAAKN,QAC5B2J,WAAW,SAChBjD,EAAKwC,2BACLxC,EAAKC,UAAUiD,QAAQ,UAAWlD,EAAKuB,KAAKtD,oBAE5C+B,EAAKuB,KAAK5B,aAGdE,GAAGoB,UAAUtI,EAAEwG,OAAOxD,KAAKmE,KAAKmB,WAC5BkC,MAAOR,EACPS,KAAMJ,EACNK,KAAM,SAAUC,EAAOC,GACnB,GAAIpK,GAAImF,KAAKkF,MAAMD,EAAGE,SAASC,KAAOhB,GAClCrJ,EAAIiF,KAAKM,OAAO2E,EAAGE,SAASE,IAAMrD,EAAY,GAAKA,EAClDN,GAAKuB,KAAKvC,cAAcpF,EAAMT,EAAGE,EAAGO,EAAKR,MAAOQ,EAAKN,UAG1D0G,EAAKuB,KAAK7E,UAAU9C,EAAMT,EAAGE,GAC7B2G,EAAKwC,gCAET1B,UAAUnI,EAAEwG,OAAOxD,KAAKmE,KAAKgB,WAC7BqC,MAAOR,EACPS,KAAMJ,EACNd,OAAQ,SAAUoB,EAAOC,GACrB,GAAIpK,GAAImF,KAAKkF,MAAMD,EAAGE,SAASC,KAAOhB,GAClCrJ,EAAIiF,KAAKM,OAAO2E,EAAGE,SAASE,IAAMrD,EAAY,GAAKA,GACnDlH,EAAQkF,KAAKkF,MAAMD,EAAGK,KAAKxK,MAAQsJ,GACnCpJ,EAASgF,KAAKkF,MAAMD,EAAGK,KAAKtK,OAASgH,EACpCN,GAAKuB,KAAKvC,cAAcpF,EAAMT,EAAGE,EAAGD,EAAOE,KAGhD0G,EAAKuB,KAAK7E,UAAU9C,EAAMT,EAAGE,EAAGD,EAAOE,GACvC0G,EAAKwC,iCAIT5I,EAAK8D,SAAW/B,KAAKsG,wBACrBpC,EAAGoB,UAAU,YAGbrH,EAAK6D,WAAa9B,KAAKsG,wBACvBpC,EAAGiB,UAAU,WAGjBjB,EAAGK,KAAK,iBAAkBtG,EAAK4C,OAAS,MAAQ,OAGpDoD,EAAU9D,UAAU8F,cAAgB,SAAUiC,GACtCA,EACAlI,KAAKsE,UAAUmB,SAAS,sBAGxBzF,KAAKsE,UAAU6D,YAAY,uBAInClE,EAAU9D,UAAUiI,WAAa,SAAUlE,EAAI1G,EAAGE,EAAGD,EAAOE,EAAQkE,GAWhE,MAVAqC,GAAKjH,EAAEiH,GACS,mBAAL1G,IAAkB0G,EAAGK,KAAK,YAAa/G,GAClC,mBAALE,IAAkBwG,EAAGK,KAAK,YAAa7G,GAC9B,mBAATD,IAAsByG,EAAGK,KAAK,gBAAiB9G,GACrC,mBAAVE,IAAuBuG,EAAGK,KAAK,iBAAkB5G,GAChC,mBAAjBkE,IAA8BqC,EAAGK,KAAK,wBAAyB1C,EAAgB,MAAQ,MAClG7B,KAAKsE,UAAU8B,OAAOlC,GACtBlE,KAAKgG,iBAAiB9B,GACtBlE,KAAK6G,2BAEE3C,GAGXD,EAAU9D,UAAUkI,YAAc,SAAU7K,EAAGE,EAAGD,EAAOE,EAAQkE,GAC7D,GAAI5D,IAAQT,EAAGA,EAAGE,EAAGA,EAAGD,MAAOA,EAAOE,OAAQA,EAAQkE,cAAeA,EACrE,OAAO7B,MAAK4F,KAAKjC,qCAAqC1F,IAG1DgG,EAAU9D,UAAUmI,cAAgB,SAAUpE,GAC1CA,EAAKjH,EAAEiH,EACP,IAAIjG,GAAOiG,EAAG4C,KAAK,kBACnB9G,MAAK4F,KAAKzC,YAAYlF,GACtBiG,EAAG2B,SACH7F,KAAK6G,4BAGT5C,EAAU9D,UAAUoI,WAAa,WAC7BvL,EAAEgE,KAAKhB,KAAK4F,KAAK/H,MAAO,SAAUI,GAC9BA,EAAKiG,GAAG2B,WAEZ7F,KAAK4F,KAAK/H,SACVmC,KAAK6G,4BAGT5C,EAAU9D,UAAUgF,UAAY,SAAUjB,EAAIsE,GAiB1C,MAhBAtE,GAAKjH,EAAEiH,GACPA,EAAGlD,KAAK,SAAU5B,EAAO8E,GACrBA,EAAKjH,EAAEiH,EACP,IAAIjG,GAAOiG,EAAG4C,KAAK,kBACA,oBAAR7I,KAIXA,EAAK6D,WAAc0G,EAEftE,EAAGiB,UADHlH,EAAK6D,UACQ,UAGA,aAGd9B,MAGXiE,EAAU9D,UAAUsI,QAAU,SAAUvE,EAAIsE,GAiBxC,MAhBAtE,GAAKjH,EAAEiH,GACPA,EAAGlD,KAAK,SAAU5B,EAAO8E,GACrBA,EAAKjH,EAAEiH,EACP,IAAIjG,GAAOiG,EAAG4C,KAAK,kBACA,oBAAR7I,KAIXA,EAAK8D,SAAYyG,EAEbtE,EAAGoB,UADHrH,EAAK8D,QACQ,UAGA,aAGd/B,MAGXiE,EAAU9D,UAAUuI,QAAU,WAC1B1I,KAAKyI,QAAQzI,KAAKsE,UAAU1D,KAAK,IAAMZ,KAAKmE,KAAKK,aAAa,GAC9DxE,KAAKmF,UAAUnF,KAAKsE,UAAU1D,KAAK,IAAMZ,KAAKmE,KAAKK,aAAa,IAGpEP,EAAU9D,UAAU+H,OAAS,WACzBlI,KAAKyI,QAAQzI,KAAKsE,UAAU1D,KAAK,IAAMZ,KAAKmE,KAAKK,aAAa,GAC9DxE,KAAKmF,UAAUnF,KAAKsE,UAAU1D,KAAK,IAAMZ,KAAKmE,KAAKK,aAAa,IAGpEP,EAAU9D,UAAUU,OAAS,SAAUqD,EAAIsE,GAYvC,MAXAtE,GAAKjH,EAAEiH,GACPA,EAAGlD,KAAK,SAAU5B,EAAO8E,GACrBA,EAAKjH,EAAEiH,EACP,IAAIjG,GAAOiG,EAAG4C,KAAK,kBACA,oBAAR7I,KAIXA,EAAK4C,OAAU2H,IAAO,EACtBtE,EAAGK,KAAK,iBAAkBtG,EAAK4C,OAAS,MAAQ,SAE7Cb,MAGXiE,EAAU9D,UAAUwI,gBAAkB,SAAUzE,EAAI0E,GAChD1E,EAAKjH,EAAEiH,GAAI1C,OACX,IAAIvD,GAAOiG,EAAG4C,KAAK,kBACnB,IAAmB,mBAAR7I,GAAX,CAIA,GAAIoG,GAAOrE,IAEXqE,GAAKuB,KAAKrD,cACV8B,EAAKuB,KAAK7B,aAAa9F,GAEvB2K,EAASzG,KAAKnC,KAAMkE,EAAIjG,GAExBoG,EAAKwC,2BACLxC,EAAKC,UAAUiD,QAAQ,UAAWlD,EAAKuB,KAAKtD,oBAE5C+B,EAAKuB,KAAK5B,eAGdC,EAAU9D,UAAUoG,OAAS,SAAUrC,EAAIzG,EAAOE,GAC9CqC,KAAK2I,gBAAgBzE,EAAI,SAAUA,EAAIjG,GACnCR,EAAkB,MAATA,GAAiC,mBAATA,GAAwBA,EAAQQ,EAAKR,MACtEE,EAAoB,MAAVA,GAAmC,mBAAVA,GAAyBA,EAASM,EAAKN,OAE1EqC,KAAK4F,KAAK7E,UAAU9C,EAAMA,EAAKT,EAAGS,EAAKP,EAAGD,EAAOE,MAIzDsG,EAAU9D,UAAU0I,KAAO,SAAU3E,EAAI1G,EAAGE,GACxCsC,KAAK2I,gBAAgBzE,EAAI,SAAUA,EAAIjG,GACnCT,EAAU,MAALA,GAAyB,mBAALA,GAAoBA,EAAIS,EAAKT,EACtDE,EAAU,MAALA,GAAyB,mBAALA,GAAoBA,EAAIO,EAAKP,EAEtDsC,KAAK4F,KAAK7E,UAAU9C,EAAMT,EAAGE,EAAGO,EAAKR,MAAOQ,EAAKN,WAIzDsG,EAAU9D,UAAU2I,OAAS,SAAU5E,EAAI1G,EAAGE,EAAGD,EAAOE,GACpDqC,KAAK2I,gBAAgBzE,EAAI,SAAUA,EAAIjG,GACnCT,EAAU,MAALA,GAAyB,mBAALA,GAAoBA,EAAIS,EAAKT,EACtDE,EAAU,MAALA,GAAyB,mBAALA,GAAoBA,EAAIO,EAAKP,EACtDD,EAAkB,MAATA,GAAiC,mBAATA,GAAwBA,EAAQQ,EAAKR,MACtEE,EAAoB,MAAVA,GAAmC,mBAAVA,GAAyBA,EAASM,EAAKN,OAE1EqC,KAAK4F,KAAK7E,UAAU9C,EAAMT,EAAGE,EAAGD,EAAOE,MAI/CsG,EAAU9D,UAAUwE,YAAc,SAAU6D,GACxC,MAAkB,mBAAPA,GACAxI,KAAKmE,KAAKQ,aAErB6D,EAAM5G,SAAS4G,QACXA,GAAOxI,KAAKmE,KAAKQ,cAErB3E,KAAKmE,KAAKQ,YAAc6D,GAAOxI,KAAKmE,KAAKQ,YACzC3E,KAAK8F,qBAGT7B,EAAU9D,UAAU4G,WAAa,WAC7B,GAAIE,GAAIjH,KAAKsE,UAAU1D,KAAK,IAAMZ,KAAKmE,KAAKK,YAAYhD,OACxD,OAAOmB,MAAKuE,KAAKD,EAAEE,aAAeF,EAAE1C,KAAK,mBAG7CN,EAAU9D,UAAU4I,oBAAsB,SAASjB,GAC/C,GAAIkB,GAAehJ,KAAKsE,UAAUwD,WAC9BmB,EAAenB,EAASC,KAAOiB,EAAajB,KAC5CmB,EAAcpB,EAASE,IAAMgB,EAAahB,IAE1CmB,EAAexG,KAAKM,MAAMjD,KAAKsE,UAAU7G,QAAUuC,KAAKmE,KAAK1G,OAC7D2L,EAAapJ,KAAKmE,KAAKQ,YAAc3E,KAAKmE,KAAKS,eAEnD,QAAQpH,EAAGmF,KAAKM,MAAMgG,EAAeE,GAAezL,EAAGiF,KAAKM,MAAMiG,EAAcE,KAGpFnF,EAAU9D,UAAUC,aAAe,WAC/BJ,KAAK4F,KAAKxF,gBAGd6D,EAAU9D,UAAUE,OAAS,WACzBL,KAAK4F,KAAKvF,SACVL,KAAK6G,4BAGT3J,EAAMmM,YAAcpF,EAEpB/G,EAAMmM,YAAYjM,MAAQA,EAE1BH,EAAEqM,GAAGC,UAAY,SAAUpF,GACvB,MAAOnE,MAAKgB,KAAK,WACR/D,EAAE+C,MAAM8G,KAAK,cACd7J,EAAE+C,MAAM8G,KAAK,YAAa,GAAI7C,GAAUjE,KAAMmE,OAKnDjH,EAAMmM"} \ No newline at end of file +{"version":3,"file":"dist/gridstack.min.js","sources":["src/gridstack.js"],"names":["factory","define","amd","jQuery","_","$","scope","window","Utils","is_intercepted","a","b","x","width","y","height","sort","nodes","dir","chain","map","node","max","value","sortBy","n","create_stylesheet","id","style","document","createElement","setAttribute","styleSheet","cssText","appendChild","createTextNode","getElementsByTagName","sheet","insert_css_rule","selector","rules","index","insertRule","addRule","toBool","v","toLowerCase","Boolean","id_seq","GridStackEngine","onchange","float","items","this","_update_counter","_float","prototype","batch_update","commit","_pack_nodes","_notify","_fix_collisions","_sort_nodes","nn","has_locked","find","locked","collision_node","move_node","each","_updating","_orig_y","new_y","bn","_dirty","i","can_be_moved","first","_prepare_node","resizing","defaults","parseInt","auto_position","no_resize","no_move","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","resizable","autoHide","handles","draggable","scroll","appendTo","addClass","_init_styles","grid","remove","_update_styles","elements","_prepare_element","set_animation","placeholder","hide","append","on_resize_handler","_is_one_column_mode","resize","_styles_id","_styles","_max","prefix","_update_container_height","data","cell_width","on_start_moving","o","ceil","outerWidth","show","on_end_moving","removeAttr","trigger","start","stop","drag","event","ui","round","position","left","top","size","enable","removeClass","add_widget","will_it_fit","remove_widget","remove_all","val","movable","disable","_update_element","callback","move","update","get_cell_from_pixel","containerPos","relativeLeft","relativeTop","column_width","row_height","GridStackUI","fn","gridstack"],"mappings":"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"} \ No newline at end of file diff --git a/src/gridstack.js b/src/gridstack.js index b2e9041..e5f0baf 100644 --- a/src/gridstack.js +++ b/src/gridstack.js @@ -25,9 +25,10 @@ return _.sortBy(nodes, function (n) { return dir * (n.x + n.y * width); }); }, - create_stylesheet: function () { + create_stylesheet: function (id) { var style = document.createElement("style"); style.setAttribute("type", "text/css"); + style.setAttribute("data-gs-id", id); if (style.styleSheet) { style.styleSheet.cssText = ""; } @@ -387,9 +388,7 @@ }); this.container.addClass(this.opts._class); - this._styles = Utils.create_stylesheet(); - if (this._styles != null) - this._styles._max = 0; + this._init_styles(); this.grid = new GridStackEngine(this.opts.width, function (nodes) { var max_height = 0; @@ -469,6 +468,16 @@ on_resize_handler(); }; + GridStack.prototype._init_styles = function () { + if (this._styles_id) { + $('[data-gs-id="' + this._styles_id + '"]').remove(); + } + this._styles_id = 'gridstack-style-' + (Math.random() * 100000).toFixed(); + this._styles = Utils.create_stylesheet(this._styles_id); + if (this._styles != null) + this._styles._max = 0; + }; + GridStack.prototype._update_styles = function (max_height) { if (this._styles == null) { return; @@ -478,15 +487,7 @@ if (typeof max_height == 'undefined') { max_height = this._styles._max; - this._styles._max = 0; - var f = function () {}; - if (typeof this._styles.removeRule === 'function') - f = this._styles.removeRule; - else if (typeof this._styles.deleteRule === 'function') - f = this._styles.deleteRule; - while (this._styles.rules.length) { - f.call(this._styles, 0); - } + this._init_styles(); this._update_container_height(); }