@antv/layout 2.0.0-beta.2 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +135 -196
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/worker.js +1 -1
- package/dist/worker.js.map +1 -1
- package/esm/algorithm/antv-dagre/acyclic.js +40 -0
- package/esm/algorithm/antv-dagre/acyclic.js.map +1 -0
- package/esm/algorithm/antv-dagre/add-border-segments.js +42 -0
- package/esm/algorithm/antv-dagre/add-border-segments.js.map +1 -0
- package/esm/algorithm/antv-dagre/coordinate-system.js +66 -0
- package/esm/algorithm/antv-dagre/coordinate-system.js.map +1 -0
- package/esm/algorithm/antv-dagre/data/list.js +50 -0
- package/esm/algorithm/antv-dagre/data/list.js.map +1 -0
- package/esm/algorithm/antv-dagre/graph.js +429 -0
- package/esm/algorithm/antv-dagre/graph.js.map +1 -0
- package/esm/algorithm/antv-dagre/greedy-fas.js +139 -0
- package/esm/algorithm/antv-dagre/greedy-fas.js.map +1 -0
- package/esm/algorithm/antv-dagre/index.js +340 -0
- package/esm/algorithm/antv-dagre/index.js.map +1 -0
- package/esm/algorithm/antv-dagre/layout.js +471 -0
- package/esm/algorithm/antv-dagre/layout.js.map +1 -0
- package/esm/algorithm/antv-dagre/nesting-graph.js +154 -0
- package/esm/algorithm/antv-dagre/nesting-graph.js.map +1 -0
- package/esm/algorithm/antv-dagre/normalize.js +100 -0
- package/esm/algorithm/antv-dagre/normalize.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/add-subgraph-constraints.js +47 -0
- package/esm/algorithm/antv-dagre/order/add-subgraph-constraints.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/barycenter.js +25 -0
- package/esm/algorithm/antv-dagre/order/barycenter.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/build-layer-graph.js +89 -0
- package/esm/algorithm/antv-dagre/order/build-layer-graph.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/cross-count.js +66 -0
- package/esm/algorithm/antv-dagre/order/cross-count.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/index.js +94 -0
- package/esm/algorithm/antv-dagre/order/index.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/init-data-order.js +29 -0
- package/esm/algorithm/antv-dagre/order/init-data-order.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/init-order.js +49 -0
- package/esm/algorithm/antv-dagre/order/init-order.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/resolve-conflicts.js +119 -0
- package/esm/algorithm/antv-dagre/order/resolve-conflicts.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/sort-subgraph.js +87 -0
- package/esm/algorithm/antv-dagre/order/sort-subgraph.js.map +1 -0
- package/esm/algorithm/antv-dagre/order/sort.js +77 -0
- package/esm/algorithm/antv-dagre/order/sort.js.map +1 -0
- package/esm/algorithm/antv-dagre/parent-dummy-chains.js +82 -0
- package/esm/algorithm/antv-dagre/parent-dummy-chains.js.map +1 -0
- package/esm/algorithm/antv-dagre/position/bk.js +366 -0
- package/esm/algorithm/antv-dagre/position/bk.js.map +1 -0
- package/esm/algorithm/antv-dagre/position/index.js +54 -0
- package/esm/algorithm/antv-dagre/position/index.js.map +1 -0
- package/esm/algorithm/antv-dagre/rank/feasible-tree.js +166 -0
- package/esm/algorithm/antv-dagre/rank/feasible-tree.js.map +1 -0
- package/esm/algorithm/antv-dagre/rank/index.js +51 -0
- package/esm/algorithm/antv-dagre/rank/index.js.map +1 -0
- package/esm/algorithm/antv-dagre/rank/network-simplex.js +234 -0
- package/esm/algorithm/antv-dagre/rank/network-simplex.js.map +1 -0
- package/esm/algorithm/antv-dagre/rank/util.js +139 -0
- package/esm/algorithm/antv-dagre/rank/util.js.map +1 -0
- package/esm/algorithm/antv-dagre/util.js +265 -0
- package/esm/algorithm/antv-dagre/util.js.map +1 -0
- package/esm/algorithm/base-layout.js +89 -0
- package/esm/algorithm/base-layout.js.map +1 -0
- package/esm/algorithm/base-simulation.js +75 -0
- package/esm/algorithm/base-simulation.js.map +1 -0
- package/esm/algorithm/circular/index.js +110 -0
- package/esm/algorithm/circular/index.js.map +1 -0
- package/esm/algorithm/combo-combined/index.js +306 -0
- package/esm/algorithm/combo-combined/index.js.map +1 -0
- package/esm/algorithm/concentric/index.js +187 -0
- package/esm/algorithm/concentric/index.js.map +1 -0
- package/esm/algorithm/d3-force/force-in-a-box.js +340 -0
- package/esm/algorithm/d3-force/force-in-a-box.js.map +1 -0
- package/esm/algorithm/d3-force/index.js +505 -0
- package/esm/algorithm/d3-force/index.js.map +1 -0
- package/esm/algorithm/d3-force-3d/index.js +65 -0
- package/esm/algorithm/d3-force-3d/index.js.map +1 -0
- package/esm/algorithm/dagre/index.js +143 -0
- package/esm/algorithm/dagre/index.js.map +1 -0
- package/esm/algorithm/force/attractive.js +60 -0
- package/esm/algorithm/force/attractive.js.map +1 -0
- package/esm/algorithm/force/centripetal.js +87 -0
- package/esm/algorithm/force/centripetal.js.map +1 -0
- package/esm/algorithm/force/collide.js +172 -0
- package/esm/algorithm/force/collide.js.map +1 -0
- package/esm/algorithm/force/gravity.js +50 -0
- package/esm/algorithm/force/gravity.js.map +1 -0
- package/esm/algorithm/force/index.js +462 -0
- package/esm/algorithm/force/index.js.map +1 -0
- package/esm/algorithm/force/repulsive.js +142 -0
- package/esm/algorithm/force/repulsive.js.map +1 -0
- package/esm/algorithm/force/simulation.js +137 -0
- package/esm/algorithm/force/simulation.js.map +1 -0
- package/esm/algorithm/force-atlas2/body.js +91 -0
- package/esm/algorithm/force-atlas2/body.js.map +1 -0
- package/esm/algorithm/force-atlas2/index.js +157 -0
- package/esm/algorithm/force-atlas2/index.js.map +1 -0
- package/esm/algorithm/force-atlas2/quad-tree.js +106 -0
- package/esm/algorithm/force-atlas2/quad-tree.js.map +1 -0
- package/esm/algorithm/force-atlas2/quad.js +98 -0
- package/esm/algorithm/force-atlas2/quad.js.map +1 -0
- package/esm/algorithm/force-atlas2/simulation.js +388 -0
- package/esm/algorithm/force-atlas2/simulation.js.map +1 -0
- package/esm/algorithm/fruchterman/index.js +92 -0
- package/esm/algorithm/fruchterman/index.js.map +1 -0
- package/esm/algorithm/fruchterman/simulation.js +357 -0
- package/esm/algorithm/fruchterman/simulation.js.map +1 -0
- package/esm/algorithm/grid/index.js +239 -0
- package/esm/algorithm/grid/index.js.map +1 -0
- package/esm/algorithm/mds/index.js +129 -0
- package/esm/algorithm/mds/index.js.map +1 -0
- package/esm/algorithm/radial/index.js +279 -0
- package/esm/algorithm/radial/index.js.map +1 -0
- package/esm/algorithm/radial/radial-nonoverlap-force.js +127 -0
- package/esm/algorithm/radial/radial-nonoverlap-force.js.map +1 -0
- package/esm/algorithm/random/index.js +43 -0
- package/esm/algorithm/random/index.js.map +1 -0
- package/esm/index.js +30 -0
- package/{lib/_virtual → esm}/index.js.map +1 -1
- package/esm/model/data.js +281 -0
- package/esm/model/data.js.map +1 -0
- package/esm/registry.js +32 -0
- package/esm/registry.js.map +1 -0
- package/esm/runtime/context.js +29 -0
- package/esm/runtime/context.js.map +1 -0
- package/esm/runtime/supervisor.js +89 -0
- package/esm/runtime/supervisor.js.map +1 -0
- package/esm/util/array.js +4 -0
- package/esm/util/array.js.map +1 -0
- package/esm/util/common.js +20 -0
- package/esm/util/common.js.map +1 -0
- package/esm/util/expr.js +26 -0
- package/esm/util/expr.js.map +1 -0
- package/esm/util/format.js +113 -0
- package/esm/util/format.js.map +1 -0
- package/esm/util/math.js +272 -0
- package/esm/util/math.js.map +1 -0
- package/esm/util/object.js +44 -0
- package/esm/util/object.js.map +1 -0
- package/esm/util/order.js +109 -0
- package/esm/util/order.js.map +1 -0
- package/esm/util/point.js +11 -0
- package/esm/util/point.js.map +1 -0
- package/esm/util/size.js +23 -0
- package/esm/util/size.js.map +1 -0
- package/esm/util/viewport.js +17 -0
- package/esm/util/viewport.js.map +1 -0
- package/esm/worker.js +9170 -0
- package/esm/worker.js.map +1 -0
- package/lib/algorithm/antv-dagre/acyclic.js +3 -3
- package/lib/algorithm/antv-dagre/acyclic.js.map +1 -1
- package/lib/algorithm/antv-dagre/coordinate-system.js +2 -2
- package/lib/algorithm/antv-dagre/coordinate-system.js.map +1 -1
- package/lib/algorithm/antv-dagre/index.js +7 -7
- package/lib/algorithm/antv-dagre/index.js.map +1 -1
- package/lib/algorithm/antv-dagre/layout.js +1 -1
- package/lib/algorithm/antv-dagre/nesting-graph.js +2 -2
- package/lib/algorithm/antv-dagre/nesting-graph.js.map +1 -1
- package/lib/algorithm/antv-dagre/order/index.js +1 -1
- package/lib/algorithm/antv-dagre/util.js +4 -4
- package/lib/algorithm/antv-dagre/util.js.map +1 -1
- package/lib/algorithm/base-layout.js +1 -1
- package/lib/algorithm/base-simulation.js +1 -1
- package/lib/algorithm/circular/index.js +6 -5
- package/lib/algorithm/circular/index.js.map +1 -1
- package/lib/algorithm/combo-combined/index.js +3 -2
- package/lib/algorithm/combo-combined/index.js.map +1 -1
- package/lib/algorithm/concentric/index.js +7 -6
- package/lib/algorithm/concentric/index.js.map +1 -1
- package/lib/algorithm/d3-force/force-in-a-box.js +9 -12
- package/lib/algorithm/d3-force/force-in-a-box.js.map +1 -1
- package/lib/algorithm/d3-force/index.js +18 -25
- package/lib/algorithm/d3-force/index.js.map +1 -1
- package/lib/algorithm/d3-force-3d/index.js +1 -9
- package/lib/algorithm/d3-force-3d/index.js.map +1 -1
- package/lib/algorithm/dagre/index.js +5 -7
- package/lib/algorithm/dagre/index.js.map +1 -1
- package/lib/algorithm/force/centripetal.js +1 -1
- package/lib/algorithm/force/collide.js +2 -2
- package/lib/algorithm/force/index.js +5 -5
- package/lib/algorithm/force/index.js.map +1 -1
- package/lib/algorithm/force/repulsive.js +2 -2
- package/lib/algorithm/force/simulation.js +1 -1
- package/lib/algorithm/force-atlas2/index.js +6 -5
- package/lib/algorithm/force-atlas2/index.js.map +1 -1
- package/lib/algorithm/force-atlas2/simulation.js +4 -4
- package/lib/algorithm/force-atlas2/simulation.js.map +1 -1
- package/lib/algorithm/fruchterman/index.js +5 -4
- package/lib/algorithm/fruchterman/index.js.map +1 -1
- package/lib/algorithm/fruchterman/simulation.js +4 -4
- package/lib/algorithm/fruchterman/simulation.js.map +1 -1
- package/lib/algorithm/grid/index.js +3 -2
- package/lib/algorithm/grid/index.js.map +1 -1
- package/lib/algorithm/mds/index.js +10 -9
- package/lib/algorithm/mds/index.js.map +1 -1
- package/lib/algorithm/radial/index.js +3 -2
- package/lib/algorithm/radial/index.js.map +1 -1
- package/lib/algorithm/radial/radial-nonoverlap-force.js +3 -3
- package/lib/algorithm/radial/radial-nonoverlap-force.js.map +1 -1
- package/lib/algorithm/random/index.js +3 -2
- package/lib/algorithm/random/index.js.map +1 -1
- package/lib/model/data.js +1 -1
- package/lib/runtime/supervisor.js +2 -2
- package/lib/util/expr.js +3 -3
- package/lib/util/expr.js.map +1 -1
- package/lib/util/format.js +1 -4
- package/lib/util/format.js.map +1 -1
- package/lib/util/math.js +1 -1
- package/lib/util/object.js +1 -2
- package/lib/util/object.js.map +1 -1
- package/lib/util/order.js +4 -4
- package/lib/util/order.js.map +1 -1
- package/lib/util/size.js +1 -1
- package/lib/worker.js +3002 -26176
- package/lib/worker.js.map +1 -1
- package/package.json +7 -3
- package/lib/_virtual/_cloneBuffer.js +0 -4
- package/lib/_virtual/_cloneBuffer.js.map +0 -1
- package/lib/_virtual/_commonjs-dynamic-modules.js +0 -6
- package/lib/_virtual/_commonjs-dynamic-modules.js.map +0 -1
- package/lib/_virtual/_commonjsHelpers.js +0 -37
- package/lib/_virtual/_commonjsHelpers.js.map +0 -1
- package/lib/_virtual/_nodeUtil.js +0 -4
- package/lib/_virtual/_nodeUtil.js.map +0 -1
- package/lib/_virtual/index.js +0 -8
- package/lib/_virtual/index2.js +0 -7
- package/lib/_virtual/index2.js.map +0 -1
- package/lib/_virtual/index3.js +0 -7
- package/lib/_virtual/index3.js.map +0 -1
- package/lib/_virtual/isBuffer.js +0 -4
- package/lib/_virtual/isBuffer.js.map +0 -1
- package/lib/_virtual/matrix.js +0 -8
- package/lib/_virtual/matrix.js.map +0 -1
- package/lib/_virtual/matrix2.js +0 -4
- package/lib/_virtual/matrix2.js.map +0 -1
- package/lib/node_modules/@antv/event-emitter/esm/index.js +0 -107
- package/lib/node_modules/@antv/event-emitter/esm/index.js.map +0 -1
- package/lib/node_modules/@antv/expr/dist/index.esm.js +0 -4
- package/lib/node_modules/@antv/expr/dist/index.esm.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/clone.js +0 -34
- package/lib/node_modules/@antv/util/esm/lodash/clone.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/deep-mix.js +0 -54
- package/lib/node_modules/@antv/util/esm/lodash/deep-mix.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/each.js +0 -30
- package/lib/node_modules/@antv/util/esm/lodash/each.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/get-type.js +0 -10
- package/lib/node_modules/@antv/util/esm/lodash/get-type.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/get.js +0 -19
- package/lib/node_modules/@antv/util/esm/lodash/get.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-array-like.js +0 -12
- package/lib/node_modules/@antv/util/esm/lodash/is-array-like.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-array.js +0 -10
- package/lib/node_modules/@antv/util/esm/lodash/is-array.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-boolean.js +0 -14
- package/lib/node_modules/@antv/util/esm/lodash/is-boolean.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-empty.js +0 -39
- package/lib/node_modules/@antv/util/esm/lodash/is-empty.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-function.js +0 -10
- package/lib/node_modules/@antv/util/esm/lodash/is-function.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-nil.js +0 -10
- package/lib/node_modules/@antv/util/esm/lodash/is-nil.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-number.js +0 -10
- package/lib/node_modules/@antv/util/esm/lodash/is-number.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-object-like.js +0 -12
- package/lib/node_modules/@antv/util/esm/lodash/is-object-like.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-object.js +0 -13
- package/lib/node_modules/@antv/util/esm/lodash/is-object.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-plain-object.js +0 -25
- package/lib/node_modules/@antv/util/esm/lodash/is-plain-object.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-prototype.js +0 -9
- package/lib/node_modules/@antv/util/esm/lodash/is-prototype.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-string.js +0 -10
- package/lib/node_modules/@antv/util/esm/lodash/is-string.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/is-type.js +0 -5
- package/lib/node_modules/@antv/util/esm/lodash/is-type.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/pick.js +0 -19
- package/lib/node_modules/@antv/util/esm/lodash/pick.js.map +0 -1
- package/lib/node_modules/@antv/util/esm/lodash/set.js +0 -30
- package/lib/node_modules/@antv/util/esm/lodash/set.js.map +0 -1
- package/lib/node_modules/comlink/dist/esm/comlink.js +0 -351
- package/lib/node_modules/comlink/dist/esm/comlink.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/add.js +0 -71
- package/lib/node_modules/d3-binarytree/src/add.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/binarytree.js +0 -71
- package/lib/node_modules/d3-binarytree/src/binarytree.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/cover.js +0 -39
- package/lib/node_modules/d3-binarytree/src/cover.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/data.js +0 -10
- package/lib/node_modules/d3-binarytree/src/data.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/extent.js +0 -8
- package/lib/node_modules/d3-binarytree/src/extent.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/find.js +0 -61
- package/lib/node_modules/d3-binarytree/src/find.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/half.js +0 -8
- package/lib/node_modules/d3-binarytree/src/half.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/remove.js +0 -59
- package/lib/node_modules/d3-binarytree/src/remove.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/root.js +0 -6
- package/lib/node_modules/d3-binarytree/src/root.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/size.js +0 -10
- package/lib/node_modules/d3-binarytree/src/size.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/visit.js +0 -17
- package/lib/node_modules/d3-binarytree/src/visit.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/visitAfter.js +0 -22
- package/lib/node_modules/d3-binarytree/src/visitAfter.js.map +0 -1
- package/lib/node_modules/d3-binarytree/src/x.js +0 -10
- package/lib/node_modules/d3-binarytree/src/x.js.map +0 -1
- package/lib/node_modules/d3-dispatch/src/dispatch.js +0 -85
- package/lib/node_modules/d3-dispatch/src/dispatch.js.map +0 -1
- package/lib/node_modules/d3-force/src/center.js +0 -43
- package/lib/node_modules/d3-force/src/center.js.map +0 -1
- package/lib/node_modules/d3-force/src/collide.js +0 -103
- package/lib/node_modules/d3-force/src/collide.js.map +0 -1
- package/lib/node_modules/d3-force/src/constant.js +0 -8
- package/lib/node_modules/d3-force/src/constant.js.map +0 -1
- package/lib/node_modules/d3-force/src/jiggle.js +0 -6
- package/lib/node_modules/d3-force/src/jiggle.js.map +0 -1
- package/lib/node_modules/d3-force/src/lcg.js +0 -12
- package/lib/node_modules/d3-force/src/lcg.js.map +0 -1
- package/lib/node_modules/d3-force/src/link.js +0 -120
- package/lib/node_modules/d3-force/src/link.js.map +0 -1
- package/lib/node_modules/d3-force/src/manyBody.js +0 -119
- package/lib/node_modules/d3-force/src/manyBody.js.map +0 -1
- package/lib/node_modules/d3-force/src/radial.js +0 -60
- package/lib/node_modules/d3-force/src/radial.js.map +0 -1
- package/lib/node_modules/d3-force/src/simulation.js +0 -159
- package/lib/node_modules/d3-force/src/simulation.js.map +0 -1
- package/lib/node_modules/d3-force/src/x.js +0 -44
- package/lib/node_modules/d3-force/src/x.js.map +0 -1
- package/lib/node_modules/d3-force/src/y.js +0 -44
- package/lib/node_modules/d3-force/src/y.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/center.js +0 -52
- package/lib/node_modules/d3-force-3d/src/center.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/collide.js +0 -135
- package/lib/node_modules/d3-force-3d/src/collide.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/constant.js +0 -8
- package/lib/node_modules/d3-force-3d/src/constant.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/jiggle.js +0 -6
- package/lib/node_modules/d3-force-3d/src/jiggle.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/lcg.js +0 -12
- package/lib/node_modules/d3-force-3d/src/lcg.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/link.js +0 -127
- package/lib/node_modules/d3-force-3d/src/link.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/manyBody.js +0 -142
- package/lib/node_modules/d3-force-3d/src/manyBody.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/radial.js +0 -70
- package/lib/node_modules/d3-force-3d/src/radial.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/simulation.js +0 -202
- package/lib/node_modules/d3-force-3d/src/simulation.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/x.js +0 -44
- package/lib/node_modules/d3-force-3d/src/x.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/y.js +0 -44
- package/lib/node_modules/d3-force-3d/src/y.js.map +0 -1
- package/lib/node_modules/d3-force-3d/src/z.js +0 -44
- package/lib/node_modules/d3-force-3d/src/z.js.map +0 -1
- package/lib/node_modules/d3-octree/src/add.js +0 -101
- package/lib/node_modules/d3-octree/src/add.js.map +0 -1
- package/lib/node_modules/d3-octree/src/cover.js +0 -55
- package/lib/node_modules/d3-octree/src/cover.js.map +0 -1
- package/lib/node_modules/d3-octree/src/data.js +0 -10
- package/lib/node_modules/d3-octree/src/data.js.map +0 -1
- package/lib/node_modules/d3-octree/src/extent.js +0 -8
- package/lib/node_modules/d3-octree/src/extent.js.map +0 -1
- package/lib/node_modules/d3-octree/src/find.js +0 -85
- package/lib/node_modules/d3-octree/src/find.js.map +0 -1
- package/lib/node_modules/d3-octree/src/findAll.js +0 -29
- package/lib/node_modules/d3-octree/src/findAll.js.map +0 -1
- package/lib/node_modules/d3-octree/src/octant.js +0 -12
- package/lib/node_modules/d3-octree/src/octant.js.map +0 -1
- package/lib/node_modules/d3-octree/src/octree.js +0 -83
- package/lib/node_modules/d3-octree/src/octree.js.map +0 -1
- package/lib/node_modules/d3-octree/src/remove.js +0 -71
- package/lib/node_modules/d3-octree/src/remove.js.map +0 -1
- package/lib/node_modules/d3-octree/src/root.js +0 -6
- package/lib/node_modules/d3-octree/src/root.js.map +0 -1
- package/lib/node_modules/d3-octree/src/size.js +0 -10
- package/lib/node_modules/d3-octree/src/size.js.map +0 -1
- package/lib/node_modules/d3-octree/src/visit.js +0 -23
- package/lib/node_modules/d3-octree/src/visit.js.map +0 -1
- package/lib/node_modules/d3-octree/src/visitAfter.js +0 -28
- package/lib/node_modules/d3-octree/src/visitAfter.js.map +0 -1
- package/lib/node_modules/d3-octree/src/x.js +0 -10
- package/lib/node_modules/d3-octree/src/x.js.map +0 -1
- package/lib/node_modules/d3-octree/src/y.js +0 -10
- package/lib/node_modules/d3-octree/src/y.js.map +0 -1
- package/lib/node_modules/d3-octree/src/z.js +0 -10
- package/lib/node_modules/d3-octree/src/z.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/add.js +0 -87
- package/lib/node_modules/d3-quadtree/src/add.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/cover.js +0 -46
- package/lib/node_modules/d3-quadtree/src/cover.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/data.js +0 -10
- package/lib/node_modules/d3-quadtree/src/data.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/extent.js +0 -8
- package/lib/node_modules/d3-quadtree/src/extent.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/find.js +0 -73
- package/lib/node_modules/d3-quadtree/src/find.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/quad.js +0 -10
- package/lib/node_modules/d3-quadtree/src/quad.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/quadtree.js +0 -76
- package/lib/node_modules/d3-quadtree/src/quadtree.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/remove.js +0 -65
- package/lib/node_modules/d3-quadtree/src/remove.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/root.js +0 -6
- package/lib/node_modules/d3-quadtree/src/root.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/size.js +0 -10
- package/lib/node_modules/d3-quadtree/src/size.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/visit.js +0 -19
- package/lib/node_modules/d3-quadtree/src/visit.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/visitAfter.js +0 -24
- package/lib/node_modules/d3-quadtree/src/visitAfter.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/x.js +0 -10
- package/lib/node_modules/d3-quadtree/src/x.js.map +0 -1
- package/lib/node_modules/d3-quadtree/src/y.js +0 -10
- package/lib/node_modules/d3-quadtree/src/y.js.map +0 -1
- package/lib/node_modules/d3-timer/src/timer.js +0 -113
- package/lib/node_modules/d3-timer/src/timer.js.map +0 -1
- package/lib/node_modules/dagre/index.js +0 -50
- package/lib/node_modules/dagre/index.js.map +0 -1
- package/lib/node_modules/dagre/lib/acyclic.js +0 -80
- package/lib/node_modules/dagre/lib/acyclic.js.map +0 -1
- package/lib/node_modules/dagre/lib/add-border-segments.js +0 -52
- package/lib/node_modules/dagre/lib/add-border-segments.js.map +0 -1
- package/lib/node_modules/dagre/lib/coordinate-system.js +0 -84
- package/lib/node_modules/dagre/lib/coordinate-system.js.map +0 -1
- package/lib/node_modules/dagre/lib/data/list.js +0 -67
- package/lib/node_modules/dagre/lib/data/list.js.map +0 -1
- package/lib/node_modules/dagre/lib/debug.js +0 -49
- package/lib/node_modules/dagre/lib/debug.js.map +0 -1
- package/lib/node_modules/dagre/lib/graphlib.js +0 -31
- package/lib/node_modules/dagre/lib/graphlib.js.map +0 -1
- package/lib/node_modules/dagre/lib/greedy-fas.js +0 -133
- package/lib/node_modules/dagre/lib/greedy-fas.js.map +0 -1
- package/lib/node_modules/dagre/lib/layout.js +0 -415
- package/lib/node_modules/dagre/lib/layout.js.map +0 -1
- package/lib/node_modules/dagre/lib/lodash.js +0 -83
- package/lib/node_modules/dagre/lib/lodash.js.map +0 -1
- package/lib/node_modules/dagre/lib/nesting-graph.js +0 -146
- package/lib/node_modules/dagre/lib/nesting-graph.js.map +0 -1
- package/lib/node_modules/dagre/lib/normalize.js +0 -103
- package/lib/node_modules/dagre/lib/normalize.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/add-subgraph-constraints.js +0 -66
- package/lib/node_modules/dagre/lib/order/add-subgraph-constraints.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/barycenter.js +0 -40
- package/lib/node_modules/dagre/lib/order/barycenter.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/build-layer-graph.js +0 -87
- package/lib/node_modules/dagre/lib/order/build-layer-graph.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/cross-count.js +0 -79
- package/lib/node_modules/dagre/lib/order/cross-count.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/index.js +0 -98
- package/lib/node_modules/dagre/lib/order/index.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/init-order.js +0 -50
- package/lib/node_modules/dagre/lib/order/init-order.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/resolve-conflicts.js +0 -134
- package/lib/node_modules/dagre/lib/order/resolve-conflicts.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/sort-subgraph.js +0 -92
- package/lib/node_modules/dagre/lib/order/sort-subgraph.js.map +0 -1
- package/lib/node_modules/dagre/lib/order/sort.js +0 -71
- package/lib/node_modules/dagre/lib/order/sort.js.map +0 -1
- package/lib/node_modules/dagre/lib/parent-dummy-chains.js +0 -99
- package/lib/node_modules/dagre/lib/parent-dummy-chains.js.map +0 -1
- package/lib/node_modules/dagre/lib/position/bk.js +0 -433
- package/lib/node_modules/dagre/lib/position/bk.js.map +0 -1
- package/lib/node_modules/dagre/lib/position/index.js +0 -43
- package/lib/node_modules/dagre/lib/position/index.js.map +0 -1
- package/lib/node_modules/dagre/lib/rank/feasible-tree.js +0 -103
- package/lib/node_modules/dagre/lib/rank/feasible-tree.js.map +0 -1
- package/lib/node_modules/dagre/lib/rank/index.js +0 -62
- package/lib/node_modules/dagre/lib/rank/index.js.map +0 -1
- package/lib/node_modules/dagre/lib/rank/network-simplex.js +0 -250
- package/lib/node_modules/dagre/lib/rank/network-simplex.js.map +0 -1
- package/lib/node_modules/dagre/lib/rank/util.js +0 -75
- package/lib/node_modules/dagre/lib/rank/util.js.map +0 -1
- package/lib/node_modules/dagre/lib/util.js +0 -251
- package/lib/node_modules/dagre/lib/util.js.map +0 -1
- package/lib/node_modules/dagre/lib/version.js +0 -12
- package/lib/node_modules/dagre/lib/version.js.map +0 -1
- package/lib/node_modules/graphlib/index.js +0 -53
- package/lib/node_modules/graphlib/index.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/components.js +0 -40
- package/lib/node_modules/graphlib/lib/alg/components.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/dfs.js +0 -55
- package/lib/node_modules/graphlib/lib/alg/dfs.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/dijkstra-all.js +0 -24
- package/lib/node_modules/graphlib/lib/alg/dijkstra-all.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/dijkstra.js +0 -68
- package/lib/node_modules/graphlib/lib/alg/dijkstra.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/find-cycles.js +0 -24
- package/lib/node_modules/graphlib/lib/alg/find-cycles.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/floyd-warshall.js +0 -63
- package/lib/node_modules/graphlib/lib/alg/floyd-warshall.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/index.js +0 -36
- package/lib/node_modules/graphlib/lib/alg/index.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/is-acyclic.js +0 -28
- package/lib/node_modules/graphlib/lib/alg/is-acyclic.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/postorder.js +0 -20
- package/lib/node_modules/graphlib/lib/alg/postorder.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/preorder.js +0 -20
- package/lib/node_modules/graphlib/lib/alg/preorder.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/prim.js +0 -67
- package/lib/node_modules/graphlib/lib/alg/prim.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/tarjan.js +0 -60
- package/lib/node_modules/graphlib/lib/alg/tarjan.js.map +0 -1
- package/lib/node_modules/graphlib/lib/alg/topsort.js +0 -48
- package/lib/node_modules/graphlib/lib/alg/topsort.js.map +0 -1
- package/lib/node_modules/graphlib/lib/data/priority-queue.js +0 -165
- package/lib/node_modules/graphlib/lib/data/priority-queue.js.map +0 -1
- package/lib/node_modules/graphlib/lib/graph.js +0 -544
- package/lib/node_modules/graphlib/lib/graph.js.map +0 -1
- package/lib/node_modules/graphlib/lib/index.js +0 -19
- package/lib/node_modules/graphlib/lib/index.js.map +0 -1
- package/lib/node_modules/graphlib/lib/json.js +0 -80
- package/lib/node_modules/graphlib/lib/json.js.map +0 -1
- package/lib/node_modules/graphlib/lib/lodash.js +0 -63
- package/lib/node_modules/graphlib/lib/lodash.js.map +0 -1
- package/lib/node_modules/graphlib/lib/version.js +0 -12
- package/lib/node_modules/graphlib/lib/version.js.map +0 -1
- package/lib/node_modules/is-any-array/lib-esm/index.js +0 -15
- package/lib/node_modules/is-any-array/lib-esm/index.js.map +0 -1
- package/lib/node_modules/lodash/_DataView.js +0 -21
- package/lib/node_modules/lodash/_DataView.js.map +0 -1
- package/lib/node_modules/lodash/_Hash.js +0 -49
- package/lib/node_modules/lodash/_Hash.js.map +0 -1
- package/lib/node_modules/lodash/_ListCache.js +0 -49
- package/lib/node_modules/lodash/_ListCache.js.map +0 -1
- package/lib/node_modules/lodash/_Map.js +0 -21
- package/lib/node_modules/lodash/_Map.js.map +0 -1
- package/lib/node_modules/lodash/_MapCache.js +0 -49
- package/lib/node_modules/lodash/_MapCache.js.map +0 -1
- package/lib/node_modules/lodash/_Promise.js +0 -21
- package/lib/node_modules/lodash/_Promise.js.map +0 -1
- package/lib/node_modules/lodash/_Set.js +0 -21
- package/lib/node_modules/lodash/_Set.js.map +0 -1
- package/lib/node_modules/lodash/_SetCache.js +0 -42
- package/lib/node_modules/lodash/_SetCache.js.map +0 -1
- package/lib/node_modules/lodash/_Stack.js +0 -45
- package/lib/node_modules/lodash/_Stack.js.map +0 -1
- package/lib/node_modules/lodash/_Symbol.js +0 -19
- package/lib/node_modules/lodash/_Symbol.js.map +0 -1
- package/lib/node_modules/lodash/_Uint8Array.js +0 -19
- package/lib/node_modules/lodash/_Uint8Array.js.map +0 -1
- package/lib/node_modules/lodash/_WeakMap.js +0 -21
- package/lib/node_modules/lodash/_WeakMap.js.map +0 -1
- package/lib/node_modules/lodash/_apply.js +0 -33
- package/lib/node_modules/lodash/_apply.js.map +0 -1
- package/lib/node_modules/lodash/_arrayEach.js +0 -34
- package/lib/node_modules/lodash/_arrayEach.js.map +0 -1
- package/lib/node_modules/lodash/_arrayFilter.js +0 -37
- package/lib/node_modules/lodash/_arrayFilter.js.map +0 -1
- package/lib/node_modules/lodash/_arrayIncludes.js +0 -30
- package/lib/node_modules/lodash/_arrayIncludes.js.map +0 -1
- package/lib/node_modules/lodash/_arrayIncludesWith.js +0 -34
- package/lib/node_modules/lodash/_arrayIncludesWith.js.map +0 -1
- package/lib/node_modules/lodash/_arrayLikeKeys.js +0 -67
- package/lib/node_modules/lodash/_arrayLikeKeys.js.map +0 -1
- package/lib/node_modules/lodash/_arrayMap.js +0 -33
- package/lib/node_modules/lodash/_arrayMap.js.map +0 -1
- package/lib/node_modules/lodash/_arrayPush.js +0 -32
- package/lib/node_modules/lodash/_arrayPush.js.map +0 -1
- package/lib/node_modules/lodash/_arrayReduce.js +0 -38
- package/lib/node_modules/lodash/_arrayReduce.js.map +0 -1
- package/lib/node_modules/lodash/_arraySome.js +0 -35
- package/lib/node_modules/lodash/_arraySome.js.map +0 -1
- package/lib/node_modules/lodash/_asciiSize.js +0 -25
- package/lib/node_modules/lodash/_asciiSize.js.map +0 -1
- package/lib/node_modules/lodash/_assignMergeValue.js +0 -34
- package/lib/node_modules/lodash/_assignMergeValue.js.map +0 -1
- package/lib/node_modules/lodash/_assignValue.js +0 -42
- package/lib/node_modules/lodash/_assignValue.js.map +0 -1
- package/lib/node_modules/lodash/_assocIndexOf.js +0 -34
- package/lib/node_modules/lodash/_assocIndexOf.js.map +0 -1
- package/lib/node_modules/lodash/_baseAssign.js +0 -31
- package/lib/node_modules/lodash/_baseAssign.js.map +0 -1
- package/lib/node_modules/lodash/_baseAssignIn.js +0 -31
- package/lib/node_modules/lodash/_baseAssignIn.js.map +0 -1
- package/lib/node_modules/lodash/_baseAssignValue.js +0 -38
- package/lib/node_modules/lodash/_baseAssignValue.js.map +0 -1
- package/lib/node_modules/lodash/_baseClone.js +0 -200
- package/lib/node_modules/lodash/_baseClone.js.map +0 -1
- package/lib/node_modules/lodash/_baseCreate.js +0 -43
- package/lib/node_modules/lodash/_baseCreate.js.map +0 -1
- package/lib/node_modules/lodash/_baseEach.js +0 -28
- package/lib/node_modules/lodash/_baseEach.js.map +0 -1
- package/lib/node_modules/lodash/_baseExtremum.js +0 -45
- package/lib/node_modules/lodash/_baseExtremum.js.map +0 -1
- package/lib/node_modules/lodash/_baseFilter.js +0 -34
- package/lib/node_modules/lodash/_baseFilter.js.map +0 -1
- package/lib/node_modules/lodash/_baseFindIndex.js +0 -36
- package/lib/node_modules/lodash/_baseFindIndex.js.map +0 -1
- package/lib/node_modules/lodash/_baseFlatten.js +0 -52
- package/lib/node_modules/lodash/_baseFlatten.js.map +0 -1
- package/lib/node_modules/lodash/_baseFor.js +0 -29
- package/lib/node_modules/lodash/_baseFor.js.map +0 -1
- package/lib/node_modules/lodash/_baseForOwn.js +0 -30
- package/lib/node_modules/lodash/_baseForOwn.js.map +0 -1
- package/lib/node_modules/lodash/_baseGet.js +0 -38
- package/lib/node_modules/lodash/_baseGet.js.map +0 -1
- package/lib/node_modules/lodash/_baseGetAllKeys.js +0 -34
- package/lib/node_modules/lodash/_baseGetAllKeys.js.map +0 -1
- package/lib/node_modules/lodash/_baseGetTag.js +0 -43
- package/lib/node_modules/lodash/_baseGetTag.js.map +0 -1
- package/lib/node_modules/lodash/_baseGt.js +0 -26
- package/lib/node_modules/lodash/_baseGt.js.map +0 -1
- package/lib/node_modules/lodash/_baseHas.js +0 -31
- package/lib/node_modules/lodash/_baseHas.js.map +0 -1
- package/lib/node_modules/lodash/_baseHasIn.js +0 -25
- package/lib/node_modules/lodash/_baseHasIn.js.map +0 -1
- package/lib/node_modules/lodash/_baseIndexOf.js +0 -35
- package/lib/node_modules/lodash/_baseIndexOf.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsArguments.js +0 -32
- package/lib/node_modules/lodash/_baseIsArguments.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsEqual.js +0 -42
- package/lib/node_modules/lodash/_baseIsEqual.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsEqualDeep.js +0 -103
- package/lib/node_modules/lodash/_baseIsEqualDeep.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsMap.js +0 -32
- package/lib/node_modules/lodash/_baseIsMap.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsMatch.js +0 -76
- package/lib/node_modules/lodash/_baseIsMatch.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsNaN.js +0 -24
- package/lib/node_modules/lodash/_baseIsNaN.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsNative.js +0 -63
- package/lib/node_modules/lodash/_baseIsNative.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsSet.js +0 -32
- package/lib/node_modules/lodash/_baseIsSet.js.map +0 -1
- package/lib/node_modules/lodash/_baseIsTypedArray.js +0 -75
- package/lib/node_modules/lodash/_baseIsTypedArray.js.map +0 -1
- package/lib/node_modules/lodash/_baseIteratee.js +0 -48
- package/lib/node_modules/lodash/_baseIteratee.js.map +0 -1
- package/lib/node_modules/lodash/_baseKeys.js +0 -44
- package/lib/node_modules/lodash/_baseKeys.js.map +0 -1
- package/lib/node_modules/lodash/_baseKeysIn.js +0 -48
- package/lib/node_modules/lodash/_baseKeysIn.js.map +0 -1
- package/lib/node_modules/lodash/_baseLt.js +0 -26
- package/lib/node_modules/lodash/_baseLt.js.map +0 -1
- package/lib/node_modules/lodash/_baseMap.js +0 -36
- package/lib/node_modules/lodash/_baseMap.js.map +0 -1
- package/lib/node_modules/lodash/_baseMatches.js +0 -37
- package/lib/node_modules/lodash/_baseMatches.js.map +0 -1
- package/lib/node_modules/lodash/_baseMatchesProperty.js +0 -52
- package/lib/node_modules/lodash/_baseMatchesProperty.js.map +0 -1
- package/lib/node_modules/lodash/_baseMerge.js +0 -61
- package/lib/node_modules/lodash/_baseMerge.js.map +0 -1
- package/lib/node_modules/lodash/_baseMergeDeep.js +0 -121
- package/lib/node_modules/lodash/_baseMergeDeep.js.map +0 -1
- package/lib/node_modules/lodash/_baseOrderBy.js +0 -70
- package/lib/node_modules/lodash/_baseOrderBy.js.map +0 -1
- package/lib/node_modules/lodash/_basePick.js +0 -33
- package/lib/node_modules/lodash/_basePick.js.map +0 -1
- package/lib/node_modules/lodash/_basePickBy.js +0 -45
- package/lib/node_modules/lodash/_basePickBy.js.map +0 -1
- package/lib/node_modules/lodash/_baseProperty.js +0 -26
- package/lib/node_modules/lodash/_baseProperty.js.map +0 -1
- package/lib/node_modules/lodash/_basePropertyDeep.js +0 -29
- package/lib/node_modules/lodash/_basePropertyDeep.js.map +0 -1
- package/lib/node_modules/lodash/_baseRange.js +0 -40
- package/lib/node_modules/lodash/_baseRange.js.map +0 -1
- package/lib/node_modules/lodash/_baseReduce.js +0 -35
- package/lib/node_modules/lodash/_baseReduce.js.map +0 -1
- package/lib/node_modules/lodash/_baseRest.js +0 -32
- package/lib/node_modules/lodash/_baseRest.js.map +0 -1
- package/lib/node_modules/lodash/_baseSet.js +0 -68
- package/lib/node_modules/lodash/_baseSet.js.map +0 -1
- package/lib/node_modules/lodash/_baseSetToString.js +0 -37
- package/lib/node_modules/lodash/_baseSetToString.js.map +0 -1
- package/lib/node_modules/lodash/_baseSortBy.js +0 -33
- package/lib/node_modules/lodash/_baseSortBy.js.map +0 -1
- package/lib/node_modules/lodash/_baseTimes.js +0 -32
- package/lib/node_modules/lodash/_baseTimes.js.map +0 -1
- package/lib/node_modules/lodash/_baseToString.js +0 -50
- package/lib/node_modules/lodash/_baseToString.js.map +0 -1
- package/lib/node_modules/lodash/_baseTrim.js +0 -32
- package/lib/node_modules/lodash/_baseTrim.js.map +0 -1
- package/lib/node_modules/lodash/_baseUnary.js +0 -26
- package/lib/node_modules/lodash/_baseUnary.js.map +0 -1
- package/lib/node_modules/lodash/_baseUniq.js +0 -90
- package/lib/node_modules/lodash/_baseUniq.js.map +0 -1
- package/lib/node_modules/lodash/_baseValues.js +0 -32
- package/lib/node_modules/lodash/_baseValues.js.map +0 -1
- package/lib/node_modules/lodash/_baseZipObject.js +0 -35
- package/lib/node_modules/lodash/_baseZipObject.js.map +0 -1
- package/lib/node_modules/lodash/_cacheHas.js +0 -25
- package/lib/node_modules/lodash/_cacheHas.js.map +0 -1
- package/lib/node_modules/lodash/_castFunction.js +0 -27
- package/lib/node_modules/lodash/_castFunction.js.map +0 -1
- package/lib/node_modules/lodash/_castPath.js +0 -37
- package/lib/node_modules/lodash/_castPath.js.map +0 -1
- package/lib/node_modules/lodash/_cloneArrayBuffer.js +0 -29
- package/lib/node_modules/lodash/_cloneArrayBuffer.js.map +0 -1
- package/lib/node_modules/lodash/_cloneBuffer.js +0 -52
- package/lib/node_modules/lodash/_cloneBuffer.js.map +0 -1
- package/lib/node_modules/lodash/_cloneDataView.js +0 -29
- package/lib/node_modules/lodash/_cloneDataView.js.map +0 -1
- package/lib/node_modules/lodash/_cloneRegExp.js +0 -29
- package/lib/node_modules/lodash/_cloneRegExp.js.map +0 -1
- package/lib/node_modules/lodash/_cloneSymbol.js +0 -31
- package/lib/node_modules/lodash/_cloneSymbol.js.map +0 -1
- package/lib/node_modules/lodash/_cloneTypedArray.js +0 -29
- package/lib/node_modules/lodash/_cloneTypedArray.js.map +0 -1
- package/lib/node_modules/lodash/_compareAscending.js +0 -54
- package/lib/node_modules/lodash/_compareAscending.js.map +0 -1
- package/lib/node_modules/lodash/_compareMultiple.js +0 -57
- package/lib/node_modules/lodash/_compareMultiple.js.map +0 -1
- package/lib/node_modules/lodash/_copyArray.js +0 -32
- package/lib/node_modules/lodash/_copyArray.js.map +0 -1
- package/lib/node_modules/lodash/_copyObject.js +0 -54
- package/lib/node_modules/lodash/_copyObject.js.map +0 -1
- package/lib/node_modules/lodash/_copySymbols.js +0 -30
- package/lib/node_modules/lodash/_copySymbols.js.map +0 -1
- package/lib/node_modules/lodash/_copySymbolsIn.js +0 -30
- package/lib/node_modules/lodash/_copySymbolsIn.js.map +0 -1
- package/lib/node_modules/lodash/_coreJsData.js +0 -19
- package/lib/node_modules/lodash/_coreJsData.js.map +0 -1
- package/lib/node_modules/lodash/_createAssigner.js +0 -51
- package/lib/node_modules/lodash/_createAssigner.js.map +0 -1
- package/lib/node_modules/lodash/_createBaseEach.js +0 -45
- package/lib/node_modules/lodash/_createBaseEach.js.map +0 -1
- package/lib/node_modules/lodash/_createBaseFor.js +0 -37
- package/lib/node_modules/lodash/_createBaseFor.js.map +0 -1
- package/lib/node_modules/lodash/_createFind.js +0 -40
- package/lib/node_modules/lodash/_createFind.js.map +0 -1
- package/lib/node_modules/lodash/_createRange.js +0 -45
- package/lib/node_modules/lodash/_createRange.js.map +0 -1
- package/lib/node_modules/lodash/_createSet.js +0 -34
- package/lib/node_modules/lodash/_createSet.js.map +0 -1
- package/lib/node_modules/lodash/_defineProperty.js +0 -24
- package/lib/node_modules/lodash/_defineProperty.js.map +0 -1
- package/lib/node_modules/lodash/_equalArrays.js +0 -99
- package/lib/node_modules/lodash/_equalArrays.js.map +0 -1
- package/lib/node_modules/lodash/_equalByTag.js +0 -130
- package/lib/node_modules/lodash/_equalByTag.js.map +0 -1
- package/lib/node_modules/lodash/_equalObjects.js +0 -103
- package/lib/node_modules/lodash/_equalObjects.js.map +0 -1
- package/lib/node_modules/lodash/_flatRest.js +0 -31
- package/lib/node_modules/lodash/_flatRest.js.map +0 -1
- package/lib/node_modules/lodash/_freeGlobal.js +0 -18
- package/lib/node_modules/lodash/_freeGlobal.js.map +0 -1
- package/lib/node_modules/lodash/_getAllKeys.js +0 -31
- package/lib/node_modules/lodash/_getAllKeys.js.map +0 -1
- package/lib/node_modules/lodash/_getAllKeysIn.js +0 -32
- package/lib/node_modules/lodash/_getAllKeysIn.js.map +0 -1
- package/lib/node_modules/lodash/_getMapData.js +0 -31
- package/lib/node_modules/lodash/_getMapData.js.map +0 -1
- package/lib/node_modules/lodash/_getMatchData.js +0 -38
- package/lib/node_modules/lodash/_getMatchData.js.map +0 -1
- package/lib/node_modules/lodash/_getNative.js +0 -31
- package/lib/node_modules/lodash/_getNative.js.map +0 -1
- package/lib/node_modules/lodash/_getPrototype.js +0 -19
- package/lib/node_modules/lodash/_getPrototype.js.map +0 -1
- package/lib/node_modules/lodash/_getRawTag.js +0 -59
- package/lib/node_modules/lodash/_getRawTag.js.map +0 -1
- package/lib/node_modules/lodash/_getSymbols.js +0 -44
- package/lib/node_modules/lodash/_getSymbols.js.map +0 -1
- package/lib/node_modules/lodash/_getSymbolsIn.js +0 -41
- package/lib/node_modules/lodash/_getSymbolsIn.js.map +0 -1
- package/lib/node_modules/lodash/_getTag.js +0 -77
- package/lib/node_modules/lodash/_getTag.js.map +0 -1
- package/lib/node_modules/lodash/_getValue.js +0 -25
- package/lib/node_modules/lodash/_getValue.js.map +0 -1
- package/lib/node_modules/lodash/_hasPath.js +0 -57
- package/lib/node_modules/lodash/_hasPath.js.map +0 -1
- package/lib/node_modules/lodash/_hasUnicode.js +0 -38
- package/lib/node_modules/lodash/_hasUnicode.js.map +0 -1
- package/lib/node_modules/lodash/_hashClear.js +0 -28
- package/lib/node_modules/lodash/_hashClear.js.map +0 -1
- package/lib/node_modules/lodash/_hashDelete.js +0 -29
- package/lib/node_modules/lodash/_hashDelete.js.map +0 -1
- package/lib/node_modules/lodash/_hashGet.js +0 -43
- package/lib/node_modules/lodash/_hashGet.js.map +0 -1
- package/lib/node_modules/lodash/_hashHas.js +0 -36
- package/lib/node_modules/lodash/_hashHas.js.map +0 -1
- package/lib/node_modules/lodash/_hashSet.js +0 -36
- package/lib/node_modules/lodash/_hashSet.js.map +0 -1
- package/lib/node_modules/lodash/_initCloneArray.js +0 -38
- package/lib/node_modules/lodash/_initCloneArray.js.map +0 -1
- package/lib/node_modules/lodash/_initCloneByTag.js +0 -94
- package/lib/node_modules/lodash/_initCloneByTag.js.map +0 -1
- package/lib/node_modules/lodash/_initCloneObject.js +0 -33
- package/lib/node_modules/lodash/_initCloneObject.js.map +0 -1
- package/lib/node_modules/lodash/_isFlattenable.js +0 -35
- package/lib/node_modules/lodash/_isFlattenable.js.map +0 -1
- package/lib/node_modules/lodash/_isIndex.js +0 -37
- package/lib/node_modules/lodash/_isIndex.js.map +0 -1
- package/lib/node_modules/lodash/_isIterateeCall.js +0 -46
- package/lib/node_modules/lodash/_isIterateeCall.js.map +0 -1
- package/lib/node_modules/lodash/_isKey.js +0 -43
- package/lib/node_modules/lodash/_isKey.js.map +0 -1
- package/lib/node_modules/lodash/_isKeyable.js +0 -27
- package/lib/node_modules/lodash/_isKeyable.js.map +0 -1
- package/lib/node_modules/lodash/_isMasked.js +0 -33
- package/lib/node_modules/lodash/_isMasked.js.map +0 -1
- package/lib/node_modules/lodash/_isPrototype.js +0 -30
- package/lib/node_modules/lodash/_isPrototype.js.map +0 -1
- package/lib/node_modules/lodash/_isStrictComparable.js +0 -28
- package/lib/node_modules/lodash/_isStrictComparable.js.map +0 -1
- package/lib/node_modules/lodash/_listCacheClear.js +0 -25
- package/lib/node_modules/lodash/_listCacheClear.js.map +0 -1
- package/lib/node_modules/lodash/_listCacheDelete.js +0 -48
- package/lib/node_modules/lodash/_listCacheDelete.js.map +0 -1
- package/lib/node_modules/lodash/_listCacheGet.js +0 -32
- package/lib/node_modules/lodash/_listCacheGet.js.map +0 -1
- package/lib/node_modules/lodash/_listCacheHas.js +0 -29
- package/lib/node_modules/lodash/_listCacheHas.js.map +0 -1
- package/lib/node_modules/lodash/_listCacheSet.js +0 -39
- package/lib/node_modules/lodash/_listCacheSet.js.map +0 -1
- package/lib/node_modules/lodash/_mapCacheClear.js +0 -36
- package/lib/node_modules/lodash/_mapCacheClear.js.map +0 -1
- package/lib/node_modules/lodash/_mapCacheDelete.js +0 -31
- package/lib/node_modules/lodash/_mapCacheDelete.js.map +0 -1
- package/lib/node_modules/lodash/_mapCacheGet.js +0 -29
- package/lib/node_modules/lodash/_mapCacheGet.js.map +0 -1
- package/lib/node_modules/lodash/_mapCacheHas.js +0 -29
- package/lib/node_modules/lodash/_mapCacheHas.js.map +0 -1
- package/lib/node_modules/lodash/_mapCacheSet.js +0 -35
- package/lib/node_modules/lodash/_mapCacheSet.js.map +0 -1
- package/lib/node_modules/lodash/_mapToArray.js +0 -30
- package/lib/node_modules/lodash/_mapToArray.js.map +0 -1
- package/lib/node_modules/lodash/_matchesStrictComparable.js +0 -32
- package/lib/node_modules/lodash/_matchesStrictComparable.js.map +0 -1
- package/lib/node_modules/lodash/_memoizeCapped.js +0 -39
- package/lib/node_modules/lodash/_memoizeCapped.js.map +0 -1
- package/lib/node_modules/lodash/_nativeCreate.js +0 -19
- package/lib/node_modules/lodash/_nativeCreate.js.map +0 -1
- package/lib/node_modules/lodash/_nativeKeys.js +0 -19
- package/lib/node_modules/lodash/_nativeKeys.js.map +0 -1
- package/lib/node_modules/lodash/_nativeKeysIn.js +0 -32
- package/lib/node_modules/lodash/_nativeKeysIn.js.map +0 -1
- package/lib/node_modules/lodash/_nodeUtil.js +0 -47
- package/lib/node_modules/lodash/_nodeUtil.js.map +0 -1
- package/lib/node_modules/lodash/_objectToString.js +0 -34
- package/lib/node_modules/lodash/_objectToString.js.map +0 -1
- package/lib/node_modules/lodash/_overArg.js +0 -27
- package/lib/node_modules/lodash/_overArg.js.map +0 -1
- package/lib/node_modules/lodash/_overRest.js +0 -49
- package/lib/node_modules/lodash/_overRest.js.map +0 -1
- package/lib/node_modules/lodash/_root.js +0 -22
- package/lib/node_modules/lodash/_root.js.map +0 -1
- package/lib/node_modules/lodash/_safeGet.js +0 -33
- package/lib/node_modules/lodash/_safeGet.js.map +0 -1
- package/lib/node_modules/lodash/_setCacheAdd.js +0 -31
- package/lib/node_modules/lodash/_setCacheAdd.js.map +0 -1
- package/lib/node_modules/lodash/_setCacheHas.js +0 -26
- package/lib/node_modules/lodash/_setCacheHas.js.map +0 -1
- package/lib/node_modules/lodash/_setToArray.js +0 -30
- package/lib/node_modules/lodash/_setToArray.js.map +0 -1
- package/lib/node_modules/lodash/_setToString.js +0 -28
- package/lib/node_modules/lodash/_setToString.js.map +0 -1
- package/lib/node_modules/lodash/_shortOut.js +0 -49
- package/lib/node_modules/lodash/_shortOut.js.map +0 -1
- package/lib/node_modules/lodash/_stackClear.js +0 -28
- package/lib/node_modules/lodash/_stackClear.js.map +0 -1
- package/lib/node_modules/lodash/_stackDelete.js +0 -30
- package/lib/node_modules/lodash/_stackDelete.js.map +0 -1
- package/lib/node_modules/lodash/_stackGet.js +0 -26
- package/lib/node_modules/lodash/_stackGet.js.map +0 -1
- package/lib/node_modules/lodash/_stackHas.js +0 -26
- package/lib/node_modules/lodash/_stackHas.js.map +0 -1
- package/lib/node_modules/lodash/_stackSet.js +0 -49
- package/lib/node_modules/lodash/_stackSet.js.map +0 -1
- package/lib/node_modules/lodash/_strictIndexOf.js +0 -35
- package/lib/node_modules/lodash/_strictIndexOf.js.map +0 -1
- package/lib/node_modules/lodash/_stringSize.js +0 -33
- package/lib/node_modules/lodash/_stringSize.js.map +0 -1
- package/lib/node_modules/lodash/_stringToPath.js +0 -40
- package/lib/node_modules/lodash/_stringToPath.js.map +0 -1
- package/lib/node_modules/lodash/_toKey.js +0 -31
- package/lib/node_modules/lodash/_toKey.js.map +0 -1
- package/lib/node_modules/lodash/_toSource.js +0 -38
- package/lib/node_modules/lodash/_toSource.js.map +0 -1
- package/lib/node_modules/lodash/_trimmedEndIndex.js +0 -31
- package/lib/node_modules/lodash/_trimmedEndIndex.js.map +0 -1
- package/lib/node_modules/lodash/_unicodeSize.js +0 -56
- package/lib/node_modules/lodash/_unicodeSize.js.map +0 -1
- package/lib/node_modules/lodash/clone.js +0 -49
- package/lib/node_modules/lodash/clone.js.map +0 -1
- package/lib/node_modules/lodash/cloneDeep.js +0 -42
- package/lib/node_modules/lodash/cloneDeep.js.map +0 -1
- package/lib/node_modules/lodash/constant.js +0 -38
- package/lib/node_modules/lodash/constant.js.map +0 -1
- package/lib/node_modules/lodash/defaults.js +0 -80
- package/lib/node_modules/lodash/defaults.js.map +0 -1
- package/lib/node_modules/lodash/each.js +0 -14
- package/lib/node_modules/lodash/each.js.map +0 -1
- package/lib/node_modules/lodash/eq.js +0 -49
- package/lib/node_modules/lodash/eq.js.map +0 -1
- package/lib/node_modules/lodash/filter.js +0 -68
- package/lib/node_modules/lodash/filter.js.map +0 -1
- package/lib/node_modules/lodash/find.js +0 -56
- package/lib/node_modules/lodash/find.js.map +0 -1
- package/lib/node_modules/lodash/findIndex.js +0 -70
- package/lib/node_modules/lodash/findIndex.js.map +0 -1
- package/lib/node_modules/lodash/flatten.js +0 -35
- package/lib/node_modules/lodash/flatten.js.map +0 -1
- package/lib/node_modules/lodash/forEach.js +0 -57
- package/lib/node_modules/lodash/forEach.js.map +0 -1
- package/lib/node_modules/lodash/forIn.js +0 -54
- package/lib/node_modules/lodash/forIn.js.map +0 -1
- package/lib/node_modules/lodash/get.js +0 -46
- package/lib/node_modules/lodash/get.js.map +0 -1
- package/lib/node_modules/lodash/has.js +0 -49
- package/lib/node_modules/lodash/has.js.map +0 -1
- package/lib/node_modules/lodash/hasIn.js +0 -48
- package/lib/node_modules/lodash/hasIn.js.map +0 -1
- package/lib/node_modules/lodash/identity.js +0 -33
- package/lib/node_modules/lodash/identity.js.map +0 -1
- package/lib/node_modules/lodash/isArguments.js +0 -50
- package/lib/node_modules/lodash/isArguments.js.map +0 -1
- package/lib/node_modules/lodash/isArray.js +0 -38
- package/lib/node_modules/lodash/isArray.js.map +0 -1
- package/lib/node_modules/lodash/isArrayLike.js +0 -47
- package/lib/node_modules/lodash/isArrayLike.js.map +0 -1
- package/lib/node_modules/lodash/isArrayLikeObject.js +0 -47
- package/lib/node_modules/lodash/isArrayLikeObject.js.map +0 -1
- package/lib/node_modules/lodash/isBuffer.js +0 -56
- package/lib/node_modules/lodash/isBuffer.js.map +0 -1
- package/lib/node_modules/lodash/isEmpty.js +0 -97
- package/lib/node_modules/lodash/isEmpty.js.map +0 -1
- package/lib/node_modules/lodash/isFunction.js +0 -51
- package/lib/node_modules/lodash/isFunction.js.map +0 -1
- package/lib/node_modules/lodash/isLength.js +0 -47
- package/lib/node_modules/lodash/isLength.js.map +0 -1
- package/lib/node_modules/lodash/isMap.js +0 -42
- package/lib/node_modules/lodash/isMap.js.map +0 -1
- package/lib/node_modules/lodash/isObject.js +0 -43
- package/lib/node_modules/lodash/isObject.js.map +0 -1
- package/lib/node_modules/lodash/isObjectLike.js +0 -41
- package/lib/node_modules/lodash/isObjectLike.js.map +0 -1
- package/lib/node_modules/lodash/isPlainObject.js +0 -77
- package/lib/node_modules/lodash/isPlainObject.js.map +0 -1
- package/lib/node_modules/lodash/isSet.js +0 -42
- package/lib/node_modules/lodash/isSet.js.map +0 -1
- package/lib/node_modules/lodash/isString.js +0 -45
- package/lib/node_modules/lodash/isString.js.map +0 -1
- package/lib/node_modules/lodash/isSymbol.js +0 -43
- package/lib/node_modules/lodash/isSymbol.js.map +0 -1
- package/lib/node_modules/lodash/isTypedArray.js +0 -42
- package/lib/node_modules/lodash/isTypedArray.js.map +0 -1
- package/lib/node_modules/lodash/isUndefined.js +0 -34
- package/lib/node_modules/lodash/isUndefined.js.map +0 -1
- package/lib/node_modules/lodash/keys.js +0 -52
- package/lib/node_modules/lodash/keys.js.map +0 -1
- package/lib/node_modules/lodash/keysIn.js +0 -47
- package/lib/node_modules/lodash/keysIn.js.map +0 -1
- package/lib/node_modules/lodash/last.js +0 -32
- package/lib/node_modules/lodash/last.js.map +0 -1
- package/lib/node_modules/lodash/map.js +0 -69
- package/lib/node_modules/lodash/map.js.map +0 -1
- package/lib/node_modules/lodash/mapValues.js +0 -58
- package/lib/node_modules/lodash/mapValues.js.map +0 -1
- package/lib/node_modules/lodash/max.js +0 -44
- package/lib/node_modules/lodash/max.js.map +0 -1
- package/lib/node_modules/lodash/memoize.js +0 -86
- package/lib/node_modules/lodash/memoize.js.map +0 -1
- package/lib/node_modules/lodash/merge.js +0 -53
- package/lib/node_modules/lodash/merge.js.map +0 -1
- package/lib/node_modules/lodash/min.js +0 -44
- package/lib/node_modules/lodash/min.js.map +0 -1
- package/lib/node_modules/lodash/minBy.js +0 -49
- package/lib/node_modules/lodash/minBy.js.map +0 -1
- package/lib/node_modules/lodash/noop.js +0 -29
- package/lib/node_modules/lodash/noop.js.map +0 -1
- package/lib/node_modules/lodash/now.js +0 -36
- package/lib/node_modules/lodash/now.js.map +0 -1
- package/lib/node_modules/lodash/pick.js +0 -39
- package/lib/node_modules/lodash/pick.js.map +0 -1
- package/lib/node_modules/lodash/property.js +0 -48
- package/lib/node_modules/lodash/property.js.map +0 -1
- package/lib/node_modules/lodash/range.js +0 -59
- package/lib/node_modules/lodash/range.js.map +0 -1
- package/lib/node_modules/lodash/reduce.js +0 -68
- package/lib/node_modules/lodash/reduce.js.map +0 -1
- package/lib/node_modules/lodash/size.js +0 -63
- package/lib/node_modules/lodash/size.js.map +0 -1
- package/lib/node_modules/lodash/sortBy.js +0 -64
- package/lib/node_modules/lodash/sortBy.js.map +0 -1
- package/lib/node_modules/lodash/stubArray.js +0 -35
- package/lib/node_modules/lodash/stubArray.js.map +0 -1
- package/lib/node_modules/lodash/stubFalse.js +0 -30
- package/lib/node_modules/lodash/stubFalse.js.map +0 -1
- package/lib/node_modules/lodash/toFinite.js +0 -55
- package/lib/node_modules/lodash/toFinite.js.map +0 -1
- package/lib/node_modules/lodash/toInteger.js +0 -49
- package/lib/node_modules/lodash/toInteger.js.map +0 -1
- package/lib/node_modules/lodash/toNumber.js +0 -79
- package/lib/node_modules/lodash/toNumber.js.map +0 -1
- package/lib/node_modules/lodash/toPlainObject.js +0 -46
- package/lib/node_modules/lodash/toPlainObject.js.map +0 -1
- package/lib/node_modules/lodash/toString.js +0 -41
- package/lib/node_modules/lodash/toString.js.map +0 -1
- package/lib/node_modules/lodash/transform.js +0 -87
- package/lib/node_modules/lodash/transform.js.map +0 -1
- package/lib/node_modules/lodash/union.js +0 -42
- package/lib/node_modules/lodash/union.js.map +0 -1
- package/lib/node_modules/lodash/uniqueId.js +0 -41
- package/lib/node_modules/lodash/uniqueId.js.map +0 -1
- package/lib/node_modules/lodash/values.js +0 -48
- package/lib/node_modules/lodash/values.js.map +0 -1
- package/lib/node_modules/lodash/zipObject.js +0 -38
- package/lib/node_modules/lodash/zipObject.js.map +0 -1
- package/lib/node_modules/ml-array-max/lib-es6/index.js +0 -37
- package/lib/node_modules/ml-array-max/lib-es6/index.js.map +0 -1
- package/lib/node_modules/ml-array-min/lib-es6/index.js +0 -37
- package/lib/node_modules/ml-array-min/lib-es6/index.js.map +0 -1
- package/lib/node_modules/ml-array-rescale/lib-es6/index.js +0 -52
- package/lib/node_modules/ml-array-rescale/lib-es6/index.js.map +0 -1
- package/lib/node_modules/ml-matrix/matrix.js +0 -8
- package/lib/node_modules/ml-matrix/matrix.js.map +0 -1
- package/lib/node_modules/ml-matrix/matrix2.js +0 -5660
- package/lib/node_modules/ml-matrix/matrix2.js.map +0 -1
- package/lib/node_modules/tslib/tslib.es6.js +0 -46
- package/lib/node_modules/tslib/tslib.es6.js.map +0 -1
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import { __require as requireLodash } from './lodash.js';
|
|
2
|
-
import { __require as requireGraphlib } from './graphlib.js';
|
|
3
|
-
import { __require as requireList } from './data/list.js';
|
|
4
|
-
|
|
5
|
-
var greedyFas;
|
|
6
|
-
var hasRequiredGreedyFas;
|
|
7
|
-
|
|
8
|
-
function requireGreedyFas () {
|
|
9
|
-
if (hasRequiredGreedyFas) return greedyFas;
|
|
10
|
-
hasRequiredGreedyFas = 1;
|
|
11
|
-
var _ = requireLodash();
|
|
12
|
-
var Graph = requireGraphlib().Graph;
|
|
13
|
-
var List = requireList();
|
|
14
|
-
|
|
15
|
-
/*
|
|
16
|
-
* A greedy heuristic for finding a feedback arc set for a graph. A feedback
|
|
17
|
-
* arc set is a set of edges that can be removed to make a graph acyclic.
|
|
18
|
-
* The algorithm comes from: P. Eades, X. Lin, and W. F. Smyth, "A fast and
|
|
19
|
-
* effective heuristic for the feedback arc set problem." This implementation
|
|
20
|
-
* adjusts that from the paper to allow for weighted edges.
|
|
21
|
-
*/
|
|
22
|
-
greedyFas = greedyFAS;
|
|
23
|
-
|
|
24
|
-
var DEFAULT_WEIGHT_FN = _.constant(1);
|
|
25
|
-
|
|
26
|
-
function greedyFAS(g, weightFn) {
|
|
27
|
-
if (g.nodeCount() <= 1) {
|
|
28
|
-
return [];
|
|
29
|
-
}
|
|
30
|
-
var state = buildState(g, weightFn || DEFAULT_WEIGHT_FN);
|
|
31
|
-
var results = doGreedyFAS(state.graph, state.buckets, state.zeroIdx);
|
|
32
|
-
|
|
33
|
-
// Expand multi-edges
|
|
34
|
-
return _.flatten(_.map(results, function(e) {
|
|
35
|
-
return g.outEdges(e.v, e.w);
|
|
36
|
-
}), true);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
function doGreedyFAS(g, buckets, zeroIdx) {
|
|
40
|
-
var results = [];
|
|
41
|
-
var sources = buckets[buckets.length - 1];
|
|
42
|
-
var sinks = buckets[0];
|
|
43
|
-
|
|
44
|
-
var entry;
|
|
45
|
-
while (g.nodeCount()) {
|
|
46
|
-
while ((entry = sinks.dequeue())) { removeNode(g, buckets, zeroIdx, entry); }
|
|
47
|
-
while ((entry = sources.dequeue())) { removeNode(g, buckets, zeroIdx, entry); }
|
|
48
|
-
if (g.nodeCount()) {
|
|
49
|
-
for (var i = buckets.length - 2; i > 0; --i) {
|
|
50
|
-
entry = buckets[i].dequeue();
|
|
51
|
-
if (entry) {
|
|
52
|
-
results = results.concat(removeNode(g, buckets, zeroIdx, entry, true));
|
|
53
|
-
break;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
return results;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
function removeNode(g, buckets, zeroIdx, entry, collectPredecessors) {
|
|
63
|
-
var results = collectPredecessors ? [] : undefined;
|
|
64
|
-
|
|
65
|
-
_.forEach(g.inEdges(entry.v), function(edge) {
|
|
66
|
-
var weight = g.edge(edge);
|
|
67
|
-
var uEntry = g.node(edge.v);
|
|
68
|
-
|
|
69
|
-
if (collectPredecessors) {
|
|
70
|
-
results.push({ v: edge.v, w: edge.w });
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
uEntry.out -= weight;
|
|
74
|
-
assignBucket(buckets, zeroIdx, uEntry);
|
|
75
|
-
});
|
|
76
|
-
|
|
77
|
-
_.forEach(g.outEdges(entry.v), function(edge) {
|
|
78
|
-
var weight = g.edge(edge);
|
|
79
|
-
var w = edge.w;
|
|
80
|
-
var wEntry = g.node(w);
|
|
81
|
-
wEntry["in"] -= weight;
|
|
82
|
-
assignBucket(buckets, zeroIdx, wEntry);
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
g.removeNode(entry.v);
|
|
86
|
-
|
|
87
|
-
return results;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
function buildState(g, weightFn) {
|
|
91
|
-
var fasGraph = new Graph();
|
|
92
|
-
var maxIn = 0;
|
|
93
|
-
var maxOut = 0;
|
|
94
|
-
|
|
95
|
-
_.forEach(g.nodes(), function(v) {
|
|
96
|
-
fasGraph.setNode(v, { v: v, "in": 0, out: 0 });
|
|
97
|
-
});
|
|
98
|
-
|
|
99
|
-
// Aggregate weights on nodes, but also sum the weights across multi-edges
|
|
100
|
-
// into a single edge for the fasGraph.
|
|
101
|
-
_.forEach(g.edges(), function(e) {
|
|
102
|
-
var prevWeight = fasGraph.edge(e.v, e.w) || 0;
|
|
103
|
-
var weight = weightFn(e);
|
|
104
|
-
var edgeWeight = prevWeight + weight;
|
|
105
|
-
fasGraph.setEdge(e.v, e.w, edgeWeight);
|
|
106
|
-
maxOut = Math.max(maxOut, fasGraph.node(e.v).out += weight);
|
|
107
|
-
maxIn = Math.max(maxIn, fasGraph.node(e.w)["in"] += weight);
|
|
108
|
-
});
|
|
109
|
-
|
|
110
|
-
var buckets = _.range(maxOut + maxIn + 3).map(function() { return new List(); });
|
|
111
|
-
var zeroIdx = maxIn + 1;
|
|
112
|
-
|
|
113
|
-
_.forEach(fasGraph.nodes(), function(v) {
|
|
114
|
-
assignBucket(buckets, zeroIdx, fasGraph.node(v));
|
|
115
|
-
});
|
|
116
|
-
|
|
117
|
-
return { graph: fasGraph, buckets: buckets, zeroIdx: zeroIdx };
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
function assignBucket(buckets, zeroIdx, entry) {
|
|
121
|
-
if (!entry.out) {
|
|
122
|
-
buckets[0].enqueue(entry);
|
|
123
|
-
} else if (!entry["in"]) {
|
|
124
|
-
buckets[buckets.length - 1].enqueue(entry);
|
|
125
|
-
} else {
|
|
126
|
-
buckets[entry.out - entry["in"] + zeroIdx].enqueue(entry);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
return greedyFas;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
export { requireGreedyFas as __require };
|
|
133
|
-
//# sourceMappingURL=greedy-fas.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"greedy-fas.js","sources":["../../../../node_modules/dagre/lib/greedy-fas.js"],"sourcesContent":["var _ = require(\"./lodash\");\nvar Graph = require(\"./graphlib\").Graph;\nvar List = require(\"./data/list\");\n\n/*\n * A greedy heuristic for finding a feedback arc set for a graph. A feedback\n * arc set is a set of edges that can be removed to make a graph acyclic.\n * The algorithm comes from: P. Eades, X. Lin, and W. F. Smyth, \"A fast and\n * effective heuristic for the feedback arc set problem.\" This implementation\n * adjusts that from the paper to allow for weighted edges.\n */\nmodule.exports = greedyFAS;\n\nvar DEFAULT_WEIGHT_FN = _.constant(1);\n\nfunction greedyFAS(g, weightFn) {\n if (g.nodeCount() <= 1) {\n return [];\n }\n var state = buildState(g, weightFn || DEFAULT_WEIGHT_FN);\n var results = doGreedyFAS(state.graph, state.buckets, state.zeroIdx);\n\n // Expand multi-edges\n return _.flatten(_.map(results, function(e) {\n return g.outEdges(e.v, e.w);\n }), true);\n}\n\nfunction doGreedyFAS(g, buckets, zeroIdx) {\n var results = [];\n var sources = buckets[buckets.length - 1];\n var sinks = buckets[0];\n\n var entry;\n while (g.nodeCount()) {\n while ((entry = sinks.dequeue())) { removeNode(g, buckets, zeroIdx, entry); }\n while ((entry = sources.dequeue())) { removeNode(g, buckets, zeroIdx, entry); }\n if (g.nodeCount()) {\n for (var i = buckets.length - 2; i > 0; --i) {\n entry = buckets[i].dequeue();\n if (entry) {\n results = results.concat(removeNode(g, buckets, zeroIdx, entry, true));\n break;\n }\n }\n }\n }\n\n return results;\n}\n\nfunction removeNode(g, buckets, zeroIdx, entry, collectPredecessors) {\n var results = collectPredecessors ? [] : undefined;\n\n _.forEach(g.inEdges(entry.v), function(edge) {\n var weight = g.edge(edge);\n var uEntry = g.node(edge.v);\n\n if (collectPredecessors) {\n results.push({ v: edge.v, w: edge.w });\n }\n\n uEntry.out -= weight;\n assignBucket(buckets, zeroIdx, uEntry);\n });\n\n _.forEach(g.outEdges(entry.v), function(edge) {\n var weight = g.edge(edge);\n var w = edge.w;\n var wEntry = g.node(w);\n wEntry[\"in\"] -= weight;\n assignBucket(buckets, zeroIdx, wEntry);\n });\n\n g.removeNode(entry.v);\n\n return results;\n}\n\nfunction buildState(g, weightFn) {\n var fasGraph = new Graph();\n var maxIn = 0;\n var maxOut = 0;\n\n _.forEach(g.nodes(), function(v) {\n fasGraph.setNode(v, { v: v, \"in\": 0, out: 0 });\n });\n\n // Aggregate weights on nodes, but also sum the weights across multi-edges\n // into a single edge for the fasGraph.\n _.forEach(g.edges(), function(e) {\n var prevWeight = fasGraph.edge(e.v, e.w) || 0;\n var weight = weightFn(e);\n var edgeWeight = prevWeight + weight;\n fasGraph.setEdge(e.v, e.w, edgeWeight);\n maxOut = Math.max(maxOut, fasGraph.node(e.v).out += weight);\n maxIn = Math.max(maxIn, fasGraph.node(e.w)[\"in\"] += weight);\n });\n\n var buckets = _.range(maxOut + maxIn + 3).map(function() { return new List(); });\n var zeroIdx = maxIn + 1;\n\n _.forEach(fasGraph.nodes(), function(v) {\n assignBucket(buckets, zeroIdx, fasGraph.node(v));\n });\n\n return { graph: fasGraph, buckets: buckets, zeroIdx: zeroIdx };\n}\n\nfunction assignBucket(buckets, zeroIdx, entry) {\n if (!entry.out) {\n buckets[0].enqueue(entry);\n } else if (!entry[\"in\"]) {\n buckets[buckets.length - 1].enqueue(entry);\n } else {\n buckets[entry.out - entry[\"in\"] + zeroIdx].enqueue(entry);\n }\n}\n"],"names":["require$$0","require$$1","require$$2"],"mappings":";;;;;;;;;;CAAA,IAAI,CAAC,GAAGA,aAAA,EAAmB;AAC3B,CAAA,IAAI,KAAK,GAAGC,eAAA,EAAqB,CAAC,KAAK;CACvC,IAAI,IAAI,GAAGC,WAAA,EAAsB;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAA,SAAc,GAAG,SAAS;;AAE1B,CAAA,IAAI,iBAAiB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;;AAErC,CAAA,SAAS,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE;AAChC,GAAE,IAAI,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE;AAC1B,KAAI,OAAO,EAAE;AACb,GAAA;GACE,IAAI,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,QAAQ,IAAI,iBAAiB,CAAC;AAC1D,GAAE,IAAI,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;;AAEtE;AACA,GAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;AAC9C,KAAI,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;GAC/B,CAAG,CAAC,EAAE,IAAI,CAAC;AACX,CAAA;;AAEA,CAAA,SAAS,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE;GACxC,IAAI,OAAO,GAAG,EAAE;GAChB,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AAC3C,GAAE,IAAI,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC;;AAExB,GAAE,IAAI,KAAK;AACX,GAAE,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;AACxB,KAAI,QAAQ,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;AACjF,KAAI,QAAQ,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;AACjF,KAAI,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;AACvB,OAAM,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;SAC3C,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;SAC5B,IAAI,KAAK,EAAE;AACnB,WAAU,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;WACtE;AACV,SAAA;AACA,OAAA;AACA,KAAA;AACA,GAAA;;AAEA,GAAE,OAAO,OAAO;AAChB,CAAA;;CAEA,SAAS,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE;AACrE,GAAE,IAAI,OAAO,GAAG,mBAAmB,GAAG,EAAE,GAAG,SAAS;;AAEpD,GAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,EAAE;KAC3C,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACzB,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;;KAE3B,IAAI,mBAAmB,EAAE;AAC7B,OAAM,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;AAC5C,KAAA;;AAEA,KAAI,MAAM,CAAC,GAAG,IAAI,MAAM;AACxB,KAAI,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC;AAC1C,GAAA,CAAG,CAAC;;AAEJ,GAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,EAAE;KAC5C,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AAC7B,KAAI,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;KACd,IAAI,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1B,KAAI,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM;AAC1B,KAAI,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC;AAC1C,GAAA,CAAG,CAAC;;AAEJ,GAAE,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;;AAEvB,GAAE,OAAO,OAAO;AAChB,CAAA;;AAEA,CAAA,SAAS,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE;AACjC,GAAE,IAAI,QAAQ,GAAG,IAAI,KAAK,EAAE;GAC1B,IAAI,KAAK,GAAG,CAAC;GACb,IAAI,MAAM,GAAG,CAAC;;GAEd,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,EAAE;AACnC,KAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AAClD,GAAA,CAAG,CAAC;;AAEJ;AACA;GACE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,EAAE;AACnC,KAAI,IAAI,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,KAAI,IAAI,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC;AAC5B,KAAI,IAAI,UAAU,GAAG,UAAU,GAAG,MAAM;AACxC,KAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;KACtC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC;KAC3D,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC;AAClE,GAAA,CAAG,CAAC;;GAEF,IAAI,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,IAAI,IAAI,EAAE,CAAC,CAAA,CAAE,CAAC;AAClF,GAAE,IAAI,OAAO,GAAG,KAAK,GAAG,CAAC;;GAEvB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,EAAE;AAC1C,KAAI,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpD,GAAA,CAAG,CAAC;;AAEJ,GAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE;AAChE,CAAA;;AAEA,CAAA,SAAS,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;AAC/C,GAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;KACd,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAC7B,GAAA,CAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC3B,KAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAC9C,GAAA,CAAG,MAAM;AACT,KAAI,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAC7D,GAAA;AACA,CAAA;;;;;;","x_google_ignoreList":[0]}
|
|
@@ -1,415 +0,0 @@
|
|
|
1
|
-
import { __require as requireLodash } from './lodash.js';
|
|
2
|
-
import { __require as requireAcyclic } from './acyclic.js';
|
|
3
|
-
import { __require as requireNormalize } from './normalize.js';
|
|
4
|
-
import { __require as requireRank } from './rank/index.js';
|
|
5
|
-
import { __require as requireUtil } from './util.js';
|
|
6
|
-
import { __require as requireParentDummyChains } from './parent-dummy-chains.js';
|
|
7
|
-
import { __require as requireNestingGraph } from './nesting-graph.js';
|
|
8
|
-
import { __require as requireAddBorderSegments } from './add-border-segments.js';
|
|
9
|
-
import { __require as requireCoordinateSystem } from './coordinate-system.js';
|
|
10
|
-
import { __require as requireOrder } from './order/index.js';
|
|
11
|
-
import { __require as requirePosition } from './position/index.js';
|
|
12
|
-
import { __require as requireGraphlib } from './graphlib.js';
|
|
13
|
-
|
|
14
|
-
var layout_1;
|
|
15
|
-
var hasRequiredLayout;
|
|
16
|
-
|
|
17
|
-
function requireLayout () {
|
|
18
|
-
if (hasRequiredLayout) return layout_1;
|
|
19
|
-
hasRequiredLayout = 1;
|
|
20
|
-
|
|
21
|
-
var _ = requireLodash();
|
|
22
|
-
var acyclic = requireAcyclic();
|
|
23
|
-
var normalize = requireNormalize();
|
|
24
|
-
var rank = requireRank();
|
|
25
|
-
var normalizeRanks = requireUtil().normalizeRanks;
|
|
26
|
-
var parentDummyChains = requireParentDummyChains();
|
|
27
|
-
var removeEmptyRanks = requireUtil().removeEmptyRanks;
|
|
28
|
-
var nestingGraph = requireNestingGraph();
|
|
29
|
-
var addBorderSegments = requireAddBorderSegments();
|
|
30
|
-
var coordinateSystem = requireCoordinateSystem();
|
|
31
|
-
var order = requireOrder();
|
|
32
|
-
var position = requirePosition();
|
|
33
|
-
var util = requireUtil();
|
|
34
|
-
var Graph = requireGraphlib().Graph;
|
|
35
|
-
|
|
36
|
-
layout_1 = layout;
|
|
37
|
-
|
|
38
|
-
function layout(g, opts) {
|
|
39
|
-
var time = opts && opts.debugTiming ? util.time : util.notime;
|
|
40
|
-
time("layout", function() {
|
|
41
|
-
var layoutGraph =
|
|
42
|
-
time(" buildLayoutGraph", function() { return buildLayoutGraph(g); });
|
|
43
|
-
time(" runLayout", function() { runLayout(layoutGraph, time); });
|
|
44
|
-
time(" updateInputGraph", function() { updateInputGraph(g, layoutGraph); });
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
function runLayout(g, time) {
|
|
49
|
-
time(" makeSpaceForEdgeLabels", function() { makeSpaceForEdgeLabels(g); });
|
|
50
|
-
time(" removeSelfEdges", function() { removeSelfEdges(g); });
|
|
51
|
-
time(" acyclic", function() { acyclic.run(g); });
|
|
52
|
-
time(" nestingGraph.run", function() { nestingGraph.run(g); });
|
|
53
|
-
time(" rank", function() { rank(util.asNonCompoundGraph(g)); });
|
|
54
|
-
time(" injectEdgeLabelProxies", function() { injectEdgeLabelProxies(g); });
|
|
55
|
-
time(" removeEmptyRanks", function() { removeEmptyRanks(g); });
|
|
56
|
-
time(" nestingGraph.cleanup", function() { nestingGraph.cleanup(g); });
|
|
57
|
-
time(" normalizeRanks", function() { normalizeRanks(g); });
|
|
58
|
-
time(" assignRankMinMax", function() { assignRankMinMax(g); });
|
|
59
|
-
time(" removeEdgeLabelProxies", function() { removeEdgeLabelProxies(g); });
|
|
60
|
-
time(" normalize.run", function() { normalize.run(g); });
|
|
61
|
-
time(" parentDummyChains", function() { parentDummyChains(g); });
|
|
62
|
-
time(" addBorderSegments", function() { addBorderSegments(g); });
|
|
63
|
-
time(" order", function() { order(g); });
|
|
64
|
-
time(" insertSelfEdges", function() { insertSelfEdges(g); });
|
|
65
|
-
time(" adjustCoordinateSystem", function() { coordinateSystem.adjust(g); });
|
|
66
|
-
time(" position", function() { position(g); });
|
|
67
|
-
time(" positionSelfEdges", function() { positionSelfEdges(g); });
|
|
68
|
-
time(" removeBorderNodes", function() { removeBorderNodes(g); });
|
|
69
|
-
time(" normalize.undo", function() { normalize.undo(g); });
|
|
70
|
-
time(" fixupEdgeLabelCoords", function() { fixupEdgeLabelCoords(g); });
|
|
71
|
-
time(" undoCoordinateSystem", function() { coordinateSystem.undo(g); });
|
|
72
|
-
time(" translateGraph", function() { translateGraph(g); });
|
|
73
|
-
time(" assignNodeIntersects", function() { assignNodeIntersects(g); });
|
|
74
|
-
time(" reversePoints", function() { reversePointsForReversedEdges(g); });
|
|
75
|
-
time(" acyclic.undo", function() { acyclic.undo(g); });
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/*
|
|
79
|
-
* Copies final layout information from the layout graph back to the input
|
|
80
|
-
* graph. This process only copies whitelisted attributes from the layout graph
|
|
81
|
-
* to the input graph, so it serves as a good place to determine what
|
|
82
|
-
* attributes can influence layout.
|
|
83
|
-
*/
|
|
84
|
-
function updateInputGraph(inputGraph, layoutGraph) {
|
|
85
|
-
_.forEach(inputGraph.nodes(), function(v) {
|
|
86
|
-
var inputLabel = inputGraph.node(v);
|
|
87
|
-
var layoutLabel = layoutGraph.node(v);
|
|
88
|
-
|
|
89
|
-
if (inputLabel) {
|
|
90
|
-
inputLabel.x = layoutLabel.x;
|
|
91
|
-
inputLabel.y = layoutLabel.y;
|
|
92
|
-
|
|
93
|
-
if (layoutGraph.children(v).length) {
|
|
94
|
-
inputLabel.width = layoutLabel.width;
|
|
95
|
-
inputLabel.height = layoutLabel.height;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
});
|
|
99
|
-
|
|
100
|
-
_.forEach(inputGraph.edges(), function(e) {
|
|
101
|
-
var inputLabel = inputGraph.edge(e);
|
|
102
|
-
var layoutLabel = layoutGraph.edge(e);
|
|
103
|
-
|
|
104
|
-
inputLabel.points = layoutLabel.points;
|
|
105
|
-
if (_.has(layoutLabel, "x")) {
|
|
106
|
-
inputLabel.x = layoutLabel.x;
|
|
107
|
-
inputLabel.y = layoutLabel.y;
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
|
|
111
|
-
inputGraph.graph().width = layoutGraph.graph().width;
|
|
112
|
-
inputGraph.graph().height = layoutGraph.graph().height;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
var graphNumAttrs = ["nodesep", "edgesep", "ranksep", "marginx", "marginy"];
|
|
116
|
-
var graphDefaults = { ranksep: 50, edgesep: 20, nodesep: 50, rankdir: "tb" };
|
|
117
|
-
var graphAttrs = ["acyclicer", "ranker", "rankdir", "align"];
|
|
118
|
-
var nodeNumAttrs = ["width", "height"];
|
|
119
|
-
var nodeDefaults = { width: 0, height: 0 };
|
|
120
|
-
var edgeNumAttrs = ["minlen", "weight", "width", "height", "labeloffset"];
|
|
121
|
-
var edgeDefaults = {
|
|
122
|
-
minlen: 1, weight: 1, width: 0, height: 0,
|
|
123
|
-
labeloffset: 10, labelpos: "r"
|
|
124
|
-
};
|
|
125
|
-
var edgeAttrs = ["labelpos"];
|
|
126
|
-
|
|
127
|
-
/*
|
|
128
|
-
* Constructs a new graph from the input graph, which can be used for layout.
|
|
129
|
-
* This process copies only whitelisted attributes from the input graph to the
|
|
130
|
-
* layout graph. Thus this function serves as a good place to determine what
|
|
131
|
-
* attributes can influence layout.
|
|
132
|
-
*/
|
|
133
|
-
function buildLayoutGraph(inputGraph) {
|
|
134
|
-
var g = new Graph({ multigraph: true, compound: true });
|
|
135
|
-
var graph = canonicalize(inputGraph.graph());
|
|
136
|
-
|
|
137
|
-
g.setGraph(_.merge({},
|
|
138
|
-
graphDefaults,
|
|
139
|
-
selectNumberAttrs(graph, graphNumAttrs),
|
|
140
|
-
_.pick(graph, graphAttrs)));
|
|
141
|
-
|
|
142
|
-
_.forEach(inputGraph.nodes(), function(v) {
|
|
143
|
-
var node = canonicalize(inputGraph.node(v));
|
|
144
|
-
g.setNode(v, _.defaults(selectNumberAttrs(node, nodeNumAttrs), nodeDefaults));
|
|
145
|
-
g.setParent(v, inputGraph.parent(v));
|
|
146
|
-
});
|
|
147
|
-
|
|
148
|
-
_.forEach(inputGraph.edges(), function(e) {
|
|
149
|
-
var edge = canonicalize(inputGraph.edge(e));
|
|
150
|
-
g.setEdge(e, _.merge({},
|
|
151
|
-
edgeDefaults,
|
|
152
|
-
selectNumberAttrs(edge, edgeNumAttrs),
|
|
153
|
-
_.pick(edge, edgeAttrs)));
|
|
154
|
-
});
|
|
155
|
-
|
|
156
|
-
return g;
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
/*
|
|
160
|
-
* This idea comes from the Gansner paper: to account for edge labels in our
|
|
161
|
-
* layout we split each rank in half by doubling minlen and halving ranksep.
|
|
162
|
-
* Then we can place labels at these mid-points between nodes.
|
|
163
|
-
*
|
|
164
|
-
* We also add some minimal padding to the width to push the label for the edge
|
|
165
|
-
* away from the edge itself a bit.
|
|
166
|
-
*/
|
|
167
|
-
function makeSpaceForEdgeLabels(g) {
|
|
168
|
-
var graph = g.graph();
|
|
169
|
-
graph.ranksep /= 2;
|
|
170
|
-
_.forEach(g.edges(), function(e) {
|
|
171
|
-
var edge = g.edge(e);
|
|
172
|
-
edge.minlen *= 2;
|
|
173
|
-
if (edge.labelpos.toLowerCase() !== "c") {
|
|
174
|
-
if (graph.rankdir === "TB" || graph.rankdir === "BT") {
|
|
175
|
-
edge.width += edge.labeloffset;
|
|
176
|
-
} else {
|
|
177
|
-
edge.height += edge.labeloffset;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
});
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
/*
|
|
184
|
-
* Creates temporary dummy nodes that capture the rank in which each edge's
|
|
185
|
-
* label is going to, if it has one of non-zero width and height. We do this
|
|
186
|
-
* so that we can safely remove empty ranks while preserving balance for the
|
|
187
|
-
* label's position.
|
|
188
|
-
*/
|
|
189
|
-
function injectEdgeLabelProxies(g) {
|
|
190
|
-
_.forEach(g.edges(), function(e) {
|
|
191
|
-
var edge = g.edge(e);
|
|
192
|
-
if (edge.width && edge.height) {
|
|
193
|
-
var v = g.node(e.v);
|
|
194
|
-
var w = g.node(e.w);
|
|
195
|
-
var label = { rank: (w.rank - v.rank) / 2 + v.rank, e: e };
|
|
196
|
-
util.addDummyNode(g, "edge-proxy", label, "_ep");
|
|
197
|
-
}
|
|
198
|
-
});
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
function assignRankMinMax(g) {
|
|
202
|
-
var maxRank = 0;
|
|
203
|
-
_.forEach(g.nodes(), function(v) {
|
|
204
|
-
var node = g.node(v);
|
|
205
|
-
if (node.borderTop) {
|
|
206
|
-
node.minRank = g.node(node.borderTop).rank;
|
|
207
|
-
node.maxRank = g.node(node.borderBottom).rank;
|
|
208
|
-
maxRank = _.max(maxRank, node.maxRank);
|
|
209
|
-
}
|
|
210
|
-
});
|
|
211
|
-
g.graph().maxRank = maxRank;
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
function removeEdgeLabelProxies(g) {
|
|
215
|
-
_.forEach(g.nodes(), function(v) {
|
|
216
|
-
var node = g.node(v);
|
|
217
|
-
if (node.dummy === "edge-proxy") {
|
|
218
|
-
g.edge(node.e).labelRank = node.rank;
|
|
219
|
-
g.removeNode(v);
|
|
220
|
-
}
|
|
221
|
-
});
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
function translateGraph(g) {
|
|
225
|
-
var minX = Number.POSITIVE_INFINITY;
|
|
226
|
-
var maxX = 0;
|
|
227
|
-
var minY = Number.POSITIVE_INFINITY;
|
|
228
|
-
var maxY = 0;
|
|
229
|
-
var graphLabel = g.graph();
|
|
230
|
-
var marginX = graphLabel.marginx || 0;
|
|
231
|
-
var marginY = graphLabel.marginy || 0;
|
|
232
|
-
|
|
233
|
-
function getExtremes(attrs) {
|
|
234
|
-
var x = attrs.x;
|
|
235
|
-
var y = attrs.y;
|
|
236
|
-
var w = attrs.width;
|
|
237
|
-
var h = attrs.height;
|
|
238
|
-
minX = Math.min(minX, x - w / 2);
|
|
239
|
-
maxX = Math.max(maxX, x + w / 2);
|
|
240
|
-
minY = Math.min(minY, y - h / 2);
|
|
241
|
-
maxY = Math.max(maxY, y + h / 2);
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
_.forEach(g.nodes(), function(v) { getExtremes(g.node(v)); });
|
|
245
|
-
_.forEach(g.edges(), function(e) {
|
|
246
|
-
var edge = g.edge(e);
|
|
247
|
-
if (_.has(edge, "x")) {
|
|
248
|
-
getExtremes(edge);
|
|
249
|
-
}
|
|
250
|
-
});
|
|
251
|
-
|
|
252
|
-
minX -= marginX;
|
|
253
|
-
minY -= marginY;
|
|
254
|
-
|
|
255
|
-
_.forEach(g.nodes(), function(v) {
|
|
256
|
-
var node = g.node(v);
|
|
257
|
-
node.x -= minX;
|
|
258
|
-
node.y -= minY;
|
|
259
|
-
});
|
|
260
|
-
|
|
261
|
-
_.forEach(g.edges(), function(e) {
|
|
262
|
-
var edge = g.edge(e);
|
|
263
|
-
_.forEach(edge.points, function(p) {
|
|
264
|
-
p.x -= minX;
|
|
265
|
-
p.y -= minY;
|
|
266
|
-
});
|
|
267
|
-
if (_.has(edge, "x")) { edge.x -= minX; }
|
|
268
|
-
if (_.has(edge, "y")) { edge.y -= minY; }
|
|
269
|
-
});
|
|
270
|
-
|
|
271
|
-
graphLabel.width = maxX - minX + marginX;
|
|
272
|
-
graphLabel.height = maxY - minY + marginY;
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
function assignNodeIntersects(g) {
|
|
276
|
-
_.forEach(g.edges(), function(e) {
|
|
277
|
-
var edge = g.edge(e);
|
|
278
|
-
var nodeV = g.node(e.v);
|
|
279
|
-
var nodeW = g.node(e.w);
|
|
280
|
-
var p1, p2;
|
|
281
|
-
if (!edge.points) {
|
|
282
|
-
edge.points = [];
|
|
283
|
-
p1 = nodeW;
|
|
284
|
-
p2 = nodeV;
|
|
285
|
-
} else {
|
|
286
|
-
p1 = edge.points[0];
|
|
287
|
-
p2 = edge.points[edge.points.length - 1];
|
|
288
|
-
}
|
|
289
|
-
edge.points.unshift(util.intersectRect(nodeV, p1));
|
|
290
|
-
edge.points.push(util.intersectRect(nodeW, p2));
|
|
291
|
-
});
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
function fixupEdgeLabelCoords(g) {
|
|
295
|
-
_.forEach(g.edges(), function(e) {
|
|
296
|
-
var edge = g.edge(e);
|
|
297
|
-
if (_.has(edge, "x")) {
|
|
298
|
-
if (edge.labelpos === "l" || edge.labelpos === "r") {
|
|
299
|
-
edge.width -= edge.labeloffset;
|
|
300
|
-
}
|
|
301
|
-
switch (edge.labelpos) {
|
|
302
|
-
case "l": edge.x -= edge.width / 2 + edge.labeloffset; break;
|
|
303
|
-
case "r": edge.x += edge.width / 2 + edge.labeloffset; break;
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
});
|
|
307
|
-
}
|
|
308
|
-
|
|
309
|
-
function reversePointsForReversedEdges(g) {
|
|
310
|
-
_.forEach(g.edges(), function(e) {
|
|
311
|
-
var edge = g.edge(e);
|
|
312
|
-
if (edge.reversed) {
|
|
313
|
-
edge.points.reverse();
|
|
314
|
-
}
|
|
315
|
-
});
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
function removeBorderNodes(g) {
|
|
319
|
-
_.forEach(g.nodes(), function(v) {
|
|
320
|
-
if (g.children(v).length) {
|
|
321
|
-
var node = g.node(v);
|
|
322
|
-
var t = g.node(node.borderTop);
|
|
323
|
-
var b = g.node(node.borderBottom);
|
|
324
|
-
var l = g.node(_.last(node.borderLeft));
|
|
325
|
-
var r = g.node(_.last(node.borderRight));
|
|
326
|
-
|
|
327
|
-
node.width = Math.abs(r.x - l.x);
|
|
328
|
-
node.height = Math.abs(b.y - t.y);
|
|
329
|
-
node.x = l.x + node.width / 2;
|
|
330
|
-
node.y = t.y + node.height / 2;
|
|
331
|
-
}
|
|
332
|
-
});
|
|
333
|
-
|
|
334
|
-
_.forEach(g.nodes(), function(v) {
|
|
335
|
-
if (g.node(v).dummy === "border") {
|
|
336
|
-
g.removeNode(v);
|
|
337
|
-
}
|
|
338
|
-
});
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
function removeSelfEdges(g) {
|
|
342
|
-
_.forEach(g.edges(), function(e) {
|
|
343
|
-
if (e.v === e.w) {
|
|
344
|
-
var node = g.node(e.v);
|
|
345
|
-
if (!node.selfEdges) {
|
|
346
|
-
node.selfEdges = [];
|
|
347
|
-
}
|
|
348
|
-
node.selfEdges.push({ e: e, label: g.edge(e) });
|
|
349
|
-
g.removeEdge(e);
|
|
350
|
-
}
|
|
351
|
-
});
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
function insertSelfEdges(g) {
|
|
355
|
-
var layers = util.buildLayerMatrix(g);
|
|
356
|
-
_.forEach(layers, function(layer) {
|
|
357
|
-
var orderShift = 0;
|
|
358
|
-
_.forEach(layer, function(v, i) {
|
|
359
|
-
var node = g.node(v);
|
|
360
|
-
node.order = i + orderShift;
|
|
361
|
-
_.forEach(node.selfEdges, function(selfEdge) {
|
|
362
|
-
util.addDummyNode(g, "selfedge", {
|
|
363
|
-
width: selfEdge.label.width,
|
|
364
|
-
height: selfEdge.label.height,
|
|
365
|
-
rank: node.rank,
|
|
366
|
-
order: i + (++orderShift),
|
|
367
|
-
e: selfEdge.e,
|
|
368
|
-
label: selfEdge.label
|
|
369
|
-
}, "_se");
|
|
370
|
-
});
|
|
371
|
-
delete node.selfEdges;
|
|
372
|
-
});
|
|
373
|
-
});
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
function positionSelfEdges(g) {
|
|
377
|
-
_.forEach(g.nodes(), function(v) {
|
|
378
|
-
var node = g.node(v);
|
|
379
|
-
if (node.dummy === "selfedge") {
|
|
380
|
-
var selfNode = g.node(node.e.v);
|
|
381
|
-
var x = selfNode.x + selfNode.width / 2;
|
|
382
|
-
var y = selfNode.y;
|
|
383
|
-
var dx = node.x - x;
|
|
384
|
-
var dy = selfNode.height / 2;
|
|
385
|
-
g.setEdge(node.e, node.label);
|
|
386
|
-
g.removeNode(v);
|
|
387
|
-
node.label.points = [
|
|
388
|
-
{ x: x + 2 * dx / 3, y: y - dy },
|
|
389
|
-
{ x: x + 5 * dx / 6, y: y - dy },
|
|
390
|
-
{ x: x + dx , y: y },
|
|
391
|
-
{ x: x + 5 * dx / 6, y: y + dy },
|
|
392
|
-
{ x: x + 2 * dx / 3, y: y + dy }
|
|
393
|
-
];
|
|
394
|
-
node.label.x = node.x;
|
|
395
|
-
node.label.y = node.y;
|
|
396
|
-
}
|
|
397
|
-
});
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
function selectNumberAttrs(obj, attrs) {
|
|
401
|
-
return _.mapValues(_.pick(obj, attrs), Number);
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
function canonicalize(attrs) {
|
|
405
|
-
var newAttrs = {};
|
|
406
|
-
_.forEach(attrs, function(v, k) {
|
|
407
|
-
newAttrs[k.toLowerCase()] = v;
|
|
408
|
-
});
|
|
409
|
-
return newAttrs;
|
|
410
|
-
}
|
|
411
|
-
return layout_1;
|
|
412
|
-
}
|
|
413
|
-
|
|
414
|
-
export { requireLayout as __require };
|
|
415
|
-
//# sourceMappingURL=layout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","sources":["../../../../node_modules/dagre/lib/layout.js"],"sourcesContent":["\"use strict\";\n\nvar _ = require(\"./lodash\");\nvar acyclic = require(\"./acyclic\");\nvar normalize = require(\"./normalize\");\nvar rank = require(\"./rank\");\nvar normalizeRanks = require(\"./util\").normalizeRanks;\nvar parentDummyChains = require(\"./parent-dummy-chains\");\nvar removeEmptyRanks = require(\"./util\").removeEmptyRanks;\nvar nestingGraph = require(\"./nesting-graph\");\nvar addBorderSegments = require(\"./add-border-segments\");\nvar coordinateSystem = require(\"./coordinate-system\");\nvar order = require(\"./order\");\nvar position = require(\"./position\");\nvar util = require(\"./util\");\nvar Graph = require(\"./graphlib\").Graph;\n\nmodule.exports = layout;\n\nfunction layout(g, opts) {\n var time = opts && opts.debugTiming ? util.time : util.notime;\n time(\"layout\", function() {\n var layoutGraph = \n time(\" buildLayoutGraph\", function() { return buildLayoutGraph(g); });\n time(\" runLayout\", function() { runLayout(layoutGraph, time); });\n time(\" updateInputGraph\", function() { updateInputGraph(g, layoutGraph); });\n });\n}\n\nfunction runLayout(g, time) {\n time(\" makeSpaceForEdgeLabels\", function() { makeSpaceForEdgeLabels(g); });\n time(\" removeSelfEdges\", function() { removeSelfEdges(g); });\n time(\" acyclic\", function() { acyclic.run(g); });\n time(\" nestingGraph.run\", function() { nestingGraph.run(g); });\n time(\" rank\", function() { rank(util.asNonCompoundGraph(g)); });\n time(\" injectEdgeLabelProxies\", function() { injectEdgeLabelProxies(g); });\n time(\" removeEmptyRanks\", function() { removeEmptyRanks(g); });\n time(\" nestingGraph.cleanup\", function() { nestingGraph.cleanup(g); });\n time(\" normalizeRanks\", function() { normalizeRanks(g); });\n time(\" assignRankMinMax\", function() { assignRankMinMax(g); });\n time(\" removeEdgeLabelProxies\", function() { removeEdgeLabelProxies(g); });\n time(\" normalize.run\", function() { normalize.run(g); });\n time(\" parentDummyChains\", function() { parentDummyChains(g); });\n time(\" addBorderSegments\", function() { addBorderSegments(g); });\n time(\" order\", function() { order(g); });\n time(\" insertSelfEdges\", function() { insertSelfEdges(g); });\n time(\" adjustCoordinateSystem\", function() { coordinateSystem.adjust(g); });\n time(\" position\", function() { position(g); });\n time(\" positionSelfEdges\", function() { positionSelfEdges(g); });\n time(\" removeBorderNodes\", function() { removeBorderNodes(g); });\n time(\" normalize.undo\", function() { normalize.undo(g); });\n time(\" fixupEdgeLabelCoords\", function() { fixupEdgeLabelCoords(g); });\n time(\" undoCoordinateSystem\", function() { coordinateSystem.undo(g); });\n time(\" translateGraph\", function() { translateGraph(g); });\n time(\" assignNodeIntersects\", function() { assignNodeIntersects(g); });\n time(\" reversePoints\", function() { reversePointsForReversedEdges(g); });\n time(\" acyclic.undo\", function() { acyclic.undo(g); });\n}\n\n/*\n * Copies final layout information from the layout graph back to the input\n * graph. This process only copies whitelisted attributes from the layout graph\n * to the input graph, so it serves as a good place to determine what\n * attributes can influence layout.\n */\nfunction updateInputGraph(inputGraph, layoutGraph) {\n _.forEach(inputGraph.nodes(), function(v) {\n var inputLabel = inputGraph.node(v);\n var layoutLabel = layoutGraph.node(v);\n\n if (inputLabel) {\n inputLabel.x = layoutLabel.x;\n inputLabel.y = layoutLabel.y;\n\n if (layoutGraph.children(v).length) {\n inputLabel.width = layoutLabel.width;\n inputLabel.height = layoutLabel.height;\n }\n }\n });\n\n _.forEach(inputGraph.edges(), function(e) {\n var inputLabel = inputGraph.edge(e);\n var layoutLabel = layoutGraph.edge(e);\n\n inputLabel.points = layoutLabel.points;\n if (_.has(layoutLabel, \"x\")) {\n inputLabel.x = layoutLabel.x;\n inputLabel.y = layoutLabel.y;\n }\n });\n\n inputGraph.graph().width = layoutGraph.graph().width;\n inputGraph.graph().height = layoutGraph.graph().height;\n}\n\nvar graphNumAttrs = [\"nodesep\", \"edgesep\", \"ranksep\", \"marginx\", \"marginy\"];\nvar graphDefaults = { ranksep: 50, edgesep: 20, nodesep: 50, rankdir: \"tb\" };\nvar graphAttrs = [\"acyclicer\", \"ranker\", \"rankdir\", \"align\"];\nvar nodeNumAttrs = [\"width\", \"height\"];\nvar nodeDefaults = { width: 0, height: 0 };\nvar edgeNumAttrs = [\"minlen\", \"weight\", \"width\", \"height\", \"labeloffset\"];\nvar edgeDefaults = {\n minlen: 1, weight: 1, width: 0, height: 0,\n labeloffset: 10, labelpos: \"r\"\n};\nvar edgeAttrs = [\"labelpos\"];\n\n/*\n * Constructs a new graph from the input graph, which can be used for layout.\n * This process copies only whitelisted attributes from the input graph to the\n * layout graph. Thus this function serves as a good place to determine what\n * attributes can influence layout.\n */\nfunction buildLayoutGraph(inputGraph) {\n var g = new Graph({ multigraph: true, compound: true });\n var graph = canonicalize(inputGraph.graph());\n\n g.setGraph(_.merge({},\n graphDefaults,\n selectNumberAttrs(graph, graphNumAttrs),\n _.pick(graph, graphAttrs)));\n\n _.forEach(inputGraph.nodes(), function(v) {\n var node = canonicalize(inputGraph.node(v));\n g.setNode(v, _.defaults(selectNumberAttrs(node, nodeNumAttrs), nodeDefaults));\n g.setParent(v, inputGraph.parent(v));\n });\n\n _.forEach(inputGraph.edges(), function(e) {\n var edge = canonicalize(inputGraph.edge(e));\n g.setEdge(e, _.merge({},\n edgeDefaults,\n selectNumberAttrs(edge, edgeNumAttrs),\n _.pick(edge, edgeAttrs)));\n });\n\n return g;\n}\n\n/*\n * This idea comes from the Gansner paper: to account for edge labels in our\n * layout we split each rank in half by doubling minlen and halving ranksep.\n * Then we can place labels at these mid-points between nodes.\n *\n * We also add some minimal padding to the width to push the label for the edge\n * away from the edge itself a bit.\n */\nfunction makeSpaceForEdgeLabels(g) {\n var graph = g.graph();\n graph.ranksep /= 2;\n _.forEach(g.edges(), function(e) {\n var edge = g.edge(e);\n edge.minlen *= 2;\n if (edge.labelpos.toLowerCase() !== \"c\") {\n if (graph.rankdir === \"TB\" || graph.rankdir === \"BT\") {\n edge.width += edge.labeloffset;\n } else {\n edge.height += edge.labeloffset;\n }\n }\n });\n}\n\n/*\n * Creates temporary dummy nodes that capture the rank in which each edge's\n * label is going to, if it has one of non-zero width and height. We do this\n * so that we can safely remove empty ranks while preserving balance for the\n * label's position.\n */\nfunction injectEdgeLabelProxies(g) {\n _.forEach(g.edges(), function(e) {\n var edge = g.edge(e);\n if (edge.width && edge.height) {\n var v = g.node(e.v);\n var w = g.node(e.w);\n var label = { rank: (w.rank - v.rank) / 2 + v.rank, e: e };\n util.addDummyNode(g, \"edge-proxy\", label, \"_ep\");\n }\n });\n}\n\nfunction assignRankMinMax(g) {\n var maxRank = 0;\n _.forEach(g.nodes(), function(v) {\n var node = g.node(v);\n if (node.borderTop) {\n node.minRank = g.node(node.borderTop).rank;\n node.maxRank = g.node(node.borderBottom).rank;\n maxRank = _.max(maxRank, node.maxRank);\n }\n });\n g.graph().maxRank = maxRank;\n}\n\nfunction removeEdgeLabelProxies(g) {\n _.forEach(g.nodes(), function(v) {\n var node = g.node(v);\n if (node.dummy === \"edge-proxy\") {\n g.edge(node.e).labelRank = node.rank;\n g.removeNode(v);\n }\n });\n}\n\nfunction translateGraph(g) {\n var minX = Number.POSITIVE_INFINITY;\n var maxX = 0;\n var minY = Number.POSITIVE_INFINITY;\n var maxY = 0;\n var graphLabel = g.graph();\n var marginX = graphLabel.marginx || 0;\n var marginY = graphLabel.marginy || 0;\n\n function getExtremes(attrs) {\n var x = attrs.x;\n var y = attrs.y;\n var w = attrs.width;\n var h = attrs.height;\n minX = Math.min(minX, x - w / 2);\n maxX = Math.max(maxX, x + w / 2);\n minY = Math.min(minY, y - h / 2);\n maxY = Math.max(maxY, y + h / 2);\n }\n\n _.forEach(g.nodes(), function(v) { getExtremes(g.node(v)); });\n _.forEach(g.edges(), function(e) {\n var edge = g.edge(e);\n if (_.has(edge, \"x\")) {\n getExtremes(edge);\n }\n });\n\n minX -= marginX;\n minY -= marginY;\n\n _.forEach(g.nodes(), function(v) {\n var node = g.node(v);\n node.x -= minX;\n node.y -= minY;\n });\n\n _.forEach(g.edges(), function(e) {\n var edge = g.edge(e);\n _.forEach(edge.points, function(p) {\n p.x -= minX;\n p.y -= minY;\n });\n if (_.has(edge, \"x\")) { edge.x -= minX; }\n if (_.has(edge, \"y\")) { edge.y -= minY; }\n });\n\n graphLabel.width = maxX - minX + marginX;\n graphLabel.height = maxY - minY + marginY;\n}\n\nfunction assignNodeIntersects(g) {\n _.forEach(g.edges(), function(e) {\n var edge = g.edge(e);\n var nodeV = g.node(e.v);\n var nodeW = g.node(e.w);\n var p1, p2;\n if (!edge.points) {\n edge.points = [];\n p1 = nodeW;\n p2 = nodeV;\n } else {\n p1 = edge.points[0];\n p2 = edge.points[edge.points.length - 1];\n }\n edge.points.unshift(util.intersectRect(nodeV, p1));\n edge.points.push(util.intersectRect(nodeW, p2));\n });\n}\n\nfunction fixupEdgeLabelCoords(g) {\n _.forEach(g.edges(), function(e) {\n var edge = g.edge(e);\n if (_.has(edge, \"x\")) {\n if (edge.labelpos === \"l\" || edge.labelpos === \"r\") {\n edge.width -= edge.labeloffset;\n }\n switch (edge.labelpos) {\n case \"l\": edge.x -= edge.width / 2 + edge.labeloffset; break;\n case \"r\": edge.x += edge.width / 2 + edge.labeloffset; break;\n }\n }\n });\n}\n\nfunction reversePointsForReversedEdges(g) {\n _.forEach(g.edges(), function(e) {\n var edge = g.edge(e);\n if (edge.reversed) {\n edge.points.reverse();\n }\n });\n}\n\nfunction removeBorderNodes(g) {\n _.forEach(g.nodes(), function(v) {\n if (g.children(v).length) {\n var node = g.node(v);\n var t = g.node(node.borderTop);\n var b = g.node(node.borderBottom);\n var l = g.node(_.last(node.borderLeft));\n var r = g.node(_.last(node.borderRight));\n\n node.width = Math.abs(r.x - l.x);\n node.height = Math.abs(b.y - t.y);\n node.x = l.x + node.width / 2;\n node.y = t.y + node.height / 2;\n }\n });\n\n _.forEach(g.nodes(), function(v) {\n if (g.node(v).dummy === \"border\") {\n g.removeNode(v);\n }\n });\n}\n\nfunction removeSelfEdges(g) {\n _.forEach(g.edges(), function(e) {\n if (e.v === e.w) {\n var node = g.node(e.v);\n if (!node.selfEdges) {\n node.selfEdges = [];\n }\n node.selfEdges.push({ e: e, label: g.edge(e) });\n g.removeEdge(e);\n }\n });\n}\n\nfunction insertSelfEdges(g) {\n var layers = util.buildLayerMatrix(g);\n _.forEach(layers, function(layer) {\n var orderShift = 0;\n _.forEach(layer, function(v, i) {\n var node = g.node(v);\n node.order = i + orderShift;\n _.forEach(node.selfEdges, function(selfEdge) {\n util.addDummyNode(g, \"selfedge\", {\n width: selfEdge.label.width,\n height: selfEdge.label.height,\n rank: node.rank,\n order: i + (++orderShift),\n e: selfEdge.e,\n label: selfEdge.label\n }, \"_se\");\n });\n delete node.selfEdges;\n });\n });\n}\n\nfunction positionSelfEdges(g) {\n _.forEach(g.nodes(), function(v) {\n var node = g.node(v);\n if (node.dummy === \"selfedge\") {\n var selfNode = g.node(node.e.v);\n var x = selfNode.x + selfNode.width / 2;\n var y = selfNode.y;\n var dx = node.x - x;\n var dy = selfNode.height / 2;\n g.setEdge(node.e, node.label);\n g.removeNode(v);\n node.label.points = [\n { x: x + 2 * dx / 3, y: y - dy },\n { x: x + 5 * dx / 6, y: y - dy },\n { x: x + dx , y: y },\n { x: x + 5 * dx / 6, y: y + dy },\n { x: x + 2 * dx / 3, y: y + dy }\n ];\n node.label.x = node.x;\n node.label.y = node.y;\n }\n });\n}\n\nfunction selectNumberAttrs(obj, attrs) {\n return _.mapValues(_.pick(obj, attrs), Number);\n}\n\nfunction canonicalize(attrs) {\n var newAttrs = {};\n _.forEach(attrs, function(v, k) {\n newAttrs[k.toLowerCase()] = v;\n });\n return newAttrs;\n}\n"],"names":["require$$0","require$$1","require$$2","require$$3","require$$4","require$$5","require$$6","require$$7","require$$8","require$$9","require$$10","require$$11"],"mappings":"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","x_google_ignoreList":[0]}
|