/
githubmirror
/
drawio
Обзор
Документация
Войти
/
githubmirror
/
drawio
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
src/main/webapp/js/orgchart.min.js
34 строки
539 KB
David Benson
24.8.6 release
19 ноя 2024, 18:35
19 ноя 2024, 18:35
da24488
Код
Авторство
О чём код?
/** * @version : 15.6.0 - Bridge.NET * @author : Object.NET, Inc. http://bridge.net/ * @date : 2016-12-12 * @copyright : Copyright 2008-2016 Object.NET, Inc. http://object.net/ * @license : See license.txt and https://github.com/bridgedotnet/Bridge/blob/master/LICENSE.md */ (function(n){"use strict";var bt={global:n,emptyFn:function(){},identity:function(n){return n},geti:function(n,t,i){return Bridge.hasValue(n[t])?t:i},literal:function(n,t){return t.$getType=function() … [Строка слишком длинная. Вы можете скачать файл] Bridge.assembly("Bridge.Collections",function(){"use strict";Bridge.define("System.Collections.BitArray",{inherits:[System.Collections.ICollection,System.ICloneable],statics:{BitsPerInt32:32,BytesPerI … [Строка слишком длинная. Вы можете скачать файл] Bridge.assembly("OrgChart.Layout",function($asm){"use strict";Bridge.define("OrgChart.Annotations.CanBeNullAttribute",{inherits:[System.Attribute]});Bridge.define("OrgChart.Annotations.ContractAnnotat … [Строка слишком длинная. Вы можете скачать файл] function mxOrgChartLayout(b,a,h,d){mxGraphLayout.call(this,b);this.correctY=!1;switch(parseInt(a)){case 0:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_LINEAR;this.correctY=!0;break;case 1:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_HANGER2;this.correctY=!0;break;case 3:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_FISHBONE1;break;case 4:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_FISHBONE2;break;case 5:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_1COLUMN_L; break;case 6:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_1COLUMN_R;break;case 7:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_SMART;break;default:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_HANGER4,this.correctY=!0}this.parentChildSpacing=0<h?h:20;this.siblingSpacing=0<d?d:20}mxOrgChartLayout.prototype=new mxGraphLayout;mxOrgChartLayout.prototype.constructor=mxOrgChartLayout;mxOrgChartLayout.prototype.BRANCH_OPT_LINEAR="branchOptimizerAllLinear"; mxOrgChartLayout.prototype.BRANCH_OPT_HANGER2="branchOptimizerAllHanger2";mxOrgChartLayout.prototype.BRANCH_OPT_HANGER4="branchOptimizerAllHanger4";mxOrgChartLayout.prototype.BRANCH_OPT_FISHBONE1="branchOptimizerAllFishbone1";mxOrgChartLayout.prototype.BRANCH_OPT_FISHBONE2="branchOptimizerAllFishbone2";mxOrgChartLayout.prototype.BRANCH_OPT_1COLUMN_L="branchOptimizerAllSingleColumnLeft";mxOrgChartLayout.prototype.BRANCH_OPT_1COLUMN_R="branchOptimizerAllSingleColumnRight"; mxOrgChartLayout.prototype.BRANCH_OPT_SMART="branchOptimizerSmart";mxOrgChartLayout.prototype.execute=function(b){this.graph.model.beginUpdate();try{RPOrgChart.main(this.graph,b,this.branchOptimizer,this.parentChildSpacing,this.siblingSpacing,this.correctY)}finally{this.graph.model.endUpdate()}}; Bridge.define("RPOrgChart",{statics:{config:{init:function(){}},main:function(b,a,h,d,x,u){Bridge.Console.log=console.log;Bridge.Console.error=console.error;Bridge.Console.debug=console.debug;RPOrgChart.graph=b;RPOrgChart.parent=a;RPOrgChart.dx=0;RPOrgChart.dy=0;"group"==a.style&&a.geometry&&(RPOrgChart.dx=a.geometry.x,RPOrgChart.dy=a.geometry.y);RPOrgChart.branchOptimizer=h;RPOrgChart.correctY=u;RPOrgChart.parentChildSpacing=parseInt(d);RPOrgChart.siblingSpacing=parseInt(x);RPOrgChart.buildChart(!0)}, diagram:{},dataSource:{},buildChart:function(b){b&&RPOrgChart.initDiagram();RPOrgChart.positionBoxes()},collapseAllBoxes:function(b,a){for(b=b.getBoxesById().getValues().getEnumerator();b.moveNext();){var h=b.getCurrent();h.IsSpecial||(h.IsCollapsed=a)}},generateData:function(){for(var b=new OrgChart.Test.TestDataSource,a=RPOrgChart.graph,h=a.getChildVertices(RPOrgChart.parent),d=0;d<h.length;d++){var x=h[d];if(null!=x.geometry&&x.vertex&&x.parent==RPOrgChart.parent){var u=null,f=a.getIncomingEdges(x)[0]; null!=f&&null!=f.source&&(u=f.source.id);f=new OrgChart.Test.TestDataItem;f.Id=x.id;f.ParentId=u;b.Items.add(f.getId(),f)}}return b},initDiagram:function(){var b=RPOrgChart.generateData();RPOrgChart.dataSource=b;var a=new OrgChart.Layout.BoxContainer.$ctor1(b);RPOrgChart.diagram=new OrgChart.Layout.Diagram;b=RPOrgChart.diagram;b.setBoxes(a);a=new OrgChart.Layout.LinearLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.Center;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing= RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("linear",a);a=new OrgChart.Layout.MultiLineHangerLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.Center;a.MaxSiblingsPerRow=2;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("hanger2",a);a=new OrgChart.Layout.MultiLineHangerLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.Center;a.MaxSiblingsPerRow=4;a.ParentChildSpacing= RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("hanger4",a);a=new OrgChart.Layout.SingleColumnLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.Right;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("singleColumnRight",a);a=new OrgChart.Layout.SingleColumnLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.Left;a.ParentChildSpacing= RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("singleColumnLeft",a);a=new OrgChart.Layout.MultiLineFishboneLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.Center;a.MaxGroups=1;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("fishbone1",a);a=new OrgChart.Layout.MultiLineFishboneLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.Center; a.MaxGroups=2;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("fishbone2",a);a=new OrgChart.Layout.StackingLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.InvalidValue;a.Orientation=OrgChart.Layout.StackOrientation.SingleRowHorizontal;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("hstack",a);a=new OrgChart.Layout.StackingLayoutStrategy; a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.InvalidValue;a.Orientation=OrgChart.Layout.StackOrientation.SingleColumnVertical;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("vstack",a);a=new OrgChart.Layout.StackingLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.InvalidValue;a.Orientation=OrgChart.Layout.StackOrientation.SingleColumnVertical;a.ParentChildSpacing=RPOrgChart.parentChildSpacing; a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("vstackMiddle",a);a=new OrgChart.Layout.StackingLayoutStrategy;a.ParentAlignment=OrgChart.Layout.BranchParentAlignment.InvalidValue;a.Orientation=OrgChart.Layout.StackOrientation.SingleColumnVertical;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("vstackTop",a);a=new OrgChart.Layout.FishboneAssistantsLayoutStrategy;a.ParentAlignment= OrgChart.Layout.BranchParentAlignment.Center;a.ParentChildSpacing=RPOrgChart.parentChildSpacing;a.SiblingSpacing=RPOrgChart.siblingSpacing;b.LayoutSettings.LayoutStrategies.add("assistants",a);b.LayoutSettings.DefaultLayoutStrategyId="vstack";b.LayoutSettings.DefaultAssistantLayoutStrategyId="assistants"},getBoxLevel:function(b,a){for(var h=0,d={};0<a.ParentId&&b.getBoxesById().tryGetValue(a.ParentId,d);)a=d.v,h++;return h},onLayoutStateChanged:function(b,a){a.State.getCurrentOperation()===OrgChart.Layout.LayoutState.Operation.PreprocessVisualTree&& RPOrgChart.renderBoxes()},renderBoxes:function(){RPOrgChart.diagram.getVisualTree().IterateParentFirst(function(b){var a=b.Element;if(a.getIsDataBound()){if(b.State.IsHidden)return!0;a.Size=RPOrgChart.getBoxElementSize(a.DataId)}return!0})},getBranchOptimizerFunc:function(){return RPOrgChart[RPOrgChart.branchOptimizer]},branchOptimizerAllLinear:function(b){return b.getIsAssistantRoot()?null:"linear"},branchOptimizerAllHanger2:function(b){return b.getIsAssistantRoot()?null:"hanger2"},branchOptimizerAllHanger4:function(b){return b.getIsAssistantRoot()? null:"hanger4"},branchOptimizerAllFishbone1:function(b){return b.getIsAssistantRoot()?null:"fishbone1"},branchOptimizerAllFishbone2:function(b){return b.getIsAssistantRoot()?null:"fishbone2"},branchOptimizerAllSingleColumnLeft:function(b){return b.getIsAssistantRoot()?null:"singleColumnRight"},branchOptimizerAllSingleColumnRight:function(b){return b.getIsAssistantRoot()?null:"singleColumnLeft"},branchOptimizerStackers:function(b){return b.getIsAssistantRoot()?null:0===b.Level?"vstackTop":1===b.Level? "vstackMiddle":"hstack"},branchOptimizerSmart:function(b){if(b.getIsAssistantRoot())return null;var a=b.getChildCount();if(1>=a)return"vstack";for(var h=0,d=0;d<a;d++)0<b.Children.getItem(d).getChildCount()&&h++;return 1>=h?4>=a?"vstack":8>=a?"fishbone1":"fishbone2":"hanger4"},boxSizeFunc:function(b){b=RPOrgChart.diagram.getBoxes().getBoxesByDataId().getItem(b).Id;return RPOrgChart.diagram.getBoxes().getBoxesById().getItem(b).Size},getBoxElementSize:function(b){b=RPOrgChart.graph.model.cells[b].geometry; return new OrgChart.Layout.Size.$ctor1(b.width,b.height)},positionBoxes:function(){var b=RPOrgChart.diagram,a=new OrgChart.Layout.LayoutState(b);a.addOperationChanged(RPOrgChart.onLayoutStateChanged);a.BoxSizeFunc=Bridge.fn.bind(this,RPOrgChart.boxSizeFunc,null,!0);a.LayoutOptimizerFunc=Bridge.fn.bind(this,RPOrgChart.getBranchOptimizerFunc(),null,!0);OrgChart.Layout.LayoutAlgorithm.Apply(a);a=OrgChart.Layout.LayoutAlgorithm.ComputeBranchVisualBoundingRect(b.getVisualTree());var h=-a.getLeft()+a.getTop(), d=RPOrgChart.graph,x=d.model.cells,u=[];b.getVisualTree().IterateParentFirst(function(f){if(f.State.IsHidden)return!1;var B=f.Element;if(B.getIsDataBound()){B=x[B.DataId];var C=B.geometry.clone();C.x=f.State.TopLeft.X+h;C.y=f.State.TopLeft.Y;d.model.setGeometry(B,C)}return!0});b.getVisualTree().IterateParentFirst(function(f){var B=RPOrgChart.correctY?Math.min(0,-(RPOrgChart.parentChildSpacing/2)+5):0;if(null!=f.State.Connector){var C=function(l,m){for(var v=l.geometry.clone(),D=0;m&&D<m.length;D++)m[D].corrected|| (m[D].y+=B,m[D].corrected=!0);v.points=m;d.model.setGeometry(l,v);d.setCellStyles("entryX",null,[l]);d.setCellStyles("entryY",null,[l]);d.setCellStyles("exitX",null,[l]);d.setCellStyles("exitY",null,[l]);d.setCellStyles("edgeStyle","orthogonalEdgeStyle",[l])},I=function(l,m){return m.x>=l.x&&m.x<=l.x+l.width&&m.y>=l.y&&m.y<=l.y+l.height},n=x[f.Element.DataId],k=d.getOutgoingEdges(n);k={};for(var r=0;r<f.State.Connector.Segments.length;r++){var c=f.State.Connector.Segments[r];c.mark=1<<r;c.From.X+= h;c.To.X+=h;var p=c.From.X,t=c.From.Y,z=c.To.X,A=c.To.Y;if(p==z&&t>A||t==A&&p>z){var e=c.From;c.From=c.To;c.To=e}}for(r=0;r<f.State.Connector.Segments.length;r++){c=f.State.Connector.Segments[r];p=c.From.X;t=c.From.Y;z=c.To.X;A=c.To.Y;e=new mxPoint(p,t);u.push(e);e.mark=c.mark;var g=k[p+","+t];null!=g?g.mark|=e.mark:k[p+","+t]=e;e=new mxPoint(z,A);u.push(e);e.mark=c.mark;g=k[z+","+A];null!=g?g.mark|=e.mark:k[z+","+A]=e;for(e=r+1;e<f.State.Connector.Segments.length;e++){g=f.State.Connector.Segments[e]; var E=g.From.X,F=g.From.Y,w=g.To.X,J=g.To.Y;p==z&&t<=F&&A>=F&&E<=p&&w>=p?(w=new mxPoint(p,F),u.push(w),w.mark=c.mark|g.mark,g=k[p+","+F],null!=g?g.mark|=w.mark:k[p+","+F]=w):t==A&&p<=E&&z>=E&&F<=t&&J>=t&&(w=new mxPoint(E,t),u.push(w),w.mark=c.mark|g.mark,g=k[E+","+t],null!=g?g.mark|=w.mark:k[E+","+t]=w)}}var y=[],q;for(q in k)y.push(k[q]);y.sort(function(l,m){var v=l.y-m.y;return 0==v?l.x-m.x:v});k=d.getOutgoingEdges(n);if(2==y.length&&1==k.length)C(k[0],y);else{f=function(l){for(var m=0;m<y.length;m++){var v= y[m];if(!H[v.x+","+v.y]&&v.mark&l.mark)return H[v.x+","+v.y]=!0,v}};e=n.geometry;for(q=0;q<y.length;q++)if(I(e,y[q])){var G=y[q];break}for(e=0;e<k.length;e++)if(null!=k[e].target){var H={};H[G.x+","+G.y]=!0;q=k[e].target.geometry;n=[G];r=G;for(c=0;1E3>c;)if(c++,p=f(r),null==p)n.pop(),r=n[n.length-1];else if(n.push(p),r=p,I(q,p))break;if(2<n.length)for(r=n[0].x,c=n[n.length-1].x,q=n.length-2;0<q;q--)(r>c&&n[q].x<c||r<c&&n[q].x<r)&&n.splice(q,1);q=k[e].geometry.clone();q.points=n;RPOrgChart.graph.model.setGeometry(k[e], q);C(k[e],n)}}}return!0});for(b=0;b<u.length;b++)delete u[b].mark,delete u[b].corrected}}});Bridge.init();