cc-viewer 1.6.183 → 1.6.192
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/assets/App-DuGHwadX.js +31 -0
- package/dist/assets/{AppHeader-Dc7WvorH.css → AppHeader-D8MCV07q.css} +3 -3
- package/dist/assets/AppHeader.module-CozRDKfP.js +573 -0
- package/dist/assets/Mobile-Bab634xx.js +10 -0
- package/dist/assets/_baseUniq-DJPPdHyT.js +1 -0
- package/dist/assets/arc-DZ3Bjq-l.js +1 -0
- package/dist/assets/architectureDiagram-Q4EWVU46-xy0J2lr0.js +36 -0
- package/dist/assets/blockDiagram-DXYQGD6D-CoUm8UC5.js +132 -0
- package/dist/assets/c4Diagram-AHTNJAMY-CFHX4Dfx.js +10 -0
- package/dist/assets/channel-G3S1FOvm.js +1 -0
- package/dist/assets/chunk-4BX2VUAB-CiktxOyY.js +1 -0
- package/dist/assets/chunk-4TB4RGXK-DHl7ZlQV.js +206 -0
- package/dist/assets/chunk-55IACEB6-DcgWxDD5.js +1 -0
- package/dist/assets/chunk-EDXVE4YY-DeUzWpQx.js +1 -0
- package/dist/assets/{chunk-FMBD7UC4-Bb0LARSp.js → chunk-FMBD7UC4-BCaKpugk.js} +2 -2
- package/dist/assets/chunk-OYMX7WX6-DKMEMbG9.js +231 -0
- package/dist/assets/chunk-QZHKN3VN-BREApeQ-.js +1 -0
- package/dist/assets/chunk-YZCP3GAM-BYW1PNda.js +1 -0
- package/dist/assets/classDiagram-6PBFFD2Q-B0-7EUsz.js +1 -0
- package/dist/assets/classDiagram-v2-HSJHXN6E-B0-7EUsz.js +1 -0
- package/dist/assets/clone-CX_D5SrR.js +1 -0
- package/dist/assets/cose-bilkent-S5V4N54A-DpwiMCiq.js +1 -0
- package/dist/assets/cytoscape.esm-BMgRe88L.js +331 -0
- package/dist/assets/dagre-KV5264BT-Dc7qbya2.js +4 -0
- package/dist/assets/defaultLocale-CcTwRAjA.js +1 -0
- package/dist/assets/diagram-5BDNPKRD-v7FsHeLQ.js +10 -0
- package/dist/assets/diagram-G4DWMVQ6-BhKNBlcE.js +24 -0
- package/dist/assets/diagram-MMDJMWI5-C-3cRdzG.js +43 -0
- package/dist/assets/diagram-TYMM5635-HfNcJIfT.js +24 -0
- package/dist/assets/erDiagram-SMLLAGMA-Ckj0dkk7.js +85 -0
- package/dist/assets/flowDiagram-DWJPFMVM-yf315tJr.js +162 -0
- package/dist/assets/ganttDiagram-T4ZO3ILL-Ch2bINVC.js +292 -0
- package/dist/assets/gitGraphDiagram-UUTBAWPF-CesdgsJi.js +106 -0
- package/dist/assets/graph-CRpmapJV.js +1 -0
- package/dist/assets/html2canvas.esm-B8c0f9Wq.js +22 -0
- package/dist/assets/index-DJ0iGKLy.js +2 -0
- package/dist/assets/infoDiagram-42DDH7IO-CuD16P9Y.js +2 -0
- package/dist/assets/init-C7FSzFHJ.js +1 -0
- package/dist/assets/ishikawaDiagram-UXIWVN3A-4y8aG54G.js +70 -0
- package/dist/assets/journeyDiagram-VCZTEJTY-B6TtR2Zk.js +139 -0
- package/dist/assets/kanban-definition-6JOO6SKY-DTcNHYUS.js +89 -0
- package/dist/assets/katex-CJRKSY_b.js +257 -0
- package/dist/assets/layout-CX5hpkD2.js +1 -0
- package/dist/assets/linear-tWlC-NXc.js +1 -0
- package/dist/assets/mermaid.core-DNvsWVDx.js +308 -0
- package/dist/assets/min-CDExe3RN.js +1 -0
- package/dist/assets/mindmap-definition-QFDTVHPH-CW0yNQcb.js +96 -0
- package/dist/assets/ordinal-aRyHI6gl.js +1 -0
- package/dist/assets/pieDiagram-DEJITSTG-DNrnOqmz.js +30 -0
- package/dist/assets/quadrantDiagram-34T5L4WZ-Cl176vnh.js +7 -0
- package/dist/assets/requirementDiagram-MS252O5E-DKp3A5f_.js +84 -0
- package/dist/assets/sankeyDiagram-XADWPNL6-BMV0lAz8.js +10 -0
- package/dist/assets/sequenceDiagram-FGHM5R23-CQ4preep.js +157 -0
- package/dist/assets/stateDiagram-FHFEXIEX-BKqYYN8H.js +1 -0
- package/dist/assets/stateDiagram-v2-QKLJ7IA2-C1W1ECmZ.js +1 -0
- package/dist/assets/timeline-definition-GMOUNBTQ-4kgeuumv.js +120 -0
- package/dist/assets/vendor-antd-Dk5s46Ag.js +406 -0
- package/dist/assets/vendor-codemirror-DxvDOrio.js +46 -0
- package/dist/assets/vendor-highlight-DVwgAdJY.js +3 -0
- package/dist/assets/vendor-markdown-DO-Ppp4f.js +60 -0
- package/dist/assets/vendor-qrcode-hI5wlAgK.js +9 -0
- package/dist/assets/vendor-virtuoso-HW77kTCh.js +1 -0
- package/dist/assets/vendor-xterm-D2cUrYEx.js +140 -0
- package/dist/assets/vennDiagram-DHZGUBPP-CqBcUIdK.js +34 -0
- package/dist/assets/wardley-RL74JXVD-CbEnkKx8.js +162 -0
- package/dist/assets/wardleyDiagram-NUSXRM2D-BJrjkZMg.js +20 -0
- package/dist/assets/xychartDiagram-5P7HB3ND-D8aBEz8e.js +7 -0
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/server.js +13 -4
- package/dist/assets/App-BHfyP8-J.js +0 -31
- package/dist/assets/AppHeader.module-W_78JZt9.js +0 -573
- package/dist/assets/Mobile-ca5EOMpN.js +0 -10
- package/dist/assets/_baseUniq-DYSZB4Xx.js +0 -1
- package/dist/assets/arc-BChSP8hM.js +0 -1
- package/dist/assets/architectureDiagram-Q4EWVU46-vlr5Q6DQ.js +0 -36
- package/dist/assets/blockDiagram-DXYQGD6D-4C3Amh2i.js +0 -132
- package/dist/assets/c4Diagram-AHTNJAMY-wI0efLSs.js +0 -10
- package/dist/assets/channel-d8DITadq.js +0 -1
- package/dist/assets/chunk-4BX2VUAB-BX9brpDB.js +0 -1
- package/dist/assets/chunk-4TB4RGXK-DvFQ-X9V.js +0 -206
- package/dist/assets/chunk-55IACEB6-BNmYjPNf.js +0 -1
- package/dist/assets/chunk-EDXVE4YY-BNvDPqBE.js +0 -1
- package/dist/assets/chunk-OYMX7WX6-BwlvIpeD.js +0 -231
- package/dist/assets/chunk-QZHKN3VN-BS6RK8_X.js +0 -1
- package/dist/assets/chunk-YZCP3GAM-oOqmydQz.js +0 -1
- package/dist/assets/classDiagram-6PBFFD2Q-B1oRrMCc.js +0 -1
- package/dist/assets/classDiagram-v2-HSJHXN6E-B1oRrMCc.js +0 -1
- package/dist/assets/clone-BrNOd7Lq.js +0 -1
- package/dist/assets/cose-bilkent-S5V4N54A-CamsIqkY.js +0 -1
- package/dist/assets/cytoscape.esm-DxGcaOPV.js +0 -331
- package/dist/assets/dagre-KV5264BT-CPAWWiBh.js +0 -4
- package/dist/assets/defaultLocale-DX6XiGOO.js +0 -1
- package/dist/assets/diagram-5BDNPKRD-D6TmzGhl.js +0 -10
- package/dist/assets/diagram-G4DWMVQ6-DDuJnMCL.js +0 -24
- package/dist/assets/diagram-MMDJMWI5-CQWhvrpz.js +0 -43
- package/dist/assets/diagram-TYMM5635-CEDj3w_h.js +0 -24
- package/dist/assets/erDiagram-SMLLAGMA-B_eQqha6.js +0 -85
- package/dist/assets/flowDiagram-DWJPFMVM-B985i3uQ.js +0 -162
- package/dist/assets/ganttDiagram-T4ZO3ILL-DKp62vr3.js +0 -292
- package/dist/assets/gitGraphDiagram-UUTBAWPF-Cc1gyz1Q.js +0 -106
- package/dist/assets/graph-C-1-3bsA.js +0 -1
- package/dist/assets/html2canvas.esm-QH1iLAAe.js +0 -22
- package/dist/assets/index-LH2WLu05.js +0 -2
- package/dist/assets/infoDiagram-42DDH7IO-DqXaAHZz.js +0 -2
- package/dist/assets/init-Gi6I4Gst.js +0 -1
- package/dist/assets/ishikawaDiagram-UXIWVN3A-zdUdDJX2.js +0 -70
- package/dist/assets/journeyDiagram-VCZTEJTY-ip5SzODy.js +0 -139
- package/dist/assets/kanban-definition-6JOO6SKY-D5EYh6AP.js +0 -89
- package/dist/assets/katex-DkKDou_j.js +0 -257
- package/dist/assets/layout-Cjq8AL8G.js +0 -1
- package/dist/assets/linear-U0KsEJ2u.js +0 -1
- package/dist/assets/mermaid.core-CT-5crLN.js +0 -308
- package/dist/assets/min-C7G6pq26.js +0 -1
- package/dist/assets/mindmap-definition-QFDTVHPH-CIzhFOw1.js +0 -96
- package/dist/assets/ordinal-Cboi1Yqb.js +0 -1
- package/dist/assets/pieDiagram-DEJITSTG-Cp1Zd1MQ.js +0 -30
- package/dist/assets/quadrantDiagram-34T5L4WZ-Cp31xM90.js +0 -7
- package/dist/assets/requirementDiagram-MS252O5E-Dbg_eQqB.js +0 -84
- package/dist/assets/sankeyDiagram-XADWPNL6-CMrzwpwC.js +0 -10
- package/dist/assets/sequenceDiagram-FGHM5R23-KJegoBnN.js +0 -157
- package/dist/assets/stateDiagram-FHFEXIEX-BDWprYzE.js +0 -1
- package/dist/assets/stateDiagram-v2-QKLJ7IA2-CCUmB0qI.js +0 -1
- package/dist/assets/timeline-definition-GMOUNBTQ-BOWeG5LY.js +0 -120
- package/dist/assets/vendor-antd-CtdKd5xs.js +0 -406
- package/dist/assets/vendor-codemirror-CdXaVX4e.js +0 -46
- package/dist/assets/vendor-highlight-D4ATuRwX.js +0 -3
- package/dist/assets/vendor-markdown-CO-jRjTB.js +0 -60
- package/dist/assets/vendor-qrcode-D05RfzwB.js +0 -9
- package/dist/assets/vendor-virtuoso-BhnFrbmh.js +0 -1
- package/dist/assets/vendor-xterm-DWMOrwSy.js +0 -140
- package/dist/assets/vennDiagram-DHZGUBPP-B6mLodPk.js +0 -34
- package/dist/assets/wardley-RL74JXVD-CovHs24Z.js +0 -162
- package/dist/assets/wardleyDiagram-NUSXRM2D-CBg_VXF7.js +0 -20
- package/dist/assets/xychartDiagram-5P7HB3ND-BRxgk_oX.js +0 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as baseClone,G as Graph,i as isUndefined,v as values}from"./graph-CRpmapJV.js";import{i as isSymbol,c as baseIteratee,k as keys,o as baseFindIndex,p as castFunction,q as baseForOwn,t as hasPath,u as castPath,v as toKey,w as baseGet,d as arrayMap,x as hasIn,b as baseFlatten,y as toString,n as forEach,m as filter,r as reduce}from"./_baseUniq-DJPPdHyT.js";import{f as flatten,b as baseExtremum,a as baseLt,c as baseMap,m as map,d as min}from"./min-CDExe3RN.js";import{a_ as isObject,bw as setToString,bx as overRest,b5 as baseRest,by as isIterateeCall,aR as keysIn,bp as eq,aF as isArrayLike,bu as baseFor,bz as baseAssignValue,aH as identity,bt as isIndex,b4 as assignValue,aG as isArray,aY as baseUnary,b7 as constant,bA as merge}from"./mermaid.core-DNvsWVDx.js";var reWhitespace=/\s/;function trimmedEndIndex(string){for(var index=string.length;index--&&reWhitespace.test(string.charAt(index)););return index}var reTrimStart=/^\s+/;function baseTrim(string){return string&&string.slice(0,trimmedEndIndex(string)+1).replace(reTrimStart,"")}var NAN=NaN,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;function toNumber(value){if(typeof value=="number")return value;if(isSymbol(value))return NAN;if(isObject(value)){var other=typeof value.valueOf=="function"?value.valueOf():value;value=isObject(other)?other+"":other}if(typeof value!="string")return value===0?value:+value;value=baseTrim(value);var isBinary=reIsBinary.test(value);return isBinary||reIsOctal.test(value)?freeParseInt(value.slice(2),isBinary?2:8):reIsBadHex.test(value)?NAN:+value}var INFINITY=1/0,MAX_INTEGER=17976931348623157e292;function toFinite(value){if(!value)return value===0?value:0;if(value=toNumber(value),value===INFINITY||value===-INFINITY){var sign=value<0?-1:1;return sign*MAX_INTEGER}return value===value?value:0}function toInteger(value){var result=toFinite(value),remainder=result%1;return result===result?remainder?result-remainder:result:0}function flatRest(func){return setToString(overRest(func,void 0,flatten),func+"")}var CLONE_DEEP_FLAG=1,CLONE_SYMBOLS_FLAG=4;function cloneDeep(value){return baseClone(value,CLONE_DEEP_FLAG|CLONE_SYMBOLS_FLAG)}var objectProto$1=Object.prototype,hasOwnProperty$1=objectProto$1.hasOwnProperty,defaults=baseRest(function(object,sources){object=Object(object);var index=-1,length=sources.length,guard=length>2?sources[2]:void 0;for(guard&&isIterateeCall(sources[0],sources[1],guard)&&(length=1);++index<length;)for(var source=sources[index],props=keysIn(source),propsIndex=-1,propsLength=props.length;++propsIndex<propsLength;){var key=props[propsIndex],value=object[key];(value===void 0||eq(value,objectProto$1[key])&&!hasOwnProperty$1.call(object,key))&&(object[key]=source[key])}return object});function last(array){var length=array==null?0:array.length;return length?array[length-1]:void 0}function createFind(findIndexFunc){return function(collection,predicate,fromIndex){var iterable=Object(collection);if(!isArrayLike(collection)){var iteratee=baseIteratee(predicate);collection=keys(collection),predicate=function(key){return iteratee(iterable[key],key,iterable)}}var index=findIndexFunc(collection,predicate,fromIndex);return index>-1?iterable[iteratee?collection[index]:index]:void 0}}var nativeMax$1=Math.max;function findIndex(array,predicate,fromIndex){var length=array==null?0:array.length;if(!length)return-1;var index=fromIndex==null?0:toInteger(fromIndex);return index<0&&(index=nativeMax$1(length+index,0)),baseFindIndex(array,baseIteratee(predicate),index)}var find=createFind(findIndex);function forIn(object,iteratee){return object==null?object:baseFor(object,castFunction(iteratee),keysIn)}function forOwn(object,iteratee){return object&&baseForOwn(object,castFunction(iteratee))}function baseGt(value,other){return value>other}var objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty;function baseHas(object,key){return object!=null&&hasOwnProperty.call(object,key)}function has(object,path){return object!=null&&hasPath(object,path,baseHas)}function mapValues(object,iteratee){var result={};return iteratee=baseIteratee(iteratee),baseForOwn(object,function(value,key,object2){baseAssignValue(result,key,iteratee(value,key,object2))}),result}function max(array){return array&&array.length?baseExtremum(array,identity,baseGt):void 0}function minBy(array,iteratee){return array&&array.length?baseExtremum(array,baseIteratee(iteratee),baseLt):void 0}function baseSet(object,path,value,customizer){if(!isObject(object))return object;path=castPath(path,object);for(var index=-1,length=path.length,lastIndex=length-1,nested=object;nested!=null&&++index<length;){var key=toKey(path[index]),newValue=value;if(key==="__proto__"||key==="constructor"||key==="prototype")return object;if(index!=lastIndex){var objValue=nested[key];newValue=void 0,newValue===void 0&&(newValue=isObject(objValue)?objValue:isIndex(path[index+1])?[]:{})}assignValue(nested,key,newValue),nested=nested[key]}return object}function basePickBy(object,paths,predicate){for(var index=-1,length=paths.length,result={};++index<length;){var path=paths[index],value=baseGet(object,path);predicate(value,path)&&baseSet(result,castPath(path,object),value)}return result}function baseSortBy(array,comparer){var length=array.length;for(array.sort(comparer);length--;)array[length]=array[length].value;return array}function compareAscending(value,other){if(value!==other){var valIsDefined=value!==void 0,valIsNull=value===null,valIsReflexive=value===value,valIsSymbol=isSymbol(value),othIsDefined=other!==void 0,othIsNull=other===null,othIsReflexive=other===other,othIsSymbol=isSymbol(other);if(!othIsNull&&!othIsSymbol&&!valIsSymbol&&value>other||valIsSymbol&&othIsDefined&&othIsReflexive&&!othIsNull&&!othIsSymbol||valIsNull&&othIsDefined&&othIsReflexive||!valIsDefined&&othIsReflexive||!valIsReflexive)return 1;if(!valIsNull&&!valIsSymbol&&!othIsSymbol&&value<other||othIsSymbol&&valIsDefined&&valIsReflexive&&!valIsNull&&!valIsSymbol||othIsNull&&valIsDefined&&valIsReflexive||!othIsDefined&&valIsReflexive||!othIsReflexive)return-1}return 0}function compareMultiple(object,other,orders){for(var index=-1,objCriteria=object.criteria,othCriteria=other.criteria,length=objCriteria.length,ordersLength=orders.length;++index<length;){var result=compareAscending(objCriteria[index],othCriteria[index]);if(result){if(index>=ordersLength)return result;var order2=orders[index];return result*(order2=="desc"?-1:1)}}return object.index-other.index}function baseOrderBy(collection,iteratees,orders){iteratees.length?iteratees=arrayMap(iteratees,function(iteratee){return isArray(iteratee)?function(value){return baseGet(value,iteratee.length===1?iteratee[0]:iteratee)}:iteratee}):iteratees=[identity];var index=-1;iteratees=arrayMap(iteratees,baseUnary(baseIteratee));var result=baseMap(collection,function(value,key,collection2){var criteria=arrayMap(iteratees,function(iteratee){return iteratee(value)});return{criteria,index:++index,value}});return baseSortBy(result,function(object,other){return compareMultiple(object,other,orders)})}function basePick(object,paths){return basePickBy(object,paths,function(value,path){return hasIn(object,path)})}var pick=flatRest(function(object,paths){return object==null?{}:basePick(object,paths)}),nativeCeil=Math.ceil,nativeMax=Math.max;function baseRange(start,end,step,fromRight){for(var index=-1,length=nativeMax(nativeCeil((end-start)/(step||1)),0),result=Array(length);length--;)result[++index]=start,start+=step;return result}function createRange(fromRight){return function(start,end,step){return step&&typeof step!="number"&&isIterateeCall(start,end,step)&&(end=step=void 0),start=toFinite(start),end===void 0?(end=start,start=0):end=toFinite(end),step=step===void 0?start<end?1:-1:toFinite(step),baseRange(start,end,step)}}var range=createRange(),sortBy=baseRest(function(collection,iteratees){if(collection==null)return[];var length=iteratees.length;return length>1&&isIterateeCall(collection,iteratees[0],iteratees[1])?iteratees=[]:length>2&&isIterateeCall(iteratees[0],iteratees[1],iteratees[2])&&(iteratees=[iteratees[0]]),baseOrderBy(collection,baseFlatten(iteratees),[])}),idCounter=0;function uniqueId(prefix){var id=++idCounter;return toString(prefix)+id}function baseZipObject(props,values2,assignFunc){for(var index=-1,length=props.length,valsLength=values2.length,result={};++index<length;){var value=index<valsLength?values2[index]:void 0;assignFunc(result,props[index],value)}return result}function zipObject(props,values2){return baseZipObject(props||[],values2||[],assignValue)}class List{constructor(){var sentinel={};sentinel._next=sentinel._prev=sentinel,this._sentinel=sentinel}dequeue(){var sentinel=this._sentinel,entry=sentinel._prev;if(entry!==sentinel)return unlink(entry),entry}enqueue(entry){var sentinel=this._sentinel;entry._prev&&entry._next&&unlink(entry),entry._next=sentinel._next,sentinel._next._prev=entry,sentinel._next=entry,entry._prev=sentinel}toString(){for(var strs=[],sentinel=this._sentinel,curr=sentinel._prev;curr!==sentinel;)strs.push(JSON.stringify(curr,filterOutLinks)),curr=curr._prev;return"["+strs.join(", ")+"]"}}function unlink(entry){entry._prev._next=entry._next,entry._next._prev=entry._prev,delete entry._next,delete entry._prev}function filterOutLinks(k,v){if(k!=="_next"&&k!=="_prev")return v}var DEFAULT_WEIGHT_FN=constant(1);function greedyFAS(g,weightFn){if(g.nodeCount()<=1)return[];var state=buildState(g,weightFn||DEFAULT_WEIGHT_FN),results=doGreedyFAS(state.graph,state.buckets,state.zeroIdx);return flatten(map(results,function(e){return g.outEdges(e.v,e.w)}))}function doGreedyFAS(g,buckets,zeroIdx){for(var results=[],sources=buckets[buckets.length-1],sinks=buckets[0],entry;g.nodeCount();){for(;entry=sinks.dequeue();)removeNode(g,buckets,zeroIdx,entry);for(;entry=sources.dequeue();)removeNode(g,buckets,zeroIdx,entry);if(g.nodeCount()){for(var i=buckets.length-2;i>0;--i)if(entry=buckets[i].dequeue(),entry){results=results.concat(removeNode(g,buckets,zeroIdx,entry,!0));break}}}return results}function removeNode(g,buckets,zeroIdx,entry,collectPredecessors){var results=collectPredecessors?[]:void 0;return forEach(g.inEdges(entry.v),function(edge){var weight=g.edge(edge),uEntry=g.node(edge.v);collectPredecessors&&results.push({v:edge.v,w:edge.w}),uEntry.out-=weight,assignBucket(buckets,zeroIdx,uEntry)}),forEach(g.outEdges(entry.v),function(edge){var weight=g.edge(edge),w=edge.w,wEntry=g.node(w);wEntry.in-=weight,assignBucket(buckets,zeroIdx,wEntry)}),g.removeNode(entry.v),results}function buildState(g,weightFn){var fasGraph=new Graph,maxIn=0,maxOut=0;forEach(g.nodes(),function(v){fasGraph.setNode(v,{v,in:0,out:0})}),forEach(g.edges(),function(e){var prevWeight=fasGraph.edge(e.v,e.w)||0,weight=weightFn(e),edgeWeight=prevWeight+weight;fasGraph.setEdge(e.v,e.w,edgeWeight),maxOut=Math.max(maxOut,fasGraph.node(e.v).out+=weight),maxIn=Math.max(maxIn,fasGraph.node(e.w).in+=weight)});var buckets=range(maxOut+maxIn+3).map(function(){return new List}),zeroIdx=maxIn+1;return forEach(fasGraph.nodes(),function(v){assignBucket(buckets,zeroIdx,fasGraph.node(v))}),{graph:fasGraph,buckets,zeroIdx}}function assignBucket(buckets,zeroIdx,entry){entry.out?entry.in?buckets[entry.out-entry.in+zeroIdx].enqueue(entry):buckets[buckets.length-1].enqueue(entry):buckets[0].enqueue(entry)}function run$2(g){var fas=g.graph().acyclicer==="greedy"?greedyFAS(g,weightFn(g)):dfsFAS(g);forEach(fas,function(e){var label=g.edge(e);g.removeEdge(e),label.forwardName=e.name,label.reversed=!0,g.setEdge(e.w,e.v,label,uniqueId("rev"))});function weightFn(g2){return function(e){return g2.edge(e).weight}}}function dfsFAS(g){var fas=[],stack={},visited={};function dfs2(v){Object.prototype.hasOwnProperty.call(visited,v)||(visited[v]=!0,stack[v]=!0,forEach(g.outEdges(v),function(e){Object.prototype.hasOwnProperty.call(stack,e.w)?fas.push(e):dfs2(e.w)}),delete stack[v])}return forEach(g.nodes(),dfs2),fas}function undo$2(g){forEach(g.edges(),function(e){var label=g.edge(e);if(label.reversed){g.removeEdge(e);var forwardName=label.forwardName;delete label.reversed,delete label.forwardName,g.setEdge(e.w,e.v,label,forwardName)}})}function addDummyNode(g,type,attrs,name){var v;do v=uniqueId(name);while(g.hasNode(v));return attrs.dummy=type,g.setNode(v,attrs),v}function simplify(g){var simplified=new Graph().setGraph(g.graph());return forEach(g.nodes(),function(v){simplified.setNode(v,g.node(v))}),forEach(g.edges(),function(e){var simpleLabel=simplified.edge(e.v,e.w)||{weight:0,minlen:1},label=g.edge(e);simplified.setEdge(e.v,e.w,{weight:simpleLabel.weight+label.weight,minlen:Math.max(simpleLabel.minlen,label.minlen)})}),simplified}function asNonCompoundGraph(g){var simplified=new Graph({multigraph:g.isMultigraph()}).setGraph(g.graph());return forEach(g.nodes(),function(v){g.children(v).length||simplified.setNode(v,g.node(v))}),forEach(g.edges(),function(e){simplified.setEdge(e,g.edge(e))}),simplified}function intersectRect(rect,point){var x=rect.x,y=rect.y,dx=point.x-x,dy=point.y-y,w=rect.width/2,h=rect.height/2;if(!dx&&!dy)throw new Error("Not possible to find intersection inside of the rectangle");var sx,sy;return Math.abs(dy)*w>Math.abs(dx)*h?(dy<0&&(h=-h),sx=h*dx/dy,sy=h):(dx<0&&(w=-w),sx=w,sy=w*dy/dx),{x:x+sx,y:y+sy}}function buildLayerMatrix(g){var layering=map(range(maxRank(g)+1),function(){return[]});return forEach(g.nodes(),function(v){var node=g.node(v),rank2=node.rank;isUndefined(rank2)||(layering[rank2][node.order]=v)}),layering}function normalizeRanks(g){var min$1=min(map(g.nodes(),function(v){return g.node(v).rank}));forEach(g.nodes(),function(v){var node=g.node(v);has(node,"rank")&&(node.rank-=min$1)})}function removeEmptyRanks(g){var offset=min(map(g.nodes(),function(v){return g.node(v).rank})),layers=[];forEach(g.nodes(),function(v){var rank2=g.node(v).rank-offset;layers[rank2]||(layers[rank2]=[]),layers[rank2].push(v)});var delta=0,nodeRankFactor=g.graph().nodeRankFactor;forEach(layers,function(vs,i){isUndefined(vs)&&i%nodeRankFactor!==0?--delta:delta&&forEach(vs,function(v){g.node(v).rank+=delta})})}function addBorderNode$1(g,prefix,rank2,order2){var node={width:0,height:0};return arguments.length>=4&&(node.rank=rank2,node.order=order2),addDummyNode(g,"border",node,prefix)}function maxRank(g){return max(map(g.nodes(),function(v){var rank2=g.node(v).rank;if(!isUndefined(rank2))return rank2}))}function partition(collection,fn){var result={lhs:[],rhs:[]};return forEach(collection,function(value){fn(value)?result.lhs.push(value):result.rhs.push(value)}),result}function notime(name,fn){return fn()}function addBorderSegments(g){function dfs2(v){var children=g.children(v),node=g.node(v);if(children.length&&forEach(children,dfs2),Object.prototype.hasOwnProperty.call(node,"minRank")){node.borderLeft=[],node.borderRight=[];for(var rank2=node.minRank,maxRank2=node.maxRank+1;rank2<maxRank2;++rank2)addBorderNode(g,"borderLeft","_bl",v,node,rank2),addBorderNode(g,"borderRight","_br",v,node,rank2)}}forEach(g.children(),dfs2)}function addBorderNode(g,prop,prefix,sg,sgNode,rank2){var label={width:0,height:0,rank:rank2,borderType:prop},prev=sgNode[prop][rank2-1],curr=addDummyNode(g,"border",label,prefix);sgNode[prop][rank2]=curr,g.setParent(curr,sg),prev&&g.setEdge(prev,curr,{weight:1})}function adjust(g){var rankDir=g.graph().rankdir.toLowerCase();(rankDir==="lr"||rankDir==="rl")&&swapWidthHeight(g)}function undo$1(g){var rankDir=g.graph().rankdir.toLowerCase();(rankDir==="bt"||rankDir==="rl")&&reverseY(g),(rankDir==="lr"||rankDir==="rl")&&(swapXY(g),swapWidthHeight(g))}function swapWidthHeight(g){forEach(g.nodes(),function(v){swapWidthHeightOne(g.node(v))}),forEach(g.edges(),function(e){swapWidthHeightOne(g.edge(e))})}function swapWidthHeightOne(attrs){var w=attrs.width;attrs.width=attrs.height,attrs.height=w}function reverseY(g){forEach(g.nodes(),function(v){reverseYOne(g.node(v))}),forEach(g.edges(),function(e){var edge=g.edge(e);forEach(edge.points,reverseYOne),Object.prototype.hasOwnProperty.call(edge,"y")&&reverseYOne(edge)})}function reverseYOne(attrs){attrs.y=-attrs.y}function swapXY(g){forEach(g.nodes(),function(v){swapXYOne(g.node(v))}),forEach(g.edges(),function(e){var edge=g.edge(e);forEach(edge.points,swapXYOne),Object.prototype.hasOwnProperty.call(edge,"x")&&swapXYOne(edge)})}function swapXYOne(attrs){var x=attrs.x;attrs.x=attrs.y,attrs.y=x}function run$1(g){g.graph().dummyChains=[],forEach(g.edges(),function(edge){normalizeEdge(g,edge)})}function normalizeEdge(g,e){var v=e.v,vRank=g.node(v).rank,w=e.w,wRank=g.node(w).rank,name=e.name,edgeLabel=g.edge(e),labelRank=edgeLabel.labelRank;if(wRank!==vRank+1){g.removeEdge(e);var attrs=void 0,dummy,i;for(i=0,++vRank;vRank<wRank;++i,++vRank)edgeLabel.points=[],attrs={width:0,height:0,edgeLabel,edgeObj:e,rank:vRank},dummy=addDummyNode(g,"edge",attrs,"_d"),vRank===labelRank&&(attrs.width=edgeLabel.width,attrs.height=edgeLabel.height,attrs.dummy="edge-label",attrs.labelpos=edgeLabel.labelpos),g.setEdge(v,dummy,{weight:edgeLabel.weight},name),i===0&&g.graph().dummyChains.push(dummy),v=dummy;g.setEdge(v,w,{weight:edgeLabel.weight},name)}}function undo(g){forEach(g.graph().dummyChains,function(v){var node=g.node(v),origLabel=node.edgeLabel,w;for(g.setEdge(node.edgeObj,origLabel);node.dummy;)w=g.successors(v)[0],g.removeNode(v),origLabel.points.push({x:node.x,y:node.y}),node.dummy==="edge-label"&&(origLabel.x=node.x,origLabel.y=node.y,origLabel.width=node.width,origLabel.height=node.height),v=w,node=g.node(v)})}function longestPath(g){var visited={};function dfs2(v){var label=g.node(v);if(Object.prototype.hasOwnProperty.call(visited,v))return label.rank;visited[v]=!0;var rank2=min(map(g.outEdges(v),function(e){return dfs2(e.w)-g.edge(e).minlen}));return(rank2===Number.POSITIVE_INFINITY||rank2===void 0||rank2===null)&&(rank2=0),label.rank=rank2}forEach(g.sources(),dfs2)}function slack(g,e){return g.node(e.w).rank-g.node(e.v).rank-g.edge(e).minlen}function feasibleTree(g){var t=new Graph({directed:!1}),start=g.nodes()[0],size=g.nodeCount();t.setNode(start,{});for(var edge,delta;tightTree(t,g)<size;)edge=findMinSlackEdge(t,g),delta=t.hasNode(edge.v)?slack(g,edge):-slack(g,edge),shiftRanks(t,g,delta);return t}function tightTree(t,g){function dfs2(v){forEach(g.nodeEdges(v),function(e){var edgeV=e.v,w=v===edgeV?e.w:edgeV;!t.hasNode(w)&&!slack(g,e)&&(t.setNode(w,{}),t.setEdge(v,w,{}),dfs2(w))})}return forEach(t.nodes(),dfs2),t.nodeCount()}function findMinSlackEdge(t,g){return minBy(g.edges(),function(e){if(t.hasNode(e.v)!==t.hasNode(e.w))return slack(g,e)})}function shiftRanks(t,g,delta){forEach(t.nodes(),function(v){g.node(v).rank+=delta})}function CycleException(){}CycleException.prototype=new Error;function dfs$1(g,vs,order2){isArray(vs)||(vs=[vs]);var navigation=(g.isDirected()?g.successors:g.neighbors).bind(g),acc=[],visited={};return forEach(vs,function(v){if(!g.hasNode(v))throw new Error("Graph does not have node: "+v);doDfs(g,v,order2==="post",visited,navigation,acc)}),acc}function doDfs(g,v,postorder2,visited,navigation,acc){Object.prototype.hasOwnProperty.call(visited,v)||(visited[v]=!0,postorder2||acc.push(v),forEach(navigation(v),function(w){doDfs(g,w,postorder2,visited,navigation,acc)}),postorder2&&acc.push(v))}function postorder$1(g,vs){return dfs$1(g,vs,"post")}function preorder(g,vs){return dfs$1(g,vs,"pre")}networkSimplex.initLowLimValues=initLowLimValues;networkSimplex.initCutValues=initCutValues;networkSimplex.calcCutValue=calcCutValue;networkSimplex.leaveEdge=leaveEdge;networkSimplex.enterEdge=enterEdge;networkSimplex.exchangeEdges=exchangeEdges;function networkSimplex(g){g=simplify(g),longestPath(g);var t=feasibleTree(g);initLowLimValues(t),initCutValues(t,g);for(var e,f;e=leaveEdge(t);)f=enterEdge(t,g,e),exchangeEdges(t,g,e,f)}function initCutValues(t,g){var vs=postorder$1(t,t.nodes());vs=vs.slice(0,vs.length-1),forEach(vs,function(v){assignCutValue(t,g,v)})}function assignCutValue(t,g,child){var childLab=t.node(child),parent=childLab.parent;t.edge(child,parent).cutvalue=calcCutValue(t,g,child)}function calcCutValue(t,g,child){var childLab=t.node(child),parent=childLab.parent,childIsTail=!0,graphEdge=g.edge(child,parent),cutValue=0;return graphEdge||(childIsTail=!1,graphEdge=g.edge(parent,child)),cutValue=graphEdge.weight,forEach(g.nodeEdges(child),function(e){var isOutEdge=e.v===child,other=isOutEdge?e.w:e.v;if(other!==parent){var pointsToHead=isOutEdge===childIsTail,otherWeight=g.edge(e).weight;if(cutValue+=pointsToHead?otherWeight:-otherWeight,isTreeEdge(t,child,other)){var otherCutValue=t.edge(child,other).cutvalue;cutValue+=pointsToHead?-otherCutValue:otherCutValue}}}),cutValue}function initLowLimValues(tree,root){arguments.length<2&&(root=tree.nodes()[0]),dfsAssignLowLim(tree,{},1,root)}function dfsAssignLowLim(tree,visited,nextLim,v,parent){var low=nextLim,label=tree.node(v);return visited[v]=!0,forEach(tree.neighbors(v),function(w){Object.prototype.hasOwnProperty.call(visited,w)||(nextLim=dfsAssignLowLim(tree,visited,nextLim,w,v))}),label.low=low,label.lim=nextLim++,parent?label.parent=parent:delete label.parent,nextLim}function leaveEdge(tree){return find(tree.edges(),function(e){return tree.edge(e).cutvalue<0})}function enterEdge(t,g,edge){var v=edge.v,w=edge.w;g.hasEdge(v,w)||(v=edge.w,w=edge.v);var vLabel=t.node(v),wLabel=t.node(w),tailLabel=vLabel,flip=!1;vLabel.lim>wLabel.lim&&(tailLabel=wLabel,flip=!0);var candidates=filter(g.edges(),function(edge2){return flip===isDescendant(t,t.node(edge2.v),tailLabel)&&flip!==isDescendant(t,t.node(edge2.w),tailLabel)});return minBy(candidates,function(edge2){return slack(g,edge2)})}function exchangeEdges(t,g,e,f){var v=e.v,w=e.w;t.removeEdge(v,w),t.setEdge(f.v,f.w,{}),initLowLimValues(t),initCutValues(t,g),updateRanks(t,g)}function updateRanks(t,g){var root=find(t.nodes(),function(v){return!g.node(v).parent}),vs=preorder(t,root);vs=vs.slice(1),forEach(vs,function(v){var parent=t.node(v).parent,edge=g.edge(v,parent),flipped=!1;edge||(edge=g.edge(parent,v),flipped=!0),g.node(v).rank=g.node(parent).rank+(flipped?edge.minlen:-edge.minlen)})}function isTreeEdge(tree,u,v){return tree.hasEdge(u,v)}function isDescendant(tree,vLabel,rootLabel){return rootLabel.low<=vLabel.lim&&vLabel.lim<=rootLabel.lim}function rank(g){switch(g.graph().ranker){case"network-simplex":networkSimplexRanker(g);break;case"tight-tree":tightTreeRanker(g);break;case"longest-path":longestPathRanker(g);break;default:networkSimplexRanker(g)}}var longestPathRanker=longestPath;function tightTreeRanker(g){longestPath(g),feasibleTree(g)}function networkSimplexRanker(g){networkSimplex(g)}function run(g){var root=addDummyNode(g,"root",{},"_root"),depths=treeDepths(g),height=max(values(depths))-1,nodeSep=2*height+1;g.graph().nestingRoot=root,forEach(g.edges(),function(e){g.edge(e).minlen*=nodeSep});var weight=sumWeights(g)+1;forEach(g.children(),function(child){dfs(g,root,nodeSep,weight,height,depths,child)}),g.graph().nodeRankFactor=nodeSep}function dfs(g,root,nodeSep,weight,height,depths,v){var children=g.children(v);if(!children.length){v!==root&&g.setEdge(root,v,{weight:0,minlen:nodeSep});return}var top=addBorderNode$1(g,"_bt"),bottom=addBorderNode$1(g,"_bb"),label=g.node(v);g.setParent(top,v),label.borderTop=top,g.setParent(bottom,v),label.borderBottom=bottom,forEach(children,function(child){dfs(g,root,nodeSep,weight,height,depths,child);var childNode=g.node(child),childTop=childNode.borderTop?childNode.borderTop:child,childBottom=childNode.borderBottom?childNode.borderBottom:child,thisWeight=childNode.borderTop?weight:2*weight,minlen=childTop!==childBottom?1:height-depths[v]+1;g.setEdge(top,childTop,{weight:thisWeight,minlen,nestingEdge:!0}),g.setEdge(childBottom,bottom,{weight:thisWeight,minlen,nestingEdge:!0})}),g.parent(v)||g.setEdge(root,top,{weight:0,minlen:height+depths[v]})}function treeDepths(g){var depths={};function dfs2(v,depth){var children=g.children(v);children&&children.length&&forEach(children,function(child){dfs2(child,depth+1)}),depths[v]=depth}return forEach(g.children(),function(v){dfs2(v,1)}),depths}function sumWeights(g){return reduce(g.edges(),function(acc,e){return acc+g.edge(e).weight},0)}function cleanup(g){var graphLabel=g.graph();g.removeNode(graphLabel.nestingRoot),delete graphLabel.nestingRoot,forEach(g.edges(),function(e){var edge=g.edge(e);edge.nestingEdge&&g.removeEdge(e)})}function addSubgraphConstraints(g,cg,vs){var prev={},rootPrev;forEach(vs,function(v){for(var child=g.parent(v),parent,prevChild;child;){if(parent=g.parent(child),parent?(prevChild=prev[parent],prev[parent]=child):(prevChild=rootPrev,rootPrev=child),prevChild&&prevChild!==child){cg.setEdge(prevChild,child);return}child=parent}})}function buildLayerGraph(g,rank2,relationship){var root=createRootNode(g),result=new Graph({compound:!0}).setGraph({root}).setDefaultNodeLabel(function(v){return g.node(v)});return forEach(g.nodes(),function(v){var node=g.node(v),parent=g.parent(v);(node.rank===rank2||node.minRank<=rank2&&rank2<=node.maxRank)&&(result.setNode(v),result.setParent(v,parent||root),forEach(g[relationship](v),function(e){var u=e.v===v?e.w:e.v,edge=result.edge(u,v),weight=isUndefined(edge)?0:edge.weight;result.setEdge(u,v,{weight:g.edge(e).weight+weight})}),Object.prototype.hasOwnProperty.call(node,"minRank")&&result.setNode(v,{borderLeft:node.borderLeft[rank2],borderRight:node.borderRight[rank2]}))}),result}function createRootNode(g){for(var v;g.hasNode(v=uniqueId("_root")););return v}function crossCount(g,layering){for(var cc=0,i=1;i<layering.length;++i)cc+=twoLayerCrossCount(g,layering[i-1],layering[i]);return cc}function twoLayerCrossCount(g,northLayer,southLayer){for(var southPos=zipObject(southLayer,map(southLayer,function(v,i){return i})),southEntries=flatten(map(northLayer,function(v){return sortBy(map(g.outEdges(v),function(e){return{pos:southPos[e.w],weight:g.edge(e).weight}}),"pos")})),firstIndex=1;firstIndex<southLayer.length;)firstIndex<<=1;var treeSize=2*firstIndex-1;firstIndex-=1;var tree=map(new Array(treeSize),function(){return 0}),cc=0;return forEach(southEntries.forEach(function(entry){var index=entry.pos+firstIndex;tree[index]+=entry.weight;for(var weightSum=0;index>0;)index%2&&(weightSum+=tree[index+1]),index=index-1>>1,tree[index]+=entry.weight;cc+=entry.weight*weightSum})),cc}function initOrder(g){var visited={},simpleNodes=filter(g.nodes(),function(v){return!g.children(v).length}),maxRank2=max(map(simpleNodes,function(v){return g.node(v).rank})),layers=map(range(maxRank2+1),function(){return[]});function dfs2(v){if(!has(visited,v)){visited[v]=!0;var node=g.node(v);layers[node.rank].push(v),forEach(g.successors(v),dfs2)}}var orderedVs=sortBy(simpleNodes,function(v){return g.node(v).rank});return forEach(orderedVs,dfs2),layers}function barycenter(g,movable){return map(movable,function(v){var inV=g.inEdges(v);if(inV.length){var result=reduce(inV,function(acc,e){var edge=g.edge(e),nodeU=g.node(e.v);return{sum:acc.sum+edge.weight*nodeU.order,weight:acc.weight+edge.weight}},{sum:0,weight:0});return{v,barycenter:result.sum/result.weight,weight:result.weight}}else return{v}})}function resolveConflicts(entries,cg){var mappedEntries={};forEach(entries,function(entry,i){var tmp=mappedEntries[entry.v]={indegree:0,in:[],out:[],vs:[entry.v],i};isUndefined(entry.barycenter)||(tmp.barycenter=entry.barycenter,tmp.weight=entry.weight)}),forEach(cg.edges(),function(e){var entryV=mappedEntries[e.v],entryW=mappedEntries[e.w];!isUndefined(entryV)&&!isUndefined(entryW)&&(entryW.indegree++,entryV.out.push(mappedEntries[e.w]))});var sourceSet=filter(mappedEntries,function(entry){return!entry.indegree});return doResolveConflicts(sourceSet)}function doResolveConflicts(sourceSet){var entries=[];function handleIn(vEntry){return function(uEntry){uEntry.merged||(isUndefined(uEntry.barycenter)||isUndefined(vEntry.barycenter)||uEntry.barycenter>=vEntry.barycenter)&&mergeEntries(vEntry,uEntry)}}function handleOut(vEntry){return function(wEntry){wEntry.in.push(vEntry),--wEntry.indegree===0&&sourceSet.push(wEntry)}}for(;sourceSet.length;){var entry=sourceSet.pop();entries.push(entry),forEach(entry.in.reverse(),handleIn(entry)),forEach(entry.out,handleOut(entry))}return map(filter(entries,function(entry2){return!entry2.merged}),function(entry2){return pick(entry2,["vs","i","barycenter","weight"])})}function mergeEntries(target,source){var sum=0,weight=0;target.weight&&(sum+=target.barycenter*target.weight,weight+=target.weight),source.weight&&(sum+=source.barycenter*source.weight,weight+=source.weight),target.vs=source.vs.concat(target.vs),target.barycenter=sum/weight,target.weight=weight,target.i=Math.min(source.i,target.i),source.merged=!0}function sort(entries,biasRight){var parts=partition(entries,function(entry){return Object.prototype.hasOwnProperty.call(entry,"barycenter")}),sortable=parts.lhs,unsortable=sortBy(parts.rhs,function(entry){return-entry.i}),vs=[],sum=0,weight=0,vsIndex=0;sortable.sort(compareWithBias(!!biasRight)),vsIndex=consumeUnsortable(vs,unsortable,vsIndex),forEach(sortable,function(entry){vsIndex+=entry.vs.length,vs.push(entry.vs),sum+=entry.barycenter*entry.weight,weight+=entry.weight,vsIndex=consumeUnsortable(vs,unsortable,vsIndex)});var result={vs:flatten(vs)};return weight&&(result.barycenter=sum/weight,result.weight=weight),result}function consumeUnsortable(vs,unsortable,index){for(var last$1;unsortable.length&&(last$1=last(unsortable)).i<=index;)unsortable.pop(),vs.push(last$1.vs),index++;return index}function compareWithBias(bias){return function(entryV,entryW){return entryV.barycenter<entryW.barycenter?-1:entryV.barycenter>entryW.barycenter?1:bias?entryW.i-entryV.i:entryV.i-entryW.i}}function sortSubgraph(g,v,cg,biasRight){var movable=g.children(v),node=g.node(v),bl=node?node.borderLeft:void 0,br=node?node.borderRight:void 0,subgraphs={};bl&&(movable=filter(movable,function(w){return w!==bl&&w!==br}));var barycenters=barycenter(g,movable);forEach(barycenters,function(entry){if(g.children(entry.v).length){var subgraphResult=sortSubgraph(g,entry.v,cg,biasRight);subgraphs[entry.v]=subgraphResult,Object.prototype.hasOwnProperty.call(subgraphResult,"barycenter")&&mergeBarycenters(entry,subgraphResult)}});var entries=resolveConflicts(barycenters,cg);expandSubgraphs(entries,subgraphs);var result=sort(entries,biasRight);if(bl&&(result.vs=flatten([bl,result.vs,br]),g.predecessors(bl).length)){var blPred=g.node(g.predecessors(bl)[0]),brPred=g.node(g.predecessors(br)[0]);Object.prototype.hasOwnProperty.call(result,"barycenter")||(result.barycenter=0,result.weight=0),result.barycenter=(result.barycenter*result.weight+blPred.order+brPred.order)/(result.weight+2),result.weight+=2}return result}function expandSubgraphs(entries,subgraphs){forEach(entries,function(entry){entry.vs=flatten(entry.vs.map(function(v){return subgraphs[v]?subgraphs[v].vs:v}))})}function mergeBarycenters(target,other){isUndefined(target.barycenter)?(target.barycenter=other.barycenter,target.weight=other.weight):(target.barycenter=(target.barycenter*target.weight+other.barycenter*other.weight)/(target.weight+other.weight),target.weight+=other.weight)}function order(g){var maxRank$1=maxRank(g),downLayerGraphs=buildLayerGraphs(g,range(1,maxRank$1+1),"inEdges"),upLayerGraphs=buildLayerGraphs(g,range(maxRank$1-1,-1,-1),"outEdges"),layering=initOrder(g);assignOrder(g,layering);for(var bestCC=Number.POSITIVE_INFINITY,best,i=0,lastBest=0;lastBest<4;++i,++lastBest){sweepLayerGraphs(i%2?downLayerGraphs:upLayerGraphs,i%4>=2),layering=buildLayerMatrix(g);var cc=crossCount(g,layering);cc<bestCC&&(lastBest=0,best=cloneDeep(layering),bestCC=cc)}assignOrder(g,best)}function buildLayerGraphs(g,ranks,relationship){return map(ranks,function(rank2){return buildLayerGraph(g,rank2,relationship)})}function sweepLayerGraphs(layerGraphs,biasRight){var cg=new Graph;forEach(layerGraphs,function(lg){var root=lg.graph().root,sorted=sortSubgraph(lg,root,cg,biasRight);forEach(sorted.vs,function(v,i){lg.node(v).order=i}),addSubgraphConstraints(lg,cg,sorted.vs)})}function assignOrder(g,layering){forEach(layering,function(layer){forEach(layer,function(v,i){g.node(v).order=i})})}function parentDummyChains(g){var postorderNums=postorder(g);forEach(g.graph().dummyChains,function(v){for(var node=g.node(v),edgeObj=node.edgeObj,pathData=findPath(g,postorderNums,edgeObj.v,edgeObj.w),path=pathData.path,lca=pathData.lca,pathIdx=0,pathV=path[pathIdx],ascending=!0;v!==edgeObj.w;){if(node=g.node(v),ascending){for(;(pathV=path[pathIdx])!==lca&&g.node(pathV).maxRank<node.rank;)pathIdx++;pathV===lca&&(ascending=!1)}if(!ascending){for(;pathIdx<path.length-1&&g.node(pathV=path[pathIdx+1]).minRank<=node.rank;)pathIdx++;pathV=path[pathIdx]}g.setParent(v,pathV),v=g.successors(v)[0]}})}function findPath(g,postorderNums,v,w){var vPath=[],wPath=[],low=Math.min(postorderNums[v].low,postorderNums[w].low),lim=Math.max(postorderNums[v].lim,postorderNums[w].lim),parent,lca;parent=v;do parent=g.parent(parent),vPath.push(parent);while(parent&&(postorderNums[parent].low>low||lim>postorderNums[parent].lim));for(lca=parent,parent=w;(parent=g.parent(parent))!==lca;)wPath.push(parent);return{path:vPath.concat(wPath.reverse()),lca}}function postorder(g){var result={},lim=0;function dfs2(v){var low=lim;forEach(g.children(v),dfs2),result[v]={low,lim:lim++}}return forEach(g.children(),dfs2),result}function findType1Conflicts(g,layering){var conflicts={};function visitLayer(prevLayer,layer){var k0=0,scanPos=0,prevLayerLength=prevLayer.length,lastNode=last(layer);return forEach(layer,function(v,i){var w=findOtherInnerSegmentNode(g,v),k1=w?g.node(w).order:prevLayerLength;(w||v===lastNode)&&(forEach(layer.slice(scanPos,i+1),function(scanNode){forEach(g.predecessors(scanNode),function(u){var uLabel=g.node(u),uPos=uLabel.order;(uPos<k0||k1<uPos)&&!(uLabel.dummy&&g.node(scanNode).dummy)&&addConflict(conflicts,u,scanNode)})}),scanPos=i+1,k0=k1)}),layer}return reduce(layering,visitLayer),conflicts}function findType2Conflicts(g,layering){var conflicts={};function scan(south,southPos,southEnd,prevNorthBorder,nextNorthBorder){var v;forEach(range(southPos,southEnd),function(i){v=south[i],g.node(v).dummy&&forEach(g.predecessors(v),function(u){var uNode=g.node(u);uNode.dummy&&(uNode.order<prevNorthBorder||uNode.order>nextNorthBorder)&&addConflict(conflicts,u,v)})})}function visitLayer(north,south){var prevNorthPos=-1,nextNorthPos,southPos=0;return forEach(south,function(v,southLookahead){if(g.node(v).dummy==="border"){var predecessors=g.predecessors(v);predecessors.length&&(nextNorthPos=g.node(predecessors[0]).order,scan(south,southPos,southLookahead,prevNorthPos,nextNorthPos),southPos=southLookahead,prevNorthPos=nextNorthPos)}scan(south,southPos,south.length,nextNorthPos,north.length)}),south}return reduce(layering,visitLayer),conflicts}function findOtherInnerSegmentNode(g,v){if(g.node(v).dummy)return find(g.predecessors(v),function(u){return g.node(u).dummy})}function addConflict(conflicts,v,w){if(v>w){var tmp=v;v=w,w=tmp}Object.prototype.hasOwnProperty.call(conflicts,v)||Object.defineProperty(conflicts,v,{enumerable:!0,configurable:!0,value:{},writable:!0});var conflictsV=conflicts[v];Object.defineProperty(conflictsV,w,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function hasConflict(conflicts,v,w){if(v>w){var tmp=v;v=w,w=tmp}return!!conflicts[v]&&Object.prototype.hasOwnProperty.call(conflicts[v],w)}function verticalAlignment(g,layering,conflicts,neighborFn){var root={},align={},pos={};return forEach(layering,function(layer){forEach(layer,function(v,order2){root[v]=v,align[v]=v,pos[v]=order2})}),forEach(layering,function(layer){var prevIdx=-1;forEach(layer,function(v){var ws=neighborFn(v);if(ws.length){ws=sortBy(ws,function(w2){return pos[w2]});for(var mp=(ws.length-1)/2,i=Math.floor(mp),il=Math.ceil(mp);i<=il;++i){var w=ws[i];align[v]===v&&prevIdx<pos[w]&&!hasConflict(conflicts,v,w)&&(align[w]=v,align[v]=root[v]=root[w],prevIdx=pos[w])}}})}),{root,align}}function horizontalCompaction(g,layering,root,align,reverseSep){var xs={},blockG=buildBlockGraph(g,layering,root,reverseSep),borderType=reverseSep?"borderLeft":"borderRight";function iterate(setXsFunc,nextNodesFunc){for(var stack=blockG.nodes(),elem=stack.pop(),visited={};elem;)visited[elem]?setXsFunc(elem):(visited[elem]=!0,stack.push(elem),stack=stack.concat(nextNodesFunc(elem))),elem=stack.pop()}function pass1(elem){xs[elem]=blockG.inEdges(elem).reduce(function(acc,e){return Math.max(acc,xs[e.v]+blockG.edge(e))},0)}function pass2(elem){var min2=blockG.outEdges(elem).reduce(function(acc,e){return Math.min(acc,xs[e.w]-blockG.edge(e))},Number.POSITIVE_INFINITY),node=g.node(elem);min2!==Number.POSITIVE_INFINITY&&node.borderType!==borderType&&(xs[elem]=Math.max(xs[elem],min2))}return iterate(pass1,blockG.predecessors.bind(blockG)),iterate(pass2,blockG.successors.bind(blockG)),forEach(align,function(v){xs[v]=xs[root[v]]}),xs}function buildBlockGraph(g,layering,root,reverseSep){var blockGraph=new Graph,graphLabel=g.graph(),sepFn=sep(graphLabel.nodesep,graphLabel.edgesep,reverseSep);return forEach(layering,function(layer){var u;forEach(layer,function(v){var vRoot=root[v];if(blockGraph.setNode(vRoot),u){var uRoot=root[u],prevMax=blockGraph.edge(uRoot,vRoot);blockGraph.setEdge(uRoot,vRoot,Math.max(sepFn(g,v,u),prevMax||0))}u=v})}),blockGraph}function findSmallestWidthAlignment(g,xss){return minBy(values(xss),function(xs){var max2=Number.NEGATIVE_INFINITY,min2=Number.POSITIVE_INFINITY;return forIn(xs,function(x,v){var halfWidth=width(g,v)/2;max2=Math.max(x+halfWidth,max2),min2=Math.min(x-halfWidth,min2)}),max2-min2})}function alignCoordinates(xss,alignTo){var alignToVals=values(alignTo),alignToMin=min(alignToVals),alignToMax=max(alignToVals);forEach(["u","d"],function(vert){forEach(["l","r"],function(horiz){var alignment=vert+horiz,xs=xss[alignment],delta;if(xs!==alignTo){var xsVals=values(xs);delta=horiz==="l"?alignToMin-min(xsVals):alignToMax-max(xsVals),delta&&(xss[alignment]=mapValues(xs,function(x){return x+delta}))}})})}function balance(xss,align){return mapValues(xss.ul,function(ignore,v){if(align)return xss[align.toLowerCase()][v];var xs=sortBy(map(xss,v));return(xs[1]+xs[2])/2})}function positionX(g){var layering=buildLayerMatrix(g),conflicts=merge(findType1Conflicts(g,layering),findType2Conflicts(g,layering)),xss={},adjustedLayering;forEach(["u","d"],function(vert){adjustedLayering=vert==="u"?layering:values(layering).reverse(),forEach(["l","r"],function(horiz){horiz==="r"&&(adjustedLayering=map(adjustedLayering,function(inner){return values(inner).reverse()}));var neighborFn=(vert==="u"?g.predecessors:g.successors).bind(g),align=verticalAlignment(g,adjustedLayering,conflicts,neighborFn),xs=horizontalCompaction(g,adjustedLayering,align.root,align.align,horiz==="r");horiz==="r"&&(xs=mapValues(xs,function(x){return-x})),xss[vert+horiz]=xs})});var smallestWidth=findSmallestWidthAlignment(g,xss);return alignCoordinates(xss,smallestWidth),balance(xss,g.graph().align)}function sep(nodeSep,edgeSep,reverseSep){return function(g,v,w){var vLabel=g.node(v),wLabel=g.node(w),sum=0,delta;if(sum+=vLabel.width/2,Object.prototype.hasOwnProperty.call(vLabel,"labelpos"))switch(vLabel.labelpos.toLowerCase()){case"l":delta=-vLabel.width/2;break;case"r":delta=vLabel.width/2;break}if(delta&&(sum+=reverseSep?delta:-delta),delta=0,sum+=(vLabel.dummy?edgeSep:nodeSep)/2,sum+=(wLabel.dummy?edgeSep:nodeSep)/2,sum+=wLabel.width/2,Object.prototype.hasOwnProperty.call(wLabel,"labelpos"))switch(wLabel.labelpos.toLowerCase()){case"l":delta=wLabel.width/2;break;case"r":delta=-wLabel.width/2;break}return delta&&(sum+=reverseSep?delta:-delta),delta=0,sum}}function width(g,v){return g.node(v).width}function position(g){g=asNonCompoundGraph(g),positionY(g),forOwn(positionX(g),function(x,v){g.node(v).x=x})}function positionY(g){var layering=buildLayerMatrix(g),rankSep=g.graph().ranksep,prevY=0;forEach(layering,function(layer){var maxHeight=max(map(layer,function(v){return g.node(v).height}));forEach(layer,function(v){g.node(v).y=prevY+maxHeight/2}),prevY+=maxHeight+rankSep})}function layout(g,opts){var time=notime;time("layout",()=>{var layoutGraph=time(" buildLayoutGraph",()=>buildLayoutGraph(g));time(" runLayout",()=>runLayout(layoutGraph,time)),time(" updateInputGraph",()=>updateInputGraph(g,layoutGraph))})}function runLayout(g,time){time(" makeSpaceForEdgeLabels",()=>makeSpaceForEdgeLabels(g)),time(" removeSelfEdges",()=>removeSelfEdges(g)),time(" acyclic",()=>run$2(g)),time(" nestingGraph.run",()=>run(g)),time(" rank",()=>rank(asNonCompoundGraph(g))),time(" injectEdgeLabelProxies",()=>injectEdgeLabelProxies(g)),time(" removeEmptyRanks",()=>removeEmptyRanks(g)),time(" nestingGraph.cleanup",()=>cleanup(g)),time(" normalizeRanks",()=>normalizeRanks(g)),time(" assignRankMinMax",()=>assignRankMinMax(g)),time(" removeEdgeLabelProxies",()=>removeEdgeLabelProxies(g)),time(" normalize.run",()=>run$1(g)),time(" parentDummyChains",()=>parentDummyChains(g)),time(" addBorderSegments",()=>addBorderSegments(g)),time(" order",()=>order(g)),time(" insertSelfEdges",()=>insertSelfEdges(g)),time(" adjustCoordinateSystem",()=>adjust(g)),time(" position",()=>position(g)),time(" positionSelfEdges",()=>positionSelfEdges(g)),time(" removeBorderNodes",()=>removeBorderNodes(g)),time(" normalize.undo",()=>undo(g)),time(" fixupEdgeLabelCoords",()=>fixupEdgeLabelCoords(g)),time(" undoCoordinateSystem",()=>undo$1(g)),time(" translateGraph",()=>translateGraph(g)),time(" assignNodeIntersects",()=>assignNodeIntersects(g)),time(" reversePoints",()=>reversePointsForReversedEdges(g)),time(" acyclic.undo",()=>undo$2(g))}function updateInputGraph(inputGraph,layoutGraph){forEach(inputGraph.nodes(),function(v){var inputLabel=inputGraph.node(v),layoutLabel=layoutGraph.node(v);inputLabel&&(inputLabel.x=layoutLabel.x,inputLabel.y=layoutLabel.y,layoutGraph.children(v).length&&(inputLabel.width=layoutLabel.width,inputLabel.height=layoutLabel.height))}),forEach(inputGraph.edges(),function(e){var inputLabel=inputGraph.edge(e),layoutLabel=layoutGraph.edge(e);inputLabel.points=layoutLabel.points,Object.prototype.hasOwnProperty.call(layoutLabel,"x")&&(inputLabel.x=layoutLabel.x,inputLabel.y=layoutLabel.y)}),inputGraph.graph().width=layoutGraph.graph().width,inputGraph.graph().height=layoutGraph.graph().height}var graphNumAttrs=["nodesep","edgesep","ranksep","marginx","marginy"],graphDefaults={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},graphAttrs=["acyclicer","ranker","rankdir","align"],nodeNumAttrs=["width","height"],nodeDefaults={width:0,height:0},edgeNumAttrs=["minlen","weight","width","height","labeloffset"],edgeDefaults={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},edgeAttrs=["labelpos"];function buildLayoutGraph(inputGraph){var g=new Graph({multigraph:!0,compound:!0}),graph=canonicalize(inputGraph.graph());return g.setGraph(merge({},graphDefaults,selectNumberAttrs(graph,graphNumAttrs),pick(graph,graphAttrs))),forEach(inputGraph.nodes(),function(v){var node=canonicalize(inputGraph.node(v));g.setNode(v,defaults(selectNumberAttrs(node,nodeNumAttrs),nodeDefaults)),g.setParent(v,inputGraph.parent(v))}),forEach(inputGraph.edges(),function(e){var edge=canonicalize(inputGraph.edge(e));g.setEdge(e,merge({},edgeDefaults,selectNumberAttrs(edge,edgeNumAttrs),pick(edge,edgeAttrs)))}),g}function makeSpaceForEdgeLabels(g){var graph=g.graph();graph.ranksep/=2,forEach(g.edges(),function(e){var edge=g.edge(e);edge.minlen*=2,edge.labelpos.toLowerCase()!=="c"&&(graph.rankdir==="TB"||graph.rankdir==="BT"?edge.width+=edge.labeloffset:edge.height+=edge.labeloffset)})}function injectEdgeLabelProxies(g){forEach(g.edges(),function(e){var edge=g.edge(e);if(edge.width&&edge.height){var v=g.node(e.v),w=g.node(e.w),label={rank:(w.rank-v.rank)/2+v.rank,e};addDummyNode(g,"edge-proxy",label,"_ep")}})}function assignRankMinMax(g){var maxRank2=0;forEach(g.nodes(),function(v){var node=g.node(v);node.borderTop&&(node.minRank=g.node(node.borderTop).rank,node.maxRank=g.node(node.borderBottom).rank,maxRank2=max(maxRank2,node.maxRank))}),g.graph().maxRank=maxRank2}function removeEdgeLabelProxies(g){forEach(g.nodes(),function(v){var node=g.node(v);node.dummy==="edge-proxy"&&(g.edge(node.e).labelRank=node.rank,g.removeNode(v))})}function translateGraph(g){var minX=Number.POSITIVE_INFINITY,maxX=0,minY=Number.POSITIVE_INFINITY,maxY=0,graphLabel=g.graph(),marginX=graphLabel.marginx||0,marginY=graphLabel.marginy||0;function getExtremes(attrs){var x=attrs.x,y=attrs.y,w=attrs.width,h=attrs.height;minX=Math.min(minX,x-w/2),maxX=Math.max(maxX,x+w/2),minY=Math.min(minY,y-h/2),maxY=Math.max(maxY,y+h/2)}forEach(g.nodes(),function(v){getExtremes(g.node(v))}),forEach(g.edges(),function(e){var edge=g.edge(e);Object.prototype.hasOwnProperty.call(edge,"x")&&getExtremes(edge)}),minX-=marginX,minY-=marginY,forEach(g.nodes(),function(v){var node=g.node(v);node.x-=minX,node.y-=minY}),forEach(g.edges(),function(e){var edge=g.edge(e);forEach(edge.points,function(p){p.x-=minX,p.y-=minY}),Object.prototype.hasOwnProperty.call(edge,"x")&&(edge.x-=minX),Object.prototype.hasOwnProperty.call(edge,"y")&&(edge.y-=minY)}),graphLabel.width=maxX-minX+marginX,graphLabel.height=maxY-minY+marginY}function assignNodeIntersects(g){forEach(g.edges(),function(e){var edge=g.edge(e),nodeV=g.node(e.v),nodeW=g.node(e.w),p1,p2;edge.points?(p1=edge.points[0],p2=edge.points[edge.points.length-1]):(edge.points=[],p1=nodeW,p2=nodeV),edge.points.unshift(intersectRect(nodeV,p1)),edge.points.push(intersectRect(nodeW,p2))})}function fixupEdgeLabelCoords(g){forEach(g.edges(),function(e){var edge=g.edge(e);if(Object.prototype.hasOwnProperty.call(edge,"x"))switch((edge.labelpos==="l"||edge.labelpos==="r")&&(edge.width-=edge.labeloffset),edge.labelpos){case"l":edge.x-=edge.width/2+edge.labeloffset;break;case"r":edge.x+=edge.width/2+edge.labeloffset;break}})}function reversePointsForReversedEdges(g){forEach(g.edges(),function(e){var edge=g.edge(e);edge.reversed&&edge.points.reverse()})}function removeBorderNodes(g){forEach(g.nodes(),function(v){if(g.children(v).length){var node=g.node(v),t=g.node(node.borderTop),b=g.node(node.borderBottom),l=g.node(last(node.borderLeft)),r=g.node(last(node.borderRight));node.width=Math.abs(r.x-l.x),node.height=Math.abs(b.y-t.y),node.x=l.x+node.width/2,node.y=t.y+node.height/2}}),forEach(g.nodes(),function(v){g.node(v).dummy==="border"&&g.removeNode(v)})}function removeSelfEdges(g){forEach(g.edges(),function(e){if(e.v===e.w){var node=g.node(e.v);node.selfEdges||(node.selfEdges=[]),node.selfEdges.push({e,label:g.edge(e)}),g.removeEdge(e)}})}function insertSelfEdges(g){var layers=buildLayerMatrix(g);forEach(layers,function(layer){var orderShift=0;forEach(layer,function(v,i){var node=g.node(v);node.order=i+orderShift,forEach(node.selfEdges,function(selfEdge){addDummyNode(g,"selfedge",{width:selfEdge.label.width,height:selfEdge.label.height,rank:node.rank,order:i+ ++orderShift,e:selfEdge.e,label:selfEdge.label},"_se")}),delete node.selfEdges})})}function positionSelfEdges(g){forEach(g.nodes(),function(v){var node=g.node(v);if(node.dummy==="selfedge"){var selfNode=g.node(node.e.v),x=selfNode.x+selfNode.width/2,y=selfNode.y,dx=node.x-x,dy=selfNode.height/2;g.setEdge(node.e,node.label),g.removeNode(v),node.label.points=[{x:x+2*dx/3,y:y-dy},{x:x+5*dx/6,y:y-dy},{x:x+dx,y},{x:x+5*dx/6,y:y+dy},{x:x+2*dx/3,y:y+dy}],node.label.x=node.x,node.label.y=node.y}})}function selectNumberAttrs(obj,attrs){return mapValues(pick(obj,attrs),Number)}function canonicalize(attrs){var newAttrs={};return forEach(attrs,function(v,k){newAttrs[k.toLowerCase()]=v}),newAttrs}export{layout as l};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{aL as constant,aM as interpolateNumber,aN as color,aO as interpolateRgb,aP as interpolateString}from"./mermaid.core-DNvsWVDx.js";import{i as initRange}from"./init-C7FSzFHJ.js";import{e as exponent,f as formatSpecifier,a as formatPrefix,b as format}from"./defaultLocale-CcTwRAjA.js";function ascending(a,b){return a==null||b==null?NaN:a<b?-1:a>b?1:a>=b?0:NaN}function descending(a,b){return a==null||b==null?NaN:b<a?-1:b>a?1:b>=a?0:NaN}function bisector(f){let compare1,compare2,delta;f.length!==2?(compare1=ascending,compare2=(d,x)=>ascending(f(d),x),delta=(d,x)=>f(d)-x):(compare1=f===ascending||f===descending?f:zero,compare2=f,delta=f);function left(a,x,lo=0,hi=a.length){if(lo<hi){if(compare1(x,x)!==0)return hi;do{const mid=lo+hi>>>1;compare2(a[mid],x)<0?lo=mid+1:hi=mid}while(lo<hi)}return lo}function right(a,x,lo=0,hi=a.length){if(lo<hi){if(compare1(x,x)!==0)return hi;do{const mid=lo+hi>>>1;compare2(a[mid],x)<=0?lo=mid+1:hi=mid}while(lo<hi)}return lo}function center(a,x,lo=0,hi=a.length){const i=left(a,x,lo,hi-1);return i>lo&&delta(a[i-1],x)>-delta(a[i],x)?i-1:i}return{left,center,right}}function zero(){return 0}function number$1(x){return x===null?NaN:+x}const ascendingBisect=bisector(ascending),bisectRight=ascendingBisect.right;bisector(number$1).center;const e10=Math.sqrt(50),e5=Math.sqrt(10),e2=Math.sqrt(2);function tickSpec(start,stop,count){const step=(stop-start)/Math.max(0,count),power=Math.floor(Math.log10(step)),error=step/Math.pow(10,power),factor=error>=e10?10:error>=e5?5:error>=e2?2:1;let i1,i2,inc;return power<0?(inc=Math.pow(10,-power)/factor,i1=Math.round(start*inc),i2=Math.round(stop*inc),i1/inc<start&&++i1,i2/inc>stop&&--i2,inc=-inc):(inc=Math.pow(10,power)*factor,i1=Math.round(start/inc),i2=Math.round(stop/inc),i1*inc<start&&++i1,i2*inc>stop&&--i2),i2<i1&&.5<=count&&count<2?tickSpec(start,stop,count*2):[i1,i2,inc]}function ticks(start,stop,count){if(stop=+stop,start=+start,count=+count,!(count>0))return[];if(start===stop)return[start];const reverse=stop<start,[i1,i2,inc]=reverse?tickSpec(stop,start,count):tickSpec(start,stop,count);if(!(i2>=i1))return[];const n=i2-i1+1,ticks2=new Array(n);if(reverse)if(inc<0)for(let i=0;i<n;++i)ticks2[i]=(i2-i)/-inc;else for(let i=0;i<n;++i)ticks2[i]=(i2-i)*inc;else if(inc<0)for(let i=0;i<n;++i)ticks2[i]=(i1+i)/-inc;else for(let i=0;i<n;++i)ticks2[i]=(i1+i)*inc;return ticks2}function tickIncrement(start,stop,count){return stop=+stop,start=+start,count=+count,tickSpec(start,stop,count)[2]}function tickStep(start,stop,count){stop=+stop,start=+start,count=+count;const reverse=stop<start,inc=reverse?tickIncrement(stop,start,count):tickIncrement(start,stop,count);return(reverse?-1:1)*(inc<0?1/-inc:inc)}function numberArray(a,b){b||(b=[]);var n=a?Math.min(b.length,a.length):0,c=b.slice(),i;return function(t){for(i=0;i<n;++i)c[i]=a[i]*(1-t)+b[i]*t;return c}}function isNumberArray(x){return ArrayBuffer.isView(x)&&!(x instanceof DataView)}function genericArray(a,b){var nb=b?b.length:0,na=a?Math.min(nb,a.length):0,x=new Array(na),c=new Array(nb),i;for(i=0;i<na;++i)x[i]=interpolate(a[i],b[i]);for(;i<nb;++i)c[i]=b[i];return function(t){for(i=0;i<na;++i)c[i]=x[i](t);return c}}function date(a,b){var d=new Date;return a=+a,b=+b,function(t){return d.setTime(a*(1-t)+b*t),d}}function object(a,b){var i={},c={},k;(a===null||typeof a!="object")&&(a={}),(b===null||typeof b!="object")&&(b={});for(k in b)k in a?i[k]=interpolate(a[k],b[k]):c[k]=b[k];return function(t){for(k in i)c[k]=i[k](t);return c}}function interpolate(a,b){var t=typeof b,c;return b==null||t==="boolean"?constant(b):(t==="number"?interpolateNumber:t==="string"?(c=color(b))?(b=c,interpolateRgb):interpolateString:b instanceof color?interpolateRgb:b instanceof Date?date:isNumberArray(b)?numberArray:Array.isArray(b)?genericArray:typeof b.valueOf!="function"&&typeof b.toString!="function"||isNaN(b)?object:interpolateNumber)(a,b)}function interpolateRound(a,b){return a=+a,b=+b,function(t){return Math.round(a*(1-t)+b*t)}}function precisionFixed(step){return Math.max(0,-exponent(Math.abs(step)))}function precisionPrefix(step,value){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(exponent(value)/3)))*3-exponent(Math.abs(step)))}function precisionRound(step,max){return step=Math.abs(step),max=Math.abs(max)-step,Math.max(0,exponent(max)-exponent(step))+1}function constants(x){return function(){return x}}function number(x){return+x}var unit=[0,1];function identity(x){return x}function normalize(a,b){return(b-=a=+a)?function(x){return(x-a)/b}:constants(isNaN(b)?NaN:.5)}function clamper(a,b){var t;return a>b&&(t=a,a=b,b=t),function(x){return Math.max(a,Math.min(b,x))}}function bimap(domain,range,interpolate2){var d0=domain[0],d1=domain[1],r0=range[0],r1=range[1];return d1<d0?(d0=normalize(d1,d0),r0=interpolate2(r1,r0)):(d0=normalize(d0,d1),r0=interpolate2(r0,r1)),function(x){return r0(d0(x))}}function polymap(domain,range,interpolate2){var j=Math.min(domain.length,range.length)-1,d=new Array(j),r=new Array(j),i=-1;for(domain[j]<domain[0]&&(domain=domain.slice().reverse(),range=range.slice().reverse());++i<j;)d[i]=normalize(domain[i],domain[i+1]),r[i]=interpolate2(range[i],range[i+1]);return function(x){var i2=bisectRight(domain,x,1,j)-1;return r[i2](d[i2](x))}}function copy(source,target){return target.domain(source.domain()).range(source.range()).interpolate(source.interpolate()).clamp(source.clamp()).unknown(source.unknown())}function transformer(){var domain=unit,range=unit,interpolate$1=interpolate,transform,untransform,unknown,clamp=identity,piecewise,output,input;function rescale(){var n=Math.min(domain.length,range.length);return clamp!==identity&&(clamp=clamper(domain[0],domain[n-1])),piecewise=n>2?polymap:bimap,output=input=null,scale}function scale(x){return x==null||isNaN(x=+x)?unknown:(output||(output=piecewise(domain.map(transform),range,interpolate$1)))(transform(clamp(x)))}return scale.invert=function(y){return clamp(untransform((input||(input=piecewise(range,domain.map(transform),interpolateNumber)))(y)))},scale.domain=function(_){return arguments.length?(domain=Array.from(_,number),rescale()):domain.slice()},scale.range=function(_){return arguments.length?(range=Array.from(_),rescale()):range.slice()},scale.rangeRound=function(_){return range=Array.from(_),interpolate$1=interpolateRound,rescale()},scale.clamp=function(_){return arguments.length?(clamp=_?!0:identity,rescale()):clamp!==identity},scale.interpolate=function(_){return arguments.length?(interpolate$1=_,rescale()):interpolate$1},scale.unknown=function(_){return arguments.length?(unknown=_,scale):unknown},function(t,u){return transform=t,untransform=u,rescale()}}function continuous(){return transformer()(identity,identity)}function tickFormat(start,stop,count,specifier){var step=tickStep(start,stop,count),precision;switch(specifier=formatSpecifier(specifier??",f"),specifier.type){case"s":{var value=Math.max(Math.abs(start),Math.abs(stop));return specifier.precision==null&&!isNaN(precision=precisionPrefix(step,value))&&(specifier.precision=precision),formatPrefix(specifier,value)}case"":case"e":case"g":case"p":case"r":{specifier.precision==null&&!isNaN(precision=precisionRound(step,Math.max(Math.abs(start),Math.abs(stop))))&&(specifier.precision=precision-(specifier.type==="e"));break}case"f":case"%":{specifier.precision==null&&!isNaN(precision=precisionFixed(step))&&(specifier.precision=precision-(specifier.type==="%")*2);break}}return format(specifier)}function linearish(scale){var domain=scale.domain;return scale.ticks=function(count){var d=domain();return ticks(d[0],d[d.length-1],count??10)},scale.tickFormat=function(count,specifier){var d=domain();return tickFormat(d[0],d[d.length-1],count??10,specifier)},scale.nice=function(count){count==null&&(count=10);var d=domain(),i0=0,i1=d.length-1,start=d[i0],stop=d[i1],prestep,step,maxIter=10;for(stop<start&&(step=start,start=stop,stop=step,step=i0,i0=i1,i1=step);maxIter-- >0;){if(step=tickIncrement(start,stop,count),step===prestep)return d[i0]=start,d[i1]=stop,domain(d);if(step>0)start=Math.floor(start/step)*step,stop=Math.ceil(stop/step)*step;else if(step<0)start=Math.ceil(start*step)/step,stop=Math.floor(stop*step)/step;else break;prestep=step}return scale},scale}function linear(){var scale=continuous();return scale.copy=function(){return copy(scale,linear())},initRange.apply(scale,arguments),linearish(scale)}export{copy as a,bisector as b,continuous as c,linear as l,tickStep as t};
|