aiware-js 2.43.0 → 2.44.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/js-core.esm56.js CHANGED
@@ -1,4 +1,4 @@
1
- import{cc as createSvgIcon,j as jsxRuntime,ee as isSymbol_1,ec as identity_1,ce as _baseIteratee,ed as _isIterateeCall,g$ as toFinite_1,h0 as _baseForOwn,h1 as _arrayReduce,d5 as isArray_1,dY as _baseEach,e7 as isBuffer$1,e8 as isFunction_1,dU as isObject_1,e9 as isTypedArray_1,bv as commonjsRequire,c8 as has_1,bQ as isEmpty_1,bY as keys_1,bX as map_1,ds as size_1,eb as _baseFor,gF as _castFunction,de as _baseGet,dg as _castPath,h2 as hasIn_1,da as toString_1,h3 as now_1,r as react,h4 as useSyncExternalStoreExports,a1 as createSlice,co as combineReducers,m as makeStyles,cs as AIWareThemeProvider,a4 as DynamicModuleLoader,eP as getLibraryModule,A as AIWareIntlProvider,n as useDispatch,o as useSelector,fc as panelsSelector,h5 as getTabPanelWidthBySize,B as Box,af as Portal,H as classNames,am as all,T as Typography,V as Button,ar as Tooltip,M as IconButton,c7 as Hide,cw as Stack,b2 as Fade,ew as takeEvery$1,cY as Collapse,ah as List$2,ai as ListItem,cK as Menu,U as MenuItem,aR as Dialog,b7 as DialogTitle,b8 as DialogContent,cH as DialogContentText,b9 as DialogActions,D as FormControl,E as TextField,f6 as EngineCategoryIcons,eF as Process,b_ as Avatar,h6 as Engines,f8 as Settings,F as FormattedMessage,W as Divider,ay as select$1,f3 as selectApiConfigs,ax as put,c9 as showMessage,ca as MessageSeverity,h7 as imageUpload,h8 as characterCountTextField,bV as Icon,cT as baseGraphQLApiWithError}from"./js-core.esm.js";import{_ as _baseClone,f as forEach_1,a as _arrayEach,c as cloneDeep_1,d as defaults_1}from"./js-core.esm52.js";import{q as _baseAssignValue,r as _overRest,t as _setToString,u as _baseCreate,j as _getPrototype,a as _baseRest,i as isArrayLikeObject_1,v as constant_1,k as keysIn_1,c as _assignValue,l as last_1,s as sortBy_1}from"./js-core.esm29.js";import{_ as _baseFlatten,f as filter_1}from"./js-core.esm28.js";import{_ as _baseUniq}from"./js-core.esm32.js";import{v as values_1,_ as _baseSet,m as merge_1}from"./js-core.esm27.js";import{f as find_1}from"./js-core.esm14.js";import{f as flatten_1}from"./js-core.esm34.js";import{getDataCenterProcessAIModule,EngineCard as Engine,EngineSearchSkeleton,EngineSearchEmptyState,EngineCategoryCard}from"./js-core.esm47.js";import{v as v4}from"./js-core.esm36.js";import{B as Box$1}from"./js-core.esm31.js";import"./js-core.esm19.js";import"./js-core.esm35.js";import"./js-core.esm38.js";import"./js-core.esm9.js";import"./js-core.esm24.js";import"./js-core.esm5.js";import"./js-core.esm11.js";import"./js-core.esm37.js";var DeleteOutline=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM8 9h8v10H8V9zm7.5-5-1-1h-5l-1 1H5v2h14V4z"}),"DeleteOutline"),EditOutlined=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"m14.06 9.02.92.92L5.92 19H5v-.92l9.06-9.06M17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29zm-3.6 3.19L3 17.25V21h3.75L17.81 9.94l-3.75-3.75z"}),"EditOutlined"),Engineering=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4zm13.1-8.16c.01-.11.02-.22.02-.34 0-.12-.01-.23-.03-.34l.74-.58c.07-.05.08-.15.04-.22l-.7-1.21c-.04-.08-.14-.1-.21-.08l-.86.35c-.18-.14-.38-.25-.59-.34l-.13-.93c-.02-.09-.09-.15-.18-.15h-1.4c-.09 0-.16.06-.17.15l-.13.93c-.21.09-.41.21-.59.34l-.87-.35c-.08-.03-.17 0-.21.08l-.7 1.21c-.04.08-.03.17.04.22l.74.58c-.02.11-.03.23-.03.34 0 .11.01.23.03.34l-.74.58c-.07.05-.08.15-.04.22l.7 1.21c.04.08.14.1.21.08l.87-.35c.18.14.38.25.59.34l.13.93c.01.09.08.15.17.15h1.4c.09 0 .16-.06.17-.15l.13-.93c.21-.09.41-.21.59-.34l.87.35c.08.03.17 0 .21-.08l.7-1.21c.04-.08.03-.17-.04-.22l-.73-.58zm-2.6.91c-.69 0-1.25-.56-1.25-1.25s.56-1.25 1.25-1.25 1.25.56 1.25 1.25-.56 1.25-1.25 1.25zm.42 3.93-.5-.87c-.03-.06-.1-.08-.15-.06l-.62.25c-.13-.1-.27-.18-.42-.24l-.09-.66c-.02-.06-.08-.1-.14-.1h-1c-.06 0-.11.04-.12.11l-.09.66c-.15.06-.29.15-.42.24l-.62-.25c-.06-.02-.12 0-.15.06l-.5.87c-.03.06-.02.12.03.16l.53.41c-.01.08-.02.16-.02.24 0 .08.01.17.02.24l-.53.41c-.05.04-.06.11-.03.16l.5.87c.03.06.1.08.15.06l.62-.25c.13.1.27.18.42.24l.09.66c.01.07.06.11.12.11h1c.06 0 .12-.04.12-.11l.09-.66c.15-.06.29-.15.42-.24l.62.25c.06.02.12 0 .15-.06l.5-.87c.03-.06.02-.12-.03-.16l-.52-.41c.01-.08.02-.16.02-.24 0-.08-.01-.17-.02-.24l.53-.41c.05-.04.06-.11.04-.17zm-2.42 1.65c-.46 0-.83-.38-.83-.83 0-.46.38-.83.83-.83s.83.38.83.83c0 .46-.37.83-.83.83zM4.74 9h8.53c.27 0 .49-.22.49-.49v-.02c0-.27-.22-.49-.49-.49H13c0-1.48-.81-2.75-2-3.45v.95c0 .28-.22.5-.5.5s-.5-.22-.5-.5V4.14C9.68 4.06 9.35 4 9 4s-.68.06-1 .14V5.5c0 .28-.22.5-.5.5S7 5.78 7 5.5v-.95C5.81 5.25 5 6.52 5 8h-.26c-.27 0-.49.22-.49.49v.03c0 .26.22.48.49.48zM9 13c1.86 0 3.41-1.28 3.86-3H5.14c.45 1.72 2 3 3.86 3z"}),"Engineering"),FullscreenOutlined=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z"}),"FullscreenOutlined"),HelpOutline=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"}),"HelpOutline"),isSymbol$3=isSymbol_1;function baseExtremum$3(e,t,n){for(var o=-1,r=e.length;++o<r;){var i,a,s=e[o],l=t(s);null!=l&&(void 0===i?l==l&&!isSymbol$3(l):n(l,i))&&(i=l,a=s)}return a}var _baseExtremum=baseExtremum$3;function baseGt$1(e,t){return t<e}var _baseGt=baseGt$1,baseExtremum$2=baseExtremum$3,baseGt=baseGt$1,identity$3=identity_1;function max$1(e){return e&&e.length?baseExtremum$2(e,identity$3,baseGt):void 0}var max_1=max$1;function baseLt$2(e,t){return e<t}var _baseLt=baseLt$2,baseExtremum$1=baseExtremum$3,baseLt$1=baseLt$2,identity$2=identity_1;function min$3(e){return e&&e.length?baseExtremum$1(e,identity$2,baseLt$1):void 0}var min_1=min$3,baseExtremum=baseExtremum$3,baseIteratee$3=_baseIteratee,baseLt=baseLt$2;function minBy(e,t){return e&&e.length?baseExtremum(e,baseIteratee$3(t),baseLt):void 0}var minBy_1=minBy,nativeCeil=Math.ceil,nativeMax=Math.max;function baseRange$1(e,t,n,o){for(var r=-1,i=nativeMax(nativeCeil((t-e)/(n||1)),0),a=Array(i);i--;)a[o?i:++r]=e,e+=n;return a}var _baseRange=baseRange$1,baseRange=baseRange$1,isIterateeCall=_isIterateeCall,toFinite=toFinite_1;function createRange$1(o){return function(e,t,n){return n&&"number"!=typeof n&&isIterateeCall(e,t,n)&&(t=n=void 0),e=toFinite(e),void 0===t?(t=e,e=0):t=toFinite(t),n=void 0===n?e<t?1:-1:toFinite(n),baseRange(e,t,n,o)}}var _createRange=createRange$1,createRange=createRange$1,range=createRange$1(),range_1=range,baseAssignValue=_baseAssignValue,baseForOwn$1=_baseForOwn,baseIteratee$2=_baseIteratee;function mapValues(e,o){var r={};return o=baseIteratee$2(o),baseForOwn$1(e,function(e,t,n){baseAssignValue(r,t,o(e,t,n))}),r}var mapValues_1=mapValues,flatten=flatten_1,overRest=_overRest,setToString=_setToString;function flatRest$1(e){return setToString(overRest(e,void 0,flatten),e+"")}var _flatRest=flatRest$1,baseClone=_baseClone,CLONE_SYMBOLS_FLAG=4;function clone(e){return baseClone(e,CLONE_SYMBOLS_FLAG)}var clone_1=clone,each=forEach_1;function isUndefined(e){return void 0===e}var isUndefined_1=isUndefined;function baseReduce$1(e,o,r,i,t){return t(e,function(e,t,n){r=i?(i=!1,e):o(r,e,t,n)}),r}var _baseReduce=baseReduce$1,arrayReduce$1=_arrayReduce,baseEach=_baseEach,baseIteratee$1=_baseIteratee,baseReduce=baseReduce$1,isArray$1=isArray_1;function reduce(e,t,n){var o=isArray$1(e)?arrayReduce$1:baseReduce,r=arguments.length<3;return o(e,baseIteratee$1(t),n,r,baseEach)}var reduce_1=reduce,arrayEach=_arrayEach,baseCreate=_baseCreate,baseForOwn=_baseForOwn,baseIteratee=_baseIteratee,getPrototype=_getPrototype,isArray=isArray_1,isBuffer=isBuffer$1.exports,isFunction=isFunction_1,isObject$7=isObject_1,isTypedArray=isTypedArray_1;function transform(e,o,r){var t,n=isArray(e),i=n||isBuffer(e)||isTypedArray(e);return o=baseIteratee(o),null==r&&(t=e&&e.constructor,r=i?n?new t:[]:isObject$7(e)&&isFunction(t)?baseCreate(getPrototype(e)):{}),(i?arrayEach:baseForOwn)(e,function(e,t,n){return o(r,e,t,n)}),r}var transform_1=transform,baseFlatten=_baseFlatten,baseRest=_baseRest,baseUniq=_baseUniq,isArrayLikeObject=isArrayLikeObject_1,union=_baseRest(function(e){return baseUniq(baseFlatten(e,1,isArrayLikeObject,!0))}),union_1=union;if("function"==typeof commonjsRequire)try{lodash$1={clone:clone_1,constant:constant_1,each:each,filter:filter_1,has:has_1,isArray:isArray_1,isEmpty:isEmpty_1,isFunction:isFunction_1,isUndefined:isUndefined_1,keys:keys_1,map:map_1,reduce:reduce_1,size:size_1,transform:transform_1,union:union_1,values:values_1}}catch(e){}var lodash$1,lodash_1$1=lodash$1=lodash$1||window._,_$z=lodash_1$1,graph=Graph$a,DEFAULT_EDGE_NAME="\0",GRAPH_NODE="\0",EDGE_KEY_DELIM="";function Graph$a(e){this._isDirected=!_$z.has(e,"directed")||e.directed,this._isMultigraph=!!_$z.has(e,"multigraph")&&e.multigraph,this._isCompound=!!_$z.has(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=_$z.constant(void 0),this._defaultEdgeLabelFn=_$z.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[GRAPH_NODE]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function incrementOrInitEntry(e,t){e[t]?e[t]++:e[t]=1}function decrementOrRemoveEntry(e,t){--e[t]||delete e[t]}function edgeArgsToId(e,t,n,o){t=""+t,n=""+n;return!e&&n<t&&(e=t,t=n,n=e),t+EDGE_KEY_DELIM+n+EDGE_KEY_DELIM+(_$z.isUndefined(o)?DEFAULT_EDGE_NAME:o)}function edgeArgsToObj(e,t,n,o){t=""+t,n=""+n,!e&&n<t&&(e=t,t=n,n=e),e={v:t,w:n};return o&&(e.name=o),e}function edgeObjToId(e,t){return edgeArgsToId(e,t.v,t.w,t.name)}Graph$a.prototype._nodeCount=0,Graph$a.prototype._edgeCount=0,Graph$a.prototype.isDirected=function(){return this._isDirected},Graph$a.prototype.isMultigraph=function(){return this._isMultigraph},Graph$a.prototype.isCompound=function(){return this._isCompound},Graph$a.prototype.setGraph=function(e){return this._label=e,this},Graph$a.prototype.graph=function(){return this._label},Graph$a.prototype.setDefaultNodeLabel=function(e){return _$z.isFunction(e)||(e=_$z.constant(e)),this._defaultNodeLabelFn=e,this},Graph$a.prototype.nodeCount=function(){return this._nodeCount},Graph$a.prototype.nodes=function(){return _$z.keys(this._nodes)},Graph$a.prototype.sources=function(){var t=this;return _$z.filter(this.nodes(),function(e){return _$z.isEmpty(t._in[e])})},Graph$a.prototype.sinks=function(){var t=this;return _$z.filter(this.nodes(),function(e){return _$z.isEmpty(t._out[e])})},Graph$a.prototype.setNodes=function(e,t){var n=arguments,o=this;return _$z.each(e,function(e){1<n.length?o.setNode(e,t):o.setNode(e)}),this},Graph$a.prototype.setNode=function(e,t){return _$z.has(this._nodes,e)?1<arguments.length&&(this._nodes[e]=t):(this._nodes[e]=1<arguments.length?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=GRAPH_NODE,this._children[e]={},this._children[GRAPH_NODE][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount),this},Graph$a.prototype.node=function(e){return this._nodes[e]},Graph$a.prototype.hasNode=function(e){return _$z.has(this._nodes,e)},Graph$a.prototype.removeNode=function(e){var t,n=this;return _$z.has(this._nodes,e)&&(t=function(e){n.removeEdge(n._edgeObjs[e])},delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],_$z.each(this.children(e),function(e){n.setParent(e)}),delete this._children[e]),_$z.each(_$z.keys(this._in[e]),t),delete this._in[e],delete this._preds[e],_$z.each(_$z.keys(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount),this},Graph$a.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(_$z.isUndefined(t))t=GRAPH_NODE;else{for(var n=t+="";!_$z.isUndefined(n);n=this.parent(n))if(n===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},Graph$a.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},Graph$a.prototype.parent=function(e){if(this._isCompound){e=this._parent[e];if(e!==GRAPH_NODE)return e}},Graph$a.prototype.children=function(e){var t;return _$z.isUndefined(e)&&(e=GRAPH_NODE),this._isCompound?(t=this._children[e])?_$z.keys(t):void 0:e===GRAPH_NODE?this.nodes():this.hasNode(e)?[]:void 0},Graph$a.prototype.predecessors=function(e){e=this._preds[e];if(e)return _$z.keys(e)},Graph$a.prototype.successors=function(e){e=this._sucs[e];if(e)return _$z.keys(e)},Graph$a.prototype.neighbors=function(e){var t=this.predecessors(e);if(t)return _$z.union(t,this.successors(e))},Graph$a.prototype.isLeaf=function(e){e=this.isDirected()?this.successors(e):this.neighbors(e);return 0===e.length},Graph$a.prototype.filterNodes=function(n){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound}),r=(o.setGraph(this.graph()),this),i=(_$z.each(this._nodes,function(e,t){n(t)&&o.setNode(t,e)}),_$z.each(this._edgeObjs,function(e){o.hasNode(e.v)&&o.hasNode(e.w)&&o.setEdge(e,r.edge(e))}),{});return this._isCompound&&_$z.each(o.nodes(),function(e){o.setParent(e,function e(t){var n=r.parent(t);return void 0===n||o.hasNode(n)?i[t]=n:n in i?i[n]:e(n)}(e))}),o},Graph$a.prototype.setDefaultEdgeLabel=function(e){return _$z.isFunction(e)||(e=_$z.constant(e)),this._defaultEdgeLabelFn=e,this},Graph$a.prototype.edgeCount=function(){return this._edgeCount},Graph$a.prototype.edges=function(){return _$z.values(this._edgeObjs)},Graph$a.prototype.setPath=function(e,n){var o=this,r=arguments;return _$z.reduce(e,function(e,t){return 1<r.length?o.setEdge(e,t,n):o.setEdge(e,t),t}),this},Graph$a.prototype.setEdge=function(){var e,t,n=!1,o=arguments[0],o=("object"==typeof o&&null!==o&&"v"in o?(r=o.v,i=o.w,e=o.name,2===arguments.length&&(t=arguments[1],n=!0)):(r=o,i=arguments[1],e=arguments[3],2<arguments.length&&(t=arguments[2],n=!0)),r=""+r,i=""+i,_$z.isUndefined(e)||(e=""+e),edgeArgsToId(this._isDirected,r,i,e));if(_$z.has(this._edgeLabels,o))n&&(this._edgeLabels[o]=t);else{if(!_$z.isUndefined(e)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(r),this.setNode(i),this._edgeLabels[o]=n?t:this._defaultEdgeLabelFn(r,i,e);var n=edgeArgsToObj(this._isDirected,r,i,e),r=n.v,i=n.w;Object.freeze(n),this._edgeObjs[o]=n,incrementOrInitEntry(this._preds[i],r),incrementOrInitEntry(this._sucs[r],i),this._in[i][o]=n,this._out[r][o]=n,this._edgeCount++}return this},Graph$a.prototype.edge=function(e,t,n){var o=1===arguments.length?edgeObjToId(this._isDirected,e):edgeArgsToId(this._isDirected,e,t,n);return this._edgeLabels[o]},Graph$a.prototype.hasEdge=function(e,t,n){var o=1===arguments.length?edgeObjToId(this._isDirected,e):edgeArgsToId(this._isDirected,e,t,n);return _$z.has(this._edgeLabels,o)},Graph$a.prototype.removeEdge=function(e,t,n){var o=1===arguments.length?edgeObjToId(this._isDirected,arguments[0]):edgeArgsToId(this._isDirected,e,t,n),r=this._edgeObjs[o];return r&&(e=r.v,t=r.w,delete this._edgeLabels[o],delete this._edgeObjs[o],decrementOrRemoveEntry(this._preds[t],e),decrementOrRemoveEntry(this._sucs[e],t),delete this._in[t][o],delete this._out[e][o],this._edgeCount--),this},Graph$a.prototype.inEdges=function(e,t){var e=this._in[e];if(e)return e=_$z.values(e),t?_$z.filter(e,function(e){return e.v===t}):e},Graph$a.prototype.outEdges=function(e,t){var e=this._out[e];if(e)return e=_$z.values(e),t?_$z.filter(e,function(e){return e.w===t}):e},Graph$a.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))};var version$2="2.1.8",lib$1={Graph:graph,version:version$2},_$y=lodash_1$1,Graph$9=graph,json={write:write,read:read};function write(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:writeNodes(e),edges:writeEdges(e)};return _$y.isUndefined(e.graph())||(t.value=_$y.clone(e.graph())),t}function writeNodes(o){return _$y.map(o.nodes(),function(e){var t=o.node(e),n=o.parent(e),e={v:e};return _$y.isUndefined(t)||(e.value=t),_$y.isUndefined(n)||(e.parent=n),e})}function writeEdges(o){return _$y.map(o.edges(),function(e){var t=o.edge(e),n={v:e.v,w:e.w};return _$y.isUndefined(e.name)||(n.name=e.name),_$y.isUndefined(t)||(n.value=t),n})}function read(e){var t=new Graph$9(e.options).setGraph(e.value);return _$y.each(e.nodes,function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)}),_$y.each(e.edges,function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),t}var _$x=lodash_1$1,components_1=components;function components(t){var n,o={},r=[];function i(e){_$x.has(o,e)||(o[e]=!0,n.push(e),_$x.each(t.successors(e),i),_$x.each(t.predecessors(e),i))}return _$x.each(t.nodes(),function(e){n=[],i(e),n.length&&r.push(n)}),r}var _$w=lodash_1$1,priorityQueue=PriorityQueue$2;function PriorityQueue$2(){this._arr=[],this._keyIndices={}}PriorityQueue$2.prototype.size=function(){return this._arr.length},PriorityQueue$2.prototype.keys=function(){return this._arr.map(function(e){return e.key})},PriorityQueue$2.prototype.has=function(e){return _$w.has(this._keyIndices,e)},PriorityQueue$2.prototype.priority=function(e){e=this._keyIndices[e];if(void 0!==e)return this._arr[e].priority},PriorityQueue$2.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},PriorityQueue$2.prototype.add=function(e,t){var n,o,r=this._keyIndices;return e=String(e),!_$w.has(r,e)&&(o=(n=this._arr).length,r[e]=o,n.push({key:e,priority:t}),this._decrease(o),!0)},PriorityQueue$2.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},PriorityQueue$2.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+t);this._arr[n].priority=t,this._decrease(n)},PriorityQueue$2.prototype._heapify=function(e){var t=this._arr,n=2*e,o=1+n,r=e;n<t.length&&(r=t[n].priority<t[r].priority?n:r,(r=o<t.length?t[o].priority<t[r].priority?o:r:r)!==e)&&(this._swap(e,r),this._heapify(r))},PriorityQueue$2.prototype._decrease=function(e){for(var t,n=this._arr,o=n[e].priority;0!==e&&!(n[t=e>>1].priority<o);)this._swap(e,t),e=t},PriorityQueue$2.prototype._swap=function(e,t){var n=this._arr,o=this._keyIndices,r=n[e],i=n[t];n[e]=i,n[t]=r,o[i.key]=e,o[r.key]=t};var _$v=lodash_1$1,PriorityQueue$1=priorityQueue,dijkstra_1=dijkstra$1,DEFAULT_WEIGHT_FUNC$1=lodash_1$1.constant(1);function dijkstra$1(t,e,n,o){return runDijkstra(t,String(e),n||DEFAULT_WEIGHT_FUNC$1,o||function(e){return t.outEdges(e)})}function runDijkstra(e,n,i,t){function o(e){var t=e.v!==a?e.v:e.w,n=l[t],o=i(e),r=s.distance+o;if(o<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+o);r<n.distance&&(n.distance=r,n.predecessor=a,c.decrease(t,r))}var a,s,l={},c=new PriorityQueue$1;for(e.nodes().forEach(function(e){var t=e===n?0:Number.POSITIVE_INFINITY;l[e]={distance:t},c.add(e,t)});0<c.size()&&(a=c.removeMin(),(s=l[a]).distance!==Number.POSITIVE_INFINITY);)t(a).forEach(o);return l}var dijkstra=dijkstra_1,_$u=lodash_1$1,dijkstraAll_1=dijkstraAll;function dijkstraAll(n,o,r){return _$u.transform(n.nodes(),function(e,t){e[t]=dijkstra(n,t,o,r)},{})}var _$t=lodash_1$1,tarjan_1=tarjan$1;function tarjan$1(i){var a=0,s=[],l={},c=[];return i.nodes().forEach(function(e){_$t.has(l,e)||!function t(e){var n=l[e]={onStack:!0,lowlink:a,index:a++};if(s.push(e),i.successors(e).forEach(function(e){_$t.has(l,e)?l[e].onStack&&(n.lowlink=Math.min(n.lowlink,l[e].index)):(t(e),n.lowlink=Math.min(n.lowlink,l[e].lowlink))}),n.lowlink===n.index){for(var o,r=[];o=s.pop(),l[o].onStack=!1,r.push(o),e!==o;);c.push(r)}}(e)}),c}var _$s=lodash_1$1,tarjan=tarjan_1,findCycles_1=findCycles;function findCycles(t){return _$s.filter(tarjan(t),function(e){return 1<e.length||1===e.length&&t.hasEdge(e[0],e[0])})}var _$r=lodash_1$1,floydWarshall_1=floydWarshall,DEFAULT_WEIGHT_FUNC=lodash_1$1.constant(1);function floydWarshall(t,e,n){return runFloydWarshall(t,e||DEFAULT_WEIGHT_FUNC,n||function(e){return t.outEdges(e)})}function runFloydWarshall(e,o,t){var a={},s=e.nodes();return s.forEach(function(n){a[n]={},a[n][n]={distance:0},s.forEach(function(e){n!==e&&(a[n][e]={distance:Number.POSITIVE_INFINITY})}),t(n).forEach(function(e){var t=e.v===n?e.w:e.v,e=o(e);a[n][t]={distance:e,predecessor:n}})}),s.forEach(function(r){var i=a[r];s.forEach(function(e){var o=a[e];s.forEach(function(e){var t=o[r],n=i[e],e=o[e],t=t.distance+n.distance;t<e.distance&&(e.distance=t,e.predecessor=n.predecessor)})})}),a}var _$q=lodash_1$1,topsort_1=topsort$1;function topsort$1(n){var o={},r={},i=[];if(_$q.each(n.sinks(),function e(t){if(_$q.has(r,t))throw new CycleException;_$q.has(o,t)||(r[t]=!0,o[t]=!0,_$q.each(n.predecessors(t),e),delete r[t],i.push(t))}),_$q.size(o)!==n.nodeCount())throw new CycleException;return i}function CycleException(){}(topsort$1.CycleException=CycleException).prototype=new Error;var topsort=topsort_1,isAcyclic_1=isAcyclic;function isAcyclic(e){try{topsort(e)}catch(e){if(e instanceof topsort.CycleException)return!1;throw e}return!0}var _$p=lodash_1$1,dfs_1=dfs$3;function dfs$3(t,e,n){_$p.isArray(e)||(e=[e]);var o=(t.isDirected()?t.successors:t.neighbors).bind(t),r=[],i={};return _$p.each(e,function(e){if(!t.hasNode(e))throw new Error("Graph does not have node: "+e);doDfs(t,e,"post"===n,i,o,r)}),r}function doDfs(t,e,n,o,r,i){_$p.has(o,e)||(o[e]=!0,n||i.push(e),_$p.each(r(e),function(e){doDfs(t,e,n,o,r,i)}),n&&i.push(e))}var dfs$2=dfs$3,postorder_1=postorder$2;function postorder$2(e,t){return dfs$2(e,t,"post")}var dfs$1=dfs$3,preorder_1=preorder$1;function preorder$1(e,t){return dfs$1(e,t,"pre")}var _$o=lodash_1$1,Graph$8=graph,PriorityQueue=priorityQueue,prim_1=prim;function prim(e,o){var r,t=new Graph$8,i={},a=new PriorityQueue;function n(e){var t=e.v===r?e.w:e.v,n=a.priority(t);void 0!==n&&(e=o(e))<n&&(i[t]=r,a.decrease(t,e))}if(0!==e.nodeCount()){_$o.each(e.nodes(),function(e){a.add(e,Number.POSITIVE_INFINITY),t.setNode(e)}),a.decrease(e.nodes()[0],0);for(var s=!1;0<a.size();){if(r=a.removeMin(),_$o.has(i,r))t.setEdge(r,i[r]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(r).forEach(n)}}return t}var alg={components:components_1,dijkstra:dijkstra_1,dijkstraAll:dijkstraAll_1,findCycles:findCycles_1,floydWarshall:floydWarshall_1,isAcyclic:isAcyclic,postorder:postorder$2,preorder:preorder$1,prim:prim,tarjan:tarjan_1,topsort:topsort_1},lib=lib$1,graphlib$1={Graph:lib.Graph,json:json,alg:alg,version:lib.version};if("function"==typeof commonjsRequire)try{graphlib=graphlib$1}catch(e){}var graphlib,graphlib_1=graphlib=graphlib||window.graphlib,baseFor=_baseFor,castFunction=_castFunction,keysIn=keysIn_1;function forIn(e,t){return null==e?e:baseFor(e,castFunction(t),keysIn)}var forIn_1=forIn,baseGet=_baseGet,baseSet=_baseSet,castPath=_castPath;function basePickBy$1(e,t,n){for(var o=-1,r=t.length,i={};++o<r;){var a=t[o],s=baseGet(e,a);n(s,a)&&baseSet(i,castPath(a,e),s)}return i}var _basePickBy=basePickBy$1,basePickBy=basePickBy$1,hasIn=hasIn_1;function basePick$1(n,e){return basePickBy(n,e,function(e,t){return hasIn(n,t)})}var _basePick=basePick$1,basePick=basePick$1,flatRest=_flatRest,pick=_flatRest(function(e,t){return null==e?{}:basePick(e,t)}),pick_1=pick,toString$7=toString_1,idCounter=0;function uniqueId(e){var t=++idCounter;return toString$7(e)+t}var uniqueId_1=uniqueId;function baseZipObject$1(e,t,n){for(var o=-1,r=e.length,i=t.length,a={};++o<r;){var s=o<i?t[o]:void 0;n(a,e[o],s)}return a}var _baseZipObject=baseZipObject$1,assignValue=_assignValue,baseZipObject=baseZipObject$1;function zipObject(e,t){return baseZipObject(e||[],t||[],assignValue)}var zipObject_1=zipObject;if("function"==typeof commonjsRequire)try{lodash={cloneDeep:cloneDeep_1,constant:constant_1,defaults:defaults_1,each:each,filter:filter_1,find:find_1,flatten:flatten_1,forEach:forEach_1,forIn:forIn_1,has:has_1,isUndefined:isUndefined_1,last:last_1,map:map_1,mapValues:mapValues_1,max:max_1,merge:merge_1,min:min_1,minBy:minBy_1,now:now_1,pick:pick_1,range:range_1,reduce:reduce_1,sortBy:sortBy_1,uniqueId:uniqueId_1,values:values_1,zipObject:zipObject_1}}catch(e){}var lodash,lodash_1=lodash=lodash||window._,list=List$1;function List$1(){var e={};e._next=e._prev=e,this._sentinel=e}function unlink(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function filterOutLinks(e,t){if("_next"!==e&&"_prev"!==e)return t}List$1.prototype.dequeue=function(){var e=this._sentinel,t=e._prev;if(t!==e)return unlink(t),t},List$1.prototype.enqueue=function(e){var t=this._sentinel;e._prev&&e._next&&unlink(e),e._next=t._next,t._next._prev=e,(t._next=e)._prev=t},List$1.prototype.toString=function(){for(var e=[],t=this._sentinel,n=t._prev;n!==t;)e.push(JSON.stringify(n,filterOutLinks)),n=n._prev;return"["+e.join(", ")+"]"};var _$n=lodash_1,Graph$7=graphlib_1.Graph,List=list,greedyFas=greedyFAS$1,DEFAULT_WEIGHT_FN=_$n.constant(1);function greedyFAS$1(t,e){return t.nodeCount()<=1?[]:(e=doGreedyFAS((e=buildState(t,e||DEFAULT_WEIGHT_FN)).graph,e.buckets,e.zeroIdx),_$n.flatten(_$n.map(e,function(e){return t.outEdges(e.v,e.w)}),!0))}function doGreedyFAS(e,t,n){for(var o,r=[],i=t[t.length-1],a=t[0];e.nodeCount();){for(;o=a.dequeue();)removeNode(e,t,n,o);for(;o=i.dequeue();)removeNode(e,t,n,o);if(e.nodeCount())for(var s=t.length-2;0<s;--s)if(o=t[s].dequeue()){r=r.concat(removeNode(e,t,n,o,!0));break}}return r}function removeNode(o,r,i,e,a){var s=a?[]:void 0;return _$n.forEach(o.inEdges(e.v),function(e){var t=o.edge(e),n=o.node(e.v);a&&s.push({v:e.v,w:e.w}),n.out-=t,assignBucket(r,i,n)}),_$n.forEach(o.outEdges(e.v),function(e){var t=o.edge(e),e=e.w,e=o.node(e);e.in-=t,assignBucket(r,i,e)}),o.removeNode(e.v),s}function buildState(e,o){var r=new Graph$7,i=0,a=0,t=(_$n.forEach(e.nodes(),function(e){r.setNode(e,{v:e,in:0,out:0})}),_$n.forEach(e.edges(),function(e){var t=r.edge(e.v,e.w)||0,n=o(e);r.setEdge(e.v,e.w,t+n),a=Math.max(a,r.node(e.v).out+=n),i=Math.max(i,r.node(e.w).in+=n)}),_$n.range(a+i+3).map(function(){return new List})),n=i+1;return _$n.forEach(r.nodes(),function(e){assignBucket(t,n,r.node(e))}),{graph:r,buckets:t,zeroIdx:n}}function assignBucket(e,t,n){(n.out?n.in?e[n.out-n.in+t]:e[e.length-1]:e[0]).enqueue(n)}var _$m=lodash_1,greedyFAS=greedyFas,acyclic$1={run:run$2,undo:undo$2};function run$2(n){var t,e="greedy"===n.graph().acyclicer?greedyFAS(n,(t=n,function(e){return t.edge(e).weight})):dfsFAS(n);_$m.forEach(e,function(e){var t=n.edge(e);n.removeEdge(e),t.forwardName=e.name,t.reversed=!0,n.setEdge(e.w,e.v,t,_$m.uniqueId("rev"))})}function dfsFAS(n){var o=[],r={},i={};return _$m.forEach(n.nodes(),function t(e){_$m.has(i,e)||(i[e]=!0,r[e]=!0,_$m.forEach(n.outEdges(e),function(e){_$m.has(r,e.w)?o.push(e):t(e.w)}),delete r[e])}),o}function undo$2(o){_$m.forEach(o.edges(),function(e){var t,n=o.edge(e);n.reversed&&(o.removeEdge(e),t=n.forwardName,delete n.reversed,delete n.forwardName,o.setEdge(e.w,e.v,n,t))})}var _$l=lodash_1,Graph$6=graphlib_1.Graph,util$a={addDummyNode:addDummyNode,simplify:simplify$1,asNonCompoundGraph:asNonCompoundGraph,successorWeights:successorWeights,predecessorWeights:predecessorWeights,intersectRect:intersectRect,buildLayerMatrix:buildLayerMatrix,normalizeRanks:normalizeRanks$1,removeEmptyRanks:removeEmptyRanks$1,addBorderNode:addBorderNode$1,maxRank:maxRank,partition:partition,time:time,notime:notime};function addDummyNode(e,t,n,o){for(var r;r=_$l.uniqueId(o),e.hasNode(r););return n.dummy=t,e.setNode(r,n),r}function simplify$1(o){var r=(new Graph$6).setGraph(o.graph());return _$l.forEach(o.nodes(),function(e){r.setNode(e,o.node(e))}),_$l.forEach(o.edges(),function(e){var t=r.edge(e.v,e.w)||{weight:0,minlen:1},n=o.edge(e);r.setEdge(e.v,e.w,{weight:t.weight+n.weight,minlen:Math.max(t.minlen,n.minlen)})}),r}function asNonCompoundGraph(t){var n=new Graph$6({multigraph:t.isMultigraph()}).setGraph(t.graph());return _$l.forEach(t.nodes(),function(e){t.children(e).length||n.setNode(e,t.node(e))}),_$l.forEach(t.edges(),function(e){n.setEdge(e,t.edge(e))}),n}function successorWeights(n){var e=_$l.map(n.nodes(),function(e){var t={};return _$l.forEach(n.outEdges(e),function(e){t[e.w]=(t[e.w]||0)+n.edge(e).weight}),t});return _$l.zipObject(n.nodes(),e)}function predecessorWeights(n){var e=_$l.map(n.nodes(),function(e){var t={};return _$l.forEach(n.inEdges(e),function(e){t[e.v]=(t[e.v]||0)+n.edge(e).weight}),t});return _$l.zipObject(n.nodes(),e)}function intersectRect(e,t){var n,o=e.x,r=e.y,i=t.x-o,t=t.y-r,a=e.width/2,e=e.height/2;if(i||t)return e=Math.abs(t)*a>Math.abs(i)*e?(n=(e=t<0?-e:e)*i/t,e):(n=a=i<0?-a:a)*t/i,{x:o+n,y:r+e};throw new Error("Not possible to find intersection inside of the rectangle")}function buildLayerMatrix(o){var r=_$l.map(_$l.range(maxRank(o)+1),function(){return[]});return _$l.forEach(o.nodes(),function(e){var t=o.node(e),n=t.rank;_$l.isUndefined(n)||(r[n][t.order]=e)}),r}function normalizeRanks$1(t){var n=_$l.min(_$l.map(t.nodes(),function(e){return t.node(e).rank}));_$l.forEach(t.nodes(),function(e){e=t.node(e);_$l.has(e,"rank")&&(e.rank-=n)})}function removeEmptyRanks$1(n){var o=_$l.min(_$l.map(n.nodes(),function(e){return n.node(e).rank})),r=[],i=(_$l.forEach(n.nodes(),function(e){var t=n.node(e).rank-o;r[t]||(r[t]=[]),r[t].push(e)}),0),a=n.graph().nodeRankFactor;_$l.forEach(r,function(e,t){_$l.isUndefined(e)&&t%a!=0?--i:i&&_$l.forEach(e,function(e){n.node(e).rank+=i})})}function addBorderNode$1(e,t,n,o){var r={width:0,height:0};return 4<=arguments.length&&(r.rank=n,r.order=o),addDummyNode(e,"border",r,t)}function maxRank(t){return _$l.max(_$l.map(t.nodes(),function(e){e=t.node(e).rank;if(!_$l.isUndefined(e))return e}))}function partition(e,t){var n={lhs:[],rhs:[]};return _$l.forEach(e,function(e){(t(e)?n.lhs:n.rhs).push(e)}),n}function time(e,t){var n=_$l.now();try{return t()}finally{console.log(e+" time: "+(_$l.now()-n)+"ms")}}function notime(e,t){return t()}var _$k=lodash_1,util$9=util$a,normalize$2={run:run$1,undo:undo$1};function run$1(t){t.graph().dummyChains=[],_$k.forEach(t.edges(),function(e){normalizeEdge(t,e)})}function normalizeEdge(e,t){var n,o,r,i=t.v,a=e.node(i).rank,s=t.w,l=e.node(s).rank,c=t.name,d=e.edge(t),u=d.labelRank;if(l!==a+1){for(e.removeEdge(t),r=0,++a;a<l;++r,++a)d.points=[],n=util$9.addDummyNode(e,"edge",o={width:0,height:0,edgeLabel:d,edgeObj:t,rank:a},"_d"),a===u&&(o.width=d.width,o.height=d.height,o.dummy="edge-label",o.labelpos=d.labelpos),e.setEdge(i,n,{weight:d.weight},c),0===r&&e.graph().dummyChains.push(n),i=n;e.setEdge(i,s,{weight:d.weight},c)}}function undo$1(r){_$k.forEach(r.graph().dummyChains,function(e){var t,n=r.node(e),o=n.edgeLabel;for(r.setEdge(n.edgeObj,o);n.dummy;)t=r.successors(e)[0],r.removeNode(e),o.points.push({x:n.x,y:n.y}),"edge-label"===n.dummy&&(o.x=n.x,o.y=n.y,o.width=n.width,o.height=n.height),n=r.node(e=t)})}var _$j=lodash_1,util$8={longestPath:longestPath$1,slack:slack$2};function longestPath$1(o){var r={};_$j.forEach(o.sources(),function t(e){var n=o.node(e);if(_$j.has(r,e))return n.rank;r[e]=!0;e=_$j.min(_$j.map(o.outEdges(e),function(e){return t(e.w)-o.edge(e).minlen}));return e!==Number.POSITIVE_INFINITY&&null!=e||(e=0),n.rank=e})}function slack$2(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var _$i=lodash_1,Graph$5=graphlib_1.Graph,slack$1=util$8.slack,feasibleTree_1=feasibleTree$2;function feasibleTree$2(e){var t,n=new Graph$5({directed:!1}),o=e.nodes()[0],r=e.nodeCount();for(n.setNode(o,{});tightTree(n,e)<r;)t=findMinSlackEdge(n,e),t=n.hasNode(t.v)?slack$1(e,t):-slack$1(e,t),shiftRanks(n,e,t);return n}function tightTree(r,i){return _$i.forEach(r.nodes(),function n(o){_$i.forEach(i.nodeEdges(o),function(e){var t=e.v,t=o===t?e.w:t;r.hasNode(t)||slack$1(i,e)||(r.setNode(t,{}),r.setEdge(o,t,{}),n(t))})}),r.nodeCount()}function findMinSlackEdge(t,n){return _$i.minBy(n.edges(),function(e){if(t.hasNode(e.v)!==t.hasNode(e.w))return slack$1(n,e)})}function shiftRanks(e,t,n){_$i.forEach(e.nodes(),function(e){t.node(e).rank+=n})}var _$h=lodash_1,feasibleTree$1=feasibleTree_1,slack=util$8.slack,initRank=util$8.longestPath,preorder=graphlib_1.alg.preorder,postorder$1=graphlib_1.alg.postorder,simplify=util$a.simplify,networkSimplex_1=networkSimplex$1;function networkSimplex$1(e){e=simplify(e),initRank(e);var t,n=feasibleTree$1(e);for(initLowLimValues(n),initCutValues(n,e);t=leaveEdge(n);)exchangeEdges(n,e,t,enterEdge(n,e,t))}function initCutValues(t,n){var e=(e=postorder$1(t,t.nodes())).slice(0,e.length-1);_$h.forEach(e,function(e){assignCutValue(t,n,e)})}function assignCutValue(e,t,n){var o=e.node(n).parent;e.edge(n,o).cutvalue=calcCutValue(e,t,n)}function calcCutValue(o,r,i){var a=o.node(i).parent,s=!0,e=r.edge(i,a),l=0;return e||(s=!1,e=r.edge(a,i)),l=e.weight,_$h.forEach(r.nodeEdges(i),function(e){var t=e.v===i,n=t?e.w:e.v;n!==a&&(t=t===s,e=r.edge(e).weight,l+=t?e:-e,isTreeEdge(o,i,n))&&(e=o.edge(i,n).cutvalue,l+=t?-e:e)}),l}function initLowLimValues(e,t){arguments.length<2&&(t=e.nodes()[0]),dfsAssignLowLim(e,{},1,t)}function dfsAssignLowLim(t,n,o,r,e){var i=o,a=t.node(r);return n[r]=!0,_$h.forEach(t.neighbors(r),function(e){_$h.has(n,e)||(o=dfsAssignLowLim(t,n,o,e,r))}),a.low=i,a.lim=o++,e?a.parent=e:delete a.parent,o}function leaveEdge(t){return _$h.find(t.edges(),function(e){return t.edge(e).cutvalue<0})}function enterEdge(t,n,e){var o=e.v,r=e.w,e=(n.hasEdge(o,r)||(o=e.w,r=e.v),t.node(o)),o=t.node(r),i=e,a=!1,r=(e.lim>o.lim&&(i=o,a=!0),_$h.filter(n.edges(),function(e){return a===isDescendant(t,t.node(e.v),i)&&a!==isDescendant(t,t.node(e.w),i)}));return _$h.minBy(r,function(e){return slack(n,e)})}function exchangeEdges(e,t,n,o){var r=n.v,n=n.w;e.removeEdge(r,n),e.setEdge(o.v,o.w,{}),initLowLimValues(e),initCutValues(e,t),updateRanks(e,t)}function updateRanks(r,i){var e=_$h.find(r.nodes(),function(e){return!i.node(e).parent}),e=(e=preorder(r,e)).slice(1);_$h.forEach(e,function(e){var t=r.node(e).parent,n=i.edge(e,t),o=!1;n||(n=i.edge(t,e),o=!0),i.node(e).rank=i.node(t).rank+(o?n.minlen:-n.minlen)})}function isTreeEdge(e,t,n){return e.hasEdge(t,n)}function isDescendant(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}networkSimplex$1.initLowLimValues=initLowLimValues,networkSimplex$1.initCutValues=initCutValues,networkSimplex$1.calcCutValue=calcCutValue,networkSimplex$1.leaveEdge=leaveEdge,networkSimplex$1.enterEdge=enterEdge,networkSimplex$1.exchangeEdges=exchangeEdges;var rankUtil=util$8,longestPath=util$8.longestPath,feasibleTree=feasibleTree_1,networkSimplex=networkSimplex_1,rank_1=rank$1;function rank$1(e){switch(e.graph().ranker){case"network-simplex":networkSimplexRanker(e);break;case"tight-tree":tightTreeRanker(e);break;case"longest-path":longestPathRanker(e);break;default:networkSimplexRanker(e)}}var longestPathRanker=longestPath;function tightTreeRanker(e){longestPath(e),feasibleTree(e)}function networkSimplexRanker(e){networkSimplex(e)}var _$g=lodash_1,parentDummyChains_1=parentDummyChains$1;function parentDummyChains$1(c){var d=postorder(c);_$g.forEach(c.graph().dummyChains,function(e){for(var t,n=c.node(e).edgeObj,o=findPath(c,d,n.v,n.w),r=o.path,i=o.lca,a=0,s=r[a],l=!0;e!==n.w;){if(t=c.node(e),l){for(;(s=r[a])!==i&&c.node(s).maxRank<t.rank;)a++;s===i&&(l=!1)}if(!l){for(;a<r.length-1&&c.node(s=r[a+1]).minRank<=t.rank;)a++;s=r[a]}c.setParent(e,s),e=c.successors(e)[0]}})}function findPath(e,t,n,o){for(var r,i=[],a=[],s=Math.min(t[n].low,t[o].low),l=Math.max(t[n].lim,t[o].lim),c=n;c=e.parent(c),i.push(c),c&&(t[c].low>s||l>t[c].lim););for(r=c,c=o;(c=e.parent(c))!==r;)a.push(c);return{path:i.concat(a.reverse()),lca:r}}function postorder(o){var r={},i=0;return _$g.forEach(o.children(),function e(t){var n=i;_$g.forEach(o.children(t),e),r[t]={low:n,lim:i++}}),r}var _$f=lodash_1,util$7=util$a,nestingGraph$1={run:run,cleanup:cleanup};function run(t){var n=util$7.addDummyNode(t,"root",{},"_root"),o=treeDepths(t),r=_$f.max(_$f.values(o))-1,i=2*r+1,a=(t.graph().nestingRoot=n,_$f.forEach(t.edges(),function(e){t.edge(e).minlen*=i}),sumWeights(t)+1);_$f.forEach(t.children(),function(e){dfs(t,n,i,a,r,o,e)}),t.graph().nodeRankFactor=i}function dfs(r,i,a,s,l,c,d){var u,p,e,t=r.children(d);t.length?(u=util$7.addBorderNode(r,"_bt"),p=util$7.addBorderNode(r,"_bb"),e=r.node(d),r.setParent(u,d),e.borderTop=u,r.setParent(p,d),e.borderBottom=p,_$f.forEach(t,function(e){dfs(r,i,a,s,l,c,e);var t=r.node(e),n=t.borderTop||e,e=t.borderBottom||e,t=t.borderTop?s:2*s,o=n!==e?1:l-c[d]+1;r.setEdge(u,n,{weight:t,minlen:o,nestingEdge:!0}),r.setEdge(e,p,{weight:t,minlen:o,nestingEdge:!0})}),r.parent(d)||r.setEdge(i,u,{weight:0,minlen:l+c[d]})):d!==i&&r.setEdge(i,d,{weight:0,minlen:a})}function treeDepths(r){var i={};return _$f.forEach(r.children(),function(e){!function t(e,n){var o=r.children(e);o&&o.length&&_$f.forEach(o,function(e){t(e,n+1)}),i[e]=n}(e,1)}),i}function sumWeights(n){return _$f.reduce(n.edges(),function(e,t){return e+n.edge(t).weight},0)}function cleanup(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,_$f.forEach(t.edges(),function(e){t.edge(e).nestingEdge&&t.removeEdge(e)})}var _$e=lodash_1,util$6=util$a,addBorderSegments_1=addBorderSegments$1;function addBorderSegments$1(a){_$e.forEach(a.children(),function e(t){var n=a.children(t),o=a.node(t);if(n.length&&_$e.forEach(n,e),_$e.has(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var r=o.minRank,i=o.maxRank+1;r<i;++r)addBorderNode(a,"borderLeft","_bl",t,o,r),addBorderNode(a,"borderRight","_br",t,o,r)}})}function addBorderNode(e,t,n,o,r,i){var a=r[t][i-1],n=util$6.addDummyNode(e,"border",{width:0,height:0,rank:i,borderType:t},n);r[t][i]=n,e.setParent(n,o),a&&e.setEdge(a,n,{weight:1})}var _$d=lodash_1,coordinateSystem$1={adjust:adjust,undo:undo};function adjust(e){var t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||swapWidthHeight(e)}function undo(e){var t=e.graph().rankdir.toLowerCase();"bt"!==t&&"rl"!==t||reverseY(e),"lr"!==t&&"rl"!==t||(swapXY(e),swapWidthHeight(e))}function swapWidthHeight(t){_$d.forEach(t.nodes(),function(e){swapWidthHeightOne(t.node(e))}),_$d.forEach(t.edges(),function(e){swapWidthHeightOne(t.edge(e))})}function swapWidthHeightOne(e){var t=e.width;e.width=e.height,e.height=t}function reverseY(t){_$d.forEach(t.nodes(),function(e){reverseYOne(t.node(e))}),_$d.forEach(t.edges(),function(e){e=t.edge(e);_$d.forEach(e.points,reverseYOne),_$d.has(e,"y")&&reverseYOne(e)})}function reverseYOne(e){e.y=-e.y}function swapXY(t){_$d.forEach(t.nodes(),function(e){swapXYOne(t.node(e))}),_$d.forEach(t.edges(),function(e){e=t.edge(e);_$d.forEach(e.points,swapXYOne),_$d.has(e,"x")&&swapXYOne(e)})}function swapXYOne(e){var t=e.x;e.x=e.y,e.y=t}var _$c=lodash_1,initOrder_1=initOrder$1;function initOrder$1(o){var r={},e=_$c.filter(o.nodes(),function(e){return!o.children(e).length}),t=_$c.max(_$c.map(e,function(e){return o.node(e).rank})),i=_$c.map(_$c.range(t+1),function(){return[]});t=_$c.sortBy(e,function(e){return o.node(e).rank});return _$c.forEach(t,function e(t){var n;_$c.has(r,t)||(r[t]=!0,n=o.node(t),i[n.rank].push(t),_$c.forEach(o.successors(t),e))}),i}var _$b=lodash_1,crossCount_1=crossCount$1;function crossCount$1(e,t){for(var n=0,o=1;o<t.length;++o)n+=twoLayerCrossCount(e,t[o-1],t[o]);return n}function twoLayerCrossCount(t,e,n){for(var o=_$b.zipObject(n,_$b.map(n,function(e,t){return t})),e=_$b.flatten(_$b.map(e,function(e){return _$b.sortBy(_$b.map(t.outEdges(e),function(e){return{pos:o[e.w],weight:t.edge(e).weight}}),"pos")}),!0),r=1;r<n.length;)r<<=1;var i=2*r-1,a=(--r,_$b.map(new Array(i),function(){return 0})),s=0;return _$b.forEach(e.forEach(function(e){for(var t=e.pos+r,n=(a[t]+=e.weight,0);0<t;)t%2&&(n+=a[t+1]),a[t=t-1>>1]+=e.weight;s+=e.weight*n})),s}var _$a=lodash_1,barycenter_1=barycenter$1;function barycenter$1(o,e){return _$a.map(e,function(e){var t=o.inEdges(e);return t.length?{v:e,barycenter:(t=_$a.reduce(t,function(e,t){var n=o.edge(t),t=o.node(t.v);return{sum:e.sum+n.weight*t.order,weight:e.weight+n.weight}},{sum:0,weight:0})).sum/t.weight,weight:t.weight}:{v:e}})}var _$9=lodash_1,resolveConflicts_1=resolveConflicts$1;function resolveConflicts$1(e,t){var o={};return _$9.forEach(e,function(e,t){t=o[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};_$9.isUndefined(e.barycenter)||(t.barycenter=e.barycenter,t.weight=e.weight)}),_$9.forEach(t.edges(),function(e){var t=o[e.v],n=o[e.w];_$9.isUndefined(t)||_$9.isUndefined(n)||(n.indegree++,t.out.push(o[e.w]))}),doResolveConflicts(_$9.filter(o,function(e){return!e.indegree}))}function doResolveConflicts(n){var e=[];for(;n.length;){var t=n.pop();e.push(t),_$9.forEach(t.in.reverse(),function(t){return function(e){e.merged||(_$9.isUndefined(e.barycenter)||_$9.isUndefined(t.barycenter)||e.barycenter>=t.barycenter)&&mergeEntries(t,e)}}(t)),_$9.forEach(t.out,function(t){return function(e){e.in.push(t),0==--e.indegree&&n.push(e)}}(t))}return _$9.map(_$9.filter(e,function(e){return!e.merged}),function(e){return _$9.pick(e,["vs","i","barycenter","weight"])})}function mergeEntries(e,t){var n=0,o=0;e.weight&&(n+=e.barycenter*e.weight,o+=e.weight),t.weight&&(n+=t.barycenter*t.weight,o+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=n/o,e.weight=o,e.i=Math.min(t.i,e.i),t.merged=!0}var _$8=lodash_1,util$5=util$a,sort_1=sort$1;function sort$1(e,t){var e=util$5.partition(e,function(e){return _$8.has(e,"barycenter")}),n=e.lhs,o=_$8.sortBy(e.rhs,function(e){return-e.i}),r=[],i=0,a=0,s=0,e=(n.sort(compareWithBias(!!t)),s=consumeUnsortable(r,o,s),_$8.forEach(n,function(e){s+=e.vs.length,r.push(e.vs),i+=e.barycenter*e.weight,a+=e.weight,s=consumeUnsortable(r,o,s)}),{vs:_$8.flatten(r,!0)});return a&&(e.barycenter=i/a,e.weight=a),e}function consumeUnsortable(e,t,n){for(var o;t.length&&(o=_$8.last(t)).i<=n;)t.pop(),e.push(o.vs),n++;return n}function compareWithBias(n){return function(e,t){return e.barycenter<t.barycenter?-1:e.barycenter>t.barycenter?1:n?t.i-e.i:e.i-t.i}}var _$7=lodash_1,barycenter=barycenter$1,resolveConflicts=resolveConflicts$1,sort=sort$1,sortSubgraph_1=sortSubgraph$1;function sortSubgraph$1(n,e,o,r){var t,i=n.children(e),e=n.node(e),a=e?e.borderLeft:void 0,s=e?e.borderRight:void 0,l={},e=(a&&(i=_$7.filter(i,function(e){return e!==a&&e!==s})),barycenter(n,i)),i=(_$7.forEach(e,function(e){var t;n.children(e.v).length&&(t=sortSubgraph$1(n,e.v,o,r),l[e.v]=t,_$7.has(t,"barycenter"))&&mergeBarycenters(e,t)}),resolveConflicts(e,o)),e=(expandSubgraphs(i,l),sort(i,r));return a&&(e.vs=_$7.flatten([a,e.vs,s],!0),n.predecessors(a).length)&&(i=n.node(n.predecessors(a)[0]),t=n.node(n.predecessors(s)[0]),_$7.has(e,"barycenter")||(e.barycenter=0,e.weight=0),e.barycenter=(e.barycenter*e.weight+i.order+t.order)/(e.weight+2),e.weight+=2),e}function expandSubgraphs(e,t){_$7.forEach(e,function(e){e.vs=_$7.flatten(e.vs.map(function(e){return t[e]?t[e].vs:e}),!0)})}function mergeBarycenters(e,t){_$7.isUndefined(e.barycenter)?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)}var _$6=lodash_1,Graph$4=graphlib_1.Graph,buildLayerGraph_1=buildLayerGraph$1;function buildLayerGraph$1(r,n,i){var a=createRootNode(r),s=new Graph$4({compound:!0}).setGraph({root:a}).setDefaultNodeLabel(function(e){return r.node(e)});return _$6.forEach(r.nodes(),function(o){var e=r.node(o),t=r.parent(o);(e.rank===n||e.minRank<=n&&n<=e.maxRank)&&(s.setNode(o),s.setParent(o,t||a),_$6.forEach(r[i](o),function(e){var t=e.v===o?e.w:e.v,n=s.edge(t,o),n=_$6.isUndefined(n)?0:n.weight;s.setEdge(t,o,{weight:r.edge(e).weight+n})}),_$6.has(e,"minRank"))&&s.setNode(o,{borderLeft:e.borderLeft[n],borderRight:e.borderRight[n]})}),s}function createRootNode(e){for(var t;e.hasNode(t=_$6.uniqueId("_root")););return t}var _$5=lodash_1,addSubgraphConstraints_1=addSubgraphConstraints$1;function addSubgraphConstraints$1(r,i,e){var a,s={};_$5.forEach(e,function(e){for(var t,n,o=r.parent(e);o;){if((t=r.parent(o))?(n=s[t],s[t]=o):(n=a,a=o),n&&n!==o)return void i.setEdge(n,o);o=t}})}var _$4=lodash_1,initOrder=initOrder_1,crossCount=crossCount_1,sortSubgraph=sortSubgraph_1,buildLayerGraph=buildLayerGraph$1,addSubgraphConstraints=addSubgraphConstraints$1,Graph$3=graphlib_1.Graph,util$4=util$a,order_1=order$1;function order$1(e){for(var t,n=util$4.maxRank(e),o=buildLayerGraphs(e,_$4.range(1,n+1),"inEdges"),r=buildLayerGraphs(e,_$4.range(n-1,-1,-1),"outEdges"),i=(assignOrder(e,initOrder(e)),Number.POSITIVE_INFINITY),a=0,s=0;s<4;++a,++s){sweepLayerGraphs(a%2?o:r,2<=a%4);var l=util$4.buildLayerMatrix(e),c=crossCount(e,l);c<i&&(s=0,t=_$4.cloneDeep(l),i=c)}assignOrder(e,t)}function buildLayerGraphs(t,e,n){return _$4.map(e,function(e){return buildLayerGraph(t,e,n)})}function sweepLayerGraphs(e,t){var o=new Graph$3;_$4.forEach(e,function(n){var e=n.graph().root,e=sortSubgraph(n,e,o,t);_$4.forEach(e.vs,function(e,t){n.node(e).order=t}),addSubgraphConstraints(n,o,e.vs)})}function assignOrder(n,e){_$4.forEach(e,function(e){_$4.forEach(e,function(e,t){n.node(e).order=t})})}var _$3=lodash_1,Graph$2=graphlib_1.Graph,util$3=util$a,bk={positionX:positionX$1,findType1Conflicts:findType1Conflicts,findType2Conflicts:findType2Conflicts,addConflict:addConflict,hasConflict:hasConflict,verticalAlignment:verticalAlignment,horizontalCompaction:horizontalCompaction,alignCoordinates:alignCoordinates,findSmallestWidthAlignment:findSmallestWidthAlignment,balance:balance};function findType1Conflicts(c,e){var d={};return _$3.reduce(e,function(e,o){var i=0,a=0,s=e.length,l=_$3.last(o);return _$3.forEach(o,function(e,t){var n=findOtherInnerSegmentNode(c,e),r=n?c.node(n).order:s;!n&&e!==l||(_$3.forEach(o.slice(a,t+1),function(o){_$3.forEach(c.predecessors(o),function(e){var t=c.node(e),n=t.order;!(n<i||r<n)||t.dummy&&c.node(o).dummy||addConflict(d,e,o)})}),a=t+1,i=r)}),o}),d}function findType2Conflicts(s,e){var a={};function l(t,e,n,o,r){var i;_$3.forEach(_$3.range(e,n),function(e){i=t[e],s.node(i).dummy&&_$3.forEach(s.predecessors(i),function(e){var t=s.node(e);t.dummy&&(t.order<o||t.order>r)&&addConflict(a,e,i)})})}return _$3.reduce(e,function(n,o){var r,i=-1,a=0;return _$3.forEach(o,function(e,t){"border"===s.node(e).dummy&&(e=s.predecessors(e)).length&&(r=s.node(e[0]).order,l(o,a,t,i,r),a=t,i=r),l(o,a,o.length,r,n.length)}),o}),a}function findOtherInnerSegmentNode(t,e){if(t.node(e).dummy)return _$3.find(t.predecessors(e),function(e){return t.node(e).dummy})}function addConflict(e,t,n){n<t&&(o=t,t=n,n=o);var o=e[t];o||(e[t]=o={}),o[n]=!0}function hasConflict(e,t,n){var o;return n<t&&(o=t,t=n,n=o),_$3.has(e[t],n)}function verticalAlignment(e,t,s,l){var c={},d={},u={};return _$3.forEach(t,function(e){_$3.forEach(e,function(e,t){u[d[c[e]=e]=e]=t})}),_$3.forEach(t,function(e){var a=-1;_$3.forEach(e,function(e){var t=l(e);if(t.length)for(var n=((t=_$3.sortBy(t,function(e){return u[e]})).length-1)/2,o=Math.floor(n),r=Math.ceil(n);o<=r;++o){var i=t[o];d[e]===e&&a<u[i]&&!hasConflict(s,e,i)&&(d[i]=e,d[e]=c[e]=c[i],a=u[i])}})}),{root:c,align:d}}function horizontalCompaction(o,e,t,n,r){var i={},a=buildBlockGraph(o,e,t,r),s=r?"borderLeft":"borderRight";function l(e,t){for(var n=a.nodes(),o=n.pop(),r={};o;)r[o]?e(o):(r[o]=!0,n.push(o),n=n.concat(t(o))),o=n.pop()}return l(function(e){i[e]=a.inEdges(e).reduce(function(e,t){return Math.max(e,i[t.v]+a.edge(t))},0)},a.predecessors.bind(a)),l(function(e){var t=a.outEdges(e).reduce(function(e,t){return Math.min(e,i[t.w]-a.edge(t))},Number.POSITIVE_INFINITY),n=o.node(e);t!==Number.POSITIVE_INFINITY&&n.borderType!==s&&(i[e]=Math.max(i[e],t))},a.successors.bind(a)),_$3.forEach(n,function(e){i[e]=i[t[e]]}),i}function buildBlockGraph(i,e,a,t){var s=new Graph$2,n=i.graph(),l=sep(n.nodesep,n.edgesep,t);return _$3.forEach(e,function(e){var r;_$3.forEach(e,function(e){var t,n,o=a[e];s.setNode(o),r&&(t=a[r],n=s.edge(t,o),s.setEdge(t,o,Math.max(l(i,e,r),n||0))),r=e})}),s}function findSmallestWidthAlignment(r,e){return _$3.minBy(_$3.values(e),function(e){var n=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;return _$3.forIn(e,function(e,t){t=width(r,t)/2;n=Math.max(e+t,n),o=Math.min(e-t,o)}),n-o})}function alignCoordinates(a,s){var e=_$3.values(s),l=_$3.min(e),c=_$3.max(e);_$3.forEach(["u","d"],function(i){_$3.forEach(["l","r"],function(e){var t,n,o=i+e,r=a[o];r!==s&&(t=_$3.values(r),n="l"===e?l-_$3.min(t):c-_$3.max(t))&&(a[o]=_$3.mapValues(r,function(e){return e+n}))})})}function balance(n,o){return _$3.mapValues(n.ul,function(e,t){return o?n[o.toLowerCase()][t]:((t=_$3.sortBy(_$3.map(n,t)))[1]+t[2])/2})}function positionX$1(o){var r,e=util$3.buildLayerMatrix(o),i=_$3.merge(findType1Conflicts(o,e),findType2Conflicts(o,e)),a={},t=(_$3.forEach(["u","d"],function(n){r="u"===n?e:_$3.values(e).reverse(),_$3.forEach(["l","r"],function(e){"r"===e&&(r=_$3.map(r,function(e){return _$3.values(e).reverse()}));var t=("u"===n?o.predecessors:o.successors).bind(o),t=verticalAlignment(o,r,i,t),t=horizontalCompaction(o,r,t.root,t.align,"r"===e);"r"===e&&(t=_$3.mapValues(t,function(e){return-e})),a[n+e]=t})}),findSmallestWidthAlignment(o,a));return alignCoordinates(a,t),balance(a,o.graph().align)}function sep(a,s,l){return function(e,t,n){var o,r=e.node(t),i=e.node(n),t=0;if(t+=r.width/2,_$3.has(r,"labelpos"))switch(r.labelpos.toLowerCase()){case"l":o=-r.width/2;break;case"r":o=r.width/2}if(o&&(t+=l?o:-o),o=0,t=(t=(t+=(r.dummy?s:a)/2)+(i.dummy?s:a)/2)+i.width/2,_$3.has(i,"labelpos"))switch(i.labelpos.toLowerCase()){case"l":o=i.width/2;break;case"r":o=-i.width/2}return o&&(t+=l?o:-o),o=0,t}}function width(e,t){return e.node(t).width}var _$2=lodash_1,util$2=util$a,positionX=bk.positionX,position_1=position$1;function position$1(n){positionY(n=util$2.asNonCompoundGraph(n)),_$2.forEach(positionX(n),function(e,t){n.node(t).x=e})}function positionY(n){var e=util$2.buildLayerMatrix(n),o=n.graph().ranksep,r=0;_$2.forEach(e,function(e){var t=_$2.max(_$2.map(e,function(e){return n.node(e).height}));_$2.forEach(e,function(e){n.node(e).y=r+t/2}),r+=t+o})}var _$1=lodash_1,acyclic=acyclic$1,normalize$1=normalize$2,rank=rank_1,normalizeRanks=util$a.normalizeRanks,parentDummyChains=parentDummyChains_1,removeEmptyRanks=util$a.removeEmptyRanks,nestingGraph=nestingGraph$1,addBorderSegments=addBorderSegments_1,coordinateSystem=coordinateSystem$1,order=order_1,position=position_1,util$1=util$a,Graph$1=graphlib_1.Graph,layout_1=layout;function layout(t,e){var n=e&&e.debugTiming?util$1.time:util$1.notime;n("layout",function(){var e=n(" buildLayoutGraph",function(){return buildLayoutGraph(t)});n(" runLayout",function(){runLayout(e,n)}),n(" updateInputGraph",function(){updateInputGraph(t,e)})})}function runLayout(e,t){t(" makeSpaceForEdgeLabels",function(){makeSpaceForEdgeLabels(e)}),t(" removeSelfEdges",function(){removeSelfEdges(e)}),t(" acyclic",function(){acyclic.run(e)}),t(" nestingGraph.run",function(){nestingGraph.run(e)}),t(" rank",function(){rank(util$1.asNonCompoundGraph(e))}),t(" injectEdgeLabelProxies",function(){injectEdgeLabelProxies(e)}),t(" removeEmptyRanks",function(){removeEmptyRanks(e)}),t(" nestingGraph.cleanup",function(){nestingGraph.cleanup(e)}),t(" normalizeRanks",function(){normalizeRanks(e)}),t(" assignRankMinMax",function(){assignRankMinMax(e)}),t(" removeEdgeLabelProxies",function(){removeEdgeLabelProxies(e)}),t(" normalize.run",function(){normalize$1.run(e)}),t(" parentDummyChains",function(){parentDummyChains(e)}),t(" addBorderSegments",function(){addBorderSegments(e)}),t(" order",function(){order(e)}),t(" insertSelfEdges",function(){insertSelfEdges(e)}),t(" adjustCoordinateSystem",function(){coordinateSystem.adjust(e)}),t(" position",function(){position(e)}),t(" positionSelfEdges",function(){positionSelfEdges(e)}),t(" removeBorderNodes",function(){removeBorderNodes(e)}),t(" normalize.undo",function(){normalize$1.undo(e)}),t(" fixupEdgeLabelCoords",function(){fixupEdgeLabelCoords(e)}),t(" undoCoordinateSystem",function(){coordinateSystem.undo(e)}),t(" translateGraph",function(){translateGraph(e)}),t(" assignNodeIntersects",function(){assignNodeIntersects(e)}),t(" reversePoints",function(){reversePointsForReversedEdges(e)}),t(" acyclic.undo",function(){acyclic.undo(e)})}function updateInputGraph(o,r){_$1.forEach(o.nodes(),function(e){var t=o.node(e),n=r.node(e);t&&(t.x=n.x,t.y=n.y,r.children(e).length)&&(t.width=n.width,t.height=n.height)}),_$1.forEach(o.edges(),function(e){var t=o.edge(e),e=r.edge(e);t.points=e.points,_$1.has(e,"x")&&(t.x=e.x,t.y=e.y)}),o.graph().width=r.graph().width,o.graph().height=r.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(n){var o=new Graph$1({multigraph:!0,compound:!0}),e=canonicalize(n.graph());return o.setGraph(_$1.merge({},graphDefaults,selectNumberAttrs(e,graphNumAttrs),_$1.pick(e,graphAttrs))),_$1.forEach(n.nodes(),function(e){var t=canonicalize(n.node(e));o.setNode(e,_$1.defaults(selectNumberAttrs(t,nodeNumAttrs),nodeDefaults)),o.setParent(e,n.parent(e))}),_$1.forEach(n.edges(),function(e){var t=canonicalize(n.edge(e));o.setEdge(e,_$1.merge({},edgeDefaults,selectNumberAttrs(t,edgeNumAttrs),_$1.pick(t,edgeAttrs)))}),o}function makeSpaceForEdgeLabels(t){var n=t.graph();n.ranksep/=2,_$1.forEach(t.edges(),function(e){e=t.edge(e);e.minlen*=2,"c"!==e.labelpos.toLowerCase()&&("TB"===n.rankdir||"BT"===n.rankdir?e.width+=e.labeloffset:e.height+=e.labeloffset)})}function injectEdgeLabelProxies(n){_$1.forEach(n.edges(),function(e){var t=n.edge(e);t.width&&t.height&&(t=n.node(e.v),t={rank:(n.node(e.w).rank-t.rank)/2+t.rank,e:e},util$1.addDummyNode(n,"edge-proxy",t,"_ep"))})}function assignRankMinMax(t){var n=0;_$1.forEach(t.nodes(),function(e){e=t.node(e);e.borderTop&&(e.minRank=t.node(e.borderTop).rank,e.maxRank=t.node(e.borderBottom).rank,n=_$1.max(n,e.maxRank))}),t.graph().maxRank=n}function removeEdgeLabelProxies(n){_$1.forEach(n.nodes(),function(e){var t=n.node(e);"edge-proxy"===t.dummy&&(n.edge(t.e).labelRank=t.rank,n.removeNode(e))})}function translateGraph(t){var r=Number.POSITIVE_INFINITY,i=0,a=Number.POSITIVE_INFINITY,s=0,e=t.graph(),n=e.marginx||0,o=e.marginy||0;function l(e){var t=e.x,n=e.y,o=e.width,e=e.height;r=Math.min(r,t-o/2),i=Math.max(i,t+o/2),a=Math.min(a,n-e/2),s=Math.max(s,n+e/2)}_$1.forEach(t.nodes(),function(e){l(t.node(e))}),_$1.forEach(t.edges(),function(e){e=t.edge(e);_$1.has(e,"x")&&l(e)}),r-=n,a-=o,_$1.forEach(t.nodes(),function(e){e=t.node(e);e.x-=r,e.y-=a}),_$1.forEach(t.edges(),function(e){e=t.edge(e);_$1.forEach(e.points,function(e){e.x-=r,e.y-=a}),_$1.has(e,"x")&&(e.x-=r),_$1.has(e,"y")&&(e.y-=a)}),e.width=i-r+n,e.height=s-a+o}function assignNodeIntersects(i){_$1.forEach(i.edges(),function(e){var t,n=i.edge(e),o=i.node(e.v),e=i.node(e.w),r=n.points?(t=n.points[0],n.points[n.points.length-1]):(n.points=[],t=e,o);n.points.unshift(util$1.intersectRect(o,t)),n.points.push(util$1.intersectRect(e,r))})}function fixupEdgeLabelCoords(n){_$1.forEach(n.edges(),function(e){var t=n.edge(e);if(_$1.has(t,"x"))switch("l"!==t.labelpos&&"r"!==t.labelpos||(t.width-=t.labeloffset),t.labelpos){case"l":t.x-=t.width/2+t.labeloffset;break;case"r":t.x+=t.width/2+t.labeloffset}})}function reversePointsForReversedEdges(t){_$1.forEach(t.edges(),function(e){e=t.edge(e);e.reversed&&e.points.reverse()})}function removeBorderNodes(i){_$1.forEach(i.nodes(),function(e){var t,n,o,r;i.children(e).length&&(e=i.node(e),t=i.node(e.borderTop),n=i.node(e.borderBottom),o=i.node(_$1.last(e.borderLeft)),r=i.node(_$1.last(e.borderRight)),e.width=Math.abs(r.x-o.x),e.height=Math.abs(n.y-t.y),e.x=o.x+e.width/2,e.y=t.y+e.height/2)}),_$1.forEach(i.nodes(),function(e){"border"===i.node(e).dummy&&i.removeNode(e)})}function removeSelfEdges(n){_$1.forEach(n.edges(),function(e){var t;e.v===e.w&&((t=n.node(e.v)).selfEdges||(t.selfEdges=[]),t.selfEdges.push({e:e,label:n.edge(e)}),n.removeEdge(e))})}function insertSelfEdges(r){var e=util$1.buildLayerMatrix(r);_$1.forEach(e,function(e){var o=0;_$1.forEach(e,function(e,t){var n=r.node(e);n.order=t+o,_$1.forEach(n.selfEdges,function(e){util$1.addDummyNode(r,"selfedge",{width:e.label.width,height:e.label.height,rank:n.rank,order:t+ ++o,e:e.e,label:e.label},"_se")}),delete n.selfEdges})})}function positionSelfEdges(a){_$1.forEach(a.nodes(),function(e){var t,n,o,r,i=a.node(e);"selfedge"===i.dummy&&(t=(r=a.node(i.e.v)).x+r.width/2,n=r.y,o=i.x-t,r=r.height/2,a.setEdge(i.e,i.label),a.removeNode(e),i.label.points=[{x:t+2*o/3,y:n-r},{x:t+5*o/6,y:n-r},{x:t+o,y:n},{x:t+5*o/6,y:n+r},{x:t+2*o/3,y:n+r}],i.label.x=i.x,i.label.y=i.y)})}function selectNumberAttrs(e,t){return _$1.mapValues(_$1.pick(e,t),Number)}function canonicalize(e){var n={};return _$1.forEach(e,function(e,t){n[t.toLowerCase()]=e}),n}var _=lodash_1,util=util$a,Graph=graphlib_1.Graph,debug={debugOrdering:debugOrdering};function debugOrdering(t){var e=util.buildLayerMatrix(t),n=new Graph({compound:!0,multigraph:!0}).setGraph({});return _.forEach(t.nodes(),function(e){n.setNode(e,{label:e}),n.setParent(e,"layer"+t.node(e).rank)}),_.forEach(t.edges(),function(e){n.setEdge(e.v,e.w,{},e.name)}),_.forEach(e,function(e,t){n.setNode("layer"+t,{rank:"same"}),_.reduce(e,function(e,t){return n.setEdge(e,t,{style:"invis"}),t})}),n}var version$1="0.8.5",dagre={graphlib:graphlib_1,layout:layout_1,debug:debug,util:{time:util$a.time,notime:util$a.notime},version:version$1};function cc(n){if("string"==typeof n||"number"==typeof n)return""+n;let o="";if(Array.isArray(n))for(let e=0,t;e<n.length;e++)""!==(t=cc(n[e]))&&(o+=(o&&" ")+t);else for(var e in n)n[e]&&(o+=(o&&" ")+e);return o}const createStoreImpl=e=>{let o;const r=new Set;var t=(e,t)=>{e="function"==typeof e?e(o):e;if(!Object.is(e,o)){const n=o;o=(null!=t?t:"object"!=typeof e)?e:Object.assign({},o,e),r.forEach(e=>e(o,n))}},n=()=>o,i={setState:t,getState:n,subscribe:e=>(r.add(e),()=>r.delete(e)),destroy:()=>{"production"!==(import.meta.env&&import.meta.env.MODE)&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),r.clear()}};return o=e(t,n,i),i},createStore=e=>e?createStoreImpl(e):createStoreImpl,useSyncExternalStoreWithSelector=useSyncExternalStoreExports["useSyncExternalStoreWithSelector"];function useStore$1(e,t=e.getState,n){t=useSyncExternalStoreWithSelector(e.subscribe,e.getState,e.getServerState||e.getState,t,n);return react.exports.useDebugValue(t),t}function shallow(t,n){if(!Object.is(t,n)){if("object"!=typeof t||null===t||"object"!=typeof n||null===n)return!1;if(t instanceof Map&&n instanceof Map){if(t.size!==n.size)return!1;for(var[e,o]of t)if(!Object.is(o,n.get(e)))return!1}else if(t instanceof Set&&n instanceof Set){if(t.size!==n.size)return!1;for(const i of t)if(!n.has(i))return!1}else{var r=Object.keys(t);if(r.length!==Object.keys(n).length)return!1;for(let e=0;e<r.length;e++)if(!Object.prototype.hasOwnProperty.call(n,r[e])||!Object.is(t[r[e]],n[r[e]]))return!1}}return!0}var noop$1={value:()=>{}};function dispatch(){for(var e,t=0,n=arguments.length,o={};t<n;++t){if(!(e=arguments[t]+"")||e in o||/[\s.]/.test(e))throw new Error("illegal type: "+e);o[e]=[]}return new Dispatch(o)}function Dispatch(e){this._=e}function parseTypenames$1(e,o){return e.trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");if(0<=n&&(t=e.slice(n+1),e=e.slice(0,n)),e&&!o.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}})}function get$2(e,t){for(var n,o=0,r=e.length;o<r;++o)if((n=e[o]).name===t)return n.value}function set$2(e,t,n){for(var o=0,r=e.length;o<r;++o)if(e[o].name===t){e[o]=noop$1,e=e.slice(0,o).concat(e.slice(o+1));break}return null!=n&&e.push({name:t,value:n}),e}Dispatch.prototype=dispatch.prototype={constructor:Dispatch,on:function(e,t){var n,o=this._,r=parseTypenames$1(e+"",o),i=-1,a=r.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++i<a;)if(n=(e=r[i]).type)o[n]=set$2(o[n],e.name,t);else if(null==t)for(n in o)o[n]=set$2(o[n],e.name,null);return this}for(;++i<a;)if(n=(n=(e=r[i]).type)&&get$2(o[n],e.name))return n},copy:function(){var e,t={},n=this._;for(e in n)t[e]=n[e].slice();return new Dispatch(t)},call:function(e,t){if(0<(n=arguments.length-2))for(var n,o,r=new Array(n),i=0;i<n;++i)r[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(i=0,n=(o=this._[e]).length;i<n;++i)o[i].value.apply(t,r)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var o=this._[e],r=0,i=o.length;r<i;++r)o[r].value.apply(t,n)}};var xhtml="http://www.w3.org/1999/xhtml",namespaces={svg:"http://www.w3.org/2000/svg",xhtml:xhtml,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function namespace$6(e){var t=e+="",n=t.indexOf(":");return 0<=n&&"xmlns"!==(t=e.slice(0,n))&&(e=e.slice(n+1)),namespaces.hasOwnProperty(t)?{space:namespaces[t],local:e}:e}function creatorInherit(n){return function(){var e=this.ownerDocument,t=this.namespaceURI;return t===xhtml&&e.documentElement.namespaceURI===xhtml?e.createElement(n):e.createElementNS(t,n)}}function creatorFixed(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function creator(e){e=namespace$6(e);return(e.local?creatorFixed:creatorInherit)(e)}function none(){}function selector$1(e){return null==e?none:function(){return this.querySelector(e)}}function selection_select(e){"function"!=typeof e&&(e=selector$1(e));for(var t=this._groups,n=t.length,o=new Array(n),r=0;r<n;++r)for(var i,a,s=t[r],l=s.length,c=o[r]=new Array(l),d=0;d<l;++d)(i=s[d])&&(a=e.call(i,i.__data__,d,s))&&("__data__"in i&&(a.__data__=i.__data__),c[d]=a);return new Selection$1(o,this._parents)}function array(e){return null==e?[]:Array.isArray(e)?e:Array.from(e)}function empty(){return[]}function selectorAll(e){return null==e?empty:function(){return this.querySelectorAll(e)}}function arrayAll(e){return function(){return array(e.apply(this,arguments))}}function selection_selectAll(e){e=("function"==typeof e?arrayAll:selectorAll)(e);for(var t=this._groups,n=t.length,o=[],r=[],i=0;i<n;++i)for(var a,s=t[i],l=s.length,c=0;c<l;++c)(a=s[c])&&(o.push(e.call(a,a.__data__,c,s)),r.push(a));return new Selection$1(o,r)}function matcher(e){return function(){return this.matches(e)}}function childMatcher(t){return function(e){return e.matches(t)}}var find=Array.prototype.find;function childFind(e){return function(){return find.call(this.children,e)}}function childFirst(){return this.firstElementChild}function selection_selectChild(e){return this.select(null==e?childFirst:childFind("function"==typeof e?e:childMatcher(e)))}var filter=Array.prototype.filter;function children(){return Array.from(this.children)}function childrenFilter(e){return function(){return filter.call(this.children,e)}}function selection_selectChildren(e){return this.selectAll(null==e?children:childrenFilter("function"==typeof e?e:childMatcher(e)))}function selection_filter(e){"function"!=typeof e&&(e=matcher(e));for(var t=this._groups,n=t.length,o=new Array(n),r=0;r<n;++r)for(var i,a=t[r],s=a.length,l=o[r]=[],c=0;c<s;++c)(i=a[c])&&e.call(i,i.__data__,c,a)&&l.push(i);return new Selection$1(o,this._parents)}function sparse(e){return new Array(e.length)}function selection_enter(){return new Selection$1(this._enter||this._groups.map(sparse),this._parents)}function EnterNode(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function constant$3(e){return function(){return e}}function bindIndex(e,t,n,o,r,i){for(var a,s=0,l=t.length,c=i.length;s<c;++s)(a=t[s])?(a.__data__=i[s],o[s]=a):n[s]=new EnterNode(e,i[s]);for(;s<l;++s)(a=t[s])&&(r[s]=a)}function bindKey(e,t,n,o,r,i,a){for(var s,l,c=new Map,d=t.length,u=i.length,p=new Array(d),g=0;g<d;++g)(s=t[g])&&(p[g]=l=a.call(s,s.__data__,g,t)+"",c.has(l)?r[g]=s:c.set(l,s));for(g=0;g<u;++g)l=a.call(e,i[g],g,i)+"",(s=c.get(l))?((o[g]=s).__data__=i[g],c.delete(l)):n[g]=new EnterNode(e,i[g]);for(g=0;g<d;++g)(s=t[g])&&c.get(p[g])===s&&(r[g]=s)}function datum(e){return e.__data__}function selection_data(e,t){if(!arguments.length)return Array.from(this,datum);var n=t?bindKey:bindIndex,o=this._parents,r=this._groups;"function"!=typeof e&&(e=constant$3(e));for(var i=r.length,a=new Array(i),s=new Array(i),l=new Array(i),c=0;c<i;++c){var d=o[c],u=r[c],p=u.length,g=arraylike(e.call(d,d&&d.__data__,c,o)),h=g.length,f=s[c]=new Array(h),m=a[c]=new Array(h);n(d,u,f,m,l[c]=new Array(p),g,t);for(var y,b,x=0,v=0;x<h;++x)if(y=f[x]){for(v<=x&&(v=x+1);!(b=m[v])&&++v<h;);y._next=b||null}}return(a=new Selection$1(a,o))._enter=s,a._exit=l,a}function arraylike(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}function selection_exit(){return new Selection$1(this._exit||this._groups.map(sparse),this._parents)}function selection_join(e,t,n){var o=this.enter(),r=this,i=this.exit(),o="function"==typeof e?(o=e(o))&&o.selection():o.append(e+"");return null!=t&&(r=(r=t(r))&&r.selection()),null==n?i.remove():n(i),o&&r?o.merge(r).order():r}function selection_merge(e){for(var e=e.selection?e.selection():e,t=this._groups,n=e._groups,o=t.length,e=n.length,r=Math.min(o,e),i=new Array(o),a=0;a<r;++a)for(var s,l=t[a],c=n[a],d=l.length,u=i[a]=new Array(d),p=0;p<d;++p)(s=l[p]||c[p])&&(u[p]=s);for(;a<o;++a)i[a]=t[a];return new Selection$1(i,this._parents)}function selection_order(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var o,r=e[t],i=r.length-1,a=r[i];0<=--i;)(o=r[i])&&(a&&4^o.compareDocumentPosition(a)&&a.parentNode.insertBefore(o,a),a=o);return this}function selection_sort(n){function e(e,t){return e&&t?n(e.__data__,t.__data__):!e-!t}n=n||ascending;for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i){for(var a,s=t[i],l=s.length,c=r[i]=new Array(l),d=0;d<l;++d)(a=s[d])&&(c[d]=a);c.sort(e)}return new Selection$1(r,this._parents).order()}function ascending(e,t){return e<t?-1:t<e?1:t<=e?0:NaN}function selection_call(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function selection_nodes(){return Array.from(this)}function selection_node(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var o=e[t],r=0,i=o.length;r<i;++r){var a=o[r];if(a)return a}return null}function selection_size(){let e=0;for(const t of this)++e;return e}function selection_empty(){return!this.node()}function selection_each(e){for(var t=this._groups,n=0,o=t.length;n<o;++n)for(var r,i=t[n],a=0,s=i.length;a<s;++a)(r=i[a])&&e.call(r,r.__data__,a,i);return this}function attrRemove$1(e){return function(){this.removeAttribute(e)}}function attrRemoveNS$1(e){return function(){this.removeAttributeNS(e.space,e.local)}}function attrConstant$1(e,t){return function(){this.setAttribute(e,t)}}function attrConstantNS$1(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function attrFunction$1(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttribute(t):this.setAttribute(t,e)}}function attrFunctionNS$1(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function selection_attr(e,t){var n,o=namespace$6(e);return arguments.length<2?(n=this.node(),o.local?n.getAttributeNS(o.space,o.local):n.getAttribute(o)):this.each((null==t?o.local?attrRemoveNS$1:attrRemove$1:"function"==typeof t?o.local?attrFunctionNS$1:attrFunction$1:o.local?attrConstantNS$1:attrConstant$1)(o,t))}function defaultView(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function styleRemove$1(e){return function(){this.style.removeProperty(e)}}function styleConstant$1(e,t,n){return function(){this.style.setProperty(e,t,n)}}function styleFunction$1(t,n,o){return function(){var e=n.apply(this,arguments);null==e?this.style.removeProperty(t):this.style.setProperty(t,e,o)}}function selection_style(e,t,n){return 1<arguments.length?this.each((null==t?styleRemove$1:"function"==typeof t?styleFunction$1:styleConstant$1)(e,t,null==n?"":n)):styleValue(this.node(),e)}function styleValue(e,t){return e.style.getPropertyValue(t)||defaultView(e).getComputedStyle(e,null).getPropertyValue(t)}function propertyRemove(e){return function(){delete this[e]}}function propertyConstant(e,t){return function(){this[e]=t}}function propertyFunction(t,n){return function(){var e=n.apply(this,arguments);null==e?delete this[t]:this[t]=e}}function selection_property(e,t){return 1<arguments.length?this.each((null==t?propertyRemove:"function"==typeof t?propertyFunction:propertyConstant)(e,t)):this.node()[e]}function classArray(e){return e.trim().split(/^|\s+/)}function classList$1(e){return e.classList||new ClassList(e)}function ClassList(e){this._node=e,this._names=classArray(e.getAttribute("class")||"")}function classedAdd(e,t){for(var n=classList$1(e),o=-1,r=t.length;++o<r;)n.add(t[o])}function classedRemove(e,t){for(var n=classList$1(e),o=-1,r=t.length;++o<r;)n.remove(t[o])}function classedTrue(e){return function(){classedAdd(this,e)}}function classedFalse(e){return function(){classedRemove(this,e)}}function classedFunction(e,t){return function(){(t.apply(this,arguments)?classedAdd:classedRemove)(this,e)}}function selection_classed(e,t){var n=classArray(e+"");if(arguments.length<2){for(var o=classList$1(this.node()),r=-1,i=n.length;++r<i;)if(!o.contains(n[r]))return!1;return!0}return this.each(("function"==typeof t?classedFunction:t?classedTrue:classedFalse)(n,t))}function textRemove(){this.textContent=""}function textConstant$1(e){return function(){this.textContent=e}}function textFunction$1(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function selection_text(e){return arguments.length?this.each(null==e?textRemove:("function"==typeof e?textFunction$1:textConstant$1)(e)):this.node().textContent}function htmlRemove(){this.innerHTML=""}function htmlConstant(e){return function(){this.innerHTML=e}}function htmlFunction(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function selection_html(e){return arguments.length?this.each(null==e?htmlRemove:("function"==typeof e?htmlFunction:htmlConstant)(e)):this.node().innerHTML}function raise(){this.nextSibling&&this.parentNode.appendChild(this)}function selection_raise(){return this.each(raise)}function lower(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function selection_lower(){return this.each(lower)}function selection_append(e){var t="function"==typeof e?e:creator(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function constantNull(){return null}function selection_insert(e,t){var n="function"==typeof e?e:creator(e),o=null==t?constantNull:"function"==typeof t?t:selector$1(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),o.apply(this,arguments)||null)})}function remove(){var e=this.parentNode;e&&e.removeChild(this)}function selection_remove(){return this.each(remove)}function selection_cloneShallow(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function selection_cloneDeep(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function selection_clone(e){return this.select(e?selection_cloneDeep:selection_cloneShallow)}function selection_datum(e){return arguments.length?this.property("__data__",e):this.node().__data__}function contextListener(t){return function(e){t.call(this,e,this.__data__)}}function parseTypenames(e){return e.trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");return 0<=n&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function onRemove(i){return function(){var e=this.__on;if(e){for(var t,n=0,o=-1,r=e.length;n<r;++n)t=e[n],i.type&&t.type!==i.type||t.name!==i.name?e[++o]=t:this.removeEventListener(t.type,t.listener,t.options);++o?e.length=o:delete this.__on}}}function onAdd(i,a,s){return function(){var e,t=this.__on,n=contextListener(a);if(t)for(var o=0,r=t.length;o<r;++o)if((e=t[o]).type===i.type&&e.name===i.name)return this.removeEventListener(e.type,e.listener,e.options),this.addEventListener(e.type,e.listener=n,e.options=s),void(e.value=a);this.addEventListener(i.type,n,s),e={type:i.type,name:i.name,value:a,listener:n,options:s},t?t.push(e):this.__on=[e]}}function selection_on(e,t,n){var o,r,i=parseTypenames(e+""),a=i.length;if(!(arguments.length<2)){for(s=t?onAdd:onRemove,o=0;o<a;++o)this.each(s(i[o],t,n));return this}var s=this.node().__on;if(s)for(var l,c=0,d=s.length;c<d;++c)for(o=0,l=s[c];o<a;++o)if((r=i[o]).type===l.type&&r.name===l.name)return l.value}function dispatchEvent(e,t,n){var o=defaultView(e),r=o.CustomEvent;"function"==typeof r?r=new r(t,n):(r=o.document.createEvent("Event"),n?(r.initEvent(t,n.bubbles,n.cancelable),r.detail=n.detail):r.initEvent(t,!1,!1)),e.dispatchEvent(r)}function dispatchConstant(e,t){return function(){return dispatchEvent(this,e,t)}}function dispatchFunction(e,t){return function(){return dispatchEvent(this,e,t.apply(this,arguments))}}function selection_dispatch(e,t){return this.each(("function"==typeof t?dispatchFunction:dispatchConstant)(e,t))}function*selection_iterator(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var o,r=e[t],i=0,a=r.length;i<a;++i)(o=r[i])&&(yield o)}EnterNode.prototype={constructor:EnterNode,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}},ClassList.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){e=this._names.indexOf(e);0<=e&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return 0<=this._names.indexOf(e)}};var root=[null];function Selection$1(e,t){this._groups=e,this._parents=t}function selection(){return new Selection$1([[document.documentElement]],root)}function selection_selection(){return this}function select(e){return"string"==typeof e?new Selection$1([[document.querySelector(e)]],[document.documentElement]):new Selection$1([[e]],root)}function sourceEvent(e){for(var t;t=e.sourceEvent;)e=t;return e}function pointer(e,t){if(e=sourceEvent(e),t=void 0===t?e.currentTarget:t){var n=t.ownerSVGElement||t;if(n.createSVGPoint)return(n=n.createSVGPoint()).x=e.clientX,n.y=e.clientY,[(n=n.matrixTransform(t.getScreenCTM().inverse())).x,n.y];if(t.getBoundingClientRect)return n=t.getBoundingClientRect(),[e.clientX-n.left-t.clientLeft,e.clientY-n.top-t.clientTop]}return[e.pageX,e.pageY]}const nonpassive={passive:!(Selection$1.prototype=selection.prototype={constructor:Selection$1,select:selection_select,selectAll:selection_selectAll,selectChild:selection_selectChild,selectChildren:selection_selectChildren,filter:selection_filter,data:selection_data,enter:selection_enter,exit:selection_exit,join:selection_join,merge:selection_merge,selection:selection_selection,order:selection_order,sort:selection_sort,call:selection_call,nodes:selection_nodes,node:selection_node,size:selection_size,empty:selection_empty,each:selection_each,attr:selection_attr,style:selection_style,property:selection_property,classed:selection_classed,text:selection_text,html:selection_html,raise:selection_raise,lower:selection_lower,append:selection_append,insert:selection_insert,remove:selection_remove,clone:selection_clone,datum:selection_datum,on:selection_on,dispatch:selection_dispatch,[Symbol.iterator]:selection_iterator})},nonpassivecapture={capture:!0,passive:!1};function nopropagation$1(e){e.stopImmediatePropagation()}function noevent$1(e){e.preventDefault(),e.stopImmediatePropagation()}function dragDisable(e){var t=e.document.documentElement,e=select(e).on("dragstart.drag",noevent$1,nonpassivecapture);"onselectstart"in t?e.on("selectstart.drag",noevent$1,nonpassivecapture):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function yesdrag(e,t){var n=e.document.documentElement,o=select(e).on("dragstart.drag",null);t&&(o.on("click.drag",noevent$1,nonpassivecapture),setTimeout(function(){o.on("click.drag",null)},0)),"onselectstart"in n?o.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}var constant$2=e=>()=>e;function DragEvent(e,{sourceEvent:t,subject:n,target:o,identifier:r,active:i,x:a,y:s,dx:l,dy:c,dispatch:d}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:r,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:d}})}function defaultFilter$1(e){return!e.ctrlKey&&!e.button}function defaultContainer(){return this.parentNode}function defaultSubject(e,t){return null==t?{x:e.x,y:e.y}:t}function defaultTouchable$1(){return navigator.maxTouchPoints||"ontouchstart"in this}function drag(){var o,r,i,a,s=defaultFilter$1,l=defaultContainer,n=defaultSubject,t=defaultTouchable$1,f={},m=dispatch("start","drag","end"),y=0,c=0;function b(e){e.on("mousedown.drag",d).filter(t).on("touchstart.drag",g).on("touchmove.drag",h,nonpassive).on("touchend.drag touchcancel.drag",x).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(e,t){!a&&s.call(this,e,t)&&(t=v(this,l.call(this,e,t),e,t,"mouse"))&&(select(e.view).on("mousemove.drag",u,nonpassivecapture).on("mouseup.drag",p,nonpassivecapture),dragDisable(e.view),nopropagation$1(e),i=!1,o=e.clientX,r=e.clientY,t("start",e))}function u(e){var t,n;noevent$1(e),i||(t=e.clientX-o,n=e.clientY-r,i=c<t*t+n*n),f.mouse("drag",e)}function p(e){select(e.view).on("mousemove.drag mouseup.drag",null),yesdrag(e.view,i),noevent$1(e),f.mouse("end",e)}function g(e,t){if(s.call(this,e,t))for(var n,o=e.changedTouches,r=l.call(this,e,t),i=o.length,a=0;a<i;++a)(n=v(this,r,e,t,o[a].identifier,o[a]))&&(nopropagation$1(e),n("start",e,o[a]))}function h(e){for(var t,n=e.changedTouches,o=n.length,r=0;r<o;++r)(t=f[n[r].identifier])&&(noevent$1(e),t("drag",e,n[r]))}function x(e){var t,n,o=e.changedTouches,r=o.length;for(a&&clearTimeout(a),a=setTimeout(function(){a=null},500),t=0;t<r;++t)(n=f[o[t].identifier])&&(nopropagation$1(e),n("end",e,o[t]))}function v(a,s,e,l,c,t){var d,u,p,g=m.copy(),h=pointer(t||e,s);if(null!=(p=n.call(a,new DragEvent("beforestart",{sourceEvent:e,target:b,identifier:c,active:y,x:h[0],y:h[1],dx:0,dy:0,dispatch:g}),l)))return d=p.x-h[0]||0,u=p.y-h[1]||0,function e(t,n,o){var r,i=h;switch(t){case"start":f[c]=e,r=y++;break;case"end":delete f[c],--y;case"drag":h=pointer(o||n,s),r=y}g.call(t,a,new DragEvent(t,{sourceEvent:n,subject:p,target:b,identifier:c,active:r,x:h[0]+d,y:h[1]+u,dx:h[0]-i[0],dy:h[1]-i[1],dispatch:g}),l)}}return b.filter=function(e){return arguments.length?(s="function"==typeof e?e:constant$2(!!e),b):s},b.container=function(e){return arguments.length?(l="function"==typeof e?e:constant$2(e),b):l},b.subject=function(e){return arguments.length?(n="function"==typeof e?e:constant$2(e),b):n},b.touchable=function(e){return arguments.length?(t="function"==typeof e?e:constant$2(!!e),b):t},b.on=function(){var e=m.on.apply(m,arguments);return e===m?b:e},b.clickDistance=function(e){return arguments.length?(c=(e=+e)*e,b):Math.sqrt(c)},b}function define(e,t,n){(e.prototype=t.prototype=n).constructor=e}function extend(e,t){var n,o=Object.create(e.prototype);for(n in t)o[n]=t[n];return o}function Color(){}DragEvent.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var darker=.7,brighter=1/darker,reI="\\s*([+-]?\\d+)\\s*",reN="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",reP="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",reHex=/^#([0-9a-f]{3,8})$/,reRgbInteger=new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`),reRgbPercent=new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`),reRgbaInteger=new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`),reRgbaPercent=new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`),reHslPercent=new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`),reHslaPercent=new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`),named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function color_formatHex(){return this.rgb().formatHex()}function color_formatHex8(){return this.rgb().formatHex8()}function color_formatHsl(){return hslConvert(this).formatHsl()}function color_formatRgb(){return this.rgb().formatRgb()}function color(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=reHex.exec(e))?(n=t[1].length,t=parseInt(t[1],16),6===n?rgbn(t):3===n?new Rgb(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===n?rgba(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===n?rgba(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=reRgbInteger.exec(e))?new Rgb(t[1],t[2],t[3],1):(t=reRgbPercent.exec(e))?new Rgb(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=reRgbaInteger.exec(e))?rgba(t[1],t[2],t[3],t[4]):(t=reRgbaPercent.exec(e))?rgba(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=reHslPercent.exec(e))?hsla(t[1],t[2]/100,t[3]/100,1):(t=reHslaPercent.exec(e))?hsla(t[1],t[2]/100,t[3]/100,t[4]):named.hasOwnProperty(e)?rgbn(named[e]):"transparent"===e?new Rgb(NaN,NaN,NaN,0):null}function rgbn(e){return new Rgb(e>>16&255,e>>8&255,255&e,1)}function rgba(e,t,n,o){return new Rgb(e=o<=0?t=n=NaN:e,t,n,o)}function rgbConvert(e){return(e=e instanceof Color?e:color(e))?new Rgb((e=e.rgb()).r,e.g,e.b,e.opacity):new Rgb}function rgb(e,t,n,o){return 1===arguments.length?rgbConvert(e):new Rgb(e,t,n,null==o?1:o)}function Rgb(e,t,n,o){this.r=+e,this.g=+t,this.b=+n,this.opacity=+o}function rgb_formatHex(){return"#"+hex(this.r)+hex(this.g)+hex(this.b)}function rgb_formatHex8(){return"#"+hex(this.r)+hex(this.g)+hex(this.b)+hex(255*(isNaN(this.opacity)?1:this.opacity))}function rgb_formatRgb(){var e=clampa(this.opacity);return(1===e?"rgb(":"rgba(")+clampi(this.r)+`, ${clampi(this.g)}, `+clampi(this.b)+(1===e?")":`, ${e})`)}function clampa(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function clampi(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function hex(e){return((e=clampi(e))<16?"0":"")+e.toString(16)}function hsla(e,t,n,o){return o<=0?e=t=n=NaN:n<=0||1<=n?e=t=NaN:t<=0&&(e=NaN),new Hsl(e,t,n,o)}function hslConvert(e){var t,n,o,r,i,a,s,l;return e instanceof Hsl?new Hsl(e.h,e.s,e.l,e.opacity):(e=e instanceof Color?e:color(e))?e instanceof Hsl?e:(t=(e=e.rgb()).r/255,n=e.g/255,o=e.b/255,r=Math.min(t,n,o),a=NaN,l=((i=Math.max(t,n,o))+r)/2,(s=i-r)?(a=t===i?(n-o)/s+6*(n<o):n===i?(o-t)/s+2:(t-n)/s+4,s/=l<.5?i+r:2-i-r,a*=60):s=0<l&&l<1?0:a,new Hsl(a,s,l,e.opacity)):new Hsl}function hsl(e,t,n,o){return 1===arguments.length?hslConvert(e):new Hsl(e,t,n,null==o?1:o)}function Hsl(e,t,n,o){this.h=+e,this.s=+t,this.l=+n,this.opacity=+o}function clamph(e){return(e=(e||0)%360)<0?e+360:e}function clampt(e){return Math.max(0,Math.min(1,e||0))}function hsl2rgb(e,t,n){return 255*(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)}define(Color,color,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:color_formatHex,formatHex:color_formatHex,formatHex8:color_formatHex8,formatHsl:color_formatHsl,formatRgb:color_formatRgb,toString:color_formatRgb}),define(Rgb,rgb,extend(Color,{brighter(e){return e=null==e?brighter:Math.pow(brighter,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?darker:Math.pow(darker,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Rgb(clampi(this.r),clampi(this.g),clampi(this.b),clampa(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:rgb_formatHex,formatHex:rgb_formatHex,formatHex8:rgb_formatHex8,formatRgb:rgb_formatRgb,toString:rgb_formatRgb})),define(Hsl,hsl,extend(Color,{brighter(e){return e=null==e?brighter:Math.pow(brighter,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?darker:Math.pow(darker,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,t=n+(n<.5?n:1-n)*t,n=2*n-t;return new Rgb(hsl2rgb(240<=e?e-240:120+e,n,t),hsl2rgb(e,n,t),hsl2rgb(e<120?240+e:e-120,n,t),this.opacity)},clamp(){return new Hsl(clamph(this.h),clampt(this.s),clampt(this.l),clampa(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){var e=clampa(this.opacity);return(1===e?"hsl(":"hsla(")+clamph(this.h)+`, ${100*clampt(this.s)}%, ${100*clampt(this.l)}%`+(1===e?")":`, ${e})`)}}));var epsilon2=1e-12;function cosh(e){return((e=Math.exp(e))+1/e)/2}function sinh(e){return((e=Math.exp(e))-1/e)/2}function tanh(e){return((e=Math.exp(2*e))-1)/(e+1)}var taskHead,taskTail,interpolateZoom=function n(u,p,g){function e(e,t){var o,r,i,a=e[0],s=e[1],l=e[2],e=t[0],n=t[1],t=t[2],c=e-a,d=n-s,e=c*c+d*d;return(t=e<epsilon2?(i=Math.log(t/l)/u,function(e){return[a+e*c,s+e*d,l*Math.exp(u*e*i)]}):(o=Math.sqrt(e),n=(t*t-l*l+g*e)/(2*l*p*o),e=(t*t-l*l-g*e)/(2*t*p*o),r=Math.log(Math.sqrt(n*n+1)-n),i=(Math.log(Math.sqrt(e*e+1)-e)-r)/u,function(e){var e=e*i,t=cosh(r),n=l/(p*o)*(t*tanh(u*e+r)-sinh(r));return[a+n*c,s+n*d,l*t/cosh(u*e+r)]})).duration=1e3*i*u/Math.SQRT2,t}return e.rho=function(e){var e=Math.max(.001,+e),t=e*e;return n(e,t,t*t)},e}(Math.SQRT2,2,4),frame=0,timeout$1=0,interval=0,pokeDelay=1e3,clockLast=0,clockNow=0,clockSkew=0,clock="object"==typeof performance&&performance.now?performance:Date,setFrame="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function now(){return clockNow||(setFrame(clearNow),clockNow=clock.now()+clockSkew)}function clearNow(){clockNow=0}function Timer(){this._call=this._time=this._next=null}function timer(e,t,n){var o=new Timer;return o.restart(e,t,n),o}function timerFlush(){now(),++frame;for(var e,t=taskHead;t;)0<=(e=clockNow-t._time)&&t._call.call(void 0,e),t=t._next;--frame}function wake(){clockNow=(clockLast=clock.now())+clockSkew,frame=timeout$1=0;try{timerFlush()}finally{frame=0,nap(),clockNow=0}}function poke(){var e=clock.now(),t=e-clockLast;pokeDelay<t&&(clockSkew-=t,clockLast=e)}function nap(){for(var e,t,n=taskHead,o=1/0;n;)n=n._call?(o>n._time&&(o=n._time),(e=n)._next):(t=n._next,n._next=null,e?e._next=t:taskHead=t);taskTail=e,sleep(o)}function sleep(e){frame||(timeout$1=timeout$1&&clearTimeout(timeout$1),24<e-clockNow?(e<1/0&&(timeout$1=setTimeout(wake,e-clock.now()-clockSkew)),interval=interval&&clearInterval(interval)):(interval||(clockLast=clock.now(),interval=setInterval(poke,pokeDelay)),frame=1,setFrame(wake)))}function timeout(t,n,e){var o=new Timer;return n=null==n?0:+n,o.restart(e=>{o.stop(),t(e+n)},n,e),o}Timer.prototype=timer.prototype={constructor:Timer,restart:function(e,t,n){if("function"!=typeof e)throw new TypeError("callback is not a function");n=(null==n?now():+n)+(null==t?0:+t),this._next||taskTail===this||(taskTail?taskTail._next=this:taskHead=this,taskTail=this),this._call=e,this._time=n,sleep()},stop:function(){this._call&&(this._call=null,this._time=1/0,sleep())}};var emptyOn=dispatch("start","end","cancel","interrupt"),emptyTween=[],CREATED=0,SCHEDULED=1,STARTING=2,STARTED=3,RUNNING=4,ENDING=5,ENDED=6;function schedule(e,t,n,o,r,i){var a=e.__transition;if(a){if(n in a)return}else e.__transition={};create$2(e,n,{name:t,index:o,group:r,on:emptyOn,tween:emptyTween,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:CREATED})}function init(e,t){e=get$1(e,t);if(e.state>CREATED)throw new Error("too late; already scheduled");return e}function set$1(e,t){e=get$1(e,t);if(e.state>STARTED)throw new Error("too late; already running");return e}function get$1(e,t){e=e.__transition;if(e=e&&e[t])return e;throw new Error("transition not found")}function create$2(i,a,s){var l,c=i.__transition;function d(e){var t,n,o,r;if(s.state!==SCHEDULED)return p();for(t in c)if((r=c[t]).name===s.name){if(r.state===STARTED)return timeout(d);r.state===RUNNING?(r.state=ENDED,r.timer.stop(),r.on.call("interrupt",i,i.__data__,r.index,r.group),delete c[t]):+t<a&&(r.state=ENDED,r.timer.stop(),r.on.call("cancel",i,i.__data__,r.index,r.group),delete c[t])}if(timeout(function(){s.state===STARTED&&(s.state=RUNNING,s.timer.restart(u,s.delay,s.time),u(e))}),s.state=STARTING,s.on.call("start",i,i.__data__,s.index,s.group),s.state===STARTING){for(s.state=STARTED,l=new Array(o=s.tween.length),t=0,n=-1;t<o;++t)(r=s.tween[t].value.call(i,i.__data__,s.index,s.group))&&(l[++n]=r);l.length=n+1}}function u(e){for(var t=e<s.duration?s.ease.call(null,e/s.duration):(s.timer.restart(p),s.state=ENDING,1),n=-1,o=l.length;++n<o;)l[n].call(i,t);s.state===ENDING&&(s.on.call("end",i,i.__data__,s.index,s.group),p())}function p(){for(var e in s.state=ENDED,s.timer.stop(),delete c[a],c)return;delete i.__transition}(c[a]=s).timer=timer(function(e){s.state=SCHEDULED,s.timer.restart(d,s.delay,s.time),s.delay<=e&&d(e-s.delay)},0,s.time)}function interrupt(e,t){var n,o,r,i=e.__transition,a=!0;if(i){for(r in t=null==t?null:t+"",i)(n=i[r]).name!==t?a=!1:(o=n.state>STARTING&&n.state<ENDING,n.state=ENDED,n.timer.stop(),n.on.call(o?"interrupt":"cancel",e,e.__data__,n.index,n.group),delete i[r]);a&&delete e.__transition}}function selection_interrupt(e){return this.each(function(){interrupt(this,e)})}var constant$1=e=>()=>e;function linear(t,n){return function(e){return t+e*n}}function exponential(t,n,o){return t=Math.pow(t,o),n=Math.pow(n,o)-t,o=1/o,function(e){return Math.pow(t+e*n,o)}}function gamma(n){return 1==(n=+n)?nogamma:function(e,t){return t-e?exponential(e,t,n):constant$1(isNaN(e)?t:e)}}function nogamma(e,t){var n=t-e;return n?linear(e,n):constant$1(isNaN(e)?t:e)}var interpolateRgb=function e(t){var a=gamma(t);function n(t,e){var n=a((t=rgb(t)).r,(e=rgb(e)).r),o=a(t.g,e.g),r=a(t.b,e.b),i=nogamma(t.opacity,e.opacity);return function(e){return t.r=n(e),t.g=o(e),t.b=r(e),t.opacity=i(e),t+""}}return n.gamma=e,n}(1);function interpolateNumber(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}var reA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,reB=new RegExp(reA.source,"g");function zero(e){return function(){return e}}function one(t){return function(e){return t(e)+""}}function interpolateString(e,o){var t,n,r,i=reA.lastIndex=reB.lastIndex=0,a=-1,s=[],l=[];for(e+="",o+="";(t=reA.exec(e))&&(n=reB.exec(o));)(r=n.index)>i&&(r=o.slice(i,r),s[a]?s[a]+=r:s[++a]=r),(t=t[0])===(n=n[0])?s[a]?s[a]+=n:s[++a]=n:(s[++a]=null,l.push({i:a,x:interpolateNumber(t,n)})),i=reB.lastIndex;return i<o.length&&(r=o.slice(i),s[a]?s[a]+=r:s[++a]=r),s.length<2?l[0]?one(l[0].x):zero(o):(o=l.length,function(e){for(var t,n=0;n<o;++n)s[(t=l[n]).i]=t.x(e);return s.join("")})}var svgNode,degrees=180/Math.PI,identity$1={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function decompose(e,t,n,o,r,i){var a,s,l;return(a=Math.sqrt(e*e+t*t))&&(e/=a,t/=a),(l=e*n+t*o)&&(n-=e*l,o-=t*l),(s=Math.sqrt(n*n+o*o))&&(n/=s,o/=s,l/=s),e*o<t*n&&(e=-e,t=-t,l=-l,a=-a),{translateX:r,translateY:i,rotate:Math.atan2(t,e)*degrees,skewX:Math.atan(l)*degrees,scaleX:a,scaleY:s}}function parseCss(e){e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(e+"");return e.isIdentity?identity$1:decompose(e.a,e.b,e.c,e.d,e.e,e.f)}function parseSvg(e){return null!=e&&((svgNode=svgNode||document.createElementNS("http://www.w3.org/2000/svg","g")).setAttribute("transform",e),e=svgNode.transform.baseVal.consolidate())?decompose((e=e.matrix).a,e.b,e.c,e.d,e.e,e.f):identity$1}function interpolateTransform(p,g,h,f){function m(e){return e.length?e.pop()+" ":""}return function(e,t){var n,o,r,i,a,s,l,c,d=[],u=[];return e=p(e),t=p(t),r=e.translateX,i=e.translateY,l=t.translateX,s=t.translateY,a=d,o=u,r!==l||i!==s?(n=a.push("translate(",null,g,null,h),o.push({i:n-4,x:interpolateNumber(r,l)},{i:n-2,x:interpolateNumber(i,s)})):(l||s)&&a.push("translate("+l+g+s+h),o=e.rotate,r=t.rotate,n=d,i=u,o!==r?(180<o-r?r+=360:180<r-o&&(o+=360),i.push({i:n.push(m(n)+"rotate(",null,f)-2,x:interpolateNumber(o,r)})):r&&n.push(m(n)+"rotate("+r+f),a=e.skewX,l=t.skewX,s=d,i=u,a!==l?i.push({i:s.push(m(s)+"skewX(",null,f)-2,x:interpolateNumber(a,l)}):l&&s.push(m(s)+"skewX("+l+f),o=e.scaleX,r=e.scaleY,i=t.scaleX,a=t.scaleY,s=d,l=u,o!==i||r!==a?(c=s.push(m(s)+"scale(",null,",",null,")"),l.push({i:c-4,x:interpolateNumber(o,i)},{i:c-2,x:interpolateNumber(r,a)})):1===i&&1===a||s.push(m(s)+"scale("+i+","+a+")"),e=t=null,function(e){for(var t,n=-1,o=u.length;++n<o;)d[(t=u[n]).i]=t.x(e);return d.join("")}}}var interpolateTransformCss=interpolateTransform(parseCss,"px, ","px)","deg)"),interpolateTransformSvg=interpolateTransform(parseSvg,", ",")",")");function tweenRemove(r,i){var a,s;return function(){var e=set$1(this,r),t=e.tween;if(t!==a)for(var n=0,o=(s=a=t).length;n<o;++n)if(s[n].name===i){(s=s.slice()).splice(n,1);break}e.tween=s}}function tweenFunction(i,a,s){var l,c;if("function"!=typeof s)throw new Error;return function(){var e=set$1(this,i),t=e.tween;if(t!==l){c=(l=t).slice();for(var n={name:a,value:s},o=0,r=c.length;o<r;++o)if(c[o].name===a){c[o]=n;break}o===r&&c.push(n)}e.tween=c}}function transition_tween(e,t){var n=this._id;if(e+="",arguments.length<2){for(var o,r=get$1(this.node(),n).tween,i=0,a=r.length;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((null==t?tweenRemove:tweenFunction)(n,e,t))}function tweenValue(e,t,n){var o=e._id;return e.each(function(){var e=set$1(this,o);(e.value||(e.value={}))[t]=n.apply(this,arguments)}),function(e){return get$1(e,o).value[t]}}function interpolate(e,t){var n;return("number"==typeof t?interpolateNumber:t instanceof color?interpolateRgb:(n=color(t))?(t=n,interpolateRgb):interpolateString)(e,t)}function attrRemove(e){return function(){this.removeAttribute(e)}}function attrRemoveNS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function attrConstant(t,n,o){var r,i,a=o+"";return function(){var e=this.getAttribute(t);return e===a?null:e===r?i:i=n(r=e,o)}}function attrConstantNS(t,n,o){var r,i,a=o+"";return function(){var e=this.getAttributeNS(t.space,t.local);return e===a?null:e===r?i:i=n(r=e,o)}}function attrFunction(o,r,i){var a,s,l;return function(){var e,t,n=i(this);if(null!=n)return(e=this.getAttribute(o))===(t=n+"")?null:e===a&&t===s?l:(s=t,l=r(a=e,n));this.removeAttribute(o)}}function attrFunctionNS(o,r,i){var a,s,l;return function(){var e,t,n=i(this);if(null!=n)return(e=this.getAttributeNS(o.space,o.local))===(t=n+"")?null:e===a&&t===s?l:(s=t,l=r(a=e,n));this.removeAttributeNS(o.space,o.local)}}function transition_attr(e,t){var n=namespace$6(e),o="transform"===n?interpolateTransformSvg:interpolate;return this.attrTween(e,"function"==typeof t?(n.local?attrFunctionNS:attrFunction)(n,o,tweenValue(this,"attr."+e,t)):null==t?(n.local?attrRemoveNS:attrRemove)(n):(n.local?attrConstantNS:attrConstant)(n,o,t))}function attrInterpolate(t,n){return function(e){this.setAttribute(t,n.call(this,e))}}function attrInterpolateNS(t,n){return function(e){this.setAttributeNS(t.space,t.local,n.call(this,e))}}function attrTweenNS(t,n){var o,r;function e(){var e=n.apply(this,arguments);return o=e!==r?(r=e)&&attrInterpolateNS(t,e):o}return e._value=n,e}function attrTween(t,n){var o,r;function e(){var e=n.apply(this,arguments);return o=e!==r?(r=e)&&attrInterpolate(t,e):o}return e._value=n,e}function transition_attrTween(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if("function"!=typeof t)throw new Error;var o=namespace$6(e);return this.tween(n,(o.local?attrTweenNS:attrTween)(o,t))}function delayFunction(e,t){return function(){init(this,e).delay=+t.apply(this,arguments)}}function delayConstant(e,t){return t=+t,function(){init(this,e).delay=t}}function transition_delay(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?delayFunction:delayConstant)(t,e)):get$1(this.node(),t).delay}function durationFunction(e,t){return function(){set$1(this,e).duration=+t.apply(this,arguments)}}function durationConstant(e,t){return t=+t,function(){set$1(this,e).duration=t}}function transition_duration(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?durationFunction:durationConstant)(t,e)):get$1(this.node(),t).duration}function easeConstant(e,t){if("function"!=typeof t)throw new Error;return function(){set$1(this,e).ease=t}}function transition_ease(e){var t=this._id;return arguments.length?this.each(easeConstant(t,e)):get$1(this.node(),t).ease}function easeVarying(t,n){return function(){var e=n.apply(this,arguments);if("function"!=typeof e)throw new Error;set$1(this,t).ease=e}}function transition_easeVarying(e){if("function"!=typeof e)throw new Error;return this.each(easeVarying(this._id,e))}function transition_filter(e){"function"!=typeof e&&(e=matcher(e));for(var t=this._groups,n=t.length,o=new Array(n),r=0;r<n;++r)for(var i,a=t[r],s=a.length,l=o[r]=[],c=0;c<s;++c)(i=a[c])&&e.call(i,i.__data__,c,a)&&l.push(i);return new Transition(o,this._parents,this._name,this._id)}function transition_merge(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,o=t.length,e=n.length,r=Math.min(o,e),i=new Array(o),a=0;a<r;++a)for(var s,l=t[a],c=n[a],d=l.length,u=i[a]=new Array(d),p=0;p<d;++p)(s=l[p]||c[p])&&(u[p]=s);for(;a<o;++a)i[a]=t[a];return new Transition(i,this._parents,this._name,this._id)}function start(e){return(e+"").trim().split(/^|\s+/).every(function(e){var t=e.indexOf(".");return!(e=0<=t?e.slice(0,t):e)||"start"===e})}function onFunction(n,o,r){var i,a,s=start(o)?init:set$1;return function(){var e=s(this,n),t=e.on;t!==i&&(a=(i=t).copy()).on(o,r),e.on=a}}function transition_on(e,t){var n=this._id;return arguments.length<2?get$1(this.node(),n).on.on(e):this.each(onFunction(n,e,t))}function removeFunction(n){return function(){var e,t=this.parentNode;for(e in this.__transition)if(+e!==n)return;t&&t.removeChild(this)}}function transition_remove(){return this.on("end.remove",removeFunction(this._id))}function transition_select(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=selector$1(e));for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a)for(var s,l,c=o[a],d=c.length,u=i[a]=new Array(d),p=0;p<d;++p)(s=c[p])&&(l=e.call(s,s.__data__,p,c))&&("__data__"in s&&(l.__data__=s.__data__),u[p]=l,schedule(u[p],t,n,p,u,get$1(s,n)));return new Transition(i,this._parents,t,n)}function transition_selectAll(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=selectorAll(e));for(var o=this._groups,r=o.length,i=[],a=[],s=0;s<r;++s)for(var l,c=o[s],d=c.length,u=0;u<d;++u)if(l=c[u]){for(var p,g=e.call(l,l.__data__,u,c),h=get$1(l,n),f=0,m=g.length;f<m;++f)(p=g[f])&&schedule(p,t,n,f,g,h);i.push(g),a.push(l)}return new Transition(i,a,t,n)}var Selection=selection.prototype.constructor;function transition_selection(){return new Selection(this._groups,this._parents)}function styleNull(n,o){var r,i,a;return function(){var e=styleValue(this,n),t=(this.style.removeProperty(n),styleValue(this,n));return e===t?null:e===r&&t===i?a:a=o(r=e,i=t)}}function styleRemove(e){return function(){this.style.removeProperty(e)}}function styleConstant(t,n,o){var r,i,a=o+"";return function(){var e=styleValue(this,t);return e===a?null:e===r?i:i=n(r=e,o)}}function styleFunction(o,r,i){var a,s,l;return function(){var e=styleValue(this,o),t=i(this),n=t+"";return null==t&&(this.style.removeProperty(o),n=t=styleValue(this,o)),e===n?null:e===a&&n===s?l:(s=n,l=r(a=e,t))}}function styleMaybeRemove(o,r){var i,a,s,l,c="style."+r,d="end."+c;return function(){var e=set$1(this,o),t=e.on,n=null==e.value[c]?l=l||styleRemove(r):void 0;t===i&&s===n||(a=(i=t).copy()).on(d,s=n),e.on=a}}function transition_style(e,t,n){var o="transform"==(e+="")?interpolateTransformCss:interpolate;return null==t?this.styleTween(e,styleNull(e,o)).on("end.style."+e,styleRemove(e)):"function"==typeof t?this.styleTween(e,styleFunction(e,o,tweenValue(this,"style."+e,t))).each(styleMaybeRemove(this._id,e)):this.styleTween(e,styleConstant(e,o,t),n).on("end.style."+e,null)}function styleInterpolate(t,n,o){return function(e){this.style.setProperty(t,n.call(this,e),o)}}function styleTween(t,n,o){var r,i;function e(){var e=n.apply(this,arguments);return r=e!==i?(i=e)&&styleInterpolate(t,e,o):r}return e._value=n,e}function transition_styleTween(e,t,n){var o="style."+(e+="");if(arguments.length<2)return(o=this.tween(o))&&o._value;if(null==t)return this.tween(o,null);if("function"!=typeof t)throw new Error;return this.tween(o,styleTween(e,t,null==n?"":n))}function textConstant(e){return function(){this.textContent=e}}function textFunction(t){return function(){var e=t(this);this.textContent=null==e?"":e}}function transition_text(e){return this.tween("text","function"==typeof e?textFunction(tweenValue(this,"text",e)):textConstant(null==e?"":e+""))}function textInterpolate(t){return function(e){this.textContent=t.call(this,e)}}function textTween(t){var n,o;function e(){var e=t.apply(this,arguments);return n=e!==o?(o=e)&&textInterpolate(e):n}return e._value=t,e}function transition_textTween(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;return this.tween(t,textTween(e))}function transition_transition(){for(var e=this._name,t=this._id,n=newId(),o=this._groups,r=o.length,i=0;i<r;++i)for(var a,s=o[i],l=s.length,c=0;c<l;++c)(a=s[c])&&schedule(a,e,n,c,s,{time:(a=get$1(a,t)).time+a.delay+a.duration,delay:0,duration:a.duration,ease:a.ease});return new Transition(o,this._parents,e,n)}function transition_end(){var r,i,a=this,s=a._id,l=a.size();return new Promise(function(e,t){var n={value:t},o={value:function(){0==--l&&e()}};a.each(function(){var e=set$1(this,s),t=e.on;t!==r&&((i=(r=t).copy())._.cancel.push(n),i._.interrupt.push(n),i._.end.push(o)),e.on=i}),0===l&&e()})}var id$1=0;function Transition(e,t,n,o){this._groups=e,this._parents=t,this._name=n,this._id=o}function newId(){return++id$1}var selection_prototype=selection.prototype;function cubicInOut(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}Transition.prototype={constructor:Transition,select:transition_select,selectAll:transition_selectAll,selectChild:selection_prototype.selectChild,selectChildren:selection_prototype.selectChildren,filter:transition_filter,merge:transition_merge,selection:transition_selection,transition:transition_transition,call:selection_prototype.call,nodes:selection_prototype.nodes,node:selection_prototype.node,size:selection_prototype.size,empty:selection_prototype.empty,each:selection_prototype.each,on:transition_on,attr:transition_attr,attrTween:transition_attrTween,style:transition_style,styleTween:transition_styleTween,text:transition_text,textTween:transition_textTween,remove:transition_remove,tween:transition_tween,delay:transition_delay,duration:transition_duration,ease:transition_ease,easeVarying:transition_easeVarying,end:transition_end,[Symbol.iterator]:selection_prototype[Symbol.iterator]};var defaultTiming={time:null,delay:0,duration:250,ease:cubicInOut};function inherit(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function selection_transition(e){var t,n;e=e instanceof Transition?(t=e._id,e._name):(t=newId(),(n=defaultTiming).time=now(),null==e?null:e+"");for(var o=this._groups,r=o.length,i=0;i<r;++i)for(var a,s=o[i],l=s.length,c=0;c<l;++c)(a=s[c])&&schedule(a,e,t,c,s,n||inherit(a,t));return new Transition(o,this._parents,e,t)}selection.prototype.interrupt=selection_interrupt,selection.prototype.transition=selection_transition;var constant=e=>()=>e;function ZoomEvent(e,{sourceEvent:t,target:n,transform:o,dispatch:r}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:o,enumerable:!0,configurable:!0},_:{value:r}})}function Transform(e,t,n){this.k=e,this.x=t,this.y=n}Transform.prototype={constructor:Transform,scale:function(e){return 1===e?this:new Transform(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new Transform(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var identity=new Transform(1,0,0);function nopropagation(e){e.stopImmediatePropagation()}function noevent(e){e.preventDefault(),e.stopImmediatePropagation()}function defaultFilter(e){return!(e.ctrlKey&&"wheel"!==e.type||e.button)}function defaultExtent(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function defaultTransform(){return this.__zoom||identity}function defaultWheelDelta(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function defaultTouchable(){return navigator.maxTouchPoints||"ontouchstart"in this}function defaultConstrain(e,t,n){var o=e.invertX(t[0][0])-n[0][0],r=e.invertX(t[1][0])-n[1][0],i=e.invertY(t[0][1])-n[0][1],t=e.invertY(t[1][1])-n[1][1];return e.translate(o<r?(o+r)/2:Math.min(0,o)||Math.max(0,r),i<t?(i+t)/2:Math.min(0,i)||Math.max(0,t))}function zoom(){var c,d,l,u=defaultFilter,p=defaultExtent,g=defaultConstrain,a=defaultWheelDelta,t=defaultTouchable,s=[0,1/0],h=[[-1/0,-1/0],[1/0,1/0]],f=250,m=interpolateZoom,n=dispatch("start","zoom","end"),y=500,b=150,x=0,v=10;function $(e){e.property("__zoom",defaultTransform).on("wheel.zoom",r,{passive:!1}).on("mousedown.zoom",i).on("dblclick.zoom",N).filter(t).on("touchstart.zoom",j).on("touchmove.zoom",I).on("touchend.zoom touchcancel.zoom",T).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function S(e,t){return(t=Math.max(s[0],Math.min(s[1],t)))===e.k?e:new Transform(t,e.x,e.y)}function _(e,t,n){var o=t[0]-n[0]*e.k,t=t[1]-n[1]*e.k;return o===e.x&&t===e.y?e:new Transform(e.k,o,t)}function E(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function w(e,l,c,d){e.on("start.zoom",function(){C(this,arguments).event(d).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(d).end()}).tween("zoom",function(){var e=this,t=arguments,o=C(e,t).event(d),n=p.apply(e,t),r=null==c?E(n):"function"==typeof c?c.apply(e,t):c,i=Math.max(n[1][0]-n[0][0],n[1][1]-n[0][1]),n=e.__zoom,a="function"==typeof l?l.apply(e,t):l,s=m(n.invert(r).concat(i/n.k),a.invert(r).concat(i/a.k));return function(e){var t,n;e=1===e?a:(t=s(e),new Transform(n=i/t[2],r[0]-t[0]*n,r[1]-t[1]*n)),o.zoom(null,e)}})}function C(e,t,n){return!n&&e.__zooming||new o(e,t)}function o(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=p.apply(e,t),this.taps=0}function r(e,...t){if(u.apply(this,arguments)){var n=C(this,t).event(e),o=this.__zoom,r=Math.max(s[0],Math.min(s[1],o.k*Math.pow(2,a.apply(this,arguments)))),i=pointer(e);if(n.wheel)n.mouse[0][0]===i[0]&&n.mouse[0][1]===i[1]||(n.mouse[1]=o.invert(n.mouse[0]=i)),clearTimeout(n.wheel);else{if(o.k===r)return;n.mouse=[i,o.invert(i)],interrupt(this),n.start()}noevent(e),n.wheel=setTimeout(function(){n.wheel=null,n.end()},b),n.zoom("mouse",g(_(S(o,r),n.mouse[0],n.mouse[1]),n.extent,h))}}function i(e,...t){var o,r,n,i,a,s;!l&&u.apply(this,arguments)&&(o=e.currentTarget,r=C(this,t,!0).event(e),n=select(e.view).on("mousemove.zoom",function(e){{var t,n;noevent(e),r.moved||(t=e.clientX-a,n=e.clientY-s,r.moved=x<t*t+n*n)}r.event(e).zoom("mouse",g(_(r.that.__zoom,r.mouse[0]=pointer(e,o),r.mouse[1]),r.extent,h))},!0).on("mouseup.zoom",function(e){n.on("mousemove.zoom mouseup.zoom",null),yesdrag(e.view,r.moved),noevent(e),r.event(e).end()},!0),i=pointer(e,o),a=e.clientX,s=e.clientY,dragDisable(e.view),nopropagation(e),r.mouse=[i,this.__zoom.invert(i)],interrupt(this),r.start())}function N(e,...t){var n,o,r,i;u.apply(this,arguments)&&(i=this.__zoom,n=pointer(e.changedTouches?e.changedTouches[0]:e,this),o=i.invert(n),r=i.k*(e.shiftKey?.5:2),i=g(_(S(i,r),n,o),p.apply(this,t),h),noevent(e),0<f?select(this).transition().duration(f).call(w,i,n,e):select(this).call($.transform,i,n,e))}function j(e,...t){if(u.apply(this,arguments)){var n,o,r,i,a=e.touches,s=a.length,l=C(this,t,e.changedTouches.length===s).event(e);for(nopropagation(e),o=0;o<s;++o)i=[i=pointer(r=a[o],this),this.__zoom.invert(i),r.identifier],l.touch0?l.touch1||l.touch0[2]===i[2]||(l.touch1=i,l.taps=0):(l.touch0=i,n=!0,l.taps=1+!!c);c=c&&clearTimeout(c),n&&(l.taps<2&&(d=i[0],c=setTimeout(function(){c=null},y)),interrupt(this),l.start())}}function I(e,...t){if(this.__zooming){var n,o=C(this,t).event(e),r=e.changedTouches,i=r.length;for(noevent(e),n=0;n<i;++n)u=pointer(d=r[n],this),o.touch0&&o.touch0[2]===d.identifier?o.touch0[0]=u:o.touch1&&o.touch1[2]===d.identifier&&(o.touch1[0]=u);if(d=o.that.__zoom,o.touch1)var t=o.touch0[0],e=o.touch0[1],a=o.touch1[0],s=o.touch1[1],l=(l=a[0]-t[0])*l+(l=a[1]-t[1])*l,c=(c=s[0]-e[0])*c+(c=s[1]-e[1])*c,d=S(d,Math.sqrt(l/c)),u=[(t[0]+a[0])/2,(t[1]+a[1])/2],l=[(e[0]+s[0])/2,(e[1]+s[1])/2];else{if(!o.touch0)return;u=o.touch0[0],l=o.touch0[1]}o.zoom("touch",g(_(d,u,l),o.extent,h))}}function T(e,...t){if(this.__zooming){var n,o,r,i=C(this,t).event(e),a=e.changedTouches,s=a.length;for(nopropagation(e),l&&clearTimeout(l),l=setTimeout(function(){l=null},y),n=0;n<s;++n)r=a[n],i.touch0&&i.touch0[2]===r.identifier?delete i.touch0:i.touch1&&i.touch1[2]===r.identifier&&delete i.touch1;i.touch1&&!i.touch0&&(i.touch0=i.touch1,delete i.touch1),i.touch0?i.touch0[1]=this.__zoom.invert(i.touch0[0]):(i.end(),2===i.taps&&(r=pointer(r,this),Math.hypot(d[0]-r[0],d[1]-r[1])<v)&&(o=select(this).on("dblclick.zoom"))&&o.apply(this,arguments))}}return $.transform=function(e,t,n,o){var r=e.selection?e.selection():e;r.property("__zoom",defaultTransform),e!==r?w(e,t,n,o):r.interrupt().each(function(){C(this,arguments).event(o).start().zoom(null,"function"==typeof t?t.apply(this,arguments):t).end()})},$.scaleBy=function(e,t,n,o){$.scaleTo(e,function(){return this.__zoom.k*("function"==typeof t?t.apply(this,arguments):t)},n,o)},$.scaleTo=function(e,i,a,t){$.transform(e,function(){var e=p.apply(this,arguments),t=this.__zoom,n=null==a?E(e):"function"==typeof a?a.apply(this,arguments):a,o=t.invert(n),r="function"==typeof i?i.apply(this,arguments):i;return g(_(S(t,r),n,o),e,h)},a,t)},$.translateBy=function(e,t,n,o){$.transform(e,function(){return g(this.__zoom.translate("function"==typeof t?t.apply(this,arguments):t,"function"==typeof n?n.apply(this,arguments):n),p.apply(this,arguments),h)},null,o)},$.translateTo=function(e,o,r,i,t){$.transform(e,function(){var e=p.apply(this,arguments),t=this.__zoom,n=null==i?E(e):"function"==typeof i?i.apply(this,arguments):i;return g(identity.translate(n[0],n[1]).scale(t.k).translate("function"==typeof o?-o.apply(this,arguments):-o,"function"==typeof r?-r.apply(this,arguments):-r),e,h)},i,t)},o.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return 1==++this.active&&(this.that.__zooming=this).emit("start"),this},zoom:function(e,t){return this.mouse&&"mouse"!==e&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&"touch"!==e&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&"touch"!==e&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(e){var t=select(this.that).datum();n.call(e,this.that,new ZoomEvent(e,{sourceEvent:this.sourceEvent,target:$,type:e,transform:this.that.__zoom,dispatch:n}),t)}},$.wheelDelta=function(e){return arguments.length?(a="function"==typeof e?e:constant(+e),$):a},$.filter=function(e){return arguments.length?(u="function"==typeof e?e:constant(!!e),$):u},$.touchable=function(e){return arguments.length?(t="function"==typeof e?e:constant(!!e),$):t},$.extent=function(e){return arguments.length?(p="function"==typeof e?e:constant([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),$):p},$.scaleExtent=function(e){return arguments.length?(s[0]=+e[0],s[1]=+e[1],$):[s[0],s[1]]},$.translateExtent=function(e){return arguments.length?(h[0][0]=+e[0][0],h[1][0]=+e[1][0],h[0][1]=+e[0][1],h[1][1]=+e[1][1],$):[[h[0][0],h[0][1]],[h[1][0],h[1][1]]]},$.constrain=function(e){return arguments.length?(g=e,$):g},$.duration=function(e){return arguments.length?(f=+e,$):f},$.interpolate=function(e){return arguments.length?(m=e,$):m},$.on=function(){var e=n.on.apply(n,arguments);return e===n?$:e},$.clickDistance=function(e){return arguments.length?(x=(e=+e)*e,$):Math.sqrt(x)},$.tapDistance=function(e){return arguments.length?(v=+e,$):v},$}Transform.prototype;const StoreContext=react.exports.createContext(null),Provider$1=StoreContext.Provider,errorMessages={"001":()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001","002":()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.","003":e=>`Node type "${e}" not found. Using fallback type "default".`,"004":()=>"The React Flow parent container needs a width and a height to render the graph.","005":()=>"Only child nodes can use a parent extent.","006":()=>"Can't create edge. An edge needs a source and a target.","007":e=>`The old edge with id=${e} does not exist.`,"009":e=>`Marker type "${e}" doesn't exist.`,"008":(e,t)=>`Couldn't create edge for ${e?"target":"source"} handle id: "${e?t.targetHandle:t.sourceHandle}", edge id: ${t.id}.`,"010":()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.","011":e=>`Edge type "${e}" not found. Using fallback type "default".`},zustandErrorMessage=errorMessages["001"]();function useStore(e,t){var n=react.exports.useContext(StoreContext);if(null===n)throw new Error(zustandErrorMessage);return useStore$1(n,e,t)}const useStoreApi=()=>{const e=react.exports.useContext(StoreContext);if(null===e)throw new Error(zustandErrorMessage);return react.exports.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe,destroy:e.destroy}),[e])},selector$g=e=>e.userSelectionActive?"none":"all";function Panel({position:e,children:t,className:n,style:o,...r}){var i=useStore(selector$g),e=(""+e).split("-");return jsxRuntime.exports.jsx("div",{className:cc(["react-flow__panel",n,...e]),style:{...o,pointerEvents:i},...r,children:t})}function Attribution({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:jsxRuntime.exports.jsx(Panel,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:jsxRuntime.exports.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const EdgeText=({x:e,y:t,label:n,labelStyle:o={},labelShowBg:r=!0,labelBgStyle:i={},labelBgPadding:a=[2,4],labelBgBorderRadius:s=2,children:l,className:c,...d})=>{const u=react.exports.useRef(null),[p,g]=react.exports.useState({x:0,y:0,width:0,height:0});c=cc(["react-flow__edge-textwrapper",c]);return react.exports.useEffect(()=>{var e;u.current&&(e=u.current.getBBox(),g({x:e.x,y:e.y,width:e.width,height:e.height}))},[n]),void 0!==n&&n?jsxRuntime.exports.jsxs("g",{transform:`translate(${e-p.width/2} ${t-p.height/2})`,className:c,visibility:p.width?"visible":"hidden",...d,children:[r&&jsxRuntime.exports.jsx("rect",{width:p.width+2*a[0],x:-a[0],y:-a[1],height:p.height+2*a[1],className:"react-flow__edge-textbg",style:i,rx:s,ry:s}),jsxRuntime.exports.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:u,style:o,children:n}),l]}):null};var ConnectionMode,PanOnScrollMode,SelectionMode,ConnectionLineType,MarkerType,Position,EdgeText$1=react.exports.memo(EdgeText);const getDimensions=e=>({width:e.offsetWidth,height:e.offsetHeight}),clamp=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),clampPosition=(e={x:0,y:0},t)=>({x:clamp(e.x,t[0][0],t[1][0]),y:clamp(e.y,t[0][1],t[1][1])}),calcAutoPanVelocity=(e,t,n)=>e<t?clamp(Math.abs(e-t),1,50)/50:n<e?-clamp(Math.abs(e-n),1,50)/50:0,calcAutoPan=(e,t)=>{return[20*calcAutoPanVelocity(e.x,35,t.width-35),20*calcAutoPanVelocity(e.y,35,t.height-35)]},getHostForElement=e=>e.getRootNode?.()||window?.document,getBoundsOfBoxes=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),rectToBox=({x:e,y:t,width:n,height:o})=>({x:e,y:t,x2:e+n,y2:t+o}),boxToRect=({x:e,y:t,x2:n,y2:o})=>({x:e,y:t,width:n-e,height:o-t}),nodeToRect=e=>({...e.positionAbsolute||{x:0,y:0},width:e.width||0,height:e.height||0}),getOverlappingArea=(e,t)=>{var n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),e=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*e)},isRectObject=e=>isNumeric(e.width)&&isNumeric(e.height)&&isNumeric(e.x)&&isNumeric(e.y),isNumeric=e=>!isNaN(e)&&isFinite(e),internalsSymbol=Symbol.for("internals"),elementSelectionKeys=["Enter"," ","Escape"],devWarn=(e,t)=>{},isReactKeyboardEvent=e=>"nativeEvent"in e;function isInputDOMNode(e){var t=(isReactKeyboardEvent(e)?e.nativeEvent:e).composedPath?.()?.[0]||e.target,n=["INPUT","SELECT","TEXTAREA"].includes(t?.nodeName)||t?.hasAttribute("contenteditable"),e=e.ctrlKey||e.metaKey||e.shiftKey;return n&&!e||!!t?.closest(".nokey")}const isMouseEvent=e=>"clientX"in e,getEventPosition=(e,t)=>{var n=isMouseEvent(e),o=(n?e:e.touches?.[0]).clientX,n=(n?e:e.touches?.[0]).clientY;return{x:o-(t?.left??0),y:n-(t?.top??0)}},BaseEdge=({path:e,labelX:t,labelY:n,label:o,labelStyle:r,labelShowBg:i,labelBgStyle:a,labelBgPadding:s,labelBgBorderRadius:l,style:c,markerEnd:d,markerStart:u,interactionWidth:p=20})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx("path",{style:c,d:e,fill:"none",className:"react-flow__edge-path",markerEnd:d,markerStart:u}),p&&jsxRuntime.exports.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:p,className:"react-flow__edge-interaction"}),o&&isNumeric(t)&&isNumeric(n)?jsxRuntime.exports.jsx(EdgeText$1,{x:t,y:n,label:o,labelStyle:r,labelShowBg:i,labelBgStyle:a,labelBgPadding:s,labelBgBorderRadius:l}):null]});function getMouseHandler$1(n,o,r){return void 0===r?r:e=>{var t=o().edges.find(e=>e.id===n);t&&r(e,{...t})}}function getEdgeCenter({sourceX:e,sourceY:t,targetX:n,targetY:o}){var r=Math.abs(n-e)/2,e=n<e?n+r:n-r,n=Math.abs(o-t)/2;return[e,o<t?o+n:o-n,r,n]}function getBezierEdgeCenter({sourceX:e,sourceY:t,targetX:n,targetY:o,sourceControlX:r,sourceControlY:i,targetControlX:a,targetControlY:s}){r=.125*e+.375*r+.375*a+.125*n,a=.125*t+.375*i+.375*s+.125*o;return[r,a,Math.abs(r-e),Math.abs(a-t)]}function getControl({pos:e,x1:t,y1:n,x2:o,y2:r}){return e===Position.Left||e===Position.Right?[.5*(t+o),n]:[t,.5*(n+r)]}function getSimpleBezierPath({sourceX:e,sourceY:t,sourcePosition:n=Position.Bottom,targetX:o,targetY:r,targetPosition:i=Position.Top}){var[n,a]=getControl({pos:n,x1:e,y1:t,x2:o,y2:r}),[i,s]=getControl({pos:i,x1:o,y1:r,x2:e,y2:t}),[l,c,d,u]=getBezierEdgeCenter({sourceX:e,sourceY:t,targetX:o,targetY:r,sourceControlX:n,sourceControlY:a,targetControlX:i,targetControlY:s});return[`M${e},${t} C${n},${a} ${i},${s} ${o},`+r,l,c,d,u]}BaseEdge.displayName="BaseEdge",function(e){e.Strict="strict",e.Loose="loose"}(ConnectionMode=ConnectionMode||{}),function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"}(PanOnScrollMode=PanOnScrollMode||{}),function(e){e.Partial="partial",e.Full="full"}(SelectionMode=SelectionMode||{}),function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"}(ConnectionLineType=ConnectionLineType||{}),function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"}(MarkerType=MarkerType||{}),function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"}(Position=Position||{});const SimpleBezierEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,sourcePosition:r=Position.Bottom,targetPosition:i=Position.Top,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,interactionWidth:f})=>{var[e,t,r]=getSimpleBezierPath({sourceX:e,sourceY:t,sourcePosition:r,targetX:n,targetY:o,targetPosition:i});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:r,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,interactionWidth:f})}),handleDirections=(SimpleBezierEdge.displayName="SimpleBezierEdge",{[Position.Left]:{x:-1,y:0},[Position.Right]:{x:1,y:0},[Position.Top]:{x:0,y:-1},[Position.Bottom]:{x:0,y:1}}),getDirection=({source:e,sourcePosition:t=Position.Bottom,target:n})=>t===Position.Left||t===Position.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},distance=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function getPoints({source:e,sourcePosition:t=Position.Bottom,target:n,targetPosition:o=Position.Top,center:r,offset:i}){var a=handleDirections[t],s=handleDirections[o],l={x:e.x+a.x*i,y:e.y+a.y*i},i={x:n.x+s.x*i,y:n.y+s.y*i},c=getDirection({source:l,sourcePosition:t,target:i}),d=0!==c.x?"x":"y",c=c[d];let u=[],p,g;var[h,f,m,y]=getEdgeCenter({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y}),s=(a[d]*s[d]==-1?(p=r.x||h,g=r.y||f,h=[{x:p,y:l.y},{x:p,y:i.y}],r=[{x:l.x,y:g},{x:i.x,y:g}],u=a[d]===c?"x"==d?h:r:"x"==d?r:h):(f=[{x:l.x,y:i.y}],r=[{x:i.x,y:l.y}],u="x"==d?a.x===c?r:f:a.y===c?f:r,t!==o&&(c=a[d]===s[h="x"==d?"y":"x"],t=i[h]<l[h],o=l[h]<i[h],1===a[d]&&(!c&&t||c&&o)||1!==a[d]&&(!c&&o||c&&t))&&(u="x"==d?f:r),p=u[0].x,g=u[0].y),[e,l,...u,i,n]);return[s,p,g,m,y]}function getBend(e,t,n,o){var o=Math.min(distance(e,t)/2,distance(t,n)/2,o),{x:t,y:r}=t;if(e.x===t&&t===n.x||e.y===r&&r===n.y)return`L${t} `+r;if(e.y===r){const i=e.x<n.x?-1:1,a=e.y<n.y?1:-1;return`L ${t+o*i},${r}Q ${t},${r} ${t},`+(r+o*a)}const i=e.x<n.x?1:-1,a=e.y<n.y?-1:1;return`L ${t},${r+o*a}Q ${t},${r} ${t+o*i},`+r}function getSmoothStepPath({sourceX:e,sourceY:t,sourcePosition:n=Position.Bottom,targetX:o,targetY:r,targetPosition:i=Position.Top,borderRadius:a=5,centerX:s,centerY:l,offset:c=20}){const[d,u,p,g,h]=getPoints({source:{x:e,y:t},sourcePosition:n,target:{x:o,y:r},targetPosition:i,center:{x:s,y:l},offset:c});return[d.reduce((e,t,n)=>{let o="";return e+=o=0<n&&n<d.length-1?getBend(d[n-1],t,d[n+1],a):(0===n?"M":"L")+t.x+" "+t.y},""),u,p,g,h]}const SmoothStepEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,sourcePosition:u=Position.Bottom,targetPosition:p=Position.Top,markerEnd:g,markerStart:h,pathOptions:f,interactionWidth:m})=>{var[e,t,u]=getSmoothStepPath({sourceX:e,sourceY:t,sourcePosition:u,targetX:n,targetY:o,targetPosition:p,borderRadius:f?.borderRadius,offset:f?.offset});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:u,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:g,markerStart:h,interactionWidth:m})}),StepEdge=(SmoothStepEdge.displayName="SmoothStepEdge",react.exports.memo(e=>jsxRuntime.exports.jsx(SmoothStepEdge,{...e,pathOptions:react.exports.useMemo(()=>({borderRadius:0,offset:e.pathOptions?.offset}),[e.pathOptions?.offset])})));function getStraightPath({sourceX:e,sourceY:t,targetX:n,targetY:o}){var[r,i,a,s]=getEdgeCenter({sourceX:e,sourceY:t,targetX:n,targetY:o});return[`M ${e},${t}L ${n},`+o,r,i,a,s]}StepEdge.displayName="StepEdge";const StraightEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:u,markerStart:p,interactionWidth:g})=>{var[e,t,n]=getStraightPath({sourceX:e,sourceY:t,targetX:n,targetY:o});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:u,markerStart:p,interactionWidth:g})});function calculateControlOffset(e,t){return 0<=e?.5*e:25*t*Math.sqrt(-e)}function getControlWithCurvature({pos:e,x1:t,y1:n,x2:o,y2:r,c:i}){switch(e){case Position.Left:return[t-calculateControlOffset(t-o,i),n];case Position.Right:return[t+calculateControlOffset(o-t,i),n];case Position.Top:return[t,n-calculateControlOffset(n-r,i)];case Position.Bottom:return[t,n+calculateControlOffset(r-n,i)]}}function getBezierPath({sourceX:e,sourceY:t,sourcePosition:n=Position.Bottom,targetX:o,targetY:r,targetPosition:i=Position.Top,curvature:a=.25}){var[n,s]=getControlWithCurvature({pos:n,x1:e,y1:t,x2:o,y2:r,c:a}),[i,a]=getControlWithCurvature({pos:i,x1:o,y1:r,x2:e,y2:t,c:a}),[l,c,d,u]=getBezierEdgeCenter({sourceX:e,sourceY:t,targetX:o,targetY:r,sourceControlX:n,sourceControlY:s,targetControlX:i,targetControlY:a});return[`M${e},${t} C${n},${s} ${i},${a} ${o},`+r,l,c,d,u]}StraightEdge.displayName="StraightEdge";const BezierEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,sourcePosition:r=Position.Bottom,targetPosition:i=Position.Top,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,pathOptions:f,interactionWidth:m})=>{var[e,t,r]=getBezierPath({sourceX:e,sourceY:t,sourcePosition:r,targetX:n,targetY:o,targetPosition:i,curvature:f?.curvature});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:r,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,interactionWidth:m})}),NodeIdContext=(BezierEdge.displayName="BezierEdge",react.exports.createContext(null)),Provider=NodeIdContext.Provider,useNodeId=(NodeIdContext.Consumer,()=>{return react.exports.useContext(NodeIdContext)}),isEdge=e=>"id"in e&&"source"in e&&"target"in e,getEdgeId=({source:e,sourceHandle:t,target:n,targetHandle:o})=>`reactflow__edge-${e}${t||""}-`+n+(o||""),getMarkerId=(t,e)=>{return void 0===t?"":"string"==typeof t?t:(e?e+"__":"")+Object.keys(t).sort().map(e=>e+"="+t[e]).join("&")},connectionExists=(t,e)=>e.some(e=>!(e.source!==t.source||e.target!==t.target||e.sourceHandle!==t.sourceHandle&&(e.sourceHandle||t.sourceHandle)||e.targetHandle!==t.targetHandle&&(e.targetHandle||t.targetHandle))),addEdge=(e,t)=>{if(!e.source||!e.target)return t;let n;return n=isEdge(e)?{...e}:{...e,id:getEdgeId(e)},connectionExists(n,t)?t:t.concat(n)},pointToRendererPoint=({x:e,y:t},[n,o,r],i,[a,s])=>{e={x:(e-n)/r,y:(t-o)/r};return i?{x:a*Math.round(e.x/a),y:s*Math.round(e.y/s)}:e},rendererPointToPoint=({x:e,y:t},[n,o,r])=>({x:e*r+n,y:t*r+o}),getNodePositionWithOrigin=(e,t=[0,0])=>{var n,o;return e?(n=(e.width??0)*t[0],t=(e.height??0)*t[1],{...o={x:e.position.x-n,y:e.position.y-t},positionAbsolute:e.positionAbsolute?{x:e.positionAbsolute.x-n,y:e.positionAbsolute.y-t}:o}):{x:0,y:0,positionAbsolute:{x:0,y:0}}},getRectOfNodes=(e,r=[0,0])=>{return 0===e.length?{x:0,y:0,width:0,height:0}:(e=e.reduce((e,t)=>{var{x:n,y:o}=getNodePositionWithOrigin(t,r).positionAbsolute;return getBoundsOfBoxes(e,rectToBox({x:n,y:o,width:t.width||0,height:t.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0}),boxToRect(e))},getNodesInside=(e,t,[n,o,r]=[0,0,1],i=!1,a=!1,s=[0,0])=>{const l={x:(t.x-n)/r,y:(t.y-o)/r,width:t.width/r,height:t.height/r},c=[];return e.forEach(e=>{var{width:t,height:n,selectable:o=!0,hidden:r=!1}=e;if(a&&!o||r)return!1;o=getNodePositionWithOrigin(e,s).positionAbsolute,r={x:o.x,y:o.y,width:t||0,height:n||0},o=getOverlappingArea(l,r);(void 0===t||void 0===n||null===t||null===n||i&&0<o||(t||0)*(n||0)<=o||e.dragging)&&c.push(e)}),c},getConnectedEdges=(e,t)=>{const n=e.map(e=>e.id);return t.filter(e=>n.includes(e.source)||n.includes(e.target))},getTransformForBounds=(e,t,n,o,r,i=.1)=>{var a=t/(e.width*(1+i)),i=n/(e.height*(1+i)),a=Math.min(a,i),i=clamp(a,o,r);return[t/2-(e.x+e.width/2)*i,n/2-(e.y+e.height/2)*i,i]},getD3Transition=(e,t=0)=>e.transition().duration(t);function getHandles(n,e,o,r){return(e[o]||[]).reduce((e,t)=>(`${n.id}-${t.id}-`+o!==r&&e.push({id:t.id||null,type:o,nodeId:n.id,x:(n.positionAbsolute?.x??0)+t.x+t.width/2,y:(n.positionAbsolute?.y??0)+t.y+t.height/2}),e),[])}function getClosestHandle(n,o,e){let r=null,i=1/0;return e.forEach(e=>{var t=Math.sqrt(Math.pow(e.x-n.x,2)+Math.pow(e.y-n.y,2));t<=o&&t<i&&(i=t,r=e)}),r}const nullConnection={source:null,target:null,sourceHandle:null,targetHandle:null};function isValidHandle(e,t,n,o,r,i,a,s){var l,i="target"===i,t=s.querySelector(`.react-flow__handle[data-id="${t?.nodeId}-${t?.id}-${t?.type}"]`),{x:e,y:c}=getEventPosition(e),s=s.elementFromPoint(e,c),e=s?.classList.contains("react-flow__handle")?s:t,c={handleDomNode:e,isValid:!1,connection:nullConnection};return e&&(s=getHandleType(void 0,e),t=e.getAttribute("data-nodeid"),e=e.getAttribute("data-handleid"),c.connection=l={source:i?t:o,sourceHandle:i?e:r,target:i?o:t,targetHandle:i?r:e},n===ConnectionMode.Strict?i&&"source"===s||!i&&"target"===s:t!==o||e!==r)&&(c.isValid=a(l)),c}function getHandleLookup({nodes:e,nodeId:i,handleId:a,handleType:s}){return e.reduce((n,o)=>{if(o[internalsSymbol]){var r=o[internalsSymbol]["handleBounds"];let e=[],t=[];r&&(e=getHandles(o,r,"source",i+`-${a}-`+s),t=getHandles(o,r,"target",i+`-${a}-`+s)),n.push(...e,...t)}return n},[])}function getHandleType(e,t){return e||(t?.classList.contains("target")?"target":t?.classList.contains("source")?"source":null)}function resetRecentHandle(e){e?.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function getConnectionStatus(e,t){let n=null;return t?n="valid":e&&!t&&(n="invalid"),n}function handlePointerDown({event:e,handleId:l,nodeId:c,onConnect:t,isTarget:d,getState:u,setState:p,isValidConnection:g,edgeUpdaterType:h,onEdgeUpdateEnd:f}){const m=getHostForElement(e.target),{connectionMode:y,domNode:n,autoPanOnConnect:b,connectionRadius:x,onConnectStart:v,panBy:$,getNodes:S,cancelConnection:_}=u();let E=0,w;var{x:o,y:C}=getEventPosition(e),o=m?.elementFromPoint(o,C),C=getHandleType(h,o);const N=n?.getBoundingClientRect();if(N&&C){let n,o=getEventPosition(e,N),r=!1,i=null,a=!1,s=null;const T=getHandleLookup({nodes:S(),nodeId:c,handleId:l,handleType:C}),O=()=>{var e,t;b&&([e,t]=calcAutoPan(o,N),$({x:e,y:t}),E=requestAnimationFrame(O))};function j(e){var t=u()["transform"],e=(o=getEventPosition(e,N),w=getClosestHandle(pointToRendererPoint(o,t,!1,[1,1]),x,T),r||(O(),r=!0),isValidHandle(e,w,y,c,l,d?"target":"source",g,m));if(s=e.handleDomNode,i=e.connection,a=e.isValid,p({connectionPosition:w&&a?rendererPointToPoint({x:w.x,y:w.y},t):o,connectionStatus:getConnectionStatus(!!w,a)}),!w&&!a&&!s)return resetRecentHandle(n);i.source!==i.target&&s&&(resetRecentHandle(n),(n=s).classList.add("connecting","react-flow__handle-connecting"),s.classList.toggle("valid",a),s.classList.toggle("react-flow__handle-valid",a))}function I(e){(w||s)&&i&&a&&t?.(i),u().onConnectEnd?.(e),h&&f?.(e),resetRecentHandle(n),_(),cancelAnimationFrame(E),r=!1,a=!1,i=null,s=null,m.removeEventListener("mousemove",j),m.removeEventListener("mouseup",I),m.removeEventListener("touchmove",j),m.removeEventListener("touchend",I)}p({connectionPosition:o,connectionNodeId:c,connectionHandleId:l,connectionHandleType:C,connectionStatus:null}),v?.(e,{nodeId:c,handleId:l,handleType:C}),m.addEventListener("mousemove",j),m.addEventListener("mouseup",I),m.addEventListener("touchmove",j),m.addEventListener("touchend",I)}}const alwaysValid=()=>!0,selector$f=e=>({connectionStartHandle:e.connectionStartHandle,connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName}),Handle=react.exports.forwardRef(({type:i="source",position:e=Position.Top,isValidConnection:a=alwaysValid,isConnectable:t=!0,id:n,onConnect:r,children:o,className:s,onMouseDown:l,onTouchStart:c,...d},u)=>{const p=useStoreApi(),g=useNodeId();if(!g)return p.getState().onError?.("010",errorMessages["010"]()),null;const{connectionStartHandle:h,connectOnClick:f,noPanClassName:m}=useStore(selector$f,shallow),y=n||null,b="target"===i,x=e=>{var{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:o}=p.getState(),t={...t,...e};o&&(e=p.getState()["edges"],p.setState({edges:addEdge(t,e)})),n?.(t),r?.(t)};n=e=>{var t=isMouseEvent(e);(t&&0===e.button||!t)&&handlePointerDown({event:e,handleId:y,nodeId:g,onConnect:x,isTarget:b,getState:p.getState,setState:p.setState,isValidConnection:a}),(t?l:c)?.(e)};return jsxRuntime.exports.jsx("div",{"data-handleid":y,"data-nodeid":g,"data-handlepos":e,"data-id":`${g}-${y}-`+i,className:cc(["react-flow__handle","react-flow__handle-"+e,"nodrag",m,s,{source:!b,target:b,connectable:t,connecting:h?.nodeId===g&&h?.handleId===y&&h?.type===i}]),onMouseDown:n,onTouchStart:n,onClick:f?e=>{var t,{onClickConnectStart:n,onClickConnectEnd:o,connectionMode:r}=p.getState();h?(t=getHostForElement(e.target),{connection:r,isValid:t}=isValidHandle(e,{nodeId:g,id:y,type:i},r,h.nodeId,h.handleId||null,h.type,a,t),t&&x(r),o?.(e),p.setState({connectionStartHandle:null})):(n?.(e,{nodeId:g,handleId:y,handleType:i}),p.setState({connectionStartHandle:{nodeId:g,type:i,handleId:y}}))}:void 0,ref:u,...d,children:o})});Handle.displayName="Handle";var Handle$1=react.exports.memo(Handle);const DefaultNode=({data:e,isConnectable:t,targetPosition:n=Position.Top,sourcePosition:o=Position.Bottom})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Handle$1,{type:"target",position:n,isConnectable:t}),e?.label,jsxRuntime.exports.jsx(Handle$1,{type:"source",position:o,isConnectable:t})]});DefaultNode.displayName="DefaultNode";var DefaultNode$1=react.exports.memo(DefaultNode);const InputNode=({data:e,isConnectable:t,sourcePosition:n=Position.Bottom})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[e?.label,jsxRuntime.exports.jsx(Handle$1,{type:"source",position:n,isConnectable:t})]});InputNode.displayName="InputNode";var InputNode$1=react.exports.memo(InputNode);const OutputNode=({data:e,isConnectable:t,targetPosition:n=Position.Top})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Handle$1,{type:"target",position:n,isConnectable:t}),e?.label]});OutputNode.displayName="OutputNode";var OutputNode$1=react.exports.memo(OutputNode);const GroupNode=()=>null,selector$e=(GroupNode.displayName="GroupNode",e=>({selectedNodes:e.getNodes().filter(e=>e.selected),selectedEdges:e.edges.filter(e=>e.selected)})),selectId=e=>e.id;function areEqual(e,t){return shallow(e.selectedNodes.map(selectId),t.selectedNodes.map(selectId))&&shallow(e.selectedEdges.map(selectId),t.selectedEdges.map(selectId))}const SelectionListener=react.exports.memo(({onSelectionChange:t})=>{const n=useStoreApi(),{selectedNodes:o,selectedEdges:r}=useStore(selector$e,areEqual);return react.exports.useEffect(()=>{var e={nodes:o,edges:r};t?.(e),n.getState().onSelectionChange?.(e)},[o,r,t]),null}),changeSelector=(SelectionListener.displayName="SelectionListener",e=>!!e.onSelectionChange);function Wrapper$1({onSelectionChange:e}){var t=useStore(changeSelector);return e||t?jsxRuntime.exports.jsx(SelectionListener,{onSelectionChange:e}):null}const selector$d=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset});function useStoreUpdater(e,t){react.exports.useEffect(()=>{void 0!==e&&t(e)},[e])}function useDirectStoreUpdater(e,t,n){react.exports.useEffect(()=>{void 0!==t&&n({[e]:t})},[t])}const StoreUpdater=({nodes:e,edges:t,defaultNodes:n,defaultEdges:o,onConnect:r,onConnectStart:i,onConnectEnd:a,onClickConnectStart:s,onClickConnectEnd:l,nodesDraggable:c,nodesConnectable:d,nodesFocusable:u,edgesFocusable:p,elevateNodesOnSelect:g,minZoom:h,maxZoom:f,nodeExtent:m,onNodesChange:y,onEdgesChange:b,elementsSelectable:x,connectionMode:v,snapGrid:$,snapToGrid:S,translateExtent:_,connectOnClick:E,defaultEdgeOptions:w,fitView:C,fitViewOptions:N,onNodesDelete:j,onEdgesDelete:I,onNodeDrag:T,onNodeDragStart:O,onNodeDragStop:R,onSelectionDrag:P,onSelectionDragStart:A,onSelectionDragStop:k,noPanClassName:D,nodeOrigin:L,rfId:B,autoPanOnConnect:F,autoPanOnNodeDrag:z,onError:V,connectionRadius:G})=>{const{setNodes:H,setEdges:U,setDefaultNodesAndEdges:K,setMinZoom:W,setMaxZoom:Y,setTranslateExtent:X,setNodeExtent:q,reset:Z}=useStore(selector$d,shallow);var M=useStoreApi();return react.exports.useEffect(()=>{var e=o?.map(e=>({...e,...w}));return K(n,e),()=>{Z()}},[]),useDirectStoreUpdater("defaultEdgeOptions",w,M.setState),useDirectStoreUpdater("connectionMode",v,M.setState),useDirectStoreUpdater("onConnect",r,M.setState),useDirectStoreUpdater("onConnectStart",i,M.setState),useDirectStoreUpdater("onConnectEnd",a,M.setState),useDirectStoreUpdater("onClickConnectStart",s,M.setState),useDirectStoreUpdater("onClickConnectEnd",l,M.setState),useDirectStoreUpdater("nodesDraggable",c,M.setState),useDirectStoreUpdater("nodesConnectable",d,M.setState),useDirectStoreUpdater("nodesFocusable",u,M.setState),useDirectStoreUpdater("edgesFocusable",p,M.setState),useDirectStoreUpdater("elementsSelectable",x,M.setState),useDirectStoreUpdater("elevateNodesOnSelect",g,M.setState),useDirectStoreUpdater("snapToGrid",S,M.setState),useDirectStoreUpdater("snapGrid",$,M.setState),useDirectStoreUpdater("onNodesChange",y,M.setState),useDirectStoreUpdater("onEdgesChange",b,M.setState),useDirectStoreUpdater("connectOnClick",E,M.setState),useDirectStoreUpdater("fitViewOnInit",C,M.setState),useDirectStoreUpdater("fitViewOnInitOptions",N,M.setState),useDirectStoreUpdater("onNodesDelete",j,M.setState),useDirectStoreUpdater("onEdgesDelete",I,M.setState),useDirectStoreUpdater("onNodeDrag",T,M.setState),useDirectStoreUpdater("onNodeDragStart",O,M.setState),useDirectStoreUpdater("onNodeDragStop",R,M.setState),useDirectStoreUpdater("onSelectionDrag",P,M.setState),useDirectStoreUpdater("onSelectionDragStart",A,M.setState),useDirectStoreUpdater("onSelectionDragStop",k,M.setState),useDirectStoreUpdater("noPanClassName",D,M.setState),useDirectStoreUpdater("nodeOrigin",L,M.setState),useDirectStoreUpdater("rfId",B,M.setState),useDirectStoreUpdater("autoPanOnConnect",F,M.setState),useDirectStoreUpdater("autoPanOnNodeDrag",z,M.setState),useDirectStoreUpdater("onError",V,M.setState),useDirectStoreUpdater("connectionRadius",G,M.setState),useStoreUpdater(e,H),useStoreUpdater(t,U),useStoreUpdater(h,W),useStoreUpdater(f,Y),useStoreUpdater(_,X),useStoreUpdater(m,q),null},style={display:"none"},ariaLiveStyle={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},ARIA_NODE_DESC_KEY="react-flow__node-desc",ARIA_EDGE_DESC_KEY="react-flow__edge-desc",ARIA_LIVE_MESSAGE="react-flow__aria-live",selector$c=e=>e.ariaLiveMessage;function AriaLiveMessage({rfId:e}){var t=useStore(selector$c);return jsxRuntime.exports.jsx("div",{id:ARIA_LIVE_MESSAGE+"-"+e,"aria-live":"assertive","aria-atomic":"true",style:ariaLiveStyle,children:t})}function A11yDescriptions({rfId:e,disableKeyboardA11y:t}){return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsxs("div",{id:ARIA_NODE_DESC_KEY+"-"+e,style:style,children:["Press enter or space to select a node.",!t&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "]}),jsxRuntime.exports.jsx("div",{id:ARIA_EDGE_DESC_KEY+"-"+e,style:style,children:"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."}),!t&&jsxRuntime.exports.jsx(AriaLiveMessage,{rfId:e})]})}const shiftX=(e,t,n)=>n===Position.Left?e-t:n===Position.Right?e+t:e,shiftY=(e,t,n)=>n===Position.Top?e-t:n===Position.Bottom?e+t:e,EdgeUpdaterClassName="react-flow__edgeupdater",EdgeAnchor=({position:e,centerX:t,centerY:n,radius:o=10,onMouseDown:r,onMouseEnter:i,onMouseOut:a,type:s})=>jsxRuntime.exports.jsx("circle",{onMouseDown:r,onMouseEnter:i,onMouseOut:a,className:cc([EdgeUpdaterClassName,EdgeUpdaterClassName+"-"+s]),cx:shiftX(t,o,e),cy:shiftY(n,o,e),r:o,stroke:"transparent",fill:"transparent"});var wrapEdge=J=>{var e=({id:a,className:e,type:t,data:k,onClick:o,onEdgeDoubleClick:n,selected:r,animated:i,label:D,labelStyle:L,labelShowBg:B,labelBgStyle:F,labelBgPadding:z,labelBgBorderRadius:V,style:G,source:s,target:l,sourceX:c,sourceY:d,targetX:u,targetY:p,sourcePosition:g,targetPosition:h,elementsSelectable:f,hidden:m,sourceHandleId:y,targetHandleId:b,onContextMenu:x,onMouseEnter:v,onMouseMove:$,onMouseLeave:S,edgeUpdaterRadius:_,onEdgeUpdate:E,onEdgeUpdateStart:H,onEdgeUpdateEnd:U,markerEnd:w,markerStart:C,rfId:N,ariaLabel:j,isFocusable:I,pathOptions:K,interactionWidth:W})=>{const T=react.exports.useRef(null),[Y,O]=react.exports.useState(!1),[X,R]=react.exports.useState(!1),P=useStoreApi();var q=react.exports.useMemo(()=>`url(#${getMarkerId(C,N)})`,[C,N]),Z=react.exports.useMemo(()=>`url(#${getMarkerId(w,N)})`,[w,N]);if(m)return null;m=getMouseHandler$1(a,P.getState,n),n=getMouseHandler$1(a,P.getState,x),x=getMouseHandler$1(a,P.getState,v),v=getMouseHandler$1(a,P.getState,$),$=getMouseHandler$1(a,P.getState,S);const A=(e,t)=>{if(0===e.button){var n=t?l:s,o=(t?b:y)||null;const r=t?"target":"source";const i=P.getState().edges.find(e=>e.id===a);R(!0),H?.(e,i,r);handlePointerDown({event:e,handleId:o,nodeId:n,onConnect:e=>E?.(i,e),isTarget:t,getState:P.getState,setState:P.setState,isValidConnection:()=>!0,edgeUpdaterType:r,onEdgeUpdateEnd:e=>{R(!1),U?.(e,i,r)}})}};var S=()=>O(!0),M=()=>O(!1),Q=void 0!==E;return jsxRuntime.exports.jsxs("g",{className:cc(["react-flow__edge","react-flow__edge-"+t,e,{selected:r,animated:i,inactive:!f&&!o,updating:Y}]),onClick:e=>{var{edges:t,addSelectedEdges:n}=P.getState();f&&(P.setState({nodesSelectionActive:!1}),n([a])),o&&(n=t.find(e=>e.id===a),o(e,n))},onDoubleClick:m,onContextMenu:n,onMouseEnter:x,onMouseMove:v,onMouseLeave:$,onKeyDown:I?e=>{var t,n,o;elementSelectionKeys.includes(e.key)&&f&&({unselectNodesAndEdges:t,addSelectedEdges:n,edges:o}=P.getState(),"Escape"===e.key?(T.current?.blur(),t({edges:[o.find(e=>e.id===a)]})):n([a]))}:void 0,tabIndex:I?0:void 0,role:I?"button":void 0,"data-testid":"rf__edge-"+a,"aria-label":null===j?void 0:j||`Edge from ${s} to `+l,"aria-describedby":I?ARIA_EDGE_DESC_KEY+"-"+N:void 0,ref:T,children:[!X&&jsxRuntime.exports.jsx(J,{id:a,source:s,target:l,selected:r,animated:i,label:D,labelStyle:L,labelShowBg:B,labelBgStyle:F,labelBgPadding:z,labelBgBorderRadius:V,data:k,style:G,sourceX:c,sourceY:d,targetX:u,targetY:p,sourcePosition:g,targetPosition:h,sourceHandleId:y,targetHandleId:b,markerStart:q,markerEnd:Z,pathOptions:K,interactionWidth:W}),Q&&jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(EdgeAnchor,{position:g,centerX:c,centerY:d,radius:_,onMouseDown:e=>A(e,!0),onMouseEnter:S,onMouseOut:M,type:"source"}),jsxRuntime.exports.jsx(EdgeAnchor,{position:h,centerX:u,centerY:p,radius:_,onMouseDown:e=>A(e,!1),onMouseEnter:S,onMouseOut:M,type:"target"})]})]})};return e.displayName="EdgeWrapper",react.exports.memo(e)};function createEdgeTypes(n){var e={default:wrapEdge(n.default||BezierEdge),straight:wrapEdge(n.bezier||StraightEdge),step:wrapEdge(n.step||StepEdge),smoothstep:wrapEdge(n.step||SmoothStepEdge),simplebezier:wrapEdge(n.simplebezier||SimpleBezierEdge)},t=Object.keys(n).filter(e=>!["default","bezier"].includes(e)).reduce((e,t)=>(e[t]=wrapEdge(n[t]||BezierEdge),e),{});return{...e,...t}}function getHandlePosition(e,t,n=null){var o=(n?.x||0)+t.x,r=(n?.y||0)+t.y,i=n?.width||t.width,a=n?.height||t.height;switch(e){case Position.Top:return{x:o+i/2,y:r};case Position.Right:return{x:o+i,y:r+a/2};case Position.Bottom:return{x:o+i/2,y:r+a};case Position.Left:return{x:o,y:r+a/2}}}function getHandle(e,t){return e?t?e.find(e=>e.id===t):1===e.length?e[0]:null:null}const getEdgePositions=(e,t,n,o,r,i)=>{n=getHandlePosition(n,e,t),e=getHandlePosition(i,o,r);return{sourceX:n.x,sourceY:n.y,targetX:e.x,targetY:e.y}};function isEdgeVisible({sourcePos:e,targetPos:t,sourceWidth:n,sourceHeight:o,targetWidth:r,targetHeight:i,width:a,height:s,transform:l}){n={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+n,t.x+r),y2:Math.max(e.y+o,t.y+i)},n.x===n.x2&&(n.x2+=1),n.y===n.y2&&(n.y2+=1),r=rectToBox({x:(0-l[0])/l[2],y:(0-l[1])/l[2],width:a/l[2],height:s/l[2]}),e=Math.max(0,Math.min(r.x2,n.x2)-Math.max(r.x,n.x)),o=Math.max(0,Math.min(r.y2,n.y2)-Math.max(r.y,n.y));return 0<Math.ceil(e*o)}function getNodeData(e){var t=e?.[internalsSymbol]?.handleBounds||null,n=t&&e?.width&&e?.height&&void 0!==e?.positionAbsolute?.x&&void 0!==e?.positionAbsolute?.y;return[{x:e?.positionAbsolute?.x||0,y:e?.positionAbsolute?.y||0,width:e?.width||0,height:e?.height||0},t,!!n]}function isParentSelected(e,t){return!!e.parentNode&&!!(e=t.get(e.parentNode))&&(!!e.selected||isParentSelected(e,t))}function hasSelector(e,t,n){let o=e;do{if(o?.matches(t))return!0;if(o===n.current)return!1}while(o=o.parentElement);return!1}function getDragItems(t,n,o,r){return Array.from(t.values()).filter(e=>(e.selected||e.id===r)&&(!e.parentNode||!isParentSelected(e,t))&&(e.draggable||n&&void 0===e.draggable)).map(e=>({id:e.id,position:e.position||{x:0,y:0},positionAbsolute:e.positionAbsolute||{x:0,y:0},distance:{x:o.x-(e.positionAbsolute?.x??0),y:o.y-(e.positionAbsolute?.y??0)},delta:{x:0,y:0},extent:e.extent,parentNode:e.parentNode,width:e.width,height:e.height}))}function calcNextPosition(e,t,n,o,r=[0,0],i){let a=e.extent||o;var s,l,c;"parent"===e.extent?a=e.parentNode&&e.width&&e.height?(c=n.get(e.parentNode),{x:s,y:l}=getNodePositionWithOrigin(c,r).positionAbsolute,c&&isNumeric(s)&&isNumeric(l)&&isNumeric(c.width)&&isNumeric(c.height)?[[s+e.width*r[0],l+e.height*r[1]],[s+c.width-e.width+e.width*r[0],l+c.height-e.height+e.height*r[1]]]:a):(i?.("005",errorMessages["005"]()),o):e.extent&&e.parentNode&&(s=n.get(e.parentNode),{x:l,y:c}=getNodePositionWithOrigin(s,r).positionAbsolute,a=[[e.extent[0][0]+l,e.extent[0][1]+c],[e.extent[1][0]+l,e.extent[1][1]+c]]);let d={x:0,y:0};e.parentNode&&(i=n.get(e.parentNode),d=getNodePositionWithOrigin(i,r).positionAbsolute);o=a?clampPosition(t,a):t;return{position:{x:o.x-d.x,y:o.y-d.y},positionAbsolute:o}}function getEventHandlerParams({nodeId:t,dragItems:e,nodeInternals:n}){e=e.map(e=>{return{...n.get(e.id),position:e.position,positionAbsolute:e.positionAbsolute}});return[t?e.find(e=>e.id===t):e[0],e]}const getHandleBounds=(e,t,n,o)=>{e=t.querySelectorAll(e);if(!e||!e.length)return null;e=Array.from(e);const r=t.getBoundingClientRect(),i={x:r.width*o[0],y:r.height*o[1]};return e.map(e=>{var t=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),position:e.getAttribute("data-handlepos"),x:(t.left-r.left-i.x)/n,y:(t.top-r.top-i.y)/n,...getDimensions(e)}})};function getMouseHandler(n,o,r){return void 0===r?r:e=>{var t=o().nodeInternals.get(n);r(e,{...t})}}function handleNodeClick({id:e,store:t,unselect:n=!1}){var{addSelectedNodes:o,unselectNodesAndEdges:r,multiSelectionActive:i,nodeInternals:a}=t.getState(),a=a.get(e);t.setState({nodesSelectionActive:!1}),a.selected?(n||a.selected&&i)&&r({nodes:[a]}):o([e])}function useGetPointerPosition(){const i=useStoreApi();return react.exports.useCallback(({sourceEvent:e})=>{var{transform:t,snapGrid:n,snapToGrid:o}=i.getState(),r=(e.touches?e.touches[0]:e).clientX,e=(e.touches?e.touches[0]:e).clientY,r={x:(r-t[0])/t[2],y:(e-t[1])/t[2]};return{xSnapped:o?n[0]*Math.round(r.x/n[0]):r.x,ySnapped:o?n[1]*Math.round(r.y/n[1]):r.y,...r}},[])}function wrapSelectionDragFunc(o){return(e,t,n)=>o?.(e,n)}function useDrag({nodeRef:n,disabled:o=!1,noDragClassName:a,handleSelector:s,nodeId:f,isSelectable:l,selectNodesOnDrag:c}){const m=useStoreApi(),[e,y]=react.exports.useState(!1),b=react.exports.useRef([]),x=react.exports.useRef({x:null,y:null}),d=react.exports.useRef(0),u=react.exports.useRef(null),p=react.exports.useRef({x:0,y:0}),v=react.exports.useRef(null),g=react.exports.useRef(!1),h=useGetPointerPosition();return react.exports.useEffect(()=>{if(n?.current){const t=select(n.current),r=({x:n,y:o})=>{const{nodeInternals:r,onNodeDrag:e,onSelectionDrag:t,updateNodePositions:i,nodeExtent:a,snapGrid:s,snapToGrid:l,nodeOrigin:c,onError:d}=m.getState();let u=!(x.current={x:n,y:o});var p,g,h;b.current=b.current.map(e=>{var t={x:n-e.distance.x,y:o-e.distance.y},t=(l&&(t.x=s[0]*Math.round(t.x/s[0]),t.y=s[1]*Math.round(t.y/s[1])),calcNextPosition(e,t,r,a,c,d));return u=u||e.position.x!==t.position.x||e.position.y!==t.position.y,e.position=t.position,e.positionAbsolute=t.positionAbsolute,e}),u&&(i(b.current,!0,!0),y(!0),p=f?e:wrapSelectionDragFunc(t))&&v.current&&([g,h]=getEventHandlerParams({nodeId:f,dragItems:b.current,nodeInternals:r}),p(v.current,g,h))},i=()=>{var e,t,n,o;u.current&&([e,t]=calcAutoPan(p.current,u.current),0===e&&0===t||({transform:n,panBy:o}=m.getState(),x.current.x=(x.current.x??0)-e/n[2],x.current.y=(x.current.y??0)-t/n[2],r(x.current),o({x:e,y:t})),d.current=requestAnimationFrame(i))};var e;if(!o)return e=drag().on("start",e=>{var{nodeInternals:t,multiSelectionActive:n,domNode:o,nodesDraggable:r,unselectNodesAndEdges:i,onNodeDragStart:a,onSelectionDragStart:s}=m.getState(),a=f?a:wrapSelectionDragFunc(s),s=(c||n||!f||t.get(f)?.selected||i(),f&&l&&c&&handleNodeClick({id:f,store:m}),h(e));x.current=s,b.current=getDragItems(t,r,s,f),a&&b.current&&([n,i]=getEventHandlerParams({nodeId:f,dragItems:b.current,nodeInternals:t}),a(e.sourceEvent,n,i)),u.current=o?.getBoundingClientRect()||null,p.current=getEventPosition(e.sourceEvent,u.current)}).on("drag",e=>{var t=h(e),n=m.getState()["autoPanOnNodeDrag"];!g.current&&n&&(g.current=!0,i()),x.current.x===t.xSnapped&&x.current.y===t.ySnapped||!b.current||(v.current=e.sourceEvent,p.current=getEventPosition(e.sourceEvent,u.current),r(t))}).on("end",e=>{var t,n,o,r;y(!1),g.current=!1,cancelAnimationFrame(d.current),b.current&&({updateNodePositions:r,nodeInternals:t,onNodeDragStop:n,onSelectionDragStop:o}=m.getState(),n=f?n:wrapSelectionDragFunc(o),r(b.current,!1,!1),n)&&([o,r]=getEventHandlerParams({nodeId:f,dragItems:b.current,nodeInternals:t}),n(e.sourceEvent,o,r))}).filter(e=>{var t=e.target;return!e.button&&(!a||!hasSelector(t,"."+a,n))&&(!s||hasSelector(t,s,n))}),t.call(e),()=>{t.on(".drag",null)};t.on(".drag",null)}},[n,o,a,s,l,m,f,c,h]),e}function useUpdateNodePositions(){const f=useStoreApi();return react.exports.useCallback(e=>{const{nodeInternals:o,nodeExtent:r,updateNodePositions:t,getNodes:n,snapToGrid:i,snapGrid:a,onError:s,nodesDraggable:l}=f.getState();var c=n().filter(e=>e.selected&&(e.draggable||l&&void 0===e.draggable)),d=i?a[0]:5,u=i?a[1]:5,p=e.isShiftPressed?4:1;const g=e.x*d*p,h=e.y*u*p;d=c.map(e=>{var t,n;return e.positionAbsolute&&(t={x:e.positionAbsolute.x+g,y:e.positionAbsolute.y+h},{positionAbsolute:t,position:n}=(i&&(t.x=a[0]*Math.round(t.x/a[0]),t.y=a[1]*Math.round(t.y/a[1])),calcNextPosition(e,t,o,r,void 0,s)),e.position=n,e.positionAbsolute=t),e});t(d,!0,!1)},[])}const arrowKeyDiffs={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var wrapNode=z=>{var e=({id:o,type:r,data:e,xPos:n,yPos:i,xPosOrigin:t,yPosOrigin:a,selected:s,onClick:l,onMouseEnter:c,onMouseMove:d,onMouseLeave:u,onContextMenu:p,onDoubleClick:g,style:h,className:f,isDraggable:m,isSelectable:y,isConnectable:b,isFocusable:x,selectNodesOnDrag:v,sourcePosition:$,targetPosition:S,hidden:_,resizeObserver:E,dragHandle:w,zIndex:C,isParent:N,noDragClassName:j,noPanClassName:I,initialized:k,disableKeyboardA11y:T,ariaLabel:D,rfId:L})=>{const O=useStoreApi(),R=react.exports.useRef(null),P=react.exports.useRef($),A=react.exports.useRef(S),M=react.exports.useRef(r);var B=y||m||l||c||d||u;const F=useUpdateNodePositions();c=getMouseHandler(o,O.getState,c),d=getMouseHandler(o,O.getState,d),u=getMouseHandler(o,O.getState,u),p=getMouseHandler(o,O.getState,p),g=getMouseHandler(o,O.getState,g),react.exports.useEffect(()=>{if(R.current&&!_){const e=R.current;return E?.observe(e),()=>E?.unobserve(e)}},[_]),react.exports.useEffect(()=>{var e=M.current!==r,t=P.current!==$,n=A.current!==S;R.current&&(e||t||n)&&(e&&(M.current=r),t&&(P.current=$),n&&(A.current=S),O.getState().updateNodeDimensions([{id:o,nodeElement:R.current,forceUpdate:!0}]))},[o,r,$,S]),j=useDrag({nodeRef:R,disabled:_||!m,noDragClassName:j,handleSelector:w,nodeId:o,isSelectable:y,selectNodesOnDrag:v});return _?null:jsxRuntime.exports.jsx("div",{className:cc(["react-flow__node","react-flow__node-"+r,{[I]:m},f,{selected:s,selectable:y,parent:N,dragging:j}]),ref:R,style:{zIndex:C,transform:`translate(${t}px,${a}px)`,pointerEvents:B?"all":"none",visibility:k?"visible":"hidden",...h},"data-id":o,"data-testid":"rf__node-"+o,onMouseEnter:c,onMouseMove:d,onMouseLeave:u,onContextMenu:p,onClick:e=>{var t;!y||v&&m||handleNodeClick({id:o,store:O}),l&&(t=O.getState().nodeInternals.get(o),l(e,{...t}))},onDoubleClick:g,onKeyDown:x?e=>{var t;isInputDOMNode(e)||(elementSelectionKeys.includes(e.key)&&y?((t="Escape"===e.key)&&R.current?.blur(),handleNodeClick({id:o,store:O,unselect:t})):!T&&m&&s&&Object.prototype.hasOwnProperty.call(arrowKeyDiffs,e.key)&&(O.setState({ariaLiveMessage:`Moved selected node ${e.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~n}, y: `+~~i}),F({x:arrowKeyDiffs[e.key].x,y:arrowKeyDiffs[e.key].y,isShiftPressed:e.shiftKey})))}:void 0,tabIndex:x?0:void 0,role:x?"button":void 0,"aria-describedby":T?void 0:ARIA_NODE_DESC_KEY+"-"+L,"aria-label":D,children:jsxRuntime.exports.jsx(Provider,{value:o,children:jsxRuntime.exports.jsx(z,{id:o,data:e,type:r,xPos:n,yPos:i,selected:s,isConnectable:b,sourcePosition:$,targetPosition:S,dragging:j,dragHandle:w,zIndex:C})})})};return e.displayName="NodeWrapper",react.exports.memo(e)};function createNodeTypes(n){var e={input:wrapNode(n.input||InputNode$1),default:wrapNode(n.default||DefaultNode$1),output:wrapNode(n.output||OutputNode$1),group:wrapNode(n.group||GroupNode)},t=Object.keys(n).filter(e=>!["input","default","output","group"].includes(e)).reduce((e,t)=>(e[t]=wrapNode(n[t]||DefaultNode$1),e),{});return{...e,...t}}const getPositionWithOrigin=({x:e,y:t,width:n,height:o,origin:r})=>!n||!o||(r[0]<0||r[1]<0||1<r[0]||1<r[1])?{x:e,y:t}:{x:e-n*r[0],y:t-o*r[1]},doc="undefined"!=typeof document?document:null;var useKeyPress=(o=null,r={target:doc})=>{const[e,i]=react.exports.useState(!1),a=react.exports.useRef(new Set([])),[s,l]=react.exports.useMemo(()=>{var e,t;return null!==o?(t=(e=(Array.isArray(o)?o:[o]).filter(e=>"string"==typeof e).map(e=>e.split("+"))).reduce((e,t)=>e.concat(...t),[]),[e,t]):[[],[]]},[o]);return react.exports.useEffect(()=>{if(null!==o){const e=e=>{if(isInputDOMNode(e))return!1;var t=useKeyOrCode(e.code,l);a.current.add(e[t]),isMatchingKey(s,a.current,!1)&&(e.preventDefault(),i(!0))},t=e=>{if(isInputDOMNode(e))return!1;var t=useKeyOrCode(e.code,l);isMatchingKey(s,a.current,!0)?(i(!1),a.current.clear()):a.current.delete(e[t])},n=()=>{a.current.clear(),i(!1)};return r?.target?.addEventListener("keydown",e),r?.target?.addEventListener("keyup",t),window.addEventListener("blur",n),()=>{r?.target?.removeEventListener("keydown",e),r?.target?.removeEventListener("keyup",t),window.removeEventListener("blur",n)}}},[o,i]),e};function isMatchingKey(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function useKeyOrCode(e,t){return t.includes(e)?"code":"key"}function calculateXYZPosition(e,t,n,o){var r;return e.parentNode?(e=t.get(e.parentNode),r=getNodePositionWithOrigin(e,o),calculateXYZPosition(e,t,{x:(n.x??0)+r.x,y:(n.y??0)+r.y,z:(e[internalsSymbol]?.z??0)>(n.z??0)?e[internalsSymbol]?.z??0:n.z??0},o)):n}function updateAbsoluteNodePositions(r,i,a){r.forEach(e=>{if(e.parentNode&&!r.has(e.parentNode))throw new Error(`Parent node ${e.parentNode} not found`);var t,n,o;(e.parentNode||a?.[e.id])&&({x:t,y:n,z:o}=calculateXYZPosition(e,r,{...e.position,z:e[internalsSymbol]?.z??0},i),e.positionAbsolute={x:t,y:n},e[internalsSymbol].z=o,a?.[e.id])&&(e[internalsSymbol].isParent=!0)})}function createNodeInternals(e,r,t,n){const i=new Map,a={},s=n?1e3:0;return e.forEach(e=>{var t=(isNumeric(e.zIndex)?e.zIndex:0)+(e.selected?s:0),n=r.get(e.id),o={width:n?.width,height:n?.height,...e,positionAbsolute:{x:e.position.x,y:e.position.y}};e.parentNode&&(o.parentNode=e.parentNode,a[e.parentNode]=!0),Object.defineProperty(o,internalsSymbol,{enumerable:!1,value:{handleBounds:n?.[internalsSymbol]?.handleBounds,z:t}}),i.set(e.id,o)}),updateAbsoluteNodePositions(i,t,a),i}function fitView(e,n={}){var{getNodes:e,width:t,height:o,minZoom:r,maxZoom:i,d3Zoom:a,d3Selection:s,fitViewOnInitDone:l,fitViewOnInit:c,nodeOrigin:d}=e(),l=n.initial&&!l&&c;if(a&&s&&(l||!n.initial)){var c=e().filter(t=>{var e=n.includeHiddenNodes?t.width&&t.height:!t.hidden;return n.nodes?.length?e&&n.nodes.some(e=>e.id===t.id):e}),l=c.every(e=>e.width&&e.height);if(0<c.length&&l)return e=getRectOfNodes(c,d),[l,c,d]=getTransformForBounds(e,t,o,n.minZoom??r,n.maxZoom??i,n.padding??.1),e=identity.translate(l,c).scale(d),"number"==typeof n.duration&&0<n.duration?a.transform(getD3Transition(s,n.duration),e):a.transform(s,e),!0}return!1}function handleControlledNodeSelectionChange(e,n){return e.forEach(e=>{var t=n.get(e.id);t&&n.set(t.id,{...t,[internalsSymbol]:t[internalsSymbol],selected:e.selected})}),new Map(n)}function handleControlledEdgeSelectionChange(n,e){return e.map(t=>{var e=n.find(e=>e.id===t.id);return e&&(t.selected=e.selected),t})}function updateNodesAndEdgesSelections({changedNodes:e,changedEdges:t,get:n,set:o}){var{nodeInternals:n,edges:r,onNodesChange:i,onEdgesChange:a,hasDefaultNodes:s,hasDefaultEdges:l}=n();e?.length&&(s&&o({nodeInternals:handleControlledNodeSelectionChange(e,n)}),i?.(e)),t?.length&&(l&&o({edges:handleControlledEdgeSelectionChange(t,r)}),a?.(t))}const noop=()=>{},initialViewportHelper={zoomIn:noop,zoomOut:noop,zoomTo:noop,getZoom:()=>1,setViewport:noop,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:noop,fitBounds:noop,project:e=>e,viewportInitialized:!1},selector$b=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection}),useViewportHelper=()=>{const a=useStoreApi(),{d3Zoom:s,d3Selection:l}=useStore(selector$b,shallow);return react.exports.useMemo(()=>l&&s?{zoomIn:e=>s.scaleBy(getD3Transition(l,e?.duration),1.2),zoomOut:e=>s.scaleBy(getD3Transition(l,e?.duration),1/1.2),zoomTo:(e,t)=>s.scaleTo(getD3Transition(l,t?.duration),e),getZoom:()=>a.getState().transform[2],setViewport:(e,t)=>{var[n,o,r]=a.getState().transform,n=identity.translate(e.x??n,e.y??o).scale(e.zoom??r);s.transform(getD3Transition(l,t?.duration),n)},getViewport:()=>{var[e,t,n]=a.getState().transform;return{x:e,y:t,zoom:n}},fitView:e=>fitView(a.getState,e),setCenter:(e,t,n)=>{var{width:o,height:r,maxZoom:i}=a.getState(),i=void 0!==n?.zoom?n.zoom:i,o=identity.translate(o/2-e*i,r/2-t*i).scale(i);s.transform(getD3Transition(l,n?.duration),o)},fitBounds:(e,t)=>{var{width:n,height:o,minZoom:r,maxZoom:i}=a.getState(),[e,n,o]=getTransformForBounds(e,n,o,r,i,t?.padding??.1),r=identity.translate(e,n).scale(o);s.transform(getD3Transition(l,t?.duration),r)},project:e=>{var{transform:t,snapToGrid:n,snapGrid:o}=a.getState();return pointToRendererPoint(e,t,n,o)},viewportInitialized:!0}:initialViewportHelper,[s,l])};function useReactFlow(){const e=useViewportHelper(),f=useStoreApi(),t=react.exports.useCallback(()=>f.getState().getNodes().map(e=>({...e})),[]),n=react.exports.useCallback(e=>f.getState().nodeInternals.get(e),[]),o=react.exports.useCallback(()=>{var{edges:e=[]}=f.getState();return e.map(e=>({...e}))},[]),r=react.exports.useCallback(t=>{var{edges:e=[]}=f.getState();return e.find(e=>e.id===t)},[]),i=react.exports.useCallback(e=>{var{getNodes:t,setNodes:n,hasDefaultNodes:o,onNodesChange:r}=f.getState(),t=t(),e="function"==typeof e?e(t):e;o?n(e):r&&r(0===e.length?t.map(e=>({type:"remove",id:e.id})):e.map(e=>({item:e,type:"reset"})))},[]),a=react.exports.useCallback(e=>{var{edges:t=[],setEdges:n,hasDefaultEdges:o,onEdgesChange:r}=f.getState(),e="function"==typeof e?e(t):e;o?n(e):r&&r(0===e.length?t.map(e=>({type:"remove",id:e.id})):e.map(e=>({item:e,type:"reset"})))},[]),s=react.exports.useCallback(e=>{var e=Array.isArray(e)?e:[e],{getNodes:t,setNodes:n,hasDefaultNodes:o,onNodesChange:r}=f.getState();o?n([...t(),...e]):r&&r(e.map(e=>({item:e,type:"add"})))},[]),l=react.exports.useCallback(e=>{var e=Array.isArray(e)?e:[e],{edges:t=[],setEdges:n,hasDefaultEdges:o,onEdgesChange:r}=f.getState();o?n([...t,...e]):r&&r(e.map(e=>({item:e,type:"add"})))},[]),c=react.exports.useCallback(()=>{var{getNodes:e,edges:t=[],transform:n}=f.getState(),[n,o,r]=n;return{nodes:e().map(e=>({...e})),edges:t.map(e=>({...e})),viewport:{x:n,y:o,zoom:r}}},[]),d=react.exports.useCallback(({nodes:e,edges:t})=>{const{nodeInternals:n,getNodes:o,edges:r,hasDefaultNodes:i,hasDefaultEdges:a,onNodesDelete:s,onEdgesDelete:l,onNodesChange:c,onEdgesChange:d}=f.getState(),u=(e||[]).map(e=>e.id),p=(t||[]).map(e=>e.id);var e=o().reduce((e,t)=>{var n=!u.includes(t.id)&&t.parentNode&&e.find(e=>e.id===t.parentNode);return("boolean"!=typeof t.deletable||t.deletable)&&(u.includes(t.id)||n)&&e.push(t),e},[]),t=r.filter(e=>"boolean"!=typeof e.deletable||e.deletable),g=t.filter(e=>p.includes(e.id));if(e||g){t=getConnectedEdges(e,t),g=[...g,...t];const h=g.reduce((e,t)=>(e.includes(t.id)||e.push(t.id),e),[]);(a||i)&&(a&&f.setState({edges:r.filter(e=>!h.includes(e.id))}),i)&&(e.forEach(e=>{n.delete(e.id)}),f.setState({nodeInternals:new Map(n)})),0<h.length&&(l?.(g),d)&&d(h.map(e=>({id:e,type:"remove"}))),0<e.length&&(s?.(e),c)&&(t=e.map(e=>({id:e.id,type:"remove"})),c(t))}},[]),u=react.exports.useCallback(e=>{var t=isRectObject(e),n=t?null:f.getState().nodeInternals.get(e.id);return[t?e:nodeToRect(n),n,t]},[]),p=react.exports.useCallback((t,n=!0,e)=>{const[o,r,i]=u(t);return o?(e||f.getState().getNodes()).filter(e=>{return!!(i||e.id!==r.id&&e.positionAbsolute)&&(e=nodeToRect(e),e=getOverlappingArea(e,o),n&&0<e||e>=t.width*t.height)}):[]},[]),g=react.exports.useCallback((e,t,n=!0)=>{var[o]=u(e);return!!o&&(o=getOverlappingArea(o,t),n&&0<o||o>=e.width*e.height)},[]);return react.exports.useMemo(()=>({...e,getNodes:t,getNode:n,getEdges:o,getEdge:r,setNodes:i,setEdges:a,addNodes:s,addEdges:l,toObject:c,deleteElements:d,getIntersectingNodes:p,isNodeIntersecting:g}),[e,t,n,o,r,i,a,s,l,c,d,p,g])}var useGlobalKeyHandler=({deleteKeyCode:e,multiSelectionKeyCode:t})=>{const n=useStoreApi(),o=useReactFlow()["deleteElements"],r=useKeyPress(e),i=useKeyPress(t);react.exports.useEffect(()=>{var e,t;r&&({edges:t,getNodes:e}=n.getState(),e=e().filter(e=>e.selected),t=t.filter(e=>e.selected),o({nodes:e,edges:t}),n.setState({nodesSelectionActive:!1}))},[r]),react.exports.useEffect(()=>{n.setState({multiSelectionActive:i})},[i])};function useResizeHandler(n){const o=useStoreApi();react.exports.useEffect(()=>{let e;const t=()=>{var e;n.current&&(0!==(e=getDimensions(n.current)).height&&0!==e.width||o.getState().onError?.("004",errorMessages["004"]()),o.setState({width:e.width||500,height:e.height||500}))};return t(),window.addEventListener("resize",t),n.current&&(e=new ResizeObserver(()=>t())).observe(n.current),()=>{window.removeEventListener("resize",t),e&&n.current&&e.unobserve(n.current)}},[])}const containerStyle={position:"absolute",width:"100%",height:"100%",top:0,left:0},viewChanged=(e,t)=>e.x!==t.x||e.y!==t.y||e.zoom!==t.k,eventToFlowTransform=e=>({x:e.x,y:e.y,zoom:e.k}),isWrappedWithClass=(e,t)=>e.target.closest("."+t),isRightClickPan=(e,t)=>2===t&&Array.isArray(e)&&e.includes(2),selector$a=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection,d3ZoomHandler:e.d3ZoomHandler,userSelectionActive:e.userSelectionActive}),ZoomPane=({onMove:o,onMoveStart:r,onMoveEnd:i,onPaneContextMenu:a,zoomOnScroll:s=!0,zoomOnPinch:l=!0,panOnScroll:c=!1,panOnScrollSpeed:d=.5,panOnScrollMode:u=PanOnScrollMode.Free,zoomOnDoubleClick:p=!0,elementsSelectable:e,panOnDrag:g=!0,defaultViewport:h,translateExtent:f,minZoom:m,maxZoom:y,zoomActivationKeyCode:t,preventScrolling:n=!0,children:b,noWheelClassName:x,noPanClassName:v})=>{const $=react.exports.useRef(),S=useStoreApi(),_=react.exports.useRef(!1),E=react.exports.useRef(!1),w=react.exports.useRef(null),C=react.exports.useRef({x:0,y:0,zoom:0}),{d3Zoom:N,d3Selection:j,d3ZoomHandler:I,userSelectionActive:T}=useStore(selector$a,shallow),O=useKeyPress(t),R=react.exports.useRef(0);return useResizeHandler(w),react.exports.useEffect(()=>{var e,t,n,o;w.current&&(n=w.current.getBoundingClientRect(),e=zoom().scaleExtent([m,y]).translateExtent(f),t=select(w.current).call(e),o=identity.translate(h.x,h.y).scale(clamp(h.zoom,m,y)),n=[[0,0],[n.width,n.height]],o=e.constrain()(o,n,f),e.transform(t,o),S.setState({d3Zoom:e,d3Selection:t,d3ZoomHandler:t.on("wheel.zoom"),transform:[o.x,o.y,o.k],domNode:w.current.closest(".react-flow")}))},[]),react.exports.useEffect(()=>{j&&N&&(!c||O||T?void 0!==I&&j.on("wheel.zoom",function(e,t){if(!n||isWrappedWithClass(e,x))return null;e.preventDefault(),I.call(this,e,t)}):j.on("wheel.zoom",e=>{if(isWrappedWithClass(e,x))return!1;e.preventDefault(),e.stopImmediatePropagation();var t,n,o=j.property("__zoom").k||1;e.ctrlKey&&l?(n=pointer(e),t=-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*10,t=o*Math.pow(2,t),N.scaleTo(j,t,n)):(t=1===e.deltaMode?20:1,n=u===PanOnScrollMode.Vertical?0:e.deltaX*t,e=u===PanOnScrollMode.Horizontal?0:e.deltaY*t,N.translateBy(j,-n/o*d,-e/o*d))}))},[T,c,u,j,N,I,O,l,n,x]),react.exports.useEffect(()=>{N&&N.on("start",e=>{if(!e.sourceEvent)return null;R.current=e.sourceEvent.button;var t,n=S.getState()["onViewportChangeStart"];_.current=!0,"mousedown"===e.sourceEvent?.type&&S.setState({paneDragging:!0}),(r||n)&&(t=eventToFlowTransform(e.transform),C.current=t,n?.(t),r?.(e.sourceEvent,t))})},[N,r]),react.exports.useEffect(()=>{N&&(T&&!_.current?N.on("zoom",null):T||N.on("zoom",e=>{var t,n=S.getState()["onViewportChange"];S.setState({transform:[e.transform.x,e.transform.y,e.transform.k]}),E.current=!(!a||!isRightClickPan(g,R.current??0)),(o||n)&&(t=eventToFlowTransform(e.transform),n?.(t),o?.(e.sourceEvent,t))}))},[T,N,o,g,a]),react.exports.useEffect(()=>{N&&N.on("end",e=>{if(!e.sourceEvent)return null;const t=S.getState()["onViewportChangeEnd"];if(_.current=!1,S.setState({paneDragging:!1}),a&&isRightClickPan(g,R.current??0)&&!E.current&&a(e.sourceEvent),E.current=!1,(i||t)&&viewChanged(C.current,e.transform)){const n=eventToFlowTransform(e.transform);C.current=n,clearTimeout($.current),$.current=setTimeout(()=>{t?.(n),i?.(e.sourceEvent,n)},c?150:0)}})},[N,c,g,i,a]),react.exports.useEffect(()=>{N&&N.filter(e=>{var t,n=O||s,o=l&&e.ctrlKey;return!(1!==e.button||"mousedown"!==e.type||!isWrappedWithClass(e,"react-flow__node")&&!isWrappedWithClass(e,"react-flow__edge"))||!!(g||n||c||p||l)&&!T&&!(!p&&"dblclick"===e.type||isWrappedWithClass(e,x)&&"wheel"===e.type||isWrappedWithClass(e,v)&&"wheel"!==e.type||!l&&e.ctrlKey&&"wheel"===e.type||!(n||c||o||"wheel"!==e.type)||!(g||"mousedown"!==e.type&&"touchstart"!==e.type)||Array.isArray(g)&&!g.includes(e.button)&&("mousedown"===e.type||"touchstart"===e.type)||(t=Array.isArray(g)&&g.includes(e.button)||!e.button||e.button<=1,e.ctrlKey&&"wheel"!==e.type))&&t})},[T,N,s,l,c,p,g,e,O]),jsxRuntime.exports.jsx("div",{className:"react-flow__renderer",ref:w,style:containerStyle,children:b})},selector$9=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function UserSelection(){var{userSelectionActive:e,userSelectionRect:t}=useStore(selector$9,shallow);return e&&t?jsxRuntime.exports.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}function handleParentExpand(e,t){var n,o,e=e.find(e=>e.id===t.parentNode);e&&(n=t.position.x+t.width-e.width,o=t.position.y+t.height-e.height,0<n||0<o||t.position.x<0||t.position.y<0)&&(e.style={...e.style},e.style.width=e.style.width??e.width,e.style.height=e.style.height??e.height,0<n&&(e.style.width+=n),0<o&&(e.style.height+=o),t.position.x<0&&(n=Math.abs(t.position.x),e.position.x=e.position.x-n,e.style.width+=n,t.position.x=0),t.position.y<0&&(o=Math.abs(t.position.y),e.position.y=e.position.y-o,e.style.height+=o,t.position.y=0),e.width=e.style.width,e.height=e.style.height)}function applyChanges(i,e){var t;return i.some(e=>"reset"===e.type)?i.filter(e=>"reset"===e.type).map(e=>e.item):(t=i.filter(e=>"add"===e.type).map(e=>e.item),e.reduce((e,t)=>{var n=i.filter(e=>e.id===t.id);if(0===n.length)e.push(t);else{var o={...t};for(const r of n)if(r)switch(r.type){case"select":o.selected=r.selected;break;case"position":void 0!==r.position&&(o.position=r.position),void 0!==r.positionAbsolute&&(o.positionAbsolute=r.positionAbsolute),void 0!==r.dragging&&(o.dragging=r.dragging),o.expandParent&&handleParentExpand(e,o);break;case"dimensions":void 0!==r.dimensions&&(o.width=r.dimensions.width,o.height=r.dimensions.height),void 0!==r.updateStyle&&(o.style={...o.style||{},...r.dimensions}),"boolean"==typeof r.resizing&&(o.resizing=r.resizing),o.expandParent&&handleParentExpand(e,o);break;case"remove":return e}e.push(o)}return e},t))}function applyNodeChanges(e,t){return applyChanges(e,t)}const createSelectionChange=(e,t)=>({id:e,type:"select",selected:t});function getSelectionChanges(e,o){return e.reduce((e,t)=>{var n=o.includes(t.id);return!t.selected&&n?(t.selected=!0,e.push(createSelectionChange(t.id,!0))):t.selected&&!n&&(t.selected=!1,e.push(createSelectionChange(t.id,!1))),e},[])}const wrapHandler=(t,n)=>e=>{e.target===n.current&&t?.(e)},selector$8=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging}),Pane=react.exports.memo(({isSelecting:u,selectionMode:p=SelectionMode.Full,panOnDrag:t,onSelectionStart:r,onSelectionEnd:n,onPaneClick:o,onPaneContextMenu:i,onPaneScroll:a,onPaneMouseEnter:e,onPaneMouseMove:s,onPaneMouseLeave:l,children:c})=>{const d=react.exports.useRef(null),g=useStoreApi(),h=react.exports.useRef(0),f=react.exports.useRef(0),m=react.exports.useRef(),{userSelectionActive:y,elementsSelectable:b,dragging:x}=useStore(selector$8,shallow),v=()=>{g.setState({userSelectionActive:!1,userSelectionRect:null}),h.current=0,f.current=0},$=e=>{o?.(e),g.getState().resetSelectedElements(),g.setState({nodesSelectionActive:!1})};var S=a?e=>a(e):void 0,_=b&&(u||y);return jsxRuntime.exports.jsxs("div",{className:cc(["react-flow__pane",{dragging:x,selection:u}]),onClick:_?void 0:wrapHandler($,d),onContextMenu:wrapHandler(e=>{Array.isArray(t)&&t?.includes(2)?e.preventDefault():i?.(e)},d),onWheel:wrapHandler(S,d),onMouseEnter:_?void 0:e,onMouseDown:_?e=>{var t,{resetSelectedElements:n,domNode:o}=g.getState();m.current=o?.getBoundingClientRect(),b&&u&&0===e.button&&e.target===d.current&&m.current&&({x:o,y:t}=getEventPosition(e,m.current),n(),g.setState({userSelectionRect:{width:0,height:0,startX:o,startY:t,x:o,y:t}}),r?.(e))}:void 0,onMouseMove:_?e=>{var t,n,{userSelectionRect:o,nodeInternals:r,edges:i,transform:a,onNodesChange:s,onEdgesChange:l,nodeOrigin:c,getNodes:d}=g.getState();u&&m.current&&o&&(g.setState({userSelectionActive:!0,nodesSelectionActive:!1}),e=getEventPosition(e,m.current),t=o.startX??0,n=o.startY??0,o={...o,x:e.x<t?e.x:t,y:e.y<n?e.y:n,width:Math.abs(e.x-t),height:Math.abs(e.y-n)},t=d(),e=getNodesInside(r,o,a,p===SelectionMode.Partial,!0,c),n=getConnectedEdges(e,i).map(e=>e.id),d=e.map(e=>e.id),h.current!==d.length&&(h.current=d.length,(r=getSelectionChanges(t,d)).length)&&s?.(r),f.current!==n.length&&(f.current=n.length,(a=getSelectionChanges(i,n)).length)&&l?.(a),g.setState({userSelectionRect:o}))}:s,onMouseUp:_?e=>{var t;0===e.button&&(t=g.getState()["userSelectionRect"],!y&&t&&e.target===d.current&&$(e),g.setState({nodesSelectionActive:0<h.current}),v(),n?.(e))}:void 0,onMouseLeave:_?e=>{y&&(g.setState({nodesSelectionActive:0<h.current}),n?.(e)),v()}:l,ref:d,style:containerStyle,children:[c,jsxRuntime.exports.jsx(UserSelection,{})]})}),selector$7=(Pane.displayName="Pane",e=>{var t=e.getNodes().filter(e=>e.selected);return{...getRectOfNodes(t,e.nodeOrigin),transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`,userSelectionActive:e.userSelectionActive}});function NodesSelection({onSelectionContextMenu:n,noPanClassName:e,disableKeyboardA11y:t}){const o=useStoreApi();var{width:r,height:i,x:a,y:s,transformString:l,userSelectionActive:c}=useStore(selector$7,shallow);const d=useUpdateNodePositions(),u=react.exports.useRef(null);return react.exports.useEffect(()=>{t||u.current?.focus({preventScroll:!0})},[t]),useDrag({nodeRef:u}),!c&&r&&i?(c=n?e=>{var t=o.getState().getNodes().filter(e=>e.selected);n(e,t)}:void 0,jsxRuntime.exports.jsx("div",{className:cc(["react-flow__nodesselection","react-flow__container",e]),style:{transform:l},children:jsxRuntime.exports.jsx("div",{ref:u,className:"react-flow__nodesselection-rect",onContextMenu:c,tabIndex:t?void 0:-1,onKeyDown:t?void 0:e=>{Object.prototype.hasOwnProperty.call(arrowKeyDiffs,e.key)&&d({x:arrowKeyDiffs[e.key].x,y:arrowKeyDiffs[e.key].y,isShiftPressed:e.shiftKey})},style:{width:r,height:i,top:s,left:a}})})):null}var NodesSelection$1=react.exports.memo(NodesSelection);const selector$6=e=>e.nodesSelectionActive,FlowRenderer=({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:i,onPaneScroll:a,deleteKeyCode:s,onMove:l,onMoveStart:c,onMoveEnd:d,selectionKeyCode:u,selectionOnDrag:p,selectionMode:g,onSelectionStart:h,onSelectionEnd:f,multiSelectionKeyCode:m,panActivationKeyCode:y,zoomActivationKeyCode:b,elementsSelectable:x,zoomOnScroll:v,zoomOnPinch:$,panOnScroll:S,panOnScrollSpeed:_,panOnScrollMode:E,zoomOnDoubleClick:w,panOnDrag:C,defaultViewport:N,translateExtent:j,minZoom:I,maxZoom:T,preventScrolling:O,onSelectionContextMenu:R,noWheelClassName:P,noPanClassName:A,disableKeyboardA11y:M})=>{var k=useStore(selector$6),u=useKeyPress(u),y=useKeyPress(y)||C,C=u||p&&!0!==y;return useGlobalKeyHandler({deleteKeyCode:s,multiSelectionKeyCode:m}),jsxRuntime.exports.jsx(ZoomPane,{onMove:l,onMoveStart:c,onMoveEnd:d,onPaneContextMenu:i,elementsSelectable:x,zoomOnScroll:v,zoomOnPinch:$,panOnScroll:S,panOnScrollSpeed:_,panOnScrollMode:E,zoomOnDoubleClick:w,panOnDrag:!u&&y,defaultViewport:N,translateExtent:j,minZoom:I,maxZoom:T,zoomActivationKeyCode:b,preventScrolling:O,noWheelClassName:P,noPanClassName:A,children:jsxRuntime.exports.jsxs(Pane,{onSelectionStart:h,onSelectionEnd:f,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:i,onPaneScroll:a,panOnDrag:y,isSelecting:!!C,selectionMode:g,children:[e,k&&jsxRuntime.exports.jsx(NodesSelection$1,{onSelectionContextMenu:R,noPanClassName:A,disableKeyboardA11y:M})]})})};FlowRenderer.displayName="FlowRenderer";var FlowRenderer$1=react.exports.memo(FlowRenderer);function useVisibleNodes(t){return useStore(react.exports.useCallback(e=>t?getNodesInside(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes(),[t]))}const selector$5=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,updateNodeDimensions:e.updateNodeDimensions,onError:e.onError}),NodeRenderer=d=>{const{nodesDraggable:u,nodesConnectable:p,nodesFocusable:g,elementsSelectable:h,updateNodeDimensions:t,onError:f}=useStore(selector$5,shallow);var e=useVisibleNodes(d.onlyRenderVisibleElements);const n=react.exports.useRef(),m=react.exports.useMemo(()=>{var e;return"undefined"==typeof ResizeObserver?null:(e=new ResizeObserver(e=>{e=e.map(e=>({id:e.target.getAttribute("data-id"),nodeElement:e.target,forceUpdate:!0}));t(e)}),n.current=e)},[]);return react.exports.useEffect(()=>()=>{n?.current?.disconnect()},[]),jsxRuntime.exports.jsx("div",{className:"react-flow__nodes",style:containerStyle,children:e.map(e=>{let t=e.type||"default";d.nodeTypes[t]||(f?.("003",errorMessages["003"](t)),t="default");var n=d.nodeTypes[t]||d.nodeTypes.default,o=!!(e.draggable||u&&void 0===e.draggable),r=!!(e.selectable||h&&void 0===e.selectable),i=!!(e.connectable||p&&void 0===e.connectable),a=!!(e.focusable||g&&void 0===e.focusable),s=d.nodeExtent?clampPosition(e.positionAbsolute,d.nodeExtent):e.positionAbsolute,l=s?.x??0,s=s?.y??0,c=getPositionWithOrigin({x:l,y:s,width:e.width??0,height:e.height??0,origin:d.nodeOrigin});return jsxRuntime.exports.jsx(n,{id:e.id,className:e.className,style:e.style,type:t,data:e.data,sourcePosition:e.sourcePosition||Position.Bottom,targetPosition:e.targetPosition||Position.Top,hidden:e.hidden,xPos:l,yPos:s,xPosOrigin:c.x,yPosOrigin:c.y,selectNodesOnDrag:d.selectNodesOnDrag,onClick:d.onNodeClick,onMouseEnter:d.onNodeMouseEnter,onMouseMove:d.onNodeMouseMove,onMouseLeave:d.onNodeMouseLeave,onContextMenu:d.onNodeContextMenu,onDoubleClick:d.onNodeDoubleClick,selected:!!e.selected,isDraggable:o,isSelectable:r,isConnectable:i,isFocusable:a,resizeObserver:m,dragHandle:e.dragHandle,zIndex:e[internalsSymbol]?.z??0,isParent:!!e[internalsSymbol]?.isParent,noDragClassName:d.noDragClassName,noPanClassName:d.noPanClassName,initialized:!!e.width&&!!e.height,rfId:d.rfId,disableKeyboardA11y:d.disableKeyboardA11y,ariaLabel:e.ariaLabel},e.id)})})};NodeRenderer.displayName="NodeRenderer";var NodeRenderer$1=react.exports.memo(NodeRenderer);const defaultEdgeTree=[{level:0,isMaxLevel:!0,edges:[]}];function groupEdgesByZLevel(e,r,i=!1){let a=-1;e=e.reduce((e,t)=>{var n=isNumeric(t.zIndex);let o=n?t.zIndex:0;return e[o=i?n?t.zIndex:Math.max(r.get(t.source)?.[internalsSymbol]?.z||0,r.get(t.target)?.[internalsSymbol]?.z||0):o]?e[o].push(t):e[o]=[t],a=o>a?o:a,e},{}),e=Object.entries(e).map(([e,t])=>{e=+e;return{edges:t,level:e,isMaxLevel:e===a}});return 0===e.length?defaultEdgeTree:e}function useVisibleEdges(e,o,t){return groupEdgesByZLevel(useStore(react.exports.useCallback(n=>e?n.edges.filter(e=>{var t=o.get(e.source),e=o.get(e.target);return t?.width&&t?.height&&e?.width&&e?.height&&isEdgeVisible({sourcePos:t.positionAbsolute||{x:0,y:0},targetPos:e.positionAbsolute||{x:0,y:0},sourceWidth:t.width,sourceHeight:t.height,targetWidth:e.width,targetHeight:e.height,width:n.width,height:n.height,transform:n.transform})}):n.edges,[e,o])),o,t)}const ArrowSymbol=({color:e="none",strokeWidth:t=1})=>jsxRuntime.exports.jsx("polyline",{stroke:e,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:t,fill:"none",points:"-5,-4 0,0 -5,4"}),ArrowClosedSymbol=({color:e="none",strokeWidth:t=1})=>jsxRuntime.exports.jsx("polyline",{stroke:e,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:t,fill:e,points:"-5,-4 0,0 -5,4 -5,-4"}),MarkerSymbols={[MarkerType.Arrow]:ArrowSymbol,[MarkerType.ArrowClosed]:ArrowClosedSymbol};function useMarkerSymbol(e){const t=useStoreApi();return react.exports.useMemo(()=>{return Object.prototype.hasOwnProperty.call(MarkerSymbols,e)?MarkerSymbols[e]:(t.getState().onError?.("009",errorMessages["009"](e)),null)},[e])}const Marker=({id:e,type:t,color:n,width:o=12.5,height:r=12.5,markerUnits:i="strokeWidth",strokeWidth:a,orient:s="auto-start-reverse"})=>{t=useMarkerSymbol(t);return t?jsxRuntime.exports.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:""+o,markerHeight:""+r,viewBox:"-10 -10 20 20",markerUnits:i,orient:s,refX:"0",refY:"0",children:jsxRuntime.exports.jsx(t,{color:n,strokeWidth:a})}):null},markerSelector=({defaultColor:r,rfId:i})=>e=>{const o=[];return e.edges.reduce((n,e)=>([e.markerStart,e.markerEnd].forEach(e=>{var t;e&&"object"==typeof e&&(t=getMarkerId(e,i),o.includes(t)||(n.push({id:t,color:e.color||r,...e}),o.push(t)))}),n),[]).sort((e,t)=>e.id.localeCompare(t.id))},MarkerDefinitions=({defaultColor:e,rfId:t})=>{e=useStore(react.exports.useCallback(markerSelector({defaultColor:e,rfId:t}),[e,t]),(e,n)=>!(e.length!==n.length||e.some((e,t)=>e.id!==n[t].id)));return jsxRuntime.exports.jsx("defs",{children:e.map(e=>jsxRuntime.exports.jsx(Marker,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})};MarkerDefinitions.displayName="MarkerDefinitions";var MarkerDefinitions$1=react.exports.memo(MarkerDefinitions);const selector$4=e=>({nodesConnectable:e.nodesConnectable,edgesFocusable:e.edgesFocusable,elementsSelectable:e.elementsSelectable,width:e.width,height:e.height,connectionMode:e.connectionMode,nodeInternals:e.nodeInternals,onError:e.onError}),EdgeRenderer=({defaultMarkerColor:o,onlyRenderVisibleElements:e,elevateEdgesOnSelect:t,rfId:u,edgeTypes:p,noPanClassName:g,onEdgeUpdate:h,onEdgeContextMenu:f,onEdgeMouseEnter:m,onEdgeMouseMove:y,onEdgeMouseLeave:b,onEdgeClick:x,edgeUpdaterRadius:v,onEdgeDoubleClick:$,onEdgeUpdateStart:S,onEdgeUpdateEnd:_,children:n})=>{const{edgesFocusable:E,elementsSelectable:w,width:r,height:i,connectionMode:C,nodeInternals:N,onError:j}=useStore(selector$4,shallow);e=useVisibleEdges(e,N,t);return r?jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[e.map(({level:e,edges:t,isMaxLevel:n})=>jsxRuntime.exports.jsxs("svg",{style:{zIndex:e},width:r,height:i,className:"react-flow__edges react-flow__container",children:[n&&jsxRuntime.exports.jsx(MarkerDefinitions$1,{defaultColor:o,rfId:u}),jsxRuntime.exports.jsx("g",{children:t.map(e=>{var[t,n,o]=getNodeData(N.get(e.source)),[r,i,a]=getNodeData(N.get(e.target));if(!o||!a)return null;let s=e.type||"default";p[s]||(j?.("011",errorMessages["011"](s)),s="default");var l,o=p[s]||p.default,a=C===ConnectionMode.Strict?i.target:(i.target??[]).concat(i.source??[]),i=getHandle(n.source,e.sourceHandle),n=getHandle(a,e.targetHandle),a=i?.position||Position.Bottom,c=n?.position||Position.Top,d=!!(e.focusable||E&&void 0===e.focusable);return i&&n?({sourceX:t,sourceY:r,targetX:n,targetY:l}=getEdgePositions(t,i,a,r,n,c),jsxRuntime.exports.jsx(o,{id:e.id,className:cc([e.className,g]),type:s,data:e.data,selected:!!e.selected,animated:!!e.animated,hidden:!!e.hidden,label:e.label,labelStyle:e.labelStyle,labelShowBg:e.labelShowBg,labelBgStyle:e.labelBgStyle,labelBgPadding:e.labelBgPadding,labelBgBorderRadius:e.labelBgBorderRadius,style:e.style,source:e.source,target:e.target,sourceHandleId:e.sourceHandle,targetHandleId:e.targetHandle,markerEnd:e.markerEnd,markerStart:e.markerStart,sourceX:t,sourceY:r,targetX:n,targetY:l,sourcePosition:a,targetPosition:c,elementsSelectable:w,onEdgeUpdate:h,onContextMenu:f,onMouseEnter:m,onMouseMove:y,onMouseLeave:b,onClick:x,edgeUpdaterRadius:v,onEdgeDoubleClick:$,onEdgeUpdateStart:S,onEdgeUpdateEnd:_,rfId:u,ariaLabel:e.ariaLabel,isFocusable:d,pathOptions:"pathOptions"in e?e.pathOptions:void 0,interactionWidth:e.interactionWidth},e.id)):(j?.("008",errorMessages["008"](i,e)),null)})})]},e)),n]}):null};EdgeRenderer.displayName="EdgeRenderer";var EdgeRenderer$1=react.exports.memo(EdgeRenderer);const selector$3=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function Viewport({children:e}){var t=useStore(selector$3);return jsxRuntime.exports.jsx("div",{className:"react-flow__viewport react-flow__container",style:{transform:t},children:e})}function useOnInitHandler(e){const t=useReactFlow(),n=react.exports.useRef(!1);react.exports.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const oppositePosition={[Position.Left]:Position.Right,[Position.Right]:Position.Left,[Position.Top]:Position.Bottom,[Position.Bottom]:Position.Top},ConnectionLine=({nodeId:t,handleType:e,style:n,type:o=ConnectionLineType.Bezier,CustomComponent:r,connectionStatus:i})=>{const{fromNode:a,handleId:s,toX:l,toY:c,connectionMode:d}=useStore(react.exports.useCallback(e=>({fromNode:e.nodeInternals.get(t),handleId:e.connectionHandleId,toX:(e.connectionPosition.x-e.transform[0])/e.transform[2],toY:(e.connectionPosition.y-e.transform[1])/e.transform[2],connectionMode:e.connectionMode}),[t]),shallow);var u=a?.[internalsSymbol]?.handleBounds;let p=u?.[e];if(d===ConnectionMode.Loose&&(p=p||u?.["source"===e?"target":"source"]),!a||!p)return null;var u=s?p.find(e=>e.id===s):p[0],e=u?u.x+u.width/2:(a.width??0)/2,g=u?u.y+u.height/2:a.height??0,e=(a.positionAbsolute?.x??0)+e,g=(a.positionAbsolute?.y??0)+g,h=u?.position,f=h?oppositePosition[h]:null;if(!h||!f)return null;if(r)return jsxRuntime.exports.jsx(r,{connectionLineType:o,connectionLineStyle:n,fromNode:a,fromHandle:u,fromX:e,fromY:g,toX:l,toY:c,fromPosition:h,toPosition:f,connectionStatus:i});let m="";r={sourceX:e,sourceY:g,sourcePosition:h,targetX:l,targetY:c,targetPosition:f};return o===ConnectionLineType.Bezier?[m]=getBezierPath(r):o===ConnectionLineType.Step?[m]=getSmoothStepPath({...r,borderRadius:0}):o===ConnectionLineType.SmoothStep?[m]=getSmoothStepPath(r):o===ConnectionLineType.SimpleBezier?[m]=getSimpleBezierPath(r):m=`M${e},${g} ${l},`+c,jsxRuntime.exports.jsx("path",{d:m,fill:"none",className:"react-flow__connection-path",style:n})},selector$2=(ConnectionLine.displayName="ConnectionLine",e=>({nodeId:e.connectionNodeId,handleType:e.connectionHandleType,nodesConnectable:e.nodesConnectable,connectionStatus:e.connectionStatus,width:e.width,height:e.height}));function ConnectionLineWrapper({containerStyle:e,style:t,type:n,component:o}){var{nodeId:r,handleType:i,nodesConnectable:a,width:s,height:l,connectionStatus:c}=useStore(selector$2,shallow);return r&&i&&s&&a?jsxRuntime.exports.jsx("svg",{style:e,width:s,height:l,className:"react-flow__edges react-flow__connectionline react-flow__container",children:jsxRuntime.exports.jsx("g",{className:cc(["react-flow__connection",c]),children:jsxRuntime.exports.jsx(ConnectionLine,{nodeId:r,handleType:i,style:t,type:n,CustomComponent:o,connectionStatus:c})})}):null}const GraphView=({nodeTypes:e,edgeTypes:t,onMove:n,onMoveStart:o,onMoveEnd:r,onInit:i,onNodeClick:a,onEdgeClick:s,onNodeDoubleClick:l,onEdgeDoubleClick:c,onNodeMouseEnter:d,onNodeMouseMove:u,onNodeMouseLeave:p,onNodeContextMenu:g,onSelectionContextMenu:h,onSelectionStart:f,onSelectionEnd:m,connectionLineType:y,connectionLineStyle:b,connectionLineComponent:x,connectionLineContainerStyle:v,selectionKeyCode:$,selectionOnDrag:S,selectionMode:_,multiSelectionKeyCode:E,panActivationKeyCode:w,zoomActivationKeyCode:C,deleteKeyCode:N,onlyRenderVisibleElements:j,elementsSelectable:I,selectNodesOnDrag:T,defaultViewport:O,translateExtent:k,minZoom:D,maxZoom:L,preventScrolling:B,defaultMarkerColor:F,zoomOnScroll:z,zoomOnPinch:V,panOnScroll:G,panOnScrollSpeed:H,panOnScrollMode:U,zoomOnDoubleClick:K,panOnDrag:W,onPaneClick:Y,onPaneMouseEnter:X,onPaneMouseMove:q,onPaneMouseLeave:Z,onPaneScroll:Q,onPaneContextMenu:J,onEdgeUpdate:ee,onEdgeContextMenu:te,onEdgeMouseEnter:ne,onEdgeMouseMove:oe,onEdgeMouseLeave:re,edgeUpdaterRadius:ie,onEdgeUpdateStart:ae,onEdgeUpdateEnd:se,noDragClassName:R,noWheelClassName:le,noPanClassName:P,elevateEdgesOnSelect:ce,disableKeyboardA11y:A,nodeOrigin:de,nodeExtent:ue,rfId:M})=>(useOnInitHandler(i),jsxRuntime.exports.jsx(FlowRenderer$1,{onPaneClick:Y,onPaneMouseEnter:X,onPaneMouseMove:q,onPaneMouseLeave:Z,onPaneContextMenu:J,onPaneScroll:Q,deleteKeyCode:N,selectionKeyCode:$,selectionOnDrag:S,selectionMode:_,onSelectionStart:f,onSelectionEnd:m,multiSelectionKeyCode:E,panActivationKeyCode:w,zoomActivationKeyCode:C,elementsSelectable:I,onMove:n,onMoveStart:o,onMoveEnd:r,zoomOnScroll:z,zoomOnPinch:V,zoomOnDoubleClick:K,panOnScroll:G,panOnScrollSpeed:H,panOnScrollMode:U,panOnDrag:W,defaultViewport:O,translateExtent:k,minZoom:D,maxZoom:L,onSelectionContextMenu:h,preventScrolling:B,noDragClassName:R,noWheelClassName:le,noPanClassName:P,disableKeyboardA11y:A,children:jsxRuntime.exports.jsxs(Viewport,{children:[jsxRuntime.exports.jsx(EdgeRenderer$1,{edgeTypes:t,onEdgeClick:s,onEdgeDoubleClick:c,onEdgeUpdate:ee,onlyRenderVisibleElements:j,onEdgeContextMenu:te,onEdgeMouseEnter:ne,onEdgeMouseMove:oe,onEdgeMouseLeave:re,onEdgeUpdateStart:ae,onEdgeUpdateEnd:se,edgeUpdaterRadius:ie,defaultMarkerColor:F,noPanClassName:P,elevateEdgesOnSelect:!!ce,disableKeyboardA11y:A,rfId:M,children:jsxRuntime.exports.jsx(ConnectionLineWrapper,{style:b,type:y,component:x,containerStyle:v})}),jsxRuntime.exports.jsx("div",{className:"react-flow__edgelabel-renderer"}),jsxRuntime.exports.jsx(NodeRenderer$1,{nodeTypes:e,onNodeClick:a,onNodeDoubleClick:l,onNodeMouseEnter:d,onNodeMouseMove:u,onNodeMouseLeave:p,onNodeContextMenu:g,selectNodesOnDrag:T,onlyRenderVisibleElements:j,noPanClassName:P,noDragClassName:R,disableKeyboardA11y:A,nodeOrigin:de,nodeExtent:ue,rfId:M})]})}));GraphView.displayName="GraphView";var GraphView$1=react.exports.memo(GraphView);const infiniteExtent=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],initialState$6={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:infiniteExtent,nodeExtent:infiniteExtent,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:ConnectionMode.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,multiSelectionActive:!1,connectionStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:devWarn},createRFStore=()=>createStore((d,u)=>({...initialState$6,setNodes:e=>{var{nodeInternals:t,nodeOrigin:n,elevateNodesOnSelect:o}=u();d({nodeInternals:createNodeInternals(e,t,n,o)})},getNodes:()=>Array.from(u().nodeInternals.values()),setEdges:e=>{const{defaultEdgeOptions:t={}}=u();d({edges:e.map(e=>({...t,...e}))})},setDefaultNodesAndEdges:(e,t)=>{var n=void 0!==e,o=void 0!==t,e=n?createNodeInternals(e,new Map,u().nodeOrigin,u().elevateNodesOnSelect):new Map;d({nodeInternals:e,edges:o?t:[],hasDefaultNodes:n,hasDefaultEdges:o})},updateNodeDimensions:e=>{const{onNodesChange:t,nodeInternals:r,fitViewOnInit:n,fitViewOnInitDone:o,fitViewOnInitOptions:i,domNode:a,nodeOrigin:s}=u();var l=a?.querySelector(".react-flow__viewport");if(l){l=window.getComputedStyle(l);const c=new window.DOMMatrixReadOnly(l.transform)["m22"];l=e.reduce((e,t)=>{var n,o=r.get(t.id);return o&&(n=getDimensions(t.nodeElement)).width&&n.height&&(o.width!==n.width||o.height!==n.height||t.forceUpdate)&&(r.set(o.id,{...o,[internalsSymbol]:{...o[internalsSymbol],handleBounds:{source:getHandleBounds(".source",t.nodeElement,c,s),target:getHandleBounds(".target",t.nodeElement,c,s)}},...n}),e.push({id:o.id,type:"dimensions",dimensions:n})),e},[]),e=(updateAbsoluteNodePositions(r,s),o||n&&!o&&fitView(u,{initial:!0,...i}));d({nodeInternals:new Map(r),fitViewOnInitDone:e}),0<l?.length&&t?.(l)}},updateNodePositions:(e,n=!0,o=!1)=>{var t=u()["triggerNodeChanges"];t(e.map(e=>{var t={id:e.id,type:"position",dragging:o};return n&&(t.positionAbsolute=e.positionAbsolute,t.position=e.position),t}))},triggerNodeChanges:e=>{var{onNodesChange:t,nodeInternals:n,hasDefaultNodes:o,nodeOrigin:r,getNodes:i,elevateNodesOnSelect:a}=u();e?.length&&(o&&(o=createNodeInternals(applyNodeChanges(e,i()),n,r,a),d({nodeInternals:o})),t?.(e))},addSelectedNodes:e=>{var{multiSelectionActive:t,edges:n,getNodes:o}=u();let r,i=null;t?r=e.map(e=>createSelectionChange(e,!0)):(r=getSelectionChanges(o(),e),i=getSelectionChanges(n,[])),updateNodesAndEdgesSelections({changedNodes:r,changedEdges:i,get:u,set:d})},addSelectedEdges:e=>{var{multiSelectionActive:t,edges:n,getNodes:o}=u();let r,i=null;t?r=e.map(e=>createSelectionChange(e,!0)):(r=getSelectionChanges(n,e),i=getSelectionChanges(o(),[])),updateNodesAndEdgesSelections({changedNodes:i,changedEdges:r,get:u,set:d})},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{var{edges:n,getNodes:o}=u(),t=t||n;updateNodesAndEdgesSelections({changedNodes:(e||o()).map(e=>(e.selected=!1,createSelectionChange(e.id,!1))),changedEdges:t.map(e=>createSelectionChange(e.id,!1)),get:u,set:d})},setMinZoom:e=>{var{d3Zoom:t,maxZoom:n}=u();t?.scaleExtent([e,n]),d({minZoom:e})},setMaxZoom:e=>{var{d3Zoom:t,minZoom:n}=u();t?.scaleExtent([n,e]),d({maxZoom:e})},setTranslateExtent:e=>{u().d3Zoom?.translateExtent(e),d({translateExtent:e})},resetSelectedElements:()=>{var{edges:e,getNodes:t}=u();updateNodesAndEdgesSelections({changedNodes:t().filter(e=>e.selected).map(e=>createSelectionChange(e.id,!1)),changedEdges:e.filter(e=>e.selected).map(e=>createSelectionChange(e.id,!1)),get:u,set:d})},setNodeExtent:t=>{var e=u()["nodeInternals"];e.forEach(e=>{e.positionAbsolute=clampPosition(e.position,t)}),d({nodeExtent:t,nodeInternals:new Map(e)})},panBy:e=>{var{transform:t,width:n,height:o,d3Zoom:r,d3Selection:i,translateExtent:a}=u();r&&i&&(e.x||e.y)&&(e=identity.translate(t[0]+e.x,t[1]+e.y).scale(t[2]),t=[[0,0],[n,o]],n=r?.constrain()(e,t,a),r.transform(i,n))},cancelConnection:()=>d({connectionNodeId:initialState$6.connectionNodeId,connectionHandleId:initialState$6.connectionHandleId,connectionHandleType:initialState$6.connectionHandleType,connectionStatus:initialState$6.connectionStatus}),reset:()=>d({...initialState$6})})),ReactFlowProvider=({children:e})=>{var t=react.exports.useRef(null);return t.current||(t.current=createRFStore()),jsxRuntime.exports.jsx(Provider$1,{value:t.current,children:e})},Wrapper=(ReactFlowProvider.displayName="ReactFlowProvider",({children:e})=>{return react.exports.useContext(StoreContext)?jsxRuntime.exports.jsx(jsxRuntime.exports.Fragment,{children:e}):jsxRuntime.exports.jsx(ReactFlowProvider,{children:e})});function useNodeOrEdgeTypes(e,t){return react.exports.useRef(null),react.exports.useMemo(()=>t(e),[e])}Wrapper.displayName="ReactFlowWrapper";const defaultNodeTypes={input:InputNode$1,default:DefaultNode$1,output:OutputNode$1,group:GroupNode},defaultEdgeTypes={default:BezierEdge,straight:StraightEdge,step:StepEdge,smoothstep:SmoothStepEdge,simplebezier:SimpleBezierEdge},initNodeOrigin=[0,0],initSnapGrid=[15,15],initDefaultViewport={x:0,y:0,zoom:1},wrapperStyle={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},ReactFlow=react.exports.forwardRef(({nodes:e,edges:t,defaultNodes:n,defaultEdges:o,className:r,nodeTypes:i=defaultNodeTypes,edgeTypes:a=defaultEdgeTypes,onNodeClick:s,onEdgeClick:l,onInit:c,onMove:d,onMoveStart:u,onMoveEnd:p,onConnect:g,onConnectStart:h,onConnectEnd:f,onClickConnectStart:m,onClickConnectEnd:y,onNodeMouseEnter:b,onNodeMouseMove:x,onNodeMouseLeave:v,onNodeContextMenu:$,onNodeDoubleClick:S,onNodeDragStart:_,onNodeDrag:E,onNodeDragStop:w,onNodesDelete:C,onEdgesDelete:k,onSelectionChange:D,onSelectionDragStart:L,onSelectionDrag:B,onSelectionDragStop:F,onSelectionContextMenu:z,onSelectionStart:V,onSelectionEnd:G,connectionMode:H=ConnectionMode.Strict,connectionLineType:U=ConnectionLineType.Bezier,connectionLineStyle:K,connectionLineComponent:W,connectionLineContainerStyle:Y,deleteKeyCode:X="Backspace",selectionKeyCode:q="Shift",selectionOnDrag:Z=!1,selectionMode:Q=SelectionMode.Full,panActivationKeyCode:J="Space",multiSelectionKeyCode:ee="Meta",zoomActivationKeyCode:te="Meta",snapToGrid:ne=!1,snapGrid:oe=initSnapGrid,onlyRenderVisibleElements:re=!1,selectNodesOnDrag:ie=!0,nodesDraggable:ae,nodesConnectable:se,nodesFocusable:le,nodeOrigin:N=initNodeOrigin,edgesFocusable:ce,elementsSelectable:de,defaultViewport:ue=initDefaultViewport,minZoom:j=.5,maxZoom:I=2,translateExtent:T=infiniteExtent,preventScrolling:pe=!0,nodeExtent:O,defaultMarkerColor:ge="#b1b1b7",zoomOnScroll:he=!0,zoomOnPinch:fe=!0,panOnScroll:me=!1,panOnScrollSpeed:ye=.5,panOnScrollMode:be=PanOnScrollMode.Free,zoomOnDoubleClick:xe=!0,panOnDrag:ve=!0,onPaneClick:$e,onPaneMouseEnter:Se,onPaneMouseMove:_e,onPaneMouseLeave:Ee,onPaneScroll:we,onPaneContextMenu:Ce,children:Ne,onEdgeUpdate:je,onEdgeContextMenu:Ie,onEdgeDoubleClick:Te,onEdgeMouseEnter:Oe,onEdgeMouseMove:Re,onEdgeMouseLeave:Pe,onEdgeUpdateStart:Ae,onEdgeUpdateEnd:Me,edgeUpdaterRadius:ke=10,onNodesChange:De,onEdgesChange:Le,noDragClassName:Be="nodrag",noWheelClassName:Fe="nowheel",noPanClassName:R="nopan",fitView:ze=!1,fitViewOptions:Ve,connectOnClick:Ge=!0,attributionPosition:He,proOptions:Ue,defaultEdgeOptions:Ke,elevateNodesOnSelect:We=!0,elevateEdgesOnSelect:Ye=!1,disableKeyboardA11y:P=!1,autoPanOnConnect:Xe=!0,autoPanOnNodeDrag:qe=!0,connectionRadius:Ze=20,onError:Qe,style:Je,id:A,...et},tt)=>{var i=useNodeOrEdgeTypes(i,createNodeTypes),a=useNodeOrEdgeTypes(a,createEdgeTypes),M=A||"1";return jsxRuntime.exports.jsx("div",{...et,style:{...Je,...wrapperStyle},ref:tt,className:cc(["react-flow",r]),"data-testid":"rf__wrapper",id:A,children:jsxRuntime.exports.jsxs(Wrapper,{children:[jsxRuntime.exports.jsx(GraphView$1,{onInit:c,onMove:d,onMoveStart:u,onMoveEnd:p,onNodeClick:s,onEdgeClick:l,onNodeMouseEnter:b,onNodeMouseMove:x,onNodeMouseLeave:v,onNodeContextMenu:$,onNodeDoubleClick:S,nodeTypes:i,edgeTypes:a,connectionLineType:U,connectionLineStyle:K,connectionLineComponent:W,connectionLineContainerStyle:Y,selectionKeyCode:q,selectionOnDrag:Z,selectionMode:Q,deleteKeyCode:X,multiSelectionKeyCode:ee,panActivationKeyCode:J,zoomActivationKeyCode:te,onlyRenderVisibleElements:re,selectNodesOnDrag:ie,defaultViewport:ue,translateExtent:T,minZoom:j,maxZoom:I,preventScrolling:pe,zoomOnScroll:he,zoomOnPinch:fe,zoomOnDoubleClick:xe,panOnScroll:me,panOnScrollSpeed:ye,panOnScrollMode:be,panOnDrag:ve,onPaneClick:$e,onPaneMouseEnter:Se,onPaneMouseMove:_e,onPaneMouseLeave:Ee,onPaneScroll:we,onPaneContextMenu:Ce,onSelectionContextMenu:z,onSelectionStart:V,onSelectionEnd:G,onEdgeUpdate:je,onEdgeContextMenu:Ie,onEdgeDoubleClick:Te,onEdgeMouseEnter:Oe,onEdgeMouseMove:Re,onEdgeMouseLeave:Pe,onEdgeUpdateStart:Ae,onEdgeUpdateEnd:Me,edgeUpdaterRadius:ke,defaultMarkerColor:ge,noDragClassName:Be,noWheelClassName:Fe,noPanClassName:R,elevateEdgesOnSelect:Ye,rfId:M,disableKeyboardA11y:P,nodeOrigin:N,nodeExtent:O}),jsxRuntime.exports.jsx(StoreUpdater,{nodes:e,edges:t,defaultNodes:n,defaultEdges:o,onConnect:g,onConnectStart:h,onConnectEnd:f,onClickConnectStart:m,onClickConnectEnd:y,nodesDraggable:ae,nodesConnectable:se,nodesFocusable:le,edgesFocusable:ce,elementsSelectable:de,elevateNodesOnSelect:We,minZoom:j,maxZoom:I,nodeExtent:O,onNodesChange:De,onEdgesChange:Le,snapToGrid:ne,snapGrid:oe,connectionMode:H,translateExtent:T,connectOnClick:Ge,defaultEdgeOptions:Ke,fitView:ze,fitViewOptions:Ve,onNodesDelete:C,onEdgesDelete:k,onNodeDragStart:_,onNodeDrag:E,onNodeDragStop:w,onSelectionDrag:B,onSelectionDragStart:L,onSelectionDragStop:F,noPanClassName:R,nodeOrigin:N,rfId:M,autoPanOnConnect:Xe,autoPanOnNodeDrag:qe,onError:Qe,connectionRadius:Ze}),jsxRuntime.exports.jsx(Wrapper$1,{onSelectionChange:D}),Ne,jsxRuntime.exports.jsx(Attribution,{proOptions:Ue,position:He}),jsxRuntime.exports.jsx(A11yDescriptions,{rfId:M,disableKeyboardA11y:P})]})})});function PlusIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:jsxRuntime.exports.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function MinusIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:jsxRuntime.exports.jsx("path",{d:"M0 0h32v4.2H0z"})})}function FitViewIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:jsxRuntime.exports.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function LockIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:jsxRuntime.exports.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function UnlockIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:jsxRuntime.exports.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}ReactFlow.displayName="ReactFlow";const ControlButton=({children:e,className:t,...n})=>jsxRuntime.exports.jsx("button",{type:"button",className:cc(["react-flow__controls-button",t]),...n,children:e}),isInteractiveSelector=(ControlButton.displayName="ControlButton",e=>e.nodesDraggable&&e.nodesConnectable&&e.elementsSelectable),Controls=({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:r,onZoomIn:i,onZoomOut:a,onFitView:s,onInteractiveChange:l,className:c,children:d,position:u="bottom-left"})=>{const p=useStoreApi(),[g,h]=react.exports.useState(!1),f=useStore(isInteractiveSelector),{zoomIn:m,zoomOut:y,fitView:b}=useReactFlow();return react.exports.useEffect(()=>{h(!0)},[]),g?jsxRuntime.exports.jsxs(Panel,{className:cc(["react-flow__controls",c]),position:u,style:e,children:[t&&jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(ControlButton,{onClick:()=>{m(),i?.()},className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",children:jsxRuntime.exports.jsx(PlusIcon,{})}),jsxRuntime.exports.jsx(ControlButton,{onClick:()=>{y(),a?.()},className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",children:jsxRuntime.exports.jsx(MinusIcon,{})})]}),n&&jsxRuntime.exports.jsx(ControlButton,{className:"react-flow__controls-fitview",onClick:()=>{b(r),s?.()},title:"fit view","aria-label":"fit view",children:jsxRuntime.exports.jsx(FitViewIcon,{})}),o&&jsxRuntime.exports.jsx(ControlButton,{className:"react-flow__controls-interactive",onClick:()=>{p.setState({nodesDraggable:!f,nodesConnectable:!f,elementsSelectable:!f}),l?.(!f)},title:"toggle interactivity","aria-label":"toggle interactivity",children:f?jsxRuntime.exports.jsx(UnlockIcon,{}):jsxRuntime.exports.jsx(LockIcon,{})}),d]}):null};Controls.displayName="Controls";var BackgroundVariant,Controls$1=react.exports.memo(Controls);function LinePattern({color:e,dimensions:t,lineWidth:n}){return jsxRuntime.exports.jsx("path",{stroke:e,strokeWidth:n,d:`M${t[0]/2} 0 V${t[1]} M0 ${t[1]/2} H`+t[0]})}function DotPattern({color:e,radius:t}){return jsxRuntime.exports.jsx("circle",{cx:t,cy:t,r:t,fill:e})}!function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"}(BackgroundVariant=BackgroundVariant||{});const defaultColor={[BackgroundVariant.Dots]:"#91919a",[BackgroundVariant.Lines]:"#eee",[BackgroundVariant.Cross]:"#e2e2e2"},defaultSize={[BackgroundVariant.Dots]:1,[BackgroundVariant.Lines]:1,[BackgroundVariant.Cross]:6},selector=e=>({transform:e.transform,patternId:"pattern-"+e.rfId});function Background({variant:e=BackgroundVariant.Dots,gap:t=20,size:n,lineWidth:o=1,color:r,style:i,className:a}){var s=react.exports.useRef(null),{transform:l,patternId:c}=useStore(selector,shallow),r=r||defaultColor[e],n=n||defaultSize[e],d=e===BackgroundVariant.Dots,e=e===BackgroundVariant.Cross,t=Array.isArray(t)?t:[t,t],t=[t[0]*l[2]||1,t[1]*l[2]||1],n=n*l[2],e=e?[n,n]:t,u=d?[n/2,n/2]:[e[0]/2,e[1]/2];return jsxRuntime.exports.jsxs("svg",{className:cc(["react-flow__background",a]),style:{...i,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:s,children:[jsxRuntime.exports.jsx("pattern",{id:c,x:l[0]%t[0],y:l[1]%t[1],width:t[0],height:t[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${u[0]},-${u[1]})`,children:d?jsxRuntime.exports.jsx(DotPattern,{color:r,radius:n/2}):jsxRuntime.exports.jsx(LinePattern,{dimensions:e,color:r,lineWidth:o})}),jsxRuntime.exports.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${c})`})]})}Background.displayName="Background";var match,version,store,wmget,wmhas,wmset,set,get,has,STATE,activeXDocument,IteratorPrototype$2,PrototypeOfArrayIteratorPrototype,arrayIterator,Background$1=react.exports.memo(Background),commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},check=function(e){return e&&e.Math==Math&&e},global$d=check("object"==typeof globalThis&&globalThis)||check("object"==typeof window&&window)||check("object"==typeof self&&self)||check("object"==typeof commonjsGlobal&&commonjsGlobal)||function(){return this}()||Function("return this")(),objectGetOwnPropertyDescriptor={},fails$e=function(e){try{return!!e()}catch(e){return!0}},fails$d=fails$e,descriptors=!fails$e(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}),fails$c=fails$e,functionBindNative=!fails$e(function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}),NATIVE_BIND$1=functionBindNative,call$6=Function.prototype.call,functionCall=NATIVE_BIND$1?call$6.bind(call$6):function(){return call$6.apply(call$6,arguments)},objectPropertyIsEnumerable={},$propertyIsEnumerable={}.propertyIsEnumerable,getOwnPropertyDescriptor$2=Object.getOwnPropertyDescriptor,NASHORN_BUG=getOwnPropertyDescriptor$2&&!$propertyIsEnumerable.call({1:2},1),createPropertyDescriptor$3=(objectPropertyIsEnumerable.f=NASHORN_BUG?function(e){e=getOwnPropertyDescriptor$2(this,e);return!!e&&e.enumerable}:$propertyIsEnumerable,function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}),NATIVE_BIND=functionBindNative,FunctionPrototype$1=Function.prototype,bind=FunctionPrototype$1.bind,call$5=FunctionPrototype$1.call,uncurryThis$f=NATIVE_BIND&&bind.bind(call$5,call$5),functionUncurryThis=NATIVE_BIND?function(e){return e&&uncurryThis$f(e)}:function(e){return e&&function(){return call$5.apply(e,arguments)}},uncurryThis$e=functionUncurryThis,toString$6=uncurryThis$e({}.toString),stringSlice$2=uncurryThis$e("".slice),classofRaw$1=function(e){return stringSlice$2(toString$6(e),8,-1)},uncurryThis$d=functionUncurryThis,fails$b=fails$e,classof$4=classofRaw$1,$Object$4=Object,split=functionUncurryThis("".split),indexedObject=fails$b(function(){return!$Object$4("z").propertyIsEnumerable(0)})?function(e){return"String"==classof$4(e)?split(e,""):$Object$4(e)}:$Object$4,$TypeError$8=TypeError,requireObjectCoercible$5=function(e){if(null==e)throw $TypeError$8("Can't call method on "+e);return e},IndexedObject$2=indexedObject,requireObjectCoercible$4=requireObjectCoercible$5,toIndexedObject$5=function(e){return IndexedObject$2(requireObjectCoercible$4(e))},isCallable$g=function(e){return"function"==typeof e},isCallable$f=isCallable$g,isObject$6=function(e){return"object"==typeof e?null!==e:isCallable$f(e)},global$c=global$d,isCallable$e=isCallable$g,aFunction=function(e){return isCallable$e(e)?e:void 0},getBuiltIn$4=function(e,t){return arguments.length<2?aFunction(global$c[e]):global$c[e]&&global$c[e][t]},uncurryThis$c=functionUncurryThis,objectIsPrototypeOf=functionUncurryThis({}.isPrototypeOf),getBuiltIn$3=getBuiltIn$4,engineUserAgent=getBuiltIn$4("navigator","userAgent")||"",global$b=global$d,userAgent=engineUserAgent,process=global$b.process,Deno=global$b.Deno,versions=process&&process.versions||Deno&&Deno.version,v8=versions&&versions.v8,engineV8Version=version=!(version=v8?0<(match=v8.split("."))[0]&&match[0]<4?1:+(match[0]+match[1]):version)&&userAgent&&(!(match=userAgent.match(/Edge\/(\d+)/))||74<=match[1])&&(match=userAgent.match(/Chrome\/(\d+)/))?+match[1]:version,V8_VERSION=engineV8Version,fails$a=fails$e,nativeSymbol=!!Object.getOwnPropertySymbols&&!fails$a(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&V8_VERSION&&V8_VERSION<41}),NATIVE_SYMBOL$2=nativeSymbol,useSymbolAsUid=nativeSymbol&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,getBuiltIn$2=getBuiltIn$4,isCallable$d=isCallable$g,isPrototypeOf$1=objectIsPrototypeOf,USE_SYMBOL_AS_UID$1=useSymbolAsUid,$Object$3=Object,isSymbol$2=useSymbolAsUid?function(e){return"symbol"==typeof e}:function(e){var t=getBuiltIn$2("Symbol");return isCallable$d(t)&&isPrototypeOf$1(t.prototype,$Object$3(e))},$String$3=String,tryToString$1=function(e){try{return $String$3(e)}catch(e){return"Object"}},isCallable$c=isCallable$g,tryToString=tryToString$1,$TypeError$7=TypeError,aCallable$2=function(e){if(isCallable$c(e))return e;throw $TypeError$7(tryToString(e)+" is not a function")},aCallable$1=aCallable$2,getMethod$1=function(e,t){e=e[t];return null==e?void 0:aCallable$1(e)},call$4=functionCall,isCallable$b=isCallable$g,isObject$5=isObject$6,$TypeError$6=TypeError,ordinaryToPrimitive$1=function(e,t){var n,o;if("string"===t&&isCallable$b(n=e.toString)&&!isObject$5(o=call$4(n,e)))return o;if(isCallable$b(n=e.valueOf)&&!isObject$5(o=call$4(n,e)))return o;if("string"!==t&&isCallable$b(n=e.toString)&&!isObject$5(o=call$4(n,e)))return o;throw $TypeError$6("Can't convert object to primitive value")},shared$3={exports:{}},global$a=global$d,defineProperty$6=Object.defineProperty,defineGlobalProperty$3=function(t,n){try{defineProperty$6(global$a,t,{value:n,configurable:!0,writable:!0})}catch(e){global$a[t]=n}return n},global$9=global$d,defineGlobalProperty$2=defineGlobalProperty$3,SHARED="__core-js_shared__",store$3=global$d[SHARED]||defineGlobalProperty$2(SHARED,{}),sharedStore=store$3,store$2=sharedStore,requireObjectCoercible$3=((shared$3.exports=function(e,t){return store$2[e]||(store$2[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.24.1",mode:"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.24.1/LICENSE",source:"https://github.com/zloirock/core-js"}),requireObjectCoercible$5),$Object$2=Object,toObject$4=function(e){return $Object$2(requireObjectCoercible$3(e))},uncurryThis$b=functionUncurryThis,toObject$3=toObject$4,hasOwnProperty=functionUncurryThis({}.hasOwnProperty),hasOwnProperty_1=Object.hasOwn||function(e,t){return hasOwnProperty(toObject$3(e),t)},uncurryThis$a=functionUncurryThis,id=0,postfix=Math.random(),toString$5=uncurryThis$a(1..toString),uid$2=function(e){return"Symbol("+(void 0===e?"":e)+")_"+toString$5(++id+postfix,36)},global$8=global$d,shared$2=shared$3.exports,hasOwn$9=hasOwnProperty_1,uid$1=uid$2,NATIVE_SYMBOL$1=nativeSymbol,USE_SYMBOL_AS_UID=useSymbolAsUid,WellKnownSymbolsStore=shared$2("wks"),Symbol$1=global$8.Symbol,symbolFor=Symbol$1&&Symbol$1.for,createWellKnownSymbol=USE_SYMBOL_AS_UID?Symbol$1:Symbol$1&&Symbol$1.withoutSetter||uid$1,wellKnownSymbol$a=function(e){var t;return hasOwn$9(WellKnownSymbolsStore,e)&&(NATIVE_SYMBOL$1||"string"==typeof WellKnownSymbolsStore[e])||(t="Symbol."+e,NATIVE_SYMBOL$1&&hasOwn$9(Symbol$1,e)?WellKnownSymbolsStore[e]=Symbol$1[e]:WellKnownSymbolsStore[e]=(USE_SYMBOL_AS_UID&&symbolFor?symbolFor:createWellKnownSymbol)(t)),WellKnownSymbolsStore[e]},call$3=functionCall,isObject$4=isObject$6,isSymbol$1=isSymbol$2,getMethod=getMethod$1,ordinaryToPrimitive=ordinaryToPrimitive$1,wellKnownSymbol$9=wellKnownSymbol$a,$TypeError$5=TypeError,TO_PRIMITIVE=wellKnownSymbol$a("toPrimitive"),toPrimitive$1=function(e,t){if(!isObject$4(e)||isSymbol$1(e))return e;var n=getMethod(e,TO_PRIMITIVE);if(n){if(n=call$3(n,e,t=void 0===t?"default":t),!isObject$4(n)||isSymbol$1(n))return n;throw $TypeError$5("Can't convert object to primitive value")}return ordinaryToPrimitive(e,t=void 0===t?"number":t)},toPrimitive=toPrimitive$1,isSymbol=isSymbol$2,toPropertyKey$2=function(e){e=toPrimitive(e,"string");return isSymbol(e)?e:e+""},global$7=global$d,isObject$3=isObject$6,document$1=global$d.document,EXISTS$1=isObject$3(document$1)&&isObject$3(document$1.createElement),documentCreateElement$2=function(e){return EXISTS$1?document$1.createElement(e):{}},DESCRIPTORS$a=descriptors,fails$9=fails$e,createElement=documentCreateElement$2,ie8DomDefine=!descriptors&&!fails$e(function(){return 7!=Object.defineProperty(createElement("div"),"a",{get:function(){return 7}}).a}),DESCRIPTORS$9=descriptors,call$2=functionCall,propertyIsEnumerableModule$1=objectPropertyIsEnumerable,createPropertyDescriptor$2=createPropertyDescriptor$3,toIndexedObject$4=toIndexedObject$5,toPropertyKey$1=toPropertyKey$2,hasOwn$8=hasOwnProperty_1,IE8_DOM_DEFINE$1=ie8DomDefine,$getOwnPropertyDescriptor$1=Object.getOwnPropertyDescriptor,objectDefineProperty=(objectGetOwnPropertyDescriptor.f=DESCRIPTORS$9?$getOwnPropertyDescriptor$1:function(e,t){if(e=toIndexedObject$4(e),t=toPropertyKey$1(t),IE8_DOM_DEFINE$1)try{return $getOwnPropertyDescriptor$1(e,t)}catch(e){}if(hasOwn$8(e,t))return createPropertyDescriptor$2(!call$2(propertyIsEnumerableModule$1.f,e,t),e[t])},{}),DESCRIPTORS$8=descriptors,fails$8=fails$e,v8PrototypeDefineBug=descriptors&&fails$e(function(){return 42!=Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype}),isObject$2=isObject$6,$String$2=String,$TypeError$4=TypeError,anObject$5=function(e){if(isObject$2(e))return e;throw $TypeError$4($String$2(e)+" is not an object")},DESCRIPTORS$7=descriptors,IE8_DOM_DEFINE=ie8DomDefine,V8_PROTOTYPE_DEFINE_BUG$1=v8PrototypeDefineBug,anObject$4=anObject$5,toPropertyKey=toPropertyKey$2,$TypeError$3=TypeError,$defineProperty=Object.defineProperty,$getOwnPropertyDescriptor=Object.getOwnPropertyDescriptor,ENUMERABLE="enumerable",CONFIGURABLE$1="configurable",WRITABLE="writable",DESCRIPTORS$6=(objectDefineProperty.f=DESCRIPTORS$7?V8_PROTOTYPE_DEFINE_BUG$1?function(e,t,n){var o;return anObject$4(e),t=toPropertyKey(t),anObject$4(n),"function"==typeof e&&"prototype"===t&&"value"in n&&WRITABLE in n&&!n[WRITABLE]&&(o=$getOwnPropertyDescriptor(e,t))&&o[WRITABLE]&&(e[t]=n.value,n={configurable:(CONFIGURABLE$1 in n?n:o)[CONFIGURABLE$1],enumerable:(ENUMERABLE in n?n:o)[ENUMERABLE],writable:!1}),$defineProperty(e,t,n)}:$defineProperty:function(e,t,n){if(anObject$4(e),t=toPropertyKey(t),anObject$4(n),IE8_DOM_DEFINE)try{return $defineProperty(e,t,n)}catch(e){}if("get"in n||"set"in n)throw $TypeError$3("Accessors not supported");return"value"in n&&(e[t]=n.value),e},descriptors),definePropertyModule$3=objectDefineProperty,createPropertyDescriptor$1=createPropertyDescriptor$3,createNonEnumerableProperty$4=DESCRIPTORS$6?function(e,t,n){return definePropertyModule$3.f(e,t,createPropertyDescriptor$1(1,n))}:function(e,t,n){return e[t]=n,e},makeBuiltIn$2={exports:{}},DESCRIPTORS$5=descriptors,hasOwn$7=hasOwnProperty_1,FunctionPrototype=Function.prototype,getDescriptor=DESCRIPTORS$5&&Object.getOwnPropertyDescriptor,EXISTS=hasOwn$7(FunctionPrototype,"name"),PROPER=EXISTS&&"something"===function(){}.name,CONFIGURABLE=EXISTS&&(!DESCRIPTORS$5||getDescriptor(FunctionPrototype,"name").configurable),functionName={EXISTS:EXISTS,PROPER:PROPER,CONFIGURABLE:CONFIGURABLE},uncurryThis$9=functionUncurryThis,isCallable$a=isCallable$g,store$1=sharedStore,functionToString=functionUncurryThis(Function.toString),inspectSource$2=(isCallable$a(store$1.inspectSource)||(store$1.inspectSource=function(e){return functionToString(e)}),store$1.inspectSource),global$6=global$d,isCallable$9=isCallable$g,inspectSource$1=inspectSource$2,WeakMap$1=global$d.WeakMap,nativeWeakMap=isCallable$9(WeakMap$1)&&/native code/.test(inspectSource$1(WeakMap$1)),shared$1=shared$3.exports,uid=uid$2,keys=shared$1("keys"),sharedKey$3=function(e){return keys[e]||(keys[e]=uid(e))},hiddenKeys$4={},NATIVE_WEAK_MAP=nativeWeakMap,global$5=global$d,uncurryThis$8=functionUncurryThis,isObject$1=isObject$6,createNonEnumerableProperty$3=createNonEnumerableProperty$4,hasOwn$6=hasOwnProperty_1,shared=sharedStore,sharedKey$2=sharedKey$3,hiddenKeys$3=hiddenKeys$4,OBJECT_ALREADY_INITIALIZED="Object already initialized",TypeError$1=global$5.TypeError,WeakMap=global$5.WeakMap,enforce=function(e){return has(e)?get(e):set(e,{})},getterFor=function(t){return function(e){if(isObject$1(e)&&(e=get(e)).type===t)return e;throw TypeError$1("Incompatible receiver, "+t+" required")}},internalState=(has=NATIVE_WEAK_MAP||shared.state?(store=shared.state||(shared.state=new WeakMap),wmget=uncurryThis$8(store.get),wmhas=uncurryThis$8(store.has),wmset=uncurryThis$8(store.set),set=function(e,t){if(wmhas(store,e))throw new TypeError$1(OBJECT_ALREADY_INITIALIZED);return t.facade=e,wmset(store,e,t),t},get=function(e){return wmget(store,e)||{}},function(e){return wmhas(store,e)}):(STATE=sharedKey$2("state"),hiddenKeys$3[STATE]=!0,set=function(e,t){if(hasOwn$6(e,STATE))throw new TypeError$1(OBJECT_ALREADY_INITIALIZED);return t.facade=e,createNonEnumerableProperty$3(e,STATE,t),t},get=function(e){return hasOwn$6(e,STATE)?e[STATE]:{}},function(e){return hasOwn$6(e,STATE)}),{set:set,get:get,has:has,enforce:enforce,getterFor:getterFor}),fails$7=fails$e,isCallable$8=isCallable$g,hasOwn$5=hasOwnProperty_1,DESCRIPTORS$4=descriptors,CONFIGURABLE_FUNCTION_NAME$1=functionName.CONFIGURABLE,inspectSource=inspectSource$2,InternalStateModule$1=internalState,enforceInternalState=InternalStateModule$1.enforce,getInternalState$1=InternalStateModule$1.get,defineProperty$5=Object.defineProperty,CONFIGURABLE_LENGTH=DESCRIPTORS$4&&!fails$7(function(){return 8!==defineProperty$5(function(){},"length",{value:8}).length}),TEMPLATE=String(String).split("String"),makeBuiltIn$1=makeBuiltIn$2.exports=function(e,t,n){"Symbol("===String(t).slice(0,7)&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!hasOwn$5(e,"name")||CONFIGURABLE_FUNCTION_NAME$1&&e.name!==t)&&(DESCRIPTORS$4?defineProperty$5(e,"name",{value:t,configurable:!0}):e.name=t),CONFIGURABLE_LENGTH&&n&&hasOwn$5(n,"arity")&&e.length!==n.arity&&defineProperty$5(e,"length",{value:n.arity});try{n&&hasOwn$5(n,"constructor")&&n.constructor?DESCRIPTORS$4&&defineProperty$5(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}n=enforceInternalState(e);return hasOwn$5(n,"source")||(n.source=TEMPLATE.join("string"==typeof t?t:"")),e},isCallable$7=(Function.prototype.toString=makeBuiltIn$1(function(){return isCallable$8(this)&&getInternalState$1(this).source||inspectSource(this)},"toString"),isCallable$g),definePropertyModule$2=objectDefineProperty,makeBuiltIn=makeBuiltIn$2.exports,defineGlobalProperty$1=defineGlobalProperty$3,defineBuiltIn$3=function(e,t,n,o){var r=(o=o||{}).enumerable,i=void 0!==o.name?o.name:t;if(isCallable$7(n)&&makeBuiltIn(n,i,o),o.global)r?e[t]=n:defineGlobalProperty$1(t,n);else{try{o.unsafe?e[t]&&(r=!0):delete e[t]}catch(e){}r?e[t]=n:definePropertyModule$2.f(e,t,{value:n,enumerable:!1,configurable:!o.nonConfigurable,writable:!o.nonWritable})}return e},objectGetOwnPropertyNames={},ceil=Math.ceil,floor=Math.floor,mathTrunc=Math.trunc||function(e){e=+e;return(0<e?floor:ceil)(e)},trunc=mathTrunc,toIntegerOrInfinity$2=function(e){e=+e;return e!=e||0==e?0:trunc(e)},toIntegerOrInfinity$1=toIntegerOrInfinity$2,max=Math.max,min$2=Math.min,toAbsoluteIndex$1=function(e,t){e=toIntegerOrInfinity$1(e);return e<0?max(e+t,0):min$2(e,t)},toIntegerOrInfinity=toIntegerOrInfinity$2,min$1=Math.min,toLength$2=function(e){return 0<e?min$1(toIntegerOrInfinity(e),9007199254740991):0},toLength$1=toLength$2,lengthOfArrayLike$2=function(e){return toLength$1(e.length)},toIndexedObject$3=toIndexedObject$5,toAbsoluteIndex=toAbsoluteIndex$1,lengthOfArrayLike$1=lengthOfArrayLike$2,createMethod$2=function(s){return function(e,t,n){var o,r=toIndexedObject$3(e),i=lengthOfArrayLike$1(r),a=toAbsoluteIndex(n,i);if(s&&t!=t){for(;a<i;)if((o=r[a++])!=o)return!0}else for(;a<i;a++)if((s||a in r)&&r[a]===t)return s||a||0;return!s&&-1}},arrayIncludes={includes:createMethod$2(!0),indexOf:createMethod$2(!1)},uncurryThis$7=functionUncurryThis,hasOwn$4=hasOwnProperty_1,toIndexedObject$2=toIndexedObject$5,indexOf=arrayIncludes.indexOf,hiddenKeys$2=hiddenKeys$4,push=uncurryThis$7([].push),objectKeysInternal=function(e,t){var n,o=toIndexedObject$2(e),r=0,i=[];for(n in o)!hasOwn$4(hiddenKeys$2,n)&&hasOwn$4(o,n)&&push(i,n);for(;t.length>r;)!hasOwn$4(o,n=t[r++])||~indexOf(i,n)||push(i,n);return i},enumBugKeys$3=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],internalObjectKeys$1=objectKeysInternal,enumBugKeys$2=enumBugKeys$3,hiddenKeys$1=enumBugKeys$3.concat("length","prototype"),objectGetOwnPropertySymbols=(objectGetOwnPropertyNames.f=Object.getOwnPropertyNames||function(e){return internalObjectKeys$1(e,hiddenKeys$1)},{}),getBuiltIn$1=(objectGetOwnPropertySymbols.f=Object.getOwnPropertySymbols,getBuiltIn$4),uncurryThis$6=functionUncurryThis,getOwnPropertyNamesModule=objectGetOwnPropertyNames,getOwnPropertySymbolsModule$1=objectGetOwnPropertySymbols,anObject$3=anObject$5,concat$1=functionUncurryThis([].concat),ownKeys$1=getBuiltIn$1("Reflect","ownKeys")||function(e){var t=getOwnPropertyNamesModule.f(anObject$3(e)),n=getOwnPropertySymbolsModule$1.f;return n?concat$1(t,n(e)):t},hasOwn$3=hasOwnProperty_1,ownKeys=ownKeys$1,getOwnPropertyDescriptorModule=objectGetOwnPropertyDescriptor,definePropertyModule$1=objectDefineProperty,copyConstructorProperties$2=function(e,t,n){for(var o=ownKeys(t),r=definePropertyModule$1.f,i=getOwnPropertyDescriptorModule.f,a=0;a<o.length;a++){var s=o[a];hasOwn$3(e,s)||n&&hasOwn$3(n,s)||r(e,s,i(t,s))}},fails$6=fails$e,isCallable$6=isCallable$g,replacement=/#|\.prototype\./,isForced$1=function(e,t){e=data[normalize(e)];return e==POLYFILL||e!=NATIVE&&(isCallable$6(t)?fails$6(t):!!t)},normalize=isForced$1.normalize=function(e){return String(e).replace(replacement,".").toLowerCase()},data=isForced$1.data={},NATIVE=isForced$1.NATIVE="N",POLYFILL=isForced$1.POLYFILL="P",isForced_1=isForced$1,global$4=global$d,getOwnPropertyDescriptor$1=objectGetOwnPropertyDescriptor.f,createNonEnumerableProperty$2=createNonEnumerableProperty$4,defineBuiltIn$2=defineBuiltIn$3,defineGlobalProperty=defineGlobalProperty$3,copyConstructorProperties$1=copyConstructorProperties$2,isForced=isForced_1,_export=function(e,t){var n,o,r,i=e.target,a=e.global,s=e.stat,l=a?global$4:s?global$4[i]||defineGlobalProperty(i,{}):(global$4[i]||{}).prototype;if(l)for(n in t){if(o=t[n],r=e.dontCallGetSet?(r=getOwnPropertyDescriptor$1(l,n))&&r.value:l[n],!isForced(a?n:i+(s?".":"#")+n,e.forced)&&void 0!==r){if(typeof o==typeof r)continue;copyConstructorProperties$1(o,r)}(e.sham||r&&r.sham)&&createNonEnumerableProperty$2(o,"sham",!0),defineBuiltIn$2(l,n,o,e)}},internalObjectKeys=objectKeysInternal,enumBugKeys$1=enumBugKeys$3,objectKeys$2=Object.keys||function(e){return internalObjectKeys(e,enumBugKeys$1)},DESCRIPTORS$3=descriptors,uncurryThis$5=functionUncurryThis,call$1=functionCall,fails$5=fails$e,objectKeys$1=objectKeys$2,getOwnPropertySymbolsModule=objectGetOwnPropertySymbols,propertyIsEnumerableModule=objectPropertyIsEnumerable,toObject$2=toObject$4,IndexedObject$1=indexedObject,$assign=Object.assign,defineProperty$4=Object.defineProperty,concat=uncurryThis$5([].concat),objectAssign=!$assign||fails$5(function(){var e,t,n,o;return!(!DESCRIPTORS$3||1===$assign({b:1},$assign(defineProperty$4({},"a",{enumerable:!0,get:function(){defineProperty$4(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)||(t={},o="abcdefghijklmnopqrst",(e={})[n=Symbol()]=7,o.split("").forEach(function(e){t[e]=e}),7!=$assign({},e)[n])||objectKeys$1($assign({},t)).join("")!=o})?function(e,t){for(var n=toObject$2(e),o=arguments.length,r=1,i=getOwnPropertySymbolsModule.f,a=propertyIsEnumerableModule.f;r<o;)for(var s,l=IndexedObject$1(arguments[r++]),c=i?concat(objectKeys$1(l),i(l)):objectKeys$1(l),d=c.length,u=0;u<d;)s=c[u++],DESCRIPTORS$3&&!call$1(a,l,s)||(n[s]=l[s]);return n}:$assign,$$7=_export,assign=objectAssign,aCallable=(_export({target:"Object",stat:!0,arity:2,forced:Object.assign!==assign},{assign:assign}),aCallable$2),toObject$1=toObject$4,IndexedObject=indexedObject,lengthOfArrayLike=lengthOfArrayLike$2,$TypeError$2=TypeError,createMethod$1=function(c){return function(e,t,n,o){aCallable(t);var r=toObject$1(e),i=IndexedObject(r),a=lengthOfArrayLike(r),s=c?a-1:0,l=c?-1:1;if(n<2)for(;;){if(s in i){o=i[s],s+=l;break}if(s+=l,c?s<0:a<=s)throw $TypeError$2("Reduce of empty array with no initial value")}for(;c?0<=s:s<a;s+=l)s in i&&(o=t(o,i[s],s,r));return o}},arrayReduce={left:createMethod$1(!1),right:createMethod$1(!0)},fails$4=fails$e,arrayMethodIsStrict$1=function(e,t){var n=[][e];return!!n&&fails$4(function(){n.call(null,t||function(){return 1},1)})},classof$3=classofRaw$1,global$3=global$d,engineIsNode="process"==classofRaw$1(global$d.process),$$6=_export,$reduce=arrayReduce.left,arrayMethodIsStrict=arrayMethodIsStrict$1,CHROME_VERSION=engineV8Version,IS_NODE=engineIsNode,STRICT_METHOD=arrayMethodIsStrict$1("reduce"),CHROME_BUG=!IS_NODE&&79<CHROME_VERSION&&CHROME_VERSION<83,objectDefineProperties=($$6({target:"Array",proto:!0,forced:!STRICT_METHOD||CHROME_BUG},{reduce:function(e){var t=arguments.length;return $reduce(this,e,t,1<t?arguments[1]:void 0)}}),{}),DESCRIPTORS$2=descriptors,V8_PROTOTYPE_DEFINE_BUG=v8PrototypeDefineBug,definePropertyModule=objectDefineProperty,anObject$2=anObject$5,toIndexedObject$1=toIndexedObject$5,objectKeys=objectKeys$2,getBuiltIn=(objectDefineProperties.f=DESCRIPTORS$2&&!V8_PROTOTYPE_DEFINE_BUG?Object.defineProperties:function(e,t){anObject$2(e);for(var n,o=toIndexedObject$1(t),r=objectKeys(t),i=r.length,a=0;a<i;)definePropertyModule.f(e,n=r[a++],o[n]);return e},getBuiltIn$4),html$1=getBuiltIn$4("document","documentElement"),anObject$1=anObject$5,definePropertiesModule=objectDefineProperties,enumBugKeys=enumBugKeys$3,hiddenKeys=hiddenKeys$4,html=html$1,documentCreateElement$1=documentCreateElement$2,sharedKey$1=sharedKey$3,GT=">",LT="<",PROTOTYPE="prototype",SCRIPT="script",IE_PROTO$1=sharedKey$3("IE_PROTO"),EmptyConstructor=function(){},scriptTag=function(e){return LT+SCRIPT+GT+e+LT+"/"+SCRIPT+GT},NullProtoObjectViaActiveX=function(e){e.write(scriptTag("")),e.close();var t=e.parentWindow.Object;return e=null,t},NullProtoObjectViaIFrame=function(){var e=documentCreateElement$1("iframe"),t="java"+SCRIPT+":";return e.style.display="none",html.appendChild(e),e.src=String(t),(t=e.contentWindow.document).open(),t.write(scriptTag("document.F=Object")),t.close(),t.F},NullProtoObject=function(){try{activeXDocument=new ActiveXObject("htmlfile")}catch(e){}NullProtoObject="undefined"==typeof document||document.domain&&activeXDocument?NullProtoObjectViaActiveX(activeXDocument):NullProtoObjectViaIFrame();for(var e=enumBugKeys.length;e--;)delete NullProtoObject[PROTOTYPE][enumBugKeys[e]];return NullProtoObject()},objectCreate=(hiddenKeys[IE_PROTO$1]=!0,Object.create||function(e,t){var n;return null!==e?(EmptyConstructor[PROTOTYPE]=anObject$1(e),n=new EmptyConstructor,EmptyConstructor[PROTOTYPE]=null,n[IE_PROTO$1]=e):n=NullProtoObject(),void 0===t?n:definePropertiesModule.f(n,t)}),wellKnownSymbol$8=wellKnownSymbol$a,create$1=objectCreate,defineProperty$3=objectDefineProperty.f,UNSCOPABLES=wellKnownSymbol$8("unscopables"),ArrayPrototype=Array.prototype,addToUnscopables$2=(null==ArrayPrototype[UNSCOPABLES]&&defineProperty$3(ArrayPrototype,UNSCOPABLES,{configurable:!0,value:create$1(null)}),function(e){ArrayPrototype[UNSCOPABLES][e]=!0}),iterators={},fails$3=fails$e,correctPrototypeGetter=!fails$e(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),hasOwn$2=hasOwnProperty_1,isCallable$5=isCallable$g,toObject=toObject$4,sharedKey=sharedKey$3,CORRECT_PROTOTYPE_GETTER=correctPrototypeGetter,IE_PROTO=sharedKey$3("IE_PROTO"),$Object$1=Object,ObjectPrototype=$Object$1.prototype,objectGetPrototypeOf=CORRECT_PROTOTYPE_GETTER?$Object$1.getPrototypeOf:function(e){var t,e=toObject(e);return hasOwn$2(e,IE_PROTO)?e[IE_PROTO]:(t=e.constructor,isCallable$5(t)&&e instanceof t?t.prototype:e instanceof $Object$1?ObjectPrototype:null)},fails$2=fails$e,isCallable$4=isCallable$g,getPrototypeOf$1=objectGetPrototypeOf,defineBuiltIn$1=defineBuiltIn$3,wellKnownSymbol$7=wellKnownSymbol$a,ITERATOR$2=wellKnownSymbol$a("iterator"),BUGGY_SAFARI_ITERATORS$1=!1,NEW_ITERATOR_PROTOTYPE=([].keys&&("next"in(arrayIterator=[].keys())?(PrototypeOfArrayIteratorPrototype=getPrototypeOf$1(getPrototypeOf$1(arrayIterator)))!==Object.prototype&&(IteratorPrototype$2=PrototypeOfArrayIteratorPrototype):BUGGY_SAFARI_ITERATORS$1=!0),null==IteratorPrototype$2||fails$2(function(){var e={};return IteratorPrototype$2[ITERATOR$2].call(e)!==e})),iteratorsCore=(isCallable$4((IteratorPrototype$2=NEW_ITERATOR_PROTOTYPE?{}:IteratorPrototype$2)[ITERATOR$2])||defineBuiltIn$1(IteratorPrototype$2,ITERATOR$2,function(){return this}),{IteratorPrototype:IteratorPrototype$2,BUGGY_SAFARI_ITERATORS:BUGGY_SAFARI_ITERATORS$1}),defineProperty$2=objectDefineProperty.f,hasOwn$1=hasOwnProperty_1,wellKnownSymbol$6=wellKnownSymbol$a,TO_STRING_TAG$3=wellKnownSymbol$a("toStringTag"),setToStringTag$2=function(e,t,n){(e=e&&!n?e.prototype:e)&&!hasOwn$1(e,TO_STRING_TAG$3)&&defineProperty$2(e,TO_STRING_TAG$3,{configurable:!0,value:t})},IteratorPrototype$1=iteratorsCore.IteratorPrototype,create=objectCreate,createPropertyDescriptor=createPropertyDescriptor$3,setToStringTag$1=setToStringTag$2,Iterators$2=iterators,returnThis$1=function(){return this},createIteratorConstructor$1=function(e,t,n,o){t+=" Iterator";return e.prototype=create(IteratorPrototype$1,{next:createPropertyDescriptor(+!o,n)}),setToStringTag$1(e,t,!1),Iterators$2[t]=returnThis$1,e},isCallable$3=isCallable$g,$String$1=String,$TypeError$1=TypeError,aPossiblePrototype$1=function(e){if("object"==typeof e||isCallable$3(e))return e;throw $TypeError$1("Can't set "+$String$1(e)+" as a prototype")},uncurryThis$4=functionUncurryThis,anObject=anObject$5,aPossiblePrototype=aPossiblePrototype$1,objectSetPrototypeOf=Object.setPrototypeOf||("__proto__"in{}?function(){var n,o=!1,e={};try{(n=uncurryThis$4(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(e,[]),o=e instanceof Array}catch(e){}return function(e,t){return anObject(e),aPossiblePrototype(t),o?n(e,t):e.__proto__=t,e}}():void 0),$$5=_export,call=functionCall,FunctionName=functionName,isCallable$2=isCallable$g,createIteratorConstructor=createIteratorConstructor$1,getPrototypeOf=objectGetPrototypeOf,setPrototypeOf=objectSetPrototypeOf,setToStringTag=setToStringTag$2,createNonEnumerableProperty$1=createNonEnumerableProperty$4,defineBuiltIn=defineBuiltIn$3,wellKnownSymbol$5=wellKnownSymbol$a,Iterators$1=iterators,IteratorsCore=iteratorsCore,PROPER_FUNCTION_NAME$1=FunctionName.PROPER,CONFIGURABLE_FUNCTION_NAME=FunctionName.CONFIGURABLE,IteratorPrototype=IteratorsCore.IteratorPrototype,BUGGY_SAFARI_ITERATORS=IteratorsCore.BUGGY_SAFARI_ITERATORS,ITERATOR$1=wellKnownSymbol$5("iterator"),KEYS="keys",VALUES="values",ENTRIES="entries",returnThis=function(){return this},defineIterator$1=function(e,t,n,o,r,i,a){createIteratorConstructor(n,t,o);function s(e){if(e===r&&g)return g;if(!BUGGY_SAFARI_ITERATORS&&e in u)return u[e];switch(e){case KEYS:case VALUES:case ENTRIES:return function(){return new n(this,e)}}return function(){return new n(this)}}var l,c,o=t+" Iterator",d=!1,u=e.prototype,p=u[ITERATOR$1]||u["@@iterator"]||r&&u[r],g=!BUGGY_SAFARI_ITERATORS&&p||s(r),h="Array"==t&&u.entries||p;if(h&&(h=getPrototypeOf(h.call(new e)))!==Object.prototype&&h.next&&(getPrototypeOf(h)!==IteratorPrototype&&(setPrototypeOf?setPrototypeOf(h,IteratorPrototype):isCallable$2(h[ITERATOR$1])||defineBuiltIn(h,ITERATOR$1,returnThis)),setToStringTag(h,o,!0)),PROPER_FUNCTION_NAME$1&&r==VALUES&&p&&p.name!==VALUES&&(CONFIGURABLE_FUNCTION_NAME?createNonEnumerableProperty$1(u,"name",VALUES):(d=!0,g=function(){return call(p,this)})),r)if(l={values:s(VALUES),keys:i?g:s(KEYS),entries:s(ENTRIES)},a)for(c in l)!BUGGY_SAFARI_ITERATORS&&!d&&c in u||defineBuiltIn(u,c,l[c]);else $$5({target:t,proto:!0,forced:BUGGY_SAFARI_ITERATORS||d},l);return u[ITERATOR$1]!==g&&defineBuiltIn(u,ITERATOR$1,g,{name:r}),Iterators$1[t]=g,l},toIndexedObject=toIndexedObject$5,addToUnscopables$1=addToUnscopables$2,Iterators=iterators,InternalStateModule=internalState,defineProperty$1=objectDefineProperty.f,defineIterator=defineIterator$1,DESCRIPTORS$1=descriptors,ARRAY_ITERATOR="Array Iterator",setInternalState=InternalStateModule.set,getInternalState=InternalStateModule.getterFor(ARRAY_ITERATOR),es_array_iterator=defineIterator(Array,"Array",function(e,t){setInternalState(this,{type:ARRAY_ITERATOR,target:toIndexedObject(e),index:0,kind:t})},function(){var e=getInternalState(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?{value:e.target=void 0,done:!0}:"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}},"values"),values=Iterators.Arguments=Iterators.Array;if(addToUnscopables$1("keys"),addToUnscopables$1("values"),addToUnscopables$1("entries"),DESCRIPTORS$1&&"values"!==values.name)try{defineProperty$1(values,"name",{value:"values"})}catch(e){}var COLLECTION_NAME,domIterables={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},documentCreateElement=documentCreateElement$2,classList=documentCreateElement$2("span").classList,DOMTokenListPrototype$1=classList&&classList.constructor&&classList.constructor.prototype,domTokenListPrototype=DOMTokenListPrototype$1===Object.prototype?void 0:DOMTokenListPrototype$1,global$2=global$d,DOMIterables=domIterables,DOMTokenListPrototype=domTokenListPrototype,ArrayIteratorMethods=es_array_iterator,createNonEnumerableProperty=createNonEnumerableProperty$4,wellKnownSymbol$4=wellKnownSymbol$a,ITERATOR=wellKnownSymbol$4("iterator"),TO_STRING_TAG$2=wellKnownSymbol$4("toStringTag"),ArrayValues=ArrayIteratorMethods.values,handlePrototype=function(t,e){if(t){if(t[ITERATOR]!==ArrayValues)try{createNonEnumerableProperty(t,ITERATOR,ArrayValues)}catch(e){t[ITERATOR]=ArrayValues}if(t[TO_STRING_TAG$2]||createNonEnumerableProperty(t,TO_STRING_TAG$2,e),DOMIterables[e])for(var n in ArrayIteratorMethods)if(t[n]!==ArrayIteratorMethods[n])try{createNonEnumerableProperty(t,n,ArrayIteratorMethods[n])}catch(e){t[n]=ArrayIteratorMethods[n]}}};for(COLLECTION_NAME in DOMIterables)handlePrototype(global$2[COLLECTION_NAME]&&global$2[COLLECTION_NAME].prototype,COLLECTION_NAME);handlePrototype(DOMTokenListPrototype,"DOMTokenList");var EmptyStringDescriptionStore,SymbolWrapper,NATIVE_SYMBOL,symbolToString,symbolValueOf,regexp,replace$1,stringSlice$1,EIoFolderType,EIoFolderMode,EEngineFolderMode,EDagNodeType,wellKnownSymbol$3=wellKnownSymbol$a,TO_STRING_TAG$1=wellKnownSymbol$a("toStringTag"),test={},toStringTagSupport=(test[TO_STRING_TAG$1]="z","[object z]"===String(test)),TO_STRING_TAG_SUPPORT=toStringTagSupport,isCallable$1=isCallable$g,classofRaw=classofRaw$1,wellKnownSymbol$2=wellKnownSymbol$a,TO_STRING_TAG=wellKnownSymbol$a("toStringTag"),$Object=Object,CORRECT_ARGUMENTS="Arguments"==classofRaw(function(){return arguments}()),tryGet=function(e,t){try{return e[t]}catch(e){}},classof$2=TO_STRING_TAG_SUPPORT?classofRaw:function(e){var t;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=tryGet(e=$Object(e),TO_STRING_TAG))?t:CORRECT_ARGUMENTS?classofRaw(e):"Object"==(t=classofRaw(e))&&isCallable$1(e.callee)?"Arguments":t},classof$1=classof$2,$String=String,toString$4=function(e){if("Symbol"===classof$1(e))throw TypeError("Cannot convert a Symbol value to a string");return $String(e)},$$4=_export,DESCRIPTORS=descriptors,global$1=global$d,uncurryThis$3=functionUncurryThis,hasOwn=hasOwnProperty_1,isCallable=isCallable$g,isPrototypeOf=objectIsPrototypeOf,toString$3=toString$4,defineProperty=objectDefineProperty.f,copyConstructorProperties=copyConstructorProperties$2,NativeSymbol=global$1.Symbol,SymbolPrototype=NativeSymbol&&NativeSymbol.prototype;!DESCRIPTORS||!isCallable(NativeSymbol)||"description"in SymbolPrototype&&void 0===NativeSymbol().description||(EmptyStringDescriptionStore={},copyConstructorProperties(SymbolWrapper=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:toString$3(arguments[0]),t=isPrototypeOf(SymbolPrototype,this)?new NativeSymbol(e):void 0===e?NativeSymbol():NativeSymbol(e);return""===e&&(EmptyStringDescriptionStore[t]=!0),t},NativeSymbol),(SymbolWrapper.prototype=SymbolPrototype).constructor=SymbolWrapper,NATIVE_SYMBOL="Symbol(test)"==String(NativeSymbol("test")),symbolToString=uncurryThis$3(SymbolPrototype.toString),symbolValueOf=uncurryThis$3(SymbolPrototype.valueOf),regexp=/^Symbol\((.*)\)[^)]+$/,replace$1=uncurryThis$3("".replace),stringSlice$1=uncurryThis$3("".slice),defineProperty(SymbolPrototype,"description",{configurable:!0,get:function(){var e=symbolValueOf(this),t=symbolToString(e);return hasOwn(EmptyStringDescriptionStore,e)?"":""===(e=NATIVE_SYMBOL?stringSlice$1(t,7,-1):replace$1(t,regexp,"$1"))?void 0:e}}),$$4({global:!0,constructor:!0,forced:!0},{Symbol:SymbolWrapper}));const DagNode=({isTooltip:e=!1,title:t,description:n,avatarImgUrl:o,isStartNode:r=!1,isRemoveable:i=!1,Icon:a,onSettingsClick:s,onRemoveClick:l})=>e?jsxRuntime.exports.jsx(TooltipNode,{Icon:a,engineName:t}):jsxRuntime.exports.jsx(DagNodeCard,{title:t,avatarImgUrl:o,isStartNode:r,description:n,isRemoveable:i,onSettingsClick:s,onRemoveClick:l}),TooltipNode=({engineName:e})=>jsxRuntime.exports.jsx(Box,Object.assign({sx:{marginTop:30}},{children:jsxRuntime.exports.jsx(Tooltip,Object.assign({title:jsxRuntime.exports.jsx(TooltipNodePopoverCard,{engineName:e}),placement:"right"},{children:jsxRuntime.exports.jsx(IconButton,Object.assign({sx:{backgroundColor:"#78909C",color:"#fff","&:hover":{backgroundColor:"#78909C",color:"#fff"}}},{children:jsxRuntime.exports.jsx(Engineering,{})}))}))})),DagNodeCard=({title:e,description:t,avatarImgUrl:n,isStartNode:o=!1,isRemoveable:r=!1,onSettingsClick:i,onRemoveClick:a})=>{const[s,l]=react.exports.useState(!0);var c=react.exports.useCallback(()=>{i&&i()},[i]),d=react.exports.useCallback(()=>{a&&a()},[a]),u={border:"1px solid #DADFE8",color:"#5C6269",fontSize:"12px"},p={width:24,height:24};return jsxRuntime.exports.jsx(Box,Object.assign({sx:{width:300,height:200,maxHeight:200,border:"0.5px solid #4CAF50;",marginTop:30,backgroundColor:"#fff",borderRadius:5,boxShadow:"0px 0px 6px 0px rgba(0, 0, 0, 0.25)",boxSizing:"border-box"}},{children:jsxRuntime.exports.jsxs(Stack,Object.assign({display:"flex",flexDirection:"column",height:"100%",width:"100%"},{children:[jsxRuntime.exports.jsx(Box,Object.assign({sx:{padding:"10px 12px",boxSizing:"border-box"}},{children:jsxRuntime.exports.jsxs(Stack,Object.assign({display:"flex",direction:"row",justifyContent:"space-between"},{children:[jsxRuntime.exports.jsxs(Stack,Object.assign({display:"flex",direction:"row",alignItems:"center",gap:2},{children:[n&&s?jsxRuntime.exports.jsx(Avatar,{sx:p,src:n,imgProps:{onError:()=>l(!1)}}):jsxRuntime.exports.jsx(Avatar,Object.assign({sx:p},{children:jsxRuntime.exports.jsx(Engines,{})})),jsxRuntime.exports.jsx("h3",Object.assign({style:{margin:0,fontWeight:"400",fontSize:"14px"}},{children:e}))]})),jsxRuntime.exports.jsx(StartNodeIndicator,{isVisible:o})]}))})),jsxRuntime.exports.jsx(Box,Object.assign({sx:{padding:"15px 20px 10px 20px",flex:"auto",border:"1px solid #DADFE8",borderLeft:"none",borderRight:"none",overflowY:"auto",overflowX:"hidden",maxHeight:90,height:"100%"}},{children:jsxRuntime.exports.jsx(Typography,Object.assign({style:{fontSize:10,lineHeight:"16px",margin:0},"data-testid":"os-processing-center-dag-builder-node-description"},{children:t}))})),jsxRuntime.exports.jsx(Box,Object.assign({sx:{padding:"8px 20px 0 20px",boxSizing:"border-box"}},{children:jsxRuntime.exports.jsxs(Stack,Object.assign({display:"flex",direction:"row",justifyContent:"space-between",spacing:2},{children:[jsxRuntime.exports.jsx(Button,Object.assign({variant:"outlined",size:"medium",onClick:c,startIcon:jsxRuntime.exports.jsx(Settings,{style:{height:"14px",width:"14px"}}),sx:u},{children:jsxRuntime.exports.jsx(FormattedMessage,{id:"os-processing-center-dag-builder-settings-btn",defaultMessage:"Settings",description:"Settings button text for dag node"})})),r&&jsxRuntime.exports.jsx(Button,Object.assign({variant:"outlined",size:"medium",onClick:d,startIcon:jsxRuntime.exports.jsx(DeleteOutline,{style:{height:"14px",width:"14px"}}),sx:u},{children:jsxRuntime.exports.jsx(FormattedMessage,{id:"os-processing-center-dag-builder-remove-btn",defaultMessage:"Remove",description:"Remove button text for dag node"})}))]}))}))]}))}))},TooltipNodePopoverCard=({engineName:e})=>jsxRuntime.exports.jsx(Box,{children:jsxRuntime.exports.jsxs("p",{children:["We added a required ",e]})}),StartNodeIndicator=({isVisible:e})=>e?jsxRuntime.exports.jsx("div",Object.assign({style:{borderRadius:"50px",height:40,width:40,border:"0.5px solid #4CAF50",fontSize:"10px",display:"flex",justifyContent:"center",alignItems:"center",color:"#4CAF50"}},{children:jsxRuntime.exports.jsx("span",{children:"Start"})})):null,AddNodeBtn=({id:e,isDisabled:t=!1,tooltip:n,onClick:o})=>{var r=react.exports.useCallback(()=>{t||o&&o()},[o,t]);return jsxRuntime.exports.jsx(Box$1,Object.assign({"data-testid":"add-node-btn-"+e,title:n,sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",background:"white",display:"flex",alignItems:"center",justifyContent:"center",flexDirection:"column",height:"26px",width:"26px",zIndex:2,border:t?"1px solid #CCC":"1px solid #0E6EEC",color:t?"#CCC":"#0E6EEC",borderRadius:"50px",cursor:t?"not-allowed":"pointer",transition:"0.3s all ease-in-out","&:hover":{backgroundColor:t?"#fff":"#0E6EEC",color:t?"#CCC":"#FFF"}},onClick:r},{children:jsxRuntime.exports.jsx("span",Object.assign({style:{fontSize:"22px",lineHeight:"22px"}},{children:"+"}))}))},SLICE_NAME="processingCenterDagBuilder",si2ChunkEngineDefinition=(!function(e){e.Input="input",e.Output="output"}(EIoFolderType=EIoFolderType||{}),!function(e){e.Stream="stream",e.Chunk="chunk",e.Ingest="ingest"}(EIoFolderMode=EIoFolderMode||{}),!function(e){e.Stream="Stream",e.Chunk="Chunk"}(EEngineFolderMode=EEngineFolderMode||{}),!function(e){e.Push="Push",e.Pull="Pull",e.Cognition="Cognition",e.Utility="Utility"}(EDagNodeType=EDagNodeType||{}),{id:"8bdb0e3b-ff28-4f6e-a3ba-887bd06e6440",loadingStatus:"success",definition:{id:"8bdb0e3b-ff28-4f6e-a3ba-887bd06e6440",category:{name:"Ingestion",id:"4be1a1b2-653d-4eaa-ba18-747a265305d8"},name:"SI2 audio/video Chunk creator",mode:"Stream",outputFormats:["video/mp4"],supportedInputFormats:["application/json"],preferredInputFormat:"application/json",iconPath:null,logoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg",signedIconPath:null,signedLogoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg"}}),si2PlaybackEngineDefinition={id:"352556c7-de07-4d55-b33f-74b1cf237f25",loadingStatus:"success",definition:{id:"352556c7-de07-4d55-b33f-74b1cf237f25",category:{name:"Ingestion",id:"4be1a1b2-653d-4eaa-ba18-747a265305d8"},name:"SI2 Playback segment creator",mode:"Stream",outputFormats:["video/mp4"],supportedInputFormats:["application/json"],preferredInputFormat:"application/json",iconPath:null,logoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg",signedIconPath:null,signedLogoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg"}},namespace$5="engines",initialState$5={engines:[si2ChunkEngineDefinition,si2PlaybackEngineDefinition],engineCategories:{loadingStatus:"idle",categories:[]}},processingCenterDagBuilderEngineSlice=createSlice({name:SLICE_NAME+"/"+namespace$5,initialState:initialState$5,reducers:{fetchEngineStart(e,t){e.engines.some(e=>e.id===t.payload)||e.engines.push({id:t.payload,loadingStatus:"pending"})},fetchEngineComplete(e,t){var n=e.engines.findIndex(e=>e.id===t.payload.id);e.engines[n].definition=t.payload,e.engines[n].loadingStatus="success"},fetchEngineFailed(e,t){var n=e.engines.findIndex(e=>e.id===t.payload);e.engines[n].loadingStatus="failure"},fetchEngineCategoriesStart(e){e.engineCategories.loadingStatus="pending"},fetchEngineCategoriesComplete(e,t){e.engineCategories.categories=t.payload,e.engineCategories.loadingStatus="success"},fetchEngineCategoriesFailed(e){e.engineCategories.loadingStatus="failure"}}}),actions$6=processingCenterDagBuilderEngineSlice.actions;var engines_slice=processingCenterDagBuilderEngineSlice.reducer;const selectEngines$1=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$5].engines},selectEngineCategories=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$5].engineCategories};var engines=Object.freeze({__proto__:null,selectEngines:selectEngines$1,selectEngineCategories:selectEngineCategories});const namespace$4="dagNodes",initialState$4={dagNodes:[],openNodePanel:!1,nodeTypeSelected:null,nodeToBeAdded:{parentNodeId:"",engineId:""}},processingCenterDagBuilderNodesSlice$1=createSlice({name:SLICE_NAME+"/"+namespace$4,initialState:initialState$4,reducers:{addDagNode(e,t){const n=t["payload"];n.nodeId||(n.nodeId=v4()),n.parentId&&0===e.dagNodes.filter(e=>e.nodeId===n.parentId).length?console.error("Tried to add a node with a parent that doesn't exist"):e.dagNodes.push(n)},resetDagNodes(e){e.dagNodes=[]},updateDagNode(e,t){const n=t["payload"];t=e.dagNodes.findIndex(e=>e.nodeId===n.nodeId);-1===t?console.error("Tried to update a node that doesn't exist"):e.dagNodes[t]=n},removeDagNode(n,e){const o=e.payload["nodeId"];e=n.dagNodes.findIndex(e=>e.nodeId===o);-1===e?console.error("Tried to remove a node that doesn't exist"):(n.dagNodes.splice(e,1),n.dagNodes.forEach((e,t)=>{e.parentId===o&&delete n.dagNodes[t].parentId}))},setOpenNodePanel(e,t){e.openNodePanel=t.payload},setNodeToBeAdded(e,t){e.nodeToBeAdded.parentNodeId=t.payload.parentNodeId||"",e.nodeToBeAdded.engineId=t.payload.engineId||""},setNodeTypeSelected(e,t){e.nodeTypeSelected=t.payload}}}),actions$5=processingCenterDagBuilderNodesSlice$1.actions;var dagNodes_slice=processingCenterDagBuilderNodesSlice$1.reducer;const namespace$3="dagTemplates",initialState$3={createStatus:"idle",readStatus:"idle"},processingCenterDagBuilderNodesSlice=createSlice({name:SLICE_NAME+"/"+namespace$3,initialState:initialState$3,reducers:{createDagTemplateStart(e,t){e.createStatus="pending"},createDagTemplateSuccess(e){e.createStatus="idle",console.log("Successfully created dag template")},createDagTemplateFailed(e){e.createStatus="failure"},loadDagTemplateStart(e,t){e.readStatus="pending"},loadDagTemplateSuccess(e){e.readStatus="idle"},loadDagTemplateFailed(e){e.readStatus="failure"}}}),actions$4=processingCenterDagBuilderNodesSlice.actions;var dagTemplates_slice=processingCenterDagBuilderNodesSlice.reducer;const namespace$2="basicInfo",initialState$2={name:null,description:null,avatarUrl:null,previewImage:null,basicInfoComplete:!1},basicInfoSlice=createSlice({name:SLICE_NAME+"/"+namespace$2,initialState:initialState$2,reducers:{setName(e,t){e.name=t.payload},setDescription(e,t){e.description=t.payload},setAvatarUrl(e,t){e.avatarUrl=t.payload},setPreviewImage(e,t){e.previewImage=t.payload},setBasicInfoComplete(e,t){e.basicInfoComplete=t.payload}}}),actions$3=basicInfoSlice.actions;var basicInfo_slice=basicInfoSlice.reducer,isObject=isObject$6,classof=classofRaw$1,wellKnownSymbol$1=wellKnownSymbol$a,MATCH$1=wellKnownSymbol$a("match"),isRegexp=function(e){var t;return isObject(e)&&(void 0!==(t=e[MATCH$1])?!!t:"RegExp"==classof(e))},isRegExp=isRegexp,$TypeError=TypeError,notARegexp=function(e){if(isRegExp(e))throw $TypeError("The method doesn't accept regular expressions");return e},wellKnownSymbol=wellKnownSymbol$a,MATCH=wellKnownSymbol$a("match"),correctIsRegexpLogic=function(t){var n=/./;try{"/./"[t](n)}catch(e){try{return n[MATCH]=!1,"/./"[t](n)}catch(e){}}return!1},$$3=_export,uncurryThis$2=functionUncurryThis,getOwnPropertyDescriptor=objectGetOwnPropertyDescriptor.f,toLength=toLength$2,toString$2=toString$4,notARegExp$1=notARegexp,requireObjectCoercible$2=requireObjectCoercible$5,correctIsRegExpLogic$1=correctIsRegexpLogic,un$StartsWith=uncurryThis$2("".startsWith),stringSlice=uncurryThis$2("".slice),min=Math.min,CORRECT_IS_REGEXP_LOGIC=correctIsRegExpLogic$1("startsWith"),MDN_POLYFILL_BUG=!CORRECT_IS_REGEXP_LOGIC&&!!function(){var e=getOwnPropertyDescriptor(String.prototype,"startsWith");return e&&!e.writable}();$$3({target:"String",proto:!0,forced:!MDN_POLYFILL_BUG&&!CORRECT_IS_REGEXP_LOGIC},{startsWith:function(e){var t=toString$2(requireObjectCoercible$2(this)),n=(notARegExp$1(e),toLength(min(1<arguments.length?arguments[1]:void 0,t.length))),o=toString$2(e);return un$StartsWith?un$StartsWith(t,o,n):stringSlice(t,n,n+o.length)===o}});const SHARED_TEXT={basicInfo:{title:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.header-title",defaultMessage:"Save As: Basic Information",description:"Dag builder basic info header title"}),name:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.name",defaultMessage:"Dag Name",description:"Dag builder basic info name input"}),description:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.description",defaultMessage:"Description",description:"Dag builder basic info description input"}),continueButton:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.continue-button",defaultMessage:"Continue",description:"Dag builder basic info continue button"}),avatar:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.avatar",defaultMessage:"Avatar",description:"Dag builder basic info avatar"}),avatarDescription1:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.avatar-description1",defaultMessage:"Recommended image size:",description:"Dag builder basic info avatar-description"}),avatarDescription2:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.avatar-description2",defaultMessage:"300x300 .png or .jpg",description:"Dag builder basic info avatar-description"})},nodeType:{title:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.header-title",defaultMessage:"Choose a Node Type",description:"Dag builder node type header title"}),cancelButton:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.cancel-button",defaultMessage:"Cancel",description:"Dag builder node type cancel button"}),nextButton:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.next-button",defaultMessage:"Next",description:"Dag builder node type next button"}),pullNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.pull-title",defaultMessage:"Pull",description:"Dag builder node type pull title"}),pullNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.pull-description",defaultMessage:"Retrieves data from a source, typically a URI, and brings it into aiWare.",description:"Dag builder node type pull description"}),pushNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.push-title",defaultMessage:"Push",description:"Dag builder node type push title"}),pushNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.push-description",defaultMessage:"Listens for data sent to it from an external source and brings it into aiWare.",description:"Dag builder node type push description"}),cognitionNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.cognition-title",defaultMessage:"Cognition",description:"Dag builder node type cognition-title"}),cognitionNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.cognition-description",defaultMessage:"Engines for cognition.",description:"Dag builder node type cognition description"}),utilityNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.utility-title",defaultMessage:"Utility",description:"Dag builder node type utility title"}),utilityNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.utlity-description",defaultMessage:"Miscellaneous utility engines for cognition.",description:"Processes results from a single cognition capability."})},panels:{back:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder.panel.footer.button.back",defaultMessage:"Back",description:"Dag builder engine list footer: back"}),next:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder.panel.footer.button.next",defaultMessage:"Next",description:"Dag builder engine list footer: next"})},engineList:{addNode:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.footer.button.add-node",defaultMessage:"Add Node",description:"Dag builder engine list footer: add node"}),titlePull:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-title-pull",defaultMessage:"Choose an Ingestion Pull Engine",description:"Dag builder engine list title - pull"}),titlePush:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-title-push",defaultMessage:"Choose an Ingestion Push Engine",description:"Dag builder engine list title - push"}),cognitionTitle:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-title-cognition",defaultMessage:"Choose a Cognition Category",description:"Cognition panel title"}),cognitionSubTitle:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-subtitle-cognition",defaultMessage:"Select from available Cognition Categories to view engines to add to this DAG.",description:"Cognition panel subtitle"})}},selectName=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].name},selectDescription=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].description},selectAvatarUrl=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].avatarUrl},selectPreviewImage=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].previewImage},selectIsBasicInfoComplete=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].basicInfoComplete};var basicInfo=Object.freeze({__proto__:null,selectName:selectName,selectDescription:selectDescription,selectAvatarUrl:selectAvatarUrl,selectPreviewImage:selectPreviewImage,selectIsBasicInfoComplete:selectIsBasicInfoComplete});const selectDagNodes=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].dagNodes},selectOpenNodepanel=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].openNodePanel},selectNodeTypeSelected=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].nodeTypeSelected},selectNodeToBeAdded=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].nodeToBeAdded};var dagNodes=Object.freeze({__proto__:null,selectDagNodes:selectDagNodes,selectOpenNodepanel:selectOpenNodepanel,selectNodeTypeSelected:selectNodeTypeSelected,selectNodeToBeAdded:selectNodeToBeAdded});const selectEngines=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].engines},selectActiveView$1=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].activeView},selectSelectedEngine=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].selectedEngine},selectSearchTerm=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].searchTerm};var EOverlayPanelViewMode,engineList=Object.freeze({__proto__:null,selectEngines:selectEngines,selectActiveView:selectActiveView$1,selectSelectedEngine:selectSelectedEngine,selectSearchTerm:selectSearchTerm});!function(e){e.basicInfoView="basicInfoView",e.engineListView="engineListView",e.nodeTypeView="nodeTypeView"}(EOverlayPanelViewMode=EOverlayPanelViewMode||{});const namespace$1="overlayPanel",initialOverlayOptions={overlayWidth:null},initialState$1={activeView:EOverlayPanelViewMode.basicInfoView,isOpen:!0,overlayOptions:Object.assign({},initialOverlayOptions)},overlayPanelSlice=createSlice({name:SLICE_NAME+"/"+namespace$1,initialState:initialState$1,reducers:{setActiveView(e,t){var{activeView:t,options:n}=t.payload;e.activeView=t,e.overlayOptions=n||Object.assign({},initialOverlayOptions),e.isOpen=!!t},closePanel(e){e.isOpen=!1,e.activeView=null,e.overlayOptions=Object.assign({},initialOverlayOptions)}}}),actions$2=overlayPanelSlice.actions;var overlayPanel_slice=overlayPanelSlice.reducer;const selectActiveView=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$1].activeView},selectIsOpen=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$1].isOpen},selectOverlayOptions=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$1].overlayOptions};var overlayPanel=Object.freeze({__proto__:null,selectActiveView:selectActiveView,selectIsOpen:selectIsOpen,selectOverlayOptions:selectOverlayOptions}),selectors={basicInfo:basicInfo,dagNodes:dagNodes,engines:engines,engineList:engineList,overlayPanel:overlayPanel};const OverlayPanelHeader=({title:e})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Typography,Object.assign({variant:"h5",sx:{lineHeight:"50px",paddingLeft:"20px"}},{children:e})),jsxRuntime.exports.jsx(Divider,{sx:{width:"100%"}})]}),OverlayPanelFooterArea=({children:e})=>jsxRuntime.exports.jsxs(Stack,Object.assign({sx:{marginTop:"auto"}},{children:[jsxRuntime.exports.jsx(Divider,{sx:{width:"100%",paddingBottom:"20px"}}),jsxRuntime.exports.jsx(Stack,Object.assign({padding:"20px",direction:"row",justifyContent:"flex-end",gap:"10px"},{children:jsxRuntime.exports.jsx(jsxRuntime.exports.Fragment,{children:e})}))]})),OverlayPanelContainer=({children:e})=>jsxRuntime.exports.jsx(Stack,Object.assign({sx:{width:"380px",background:"#fff",borderLeft:"1px solid #D5DFE9",height:"100%"}},{children:jsxRuntime.exports.jsx(jsxRuntime.exports.Fragment,{children:e})}));var EEngineListViewMode,$$2=_export,$includes=arrayIncludes.includes,fails$1=fails$e,addToUnscopables=addToUnscopables$2,BROKEN_ON_SPARSE=fails$e(function(){return!Array(1).includes()}),$$1=($$2({target:"Array",proto:!0,forced:BROKEN_ON_SPARSE},{includes:function(e){return $includes(this,e,1<arguments.length?arguments[1]:void 0)}}),addToUnscopables("includes"),_export),uncurryThis$1=functionUncurryThis,notARegExp=notARegexp,requireObjectCoercible$1=requireObjectCoercible$5,toString$1=toString$4,correctIsRegExpLogic=correctIsRegexpLogic,stringIndexOf=functionUncurryThis("".indexOf),whitespaces$2=($$1({target:"String",proto:!0,forced:!correctIsRegExpLogic("includes")},{includes:function(e){return!!~stringIndexOf(toString$1(requireObjectCoercible$1(this)),toString$1(notARegExp(e)),1<arguments.length?arguments[1]:void 0)}}),"\t\n\v\f\r                 \u2028\u2029\ufeff"),uncurryThis=functionUncurryThis,requireObjectCoercible=requireObjectCoercible$5,toString=toString$4,whitespaces$1=whitespaces$2,replace=functionUncurryThis("".replace),whitespace="["+whitespaces$1+"]",ltrim=RegExp("^"+whitespace+whitespace+"*"),rtrim=RegExp(whitespace+whitespace+"*$"),createMethod=function(t){return function(e){e=toString(requireObjectCoercible(e));return 1&t&&(e=replace(e,ltrim,"")),e=2&t?replace(e,rtrim,""):e}},stringTrim={start:createMethod(1),end:createMethod(2),trim:createMethod(3)},PROPER_FUNCTION_NAME=functionName.PROPER,fails=fails$e,whitespaces=whitespaces$2,non="​…᠎",stringTrimForced=function(e){return fails(function(){return!!whitespaces[e]()||non[e]()!==non||PROPER_FUNCTION_NAME&&whitespaces[e].name!==e})},$=_export,$trim=stringTrim.trim,forcedStringTrimMethod=stringTrimForced;$({target:"String",proto:!0,forced:stringTrimForced("trim")},{trim:function(){return $trim(this)}});const virtualIndexIncrement=5,EngineList=()=>{const n=useDispatch(),o=useSelector(selectors.engineList.selectEngines),r=useSelector(selectors.engineList.selectSelectedEngine);var e=useSelector(selectors.engineList.selectSearchTerm),t=0===o.length;const[i,a]=react.exports.useState(!1),[s,l]=react.exports.useState(virtualIndexIncrement),[c,d]=react.exports.useState([...o]);const u=react.exports.useRef(null);const p=react.exports.useCallback(e=>{setTimeout(()=>n(actions.engineList.setSelectedEngine(e)),350)},[r]);return jsxRuntime.exports.jsxs(Stack,Object.assign({sx:{overflow:"hidden",gap:"10px"}},{children:[jsxRuntime.exports.jsx(TextField,{value:e,onChange:e=>{const t=e["target"]["value"];l(virtualIndexIncrement),a(!0),n(actions.engineList.setSearchTerm(t));e=[...o].filter(e=>{return(((null==e?void 0:e.name)||"").toLowerCase()+((null==e?void 0:e.description)||"").toLowerCase()).includes(t.toLowerCase().trim())});d(e),setTimeout(()=>a(!1),500)},placeholder:"Search Engines"}),jsxRuntime.exports.jsxs(Stack,Object.assign({sx:{overflow:"auto","& .engine-outer-container":{overflow:"initial"}},ref:u,onScroll:()=>{var e,t,n;u.current&&({scrollTop:e,scrollHeight:t,clientHeight:n}=u.current,t-500<=e+n)&&(s>=c.length||l(e=>e+virtualIndexIncrement))}},{children:[c.slice(0,s>c.length?c.length:s).map(e=>{var t=e.id===(null===r||void 0===r?void 0:r.id);return jsxRuntime.exports.jsx(Engine,Object.assign({},e,{disableUnavailableCheck:!0,onSave:()=>p(e),saved:t,onDeselect:()=>p(null)}))}),i&&jsxRuntime.exports.jsx(EngineSearchSkeleton,{})]})),t&&!i&&jsxRuntime.exports.jsx(EngineSearchEmptyState,{})]}))},CategoryList=()=>{const o=useDispatch();var e=(null==(e=useSelector(selectEngineCategories))?void 0:e.categories)||[];return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Typography,Object.assign({sx:{fontSize:"14px",marginBottom:"10px"}},{children:SHARED_TEXT.engineList.cognitionSubTitle()})),jsxRuntime.exports.jsx(Stack,Object.assign({sx:{height:"100%",overflow:"auto","& .engine-category-card:last-of-type":{borderBottom:"0px"}}},{children:e.filter(e=>{return null==(e=null==(e=null==e?void 0:e.engines)?void 0:e.records)?void 0:e.length}).map((n,e)=>jsxRuntime.exports.jsx(EngineCategoryCard,{category:n,onClick:()=>{return t=null==(t=null==(e=n)?void 0:e.engines)?void 0:t.records,o(actions.engineList.setEngines(t)),o(actions.engineList.setActiveView(EEngineListViewMode.engines)),void o(actions.engineList.setActiveEngineCategory(e));var e,t}},e))}))]})},EngineListPanel=(!function(e){e.categories="categories",e.engines="engines"}(EEngineListViewMode=EEngineListViewMode||{}),()=>{const t=useDispatch(),n=useSelector(selectors.dagNodes.selectNodeTypeSelected);var e=useSelector(selectors.engineList.selectActiveView);return react.exports.useEffect(()=>{let e=EEngineListViewMode.engines;switch(n){case EDagNodeType.Push:case EDagNodeType.Pull:case EDagNodeType.Cognition:e=EEngineListViewMode.categories}t(actions.engineList.setActiveView(e))},[n]),jsxRuntime.exports.jsxs(OverlayPanelContainer,{children:[jsxRuntime.exports.jsx(OverlayPanelHeader,{title:(()=>{switch(n){case EDagNodeType.Push:return SHARED_TEXT.engineList.titlePull();case EDagNodeType.Pull:return SHARED_TEXT.engineList.titlePush();case EDagNodeType.Cognition:return SHARED_TEXT.engineList.cognitionTitle()}return""})()}),jsxRuntime.exports.jsxs(Stack,Object.assign({sx:{padding:"20px",boxSizing:"border-box",overflow:"hidden"}},{children:[e===EEngineListViewMode.engines&&jsxRuntime.exports.jsx(EngineList,{}),e===EEngineListViewMode.categories&&jsxRuntime.exports.jsx(CategoryList,{})]})),jsxRuntime.exports.jsx(EngineListPanelFooter,{})]})}),EngineListPanelFooter=()=>{const a=useDispatch(),e=useSelector(selectors.engineList.selectActiveView),s=useSelector(selectors.engineList.selectSelectedEngine),l=useSelector(selectEngines$1);const{parentNodeId:c,engineId:d}=useSelector(selectors.dagNodes.selectNodeToBeAdded),t=()=>{a(actions.engineList.resetEngineListState())},n=()=>{var e,t,n,o,r,i;s&&({id:e,fields:t,mode:i,preferredInputFormat:n}=s,a(actions.engines.fetchEngineStart(e)),console.log("engines",l),o=l.find(e=>e.id===d),r=c,console.log("parent",o),o&&(null==(o=o.definition)?void 0:o.mode)===EEngineFolderMode.Stream&&i===EEngineFolderMode.Chunk?(r=o=v4(),i=null!=n&&n.toLowerCase().startsWith("video")?"video":"audio",a(actions.dagNodes.addDagNode({engineId:"8bdb0e3b-ff28-4f6e-a3ba-887bd06e6440",nodeId:o,parentId:c,engineFields:[{fieldName:"ffmpegTemplate",fieldValue:i}]})),a(actions.dagNodes.addDagNode({engineId:"352556c7-de07-4d55-b33f-74b1cf237f25",nodeId:v4(),parentId:c})),a(actions.dagNodes.addDagNode({engineId:e,engineFields:t,parentId:r}))):a(actions.dagNodes.addDagNode({engineId:e,engineFields:t,parentId:c})),a(actions.engineList.resetEngineListState()),a(actions.overlayPanel.setActiveView({activeView:null})))};return jsxRuntime.exports.jsx(OverlayPanelFooterArea,{children:e===EEngineListViewMode.engines?jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Button,Object.assign({onClick:t},{children:SHARED_TEXT.panels.back()})),jsxRuntime.exports.jsx(Button,Object.assign({disabled:e===EEngineListViewMode.engines?!s:(e,EEngineListViewMode.categories,!1),onClick:n,variant:"contained"},{children:SHARED_TEXT.engineList.addNode()}))]}):e===EEngineListViewMode.categories?jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[" ",jsxRuntime.exports.jsx(Button,{children:SHARED_TEXT.panels.back()}),jsxRuntime.exports.jsx(Button,Object.assign({variant:"contained"},{children:SHARED_TEXT.panels.next()}))]}):null})},namespace="engineList",initialState={engines:[],activeCategory:null,activeView:EEngineListViewMode.categories,selectedEngine:null,searchTerm:""},engineListSlice=createSlice({name:SLICE_NAME+"/"+namespace,initialState:Object.assign({},initialState),reducers:{setEngines(e,t){e.engines=t.payload},setSelectedEngine(e,t){e.selectedEngine=t.payload},setActiveView(e,t){e.activeView=t.payload},setActiveEngineCategory(e,t){e.activeCategory=t.payload},setSearchTerm(e,t){e.searchTerm=t.payload},resetEngineListState(e){e.activeCategory=initialState.activeCategory,e.selectedEngine=initialState.selectedEngine,e.searchTerm=initialState.searchTerm,e.activeView=initialState.activeView}}}),actions$1=engineListSlice.actions;var engineList_slice=engineListSlice.reducer;const actions={[namespace$5]:actions$6,[namespace$4]:actions$5,[namespace$3]:actions$4,[namespace$2]:actions$3,[namespace]:actions$1,[namespace$1]:actions$2},rootReducer=combineReducers({[namespace$5]:engines_slice,[namespace$4]:dagNodes_slice,[namespace$3]:dagTemplates_slice,[namespace$2]:basicInfo_slice,[namespace]:engineList_slice,[namespace$1]:overlayPanel_slice});function __awaiter(e,a,s,l){return new(s=s||Promise)(function(n,t){function o(e){try{i(l.next(e))}catch(e){t(e)}}function r(e){try{i(l.throw(e))}catch(e){t(e)}}function i(e){var t;e.done?n(e.value):((t=e.value)instanceof s?t:new s(function(e){e(t)})).then(o,r)}i((l=l.apply(e,a||[])).next())})}function fetchEngine(t,n){return __awaiter(this,void 0,void 0,function*(){var e="engine";return(yield baseGraphQLApiWithError(Object.assign(Object.assign({query:`
1
+ import{g$ as createStack,cc as createSvgIcon,j as jsxRuntime,ee as isSymbol_1,ec as identity_1,ce as _baseIteratee,ed as _isIterateeCall,h0 as toFinite_1,h1 as _baseForOwn,h2 as _arrayReduce,d5 as isArray_1,dY as _baseEach,e7 as isBuffer$1,e8 as isFunction_1,dU as isObject_1,e9 as isTypedArray_1,bv as commonjsRequire,c8 as has_1,bQ as isEmpty_1,bY as keys_1,bX as map_1,ds as size_1,eb as _baseFor,gF as _castFunction,de as _baseGet,dg as _castPath,h3 as hasIn_1,da as toString_1,h4 as now_1,r as react,h5 as useSyncExternalStoreExports,a1 as createSlice,co as combineReducers,m as makeStyles,cs as AIWareThemeProvider,a4 as DynamicModuleLoader,eP as getLibraryModule,A as AIWareIntlProvider,n as useDispatch,o as useSelector,fc as panelsSelector,B as Box,af as Portal,H as classNames,am as all,T as Typography,V as Button,ar as Tooltip,M as IconButton,c7 as Hide,cw as Stack$2,b2 as Fade,ew as takeEvery$1,D as FormControl,E as TextField,f6 as EngineCategoryIcons,eF as Process,F as FormattedMessage,W as Divider,ay as select$1,f3 as selectApiConfigs,ax as put,c9 as showMessage,ca as MessageSeverity,h6 as imageUpload,h7 as characterCountTextField,bV as Icon,b_ as Avatar,h8 as Engines,f8 as Settings,cK as Menu,U as MenuItem,aR as Dialog,b7 as DialogTitle,b8 as DialogContent,cH as DialogContentText,b9 as DialogActions,cT as baseGraphQLApiWithError}from"./js-core.esm.js";import{_ as _baseClone,f as forEach_1,a as _arrayEach,c as cloneDeep_1,d as defaults_1}from"./js-core.esm52.js";import{q as _baseAssignValue,r as _overRest,t as _setToString,u as _baseCreate,j as _getPrototype,a as _baseRest,i as isArrayLikeObject_1,v as constant_1,k as keysIn_1,c as _assignValue,l as last_1,s as sortBy_1}from"./js-core.esm29.js";import{_ as _baseFlatten,f as filter_1}from"./js-core.esm28.js";import{_ as _baseUniq}from"./js-core.esm32.js";import{v as values_1,_ as _baseSet,m as merge_1}from"./js-core.esm27.js";import{f as find_1}from"./js-core.esm14.js";import{f as flatten_1}from"./js-core.esm34.js";import{getDataCenterProcessAIModule,EngineCard as Engine,EngineSearchSkeleton,EngineSearchEmptyState,EngineCategoryCard}from"./js-core.esm47.js";import{v as v4}from"./js-core.esm36.js";import{B as Box$1}from"./js-core.esm31.js";import"./js-core.esm19.js";import"./js-core.esm35.js";import"./js-core.esm38.js";import"./js-core.esm9.js";import"./js-core.esm24.js";import"./js-core.esm5.js";import"./js-core.esm11.js";import"./js-core.esm37.js";const Stack=createStack();var Stack$1=Stack,DeleteOutline=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM8 9h8v10H8V9zm7.5-5-1-1h-5l-1 1H5v2h14V4z"}),"DeleteOutline"),EditOutlined=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"m14.06 9.02.92.92L5.92 19H5v-.92l9.06-9.06M17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29zm-3.6 3.19L3 17.25V21h3.75L17.81 9.94l-3.75-3.75z"}),"EditOutlined"),Engineering=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4zm13.1-8.16c.01-.11.02-.22.02-.34 0-.12-.01-.23-.03-.34l.74-.58c.07-.05.08-.15.04-.22l-.7-1.21c-.04-.08-.14-.1-.21-.08l-.86.35c-.18-.14-.38-.25-.59-.34l-.13-.93c-.02-.09-.09-.15-.18-.15h-1.4c-.09 0-.16.06-.17.15l-.13.93c-.21.09-.41.21-.59.34l-.87-.35c-.08-.03-.17 0-.21.08l-.7 1.21c-.04.08-.03.17.04.22l.74.58c-.02.11-.03.23-.03.34 0 .11.01.23.03.34l-.74.58c-.07.05-.08.15-.04.22l.7 1.21c.04.08.14.1.21.08l.87-.35c.18.14.38.25.59.34l.13.93c.01.09.08.15.17.15h1.4c.09 0 .16-.06.17-.15l.13-.93c.21-.09.41-.21.59-.34l.87.35c.08.03.17 0 .21-.08l.7-1.21c.04-.08.03-.17-.04-.22l-.73-.58zm-2.6.91c-.69 0-1.25-.56-1.25-1.25s.56-1.25 1.25-1.25 1.25.56 1.25 1.25-.56 1.25-1.25 1.25zm.42 3.93-.5-.87c-.03-.06-.1-.08-.15-.06l-.62.25c-.13-.1-.27-.18-.42-.24l-.09-.66c-.02-.06-.08-.1-.14-.1h-1c-.06 0-.11.04-.12.11l-.09.66c-.15.06-.29.15-.42.24l-.62-.25c-.06-.02-.12 0-.15.06l-.5.87c-.03.06-.02.12.03.16l.53.41c-.01.08-.02.16-.02.24 0 .08.01.17.02.24l-.53.41c-.05.04-.06.11-.03.16l.5.87c.03.06.1.08.15.06l.62-.25c.13.1.27.18.42.24l.09.66c.01.07.06.11.12.11h1c.06 0 .12-.04.12-.11l.09-.66c.15-.06.29-.15.42-.24l.62.25c.06.02.12 0 .15-.06l.5-.87c.03-.06.02-.12-.03-.16l-.52-.41c.01-.08.02-.16.02-.24 0-.08-.01-.17-.02-.24l.53-.41c.05-.04.06-.11.04-.17zm-2.42 1.65c-.46 0-.83-.38-.83-.83 0-.46.38-.83.83-.83s.83.38.83.83c0 .46-.37.83-.83.83zM4.74 9h8.53c.27 0 .49-.22.49-.49v-.02c0-.27-.22-.49-.49-.49H13c0-1.48-.81-2.75-2-3.45v.95c0 .28-.22.5-.5.5s-.5-.22-.5-.5V4.14C9.68 4.06 9.35 4 9 4s-.68.06-1 .14V5.5c0 .28-.22.5-.5.5S7 5.78 7 5.5v-.95C5.81 5.25 5 6.52 5 8h-.26c-.27 0-.49.22-.49.49v.03c0 .26.22.48.49.48zM9 13c1.86 0 3.41-1.28 3.86-3H5.14c.45 1.72 2 3 3.86 3z"}),"Engineering"),FullscreenOutlined=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z"}),"FullscreenOutlined"),HelpOutline=createSvgIcon(jsxRuntime.exports.jsx("path",{d:"M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"}),"HelpOutline"),isSymbol$3=isSymbol_1;function baseExtremum$3(e,t,n){for(var o=-1,r=e.length;++o<r;){var i,a,s=e[o],l=t(s);null!=l&&(void 0===i?l==l&&!isSymbol$3(l):n(l,i))&&(i=l,a=s)}return a}var _baseExtremum=baseExtremum$3;function baseGt$1(e,t){return t<e}var _baseGt=baseGt$1,baseExtremum$2=baseExtremum$3,baseGt=baseGt$1,identity$3=identity_1;function max$1(e){return e&&e.length?baseExtremum$2(e,identity$3,baseGt):void 0}var max_1=max$1;function baseLt$2(e,t){return e<t}var _baseLt=baseLt$2,baseExtremum$1=baseExtremum$3,baseLt$1=baseLt$2,identity$2=identity_1;function min$3(e){return e&&e.length?baseExtremum$1(e,identity$2,baseLt$1):void 0}var min_1=min$3,baseExtremum=baseExtremum$3,baseIteratee$3=_baseIteratee,baseLt=baseLt$2;function minBy(e,t){return e&&e.length?baseExtremum(e,baseIteratee$3(t),baseLt):void 0}var minBy_1=minBy,nativeCeil=Math.ceil,nativeMax=Math.max;function baseRange$1(e,t,n,o){for(var r=-1,i=nativeMax(nativeCeil((t-e)/(n||1)),0),a=Array(i);i--;)a[o?i:++r]=e,e+=n;return a}var _baseRange=baseRange$1,baseRange=baseRange$1,isIterateeCall=_isIterateeCall,toFinite=toFinite_1;function createRange$1(o){return function(e,t,n){return n&&"number"!=typeof n&&isIterateeCall(e,t,n)&&(t=n=void 0),e=toFinite(e),void 0===t?(t=e,e=0):t=toFinite(t),n=void 0===n?e<t?1:-1:toFinite(n),baseRange(e,t,n,o)}}var _createRange=createRange$1,createRange=createRange$1,range=createRange$1(),range_1=range,baseAssignValue=_baseAssignValue,baseForOwn$1=_baseForOwn,baseIteratee$2=_baseIteratee;function mapValues(e,o){var r={};return o=baseIteratee$2(o),baseForOwn$1(e,function(e,t,n){baseAssignValue(r,t,o(e,t,n))}),r}var mapValues_1=mapValues,flatten=flatten_1,overRest=_overRest,setToString=_setToString;function flatRest$1(e){return setToString(overRest(e,void 0,flatten),e+"")}var _flatRest=flatRest$1,baseClone=_baseClone,CLONE_SYMBOLS_FLAG=4;function clone(e){return baseClone(e,CLONE_SYMBOLS_FLAG)}var clone_1=clone,each=forEach_1;function isUndefined(e){return void 0===e}var isUndefined_1=isUndefined;function baseReduce$1(e,o,r,i,t){return t(e,function(e,t,n){r=i?(i=!1,e):o(r,e,t,n)}),r}var _baseReduce=baseReduce$1,arrayReduce$1=_arrayReduce,baseEach=_baseEach,baseIteratee$1=_baseIteratee,baseReduce=baseReduce$1,isArray$1=isArray_1;function reduce(e,t,n){var o=isArray$1(e)?arrayReduce$1:baseReduce,r=arguments.length<3;return o(e,baseIteratee$1(t),n,r,baseEach)}var reduce_1=reduce,arrayEach=_arrayEach,baseCreate=_baseCreate,baseForOwn=_baseForOwn,baseIteratee=_baseIteratee,getPrototype=_getPrototype,isArray=isArray_1,isBuffer=isBuffer$1.exports,isFunction=isFunction_1,isObject$7=isObject_1,isTypedArray=isTypedArray_1;function transform(e,o,r){var t,n=isArray(e),i=n||isBuffer(e)||isTypedArray(e);return o=baseIteratee(o),null==r&&(t=e&&e.constructor,r=i?n?new t:[]:isObject$7(e)&&isFunction(t)?baseCreate(getPrototype(e)):{}),(i?arrayEach:baseForOwn)(e,function(e,t,n){return o(r,e,t,n)}),r}var transform_1=transform,baseFlatten=_baseFlatten,baseRest=_baseRest,baseUniq=_baseUniq,isArrayLikeObject=isArrayLikeObject_1,union=_baseRest(function(e){return baseUniq(baseFlatten(e,1,isArrayLikeObject,!0))}),union_1=union;if("function"==typeof commonjsRequire)try{lodash$1={clone:clone_1,constant:constant_1,each:each,filter:filter_1,has:has_1,isArray:isArray_1,isEmpty:isEmpty_1,isFunction:isFunction_1,isUndefined:isUndefined_1,keys:keys_1,map:map_1,reduce:reduce_1,size:size_1,transform:transform_1,union:union_1,values:values_1}}catch(e){}var lodash$1,lodash_1$1=lodash$1=lodash$1||window._,_$z=lodash_1$1,graph=Graph$a,DEFAULT_EDGE_NAME="\0",GRAPH_NODE="\0",EDGE_KEY_DELIM="";function Graph$a(e){this._isDirected=!_$z.has(e,"directed")||e.directed,this._isMultigraph=!!_$z.has(e,"multigraph")&&e.multigraph,this._isCompound=!!_$z.has(e,"compound")&&e.compound,this._label=void 0,this._defaultNodeLabelFn=_$z.constant(void 0),this._defaultEdgeLabelFn=_$z.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[GRAPH_NODE]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function incrementOrInitEntry(e,t){e[t]?e[t]++:e[t]=1}function decrementOrRemoveEntry(e,t){--e[t]||delete e[t]}function edgeArgsToId(e,t,n,o){t=""+t,n=""+n;return!e&&n<t&&(e=t,t=n,n=e),t+EDGE_KEY_DELIM+n+EDGE_KEY_DELIM+(_$z.isUndefined(o)?DEFAULT_EDGE_NAME:o)}function edgeArgsToObj(e,t,n,o){t=""+t,n=""+n,!e&&n<t&&(e=t,t=n,n=e),e={v:t,w:n};return o&&(e.name=o),e}function edgeObjToId(e,t){return edgeArgsToId(e,t.v,t.w,t.name)}Graph$a.prototype._nodeCount=0,Graph$a.prototype._edgeCount=0,Graph$a.prototype.isDirected=function(){return this._isDirected},Graph$a.prototype.isMultigraph=function(){return this._isMultigraph},Graph$a.prototype.isCompound=function(){return this._isCompound},Graph$a.prototype.setGraph=function(e){return this._label=e,this},Graph$a.prototype.graph=function(){return this._label},Graph$a.prototype.setDefaultNodeLabel=function(e){return _$z.isFunction(e)||(e=_$z.constant(e)),this._defaultNodeLabelFn=e,this},Graph$a.prototype.nodeCount=function(){return this._nodeCount},Graph$a.prototype.nodes=function(){return _$z.keys(this._nodes)},Graph$a.prototype.sources=function(){var t=this;return _$z.filter(this.nodes(),function(e){return _$z.isEmpty(t._in[e])})},Graph$a.prototype.sinks=function(){var t=this;return _$z.filter(this.nodes(),function(e){return _$z.isEmpty(t._out[e])})},Graph$a.prototype.setNodes=function(e,t){var n=arguments,o=this;return _$z.each(e,function(e){1<n.length?o.setNode(e,t):o.setNode(e)}),this},Graph$a.prototype.setNode=function(e,t){return _$z.has(this._nodes,e)?1<arguments.length&&(this._nodes[e]=t):(this._nodes[e]=1<arguments.length?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=GRAPH_NODE,this._children[e]={},this._children[GRAPH_NODE][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount),this},Graph$a.prototype.node=function(e){return this._nodes[e]},Graph$a.prototype.hasNode=function(e){return _$z.has(this._nodes,e)},Graph$a.prototype.removeNode=function(e){var t,n=this;return _$z.has(this._nodes,e)&&(t=function(e){n.removeEdge(n._edgeObjs[e])},delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],_$z.each(this.children(e),function(e){n.setParent(e)}),delete this._children[e]),_$z.each(_$z.keys(this._in[e]),t),delete this._in[e],delete this._preds[e],_$z.each(_$z.keys(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount),this},Graph$a.prototype.setParent=function(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(_$z.isUndefined(t))t=GRAPH_NODE;else{for(var n=t+="";!_$z.isUndefined(n);n=this.parent(n))if(n===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this},Graph$a.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},Graph$a.prototype.parent=function(e){if(this._isCompound){e=this._parent[e];if(e!==GRAPH_NODE)return e}},Graph$a.prototype.children=function(e){var t;return _$z.isUndefined(e)&&(e=GRAPH_NODE),this._isCompound?(t=this._children[e])?_$z.keys(t):void 0:e===GRAPH_NODE?this.nodes():this.hasNode(e)?[]:void 0},Graph$a.prototype.predecessors=function(e){e=this._preds[e];if(e)return _$z.keys(e)},Graph$a.prototype.successors=function(e){e=this._sucs[e];if(e)return _$z.keys(e)},Graph$a.prototype.neighbors=function(e){var t=this.predecessors(e);if(t)return _$z.union(t,this.successors(e))},Graph$a.prototype.isLeaf=function(e){e=this.isDirected()?this.successors(e):this.neighbors(e);return 0===e.length},Graph$a.prototype.filterNodes=function(n){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound}),r=(o.setGraph(this.graph()),this),i=(_$z.each(this._nodes,function(e,t){n(t)&&o.setNode(t,e)}),_$z.each(this._edgeObjs,function(e){o.hasNode(e.v)&&o.hasNode(e.w)&&o.setEdge(e,r.edge(e))}),{});return this._isCompound&&_$z.each(o.nodes(),function(e){o.setParent(e,function e(t){var n=r.parent(t);return void 0===n||o.hasNode(n)?i[t]=n:n in i?i[n]:e(n)}(e))}),o},Graph$a.prototype.setDefaultEdgeLabel=function(e){return _$z.isFunction(e)||(e=_$z.constant(e)),this._defaultEdgeLabelFn=e,this},Graph$a.prototype.edgeCount=function(){return this._edgeCount},Graph$a.prototype.edges=function(){return _$z.values(this._edgeObjs)},Graph$a.prototype.setPath=function(e,n){var o=this,r=arguments;return _$z.reduce(e,function(e,t){return 1<r.length?o.setEdge(e,t,n):o.setEdge(e,t),t}),this},Graph$a.prototype.setEdge=function(){var e,t,n=!1,o=arguments[0],o=("object"==typeof o&&null!==o&&"v"in o?(r=o.v,i=o.w,e=o.name,2===arguments.length&&(t=arguments[1],n=!0)):(r=o,i=arguments[1],e=arguments[3],2<arguments.length&&(t=arguments[2],n=!0)),r=""+r,i=""+i,_$z.isUndefined(e)||(e=""+e),edgeArgsToId(this._isDirected,r,i,e));if(_$z.has(this._edgeLabels,o))n&&(this._edgeLabels[o]=t);else{if(!_$z.isUndefined(e)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(r),this.setNode(i),this._edgeLabels[o]=n?t:this._defaultEdgeLabelFn(r,i,e);var n=edgeArgsToObj(this._isDirected,r,i,e),r=n.v,i=n.w;Object.freeze(n),this._edgeObjs[o]=n,incrementOrInitEntry(this._preds[i],r),incrementOrInitEntry(this._sucs[r],i),this._in[i][o]=n,this._out[r][o]=n,this._edgeCount++}return this},Graph$a.prototype.edge=function(e,t,n){var o=1===arguments.length?edgeObjToId(this._isDirected,e):edgeArgsToId(this._isDirected,e,t,n);return this._edgeLabels[o]},Graph$a.prototype.hasEdge=function(e,t,n){var o=1===arguments.length?edgeObjToId(this._isDirected,e):edgeArgsToId(this._isDirected,e,t,n);return _$z.has(this._edgeLabels,o)},Graph$a.prototype.removeEdge=function(e,t,n){var o=1===arguments.length?edgeObjToId(this._isDirected,arguments[0]):edgeArgsToId(this._isDirected,e,t,n),r=this._edgeObjs[o];return r&&(e=r.v,t=r.w,delete this._edgeLabels[o],delete this._edgeObjs[o],decrementOrRemoveEntry(this._preds[t],e),decrementOrRemoveEntry(this._sucs[e],t),delete this._in[t][o],delete this._out[e][o],this._edgeCount--),this},Graph$a.prototype.inEdges=function(e,t){var e=this._in[e];if(e)return e=_$z.values(e),t?_$z.filter(e,function(e){return e.v===t}):e},Graph$a.prototype.outEdges=function(e,t){var e=this._out[e];if(e)return e=_$z.values(e),t?_$z.filter(e,function(e){return e.w===t}):e},Graph$a.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))};var version$2="2.1.8",lib$1={Graph:graph,version:version$2},_$y=lodash_1$1,Graph$9=graph,json={write:write,read:read};function write(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:writeNodes(e),edges:writeEdges(e)};return _$y.isUndefined(e.graph())||(t.value=_$y.clone(e.graph())),t}function writeNodes(o){return _$y.map(o.nodes(),function(e){var t=o.node(e),n=o.parent(e),e={v:e};return _$y.isUndefined(t)||(e.value=t),_$y.isUndefined(n)||(e.parent=n),e})}function writeEdges(o){return _$y.map(o.edges(),function(e){var t=o.edge(e),n={v:e.v,w:e.w};return _$y.isUndefined(e.name)||(n.name=e.name),_$y.isUndefined(t)||(n.value=t),n})}function read(e){var t=new Graph$9(e.options).setGraph(e.value);return _$y.each(e.nodes,function(e){t.setNode(e.v,e.value),e.parent&&t.setParent(e.v,e.parent)}),_$y.each(e.edges,function(e){t.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),t}var _$x=lodash_1$1,components_1=components;function components(t){var n,o={},r=[];function i(e){_$x.has(o,e)||(o[e]=!0,n.push(e),_$x.each(t.successors(e),i),_$x.each(t.predecessors(e),i))}return _$x.each(t.nodes(),function(e){n=[],i(e),n.length&&r.push(n)}),r}var _$w=lodash_1$1,priorityQueue=PriorityQueue$2;function PriorityQueue$2(){this._arr=[],this._keyIndices={}}PriorityQueue$2.prototype.size=function(){return this._arr.length},PriorityQueue$2.prototype.keys=function(){return this._arr.map(function(e){return e.key})},PriorityQueue$2.prototype.has=function(e){return _$w.has(this._keyIndices,e)},PriorityQueue$2.prototype.priority=function(e){e=this._keyIndices[e];if(void 0!==e)return this._arr[e].priority},PriorityQueue$2.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},PriorityQueue$2.prototype.add=function(e,t){var n,o,r=this._keyIndices;return e=String(e),!_$w.has(r,e)&&(o=(n=this._arr).length,r[e]=o,n.push({key:e,priority:t}),this._decrease(o),!0)},PriorityQueue$2.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},PriorityQueue$2.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+t);this._arr[n].priority=t,this._decrease(n)},PriorityQueue$2.prototype._heapify=function(e){var t=this._arr,n=2*e,o=1+n,r=e;n<t.length&&(r=t[n].priority<t[r].priority?n:r,(r=o<t.length?t[o].priority<t[r].priority?o:r:r)!==e)&&(this._swap(e,r),this._heapify(r))},PriorityQueue$2.prototype._decrease=function(e){for(var t,n=this._arr,o=n[e].priority;0!==e&&!(n[t=e>>1].priority<o);)this._swap(e,t),e=t},PriorityQueue$2.prototype._swap=function(e,t){var n=this._arr,o=this._keyIndices,r=n[e],i=n[t];n[e]=i,n[t]=r,o[i.key]=e,o[r.key]=t};var _$v=lodash_1$1,PriorityQueue$1=priorityQueue,dijkstra_1=dijkstra$1,DEFAULT_WEIGHT_FUNC$1=lodash_1$1.constant(1);function dijkstra$1(t,e,n,o){return runDijkstra(t,String(e),n||DEFAULT_WEIGHT_FUNC$1,o||function(e){return t.outEdges(e)})}function runDijkstra(e,n,i,t){function o(e){var t=e.v!==a?e.v:e.w,n=l[t],o=i(e),r=s.distance+o;if(o<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+e+" Weight: "+o);r<n.distance&&(n.distance=r,n.predecessor=a,c.decrease(t,r))}var a,s,l={},c=new PriorityQueue$1;for(e.nodes().forEach(function(e){var t=e===n?0:Number.POSITIVE_INFINITY;l[e]={distance:t},c.add(e,t)});0<c.size()&&(a=c.removeMin(),(s=l[a]).distance!==Number.POSITIVE_INFINITY);)t(a).forEach(o);return l}var dijkstra=dijkstra_1,_$u=lodash_1$1,dijkstraAll_1=dijkstraAll;function dijkstraAll(n,o,r){return _$u.transform(n.nodes(),function(e,t){e[t]=dijkstra(n,t,o,r)},{})}var _$t=lodash_1$1,tarjan_1=tarjan$1;function tarjan$1(i){var a=0,s=[],l={},c=[];return i.nodes().forEach(function(e){_$t.has(l,e)||!function t(e){var n=l[e]={onStack:!0,lowlink:a,index:a++};if(s.push(e),i.successors(e).forEach(function(e){_$t.has(l,e)?l[e].onStack&&(n.lowlink=Math.min(n.lowlink,l[e].index)):(t(e),n.lowlink=Math.min(n.lowlink,l[e].lowlink))}),n.lowlink===n.index){for(var o,r=[];o=s.pop(),l[o].onStack=!1,r.push(o),e!==o;);c.push(r)}}(e)}),c}var _$s=lodash_1$1,tarjan=tarjan_1,findCycles_1=findCycles;function findCycles(t){return _$s.filter(tarjan(t),function(e){return 1<e.length||1===e.length&&t.hasEdge(e[0],e[0])})}var _$r=lodash_1$1,floydWarshall_1=floydWarshall,DEFAULT_WEIGHT_FUNC=lodash_1$1.constant(1);function floydWarshall(t,e,n){return runFloydWarshall(t,e||DEFAULT_WEIGHT_FUNC,n||function(e){return t.outEdges(e)})}function runFloydWarshall(e,o,t){var a={},s=e.nodes();return s.forEach(function(n){a[n]={},a[n][n]={distance:0},s.forEach(function(e){n!==e&&(a[n][e]={distance:Number.POSITIVE_INFINITY})}),t(n).forEach(function(e){var t=e.v===n?e.w:e.v,e=o(e);a[n][t]={distance:e,predecessor:n}})}),s.forEach(function(r){var i=a[r];s.forEach(function(e){var o=a[e];s.forEach(function(e){var t=o[r],n=i[e],e=o[e],t=t.distance+n.distance;t<e.distance&&(e.distance=t,e.predecessor=n.predecessor)})})}),a}var _$q=lodash_1$1,topsort_1=topsort$1;function topsort$1(n){var o={},r={},i=[];if(_$q.each(n.sinks(),function e(t){if(_$q.has(r,t))throw new CycleException;_$q.has(o,t)||(r[t]=!0,o[t]=!0,_$q.each(n.predecessors(t),e),delete r[t],i.push(t))}),_$q.size(o)!==n.nodeCount())throw new CycleException;return i}function CycleException(){}(topsort$1.CycleException=CycleException).prototype=new Error;var topsort=topsort_1,isAcyclic_1=isAcyclic;function isAcyclic(e){try{topsort(e)}catch(e){if(e instanceof topsort.CycleException)return!1;throw e}return!0}var _$p=lodash_1$1,dfs_1=dfs$3;function dfs$3(t,e,n){_$p.isArray(e)||(e=[e]);var o=(t.isDirected()?t.successors:t.neighbors).bind(t),r=[],i={};return _$p.each(e,function(e){if(!t.hasNode(e))throw new Error("Graph does not have node: "+e);doDfs(t,e,"post"===n,i,o,r)}),r}function doDfs(t,e,n,o,r,i){_$p.has(o,e)||(o[e]=!0,n||i.push(e),_$p.each(r(e),function(e){doDfs(t,e,n,o,r,i)}),n&&i.push(e))}var dfs$2=dfs$3,postorder_1=postorder$2;function postorder$2(e,t){return dfs$2(e,t,"post")}var dfs$1=dfs$3,preorder_1=preorder$1;function preorder$1(e,t){return dfs$1(e,t,"pre")}var _$o=lodash_1$1,Graph$8=graph,PriorityQueue=priorityQueue,prim_1=prim;function prim(e,o){var r,t=new Graph$8,i={},a=new PriorityQueue;function n(e){var t=e.v===r?e.w:e.v,n=a.priority(t);void 0!==n&&(e=o(e))<n&&(i[t]=r,a.decrease(t,e))}if(0!==e.nodeCount()){_$o.each(e.nodes(),function(e){a.add(e,Number.POSITIVE_INFINITY),t.setNode(e)}),a.decrease(e.nodes()[0],0);for(var s=!1;0<a.size();){if(r=a.removeMin(),_$o.has(i,r))t.setEdge(r,i[r]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(r).forEach(n)}}return t}var alg={components:components_1,dijkstra:dijkstra_1,dijkstraAll:dijkstraAll_1,findCycles:findCycles_1,floydWarshall:floydWarshall_1,isAcyclic:isAcyclic,postorder:postorder$2,preorder:preorder$1,prim:prim,tarjan:tarjan_1,topsort:topsort_1},lib=lib$1,graphlib$1={Graph:lib.Graph,json:json,alg:alg,version:lib.version};if("function"==typeof commonjsRequire)try{graphlib=graphlib$1}catch(e){}var graphlib,graphlib_1=graphlib=graphlib||window.graphlib,baseFor=_baseFor,castFunction=_castFunction,keysIn=keysIn_1;function forIn(e,t){return null==e?e:baseFor(e,castFunction(t),keysIn)}var forIn_1=forIn,baseGet=_baseGet,baseSet=_baseSet,castPath=_castPath;function basePickBy$1(e,t,n){for(var o=-1,r=t.length,i={};++o<r;){var a=t[o],s=baseGet(e,a);n(s,a)&&baseSet(i,castPath(a,e),s)}return i}var _basePickBy=basePickBy$1,basePickBy=basePickBy$1,hasIn=hasIn_1;function basePick$1(n,e){return basePickBy(n,e,function(e,t){return hasIn(n,t)})}var _basePick=basePick$1,basePick=basePick$1,flatRest=_flatRest,pick=_flatRest(function(e,t){return null==e?{}:basePick(e,t)}),pick_1=pick,toString$7=toString_1,idCounter=0;function uniqueId(e){var t=++idCounter;return toString$7(e)+t}var uniqueId_1=uniqueId;function baseZipObject$1(e,t,n){for(var o=-1,r=e.length,i=t.length,a={};++o<r;){var s=o<i?t[o]:void 0;n(a,e[o],s)}return a}var _baseZipObject=baseZipObject$1,assignValue=_assignValue,baseZipObject=baseZipObject$1;function zipObject(e,t){return baseZipObject(e||[],t||[],assignValue)}var zipObject_1=zipObject;if("function"==typeof commonjsRequire)try{lodash={cloneDeep:cloneDeep_1,constant:constant_1,defaults:defaults_1,each:each,filter:filter_1,find:find_1,flatten:flatten_1,forEach:forEach_1,forIn:forIn_1,has:has_1,isUndefined:isUndefined_1,last:last_1,map:map_1,mapValues:mapValues_1,max:max_1,merge:merge_1,min:min_1,minBy:minBy_1,now:now_1,pick:pick_1,range:range_1,reduce:reduce_1,sortBy:sortBy_1,uniqueId:uniqueId_1,values:values_1,zipObject:zipObject_1}}catch(e){}var lodash,lodash_1=lodash=lodash||window._,list=List$1;function List$1(){var e={};e._next=e._prev=e,this._sentinel=e}function unlink(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function filterOutLinks(e,t){if("_next"!==e&&"_prev"!==e)return t}List$1.prototype.dequeue=function(){var e=this._sentinel,t=e._prev;if(t!==e)return unlink(t),t},List$1.prototype.enqueue=function(e){var t=this._sentinel;e._prev&&e._next&&unlink(e),e._next=t._next,t._next._prev=e,(t._next=e)._prev=t},List$1.prototype.toString=function(){for(var e=[],t=this._sentinel,n=t._prev;n!==t;)e.push(JSON.stringify(n,filterOutLinks)),n=n._prev;return"["+e.join(", ")+"]"};var _$n=lodash_1,Graph$7=graphlib_1.Graph,List=list,greedyFas=greedyFAS$1,DEFAULT_WEIGHT_FN=_$n.constant(1);function greedyFAS$1(t,e){return t.nodeCount()<=1?[]:(e=doGreedyFAS((e=buildState(t,e||DEFAULT_WEIGHT_FN)).graph,e.buckets,e.zeroIdx),_$n.flatten(_$n.map(e,function(e){return t.outEdges(e.v,e.w)}),!0))}function doGreedyFAS(e,t,n){for(var o,r=[],i=t[t.length-1],a=t[0];e.nodeCount();){for(;o=a.dequeue();)removeNode(e,t,n,o);for(;o=i.dequeue();)removeNode(e,t,n,o);if(e.nodeCount())for(var s=t.length-2;0<s;--s)if(o=t[s].dequeue()){r=r.concat(removeNode(e,t,n,o,!0));break}}return r}function removeNode(o,r,i,e,a){var s=a?[]:void 0;return _$n.forEach(o.inEdges(e.v),function(e){var t=o.edge(e),n=o.node(e.v);a&&s.push({v:e.v,w:e.w}),n.out-=t,assignBucket(r,i,n)}),_$n.forEach(o.outEdges(e.v),function(e){var t=o.edge(e),e=e.w,e=o.node(e);e.in-=t,assignBucket(r,i,e)}),o.removeNode(e.v),s}function buildState(e,o){var r=new Graph$7,i=0,a=0,t=(_$n.forEach(e.nodes(),function(e){r.setNode(e,{v:e,in:0,out:0})}),_$n.forEach(e.edges(),function(e){var t=r.edge(e.v,e.w)||0,n=o(e);r.setEdge(e.v,e.w,t+n),a=Math.max(a,r.node(e.v).out+=n),i=Math.max(i,r.node(e.w).in+=n)}),_$n.range(a+i+3).map(function(){return new List})),n=i+1;return _$n.forEach(r.nodes(),function(e){assignBucket(t,n,r.node(e))}),{graph:r,buckets:t,zeroIdx:n}}function assignBucket(e,t,n){(n.out?n.in?e[n.out-n.in+t]:e[e.length-1]:e[0]).enqueue(n)}var _$m=lodash_1,greedyFAS=greedyFas,acyclic$1={run:run$2,undo:undo$2};function run$2(n){var t,e="greedy"===n.graph().acyclicer?greedyFAS(n,(t=n,function(e){return t.edge(e).weight})):dfsFAS(n);_$m.forEach(e,function(e){var t=n.edge(e);n.removeEdge(e),t.forwardName=e.name,t.reversed=!0,n.setEdge(e.w,e.v,t,_$m.uniqueId("rev"))})}function dfsFAS(n){var o=[],r={},i={};return _$m.forEach(n.nodes(),function t(e){_$m.has(i,e)||(i[e]=!0,r[e]=!0,_$m.forEach(n.outEdges(e),function(e){_$m.has(r,e.w)?o.push(e):t(e.w)}),delete r[e])}),o}function undo$2(o){_$m.forEach(o.edges(),function(e){var t,n=o.edge(e);n.reversed&&(o.removeEdge(e),t=n.forwardName,delete n.reversed,delete n.forwardName,o.setEdge(e.w,e.v,n,t))})}var _$l=lodash_1,Graph$6=graphlib_1.Graph,util$a={addDummyNode:addDummyNode,simplify:simplify$1,asNonCompoundGraph:asNonCompoundGraph,successorWeights:successorWeights,predecessorWeights:predecessorWeights,intersectRect:intersectRect,buildLayerMatrix:buildLayerMatrix,normalizeRanks:normalizeRanks$1,removeEmptyRanks:removeEmptyRanks$1,addBorderNode:addBorderNode$1,maxRank:maxRank,partition:partition,time:time,notime:notime};function addDummyNode(e,t,n,o){for(var r;r=_$l.uniqueId(o),e.hasNode(r););return n.dummy=t,e.setNode(r,n),r}function simplify$1(o){var r=(new Graph$6).setGraph(o.graph());return _$l.forEach(o.nodes(),function(e){r.setNode(e,o.node(e))}),_$l.forEach(o.edges(),function(e){var t=r.edge(e.v,e.w)||{weight:0,minlen:1},n=o.edge(e);r.setEdge(e.v,e.w,{weight:t.weight+n.weight,minlen:Math.max(t.minlen,n.minlen)})}),r}function asNonCompoundGraph(t){var n=new Graph$6({multigraph:t.isMultigraph()}).setGraph(t.graph());return _$l.forEach(t.nodes(),function(e){t.children(e).length||n.setNode(e,t.node(e))}),_$l.forEach(t.edges(),function(e){n.setEdge(e,t.edge(e))}),n}function successorWeights(n){var e=_$l.map(n.nodes(),function(e){var t={};return _$l.forEach(n.outEdges(e),function(e){t[e.w]=(t[e.w]||0)+n.edge(e).weight}),t});return _$l.zipObject(n.nodes(),e)}function predecessorWeights(n){var e=_$l.map(n.nodes(),function(e){var t={};return _$l.forEach(n.inEdges(e),function(e){t[e.v]=(t[e.v]||0)+n.edge(e).weight}),t});return _$l.zipObject(n.nodes(),e)}function intersectRect(e,t){var n,o=e.x,r=e.y,i=t.x-o,t=t.y-r,a=e.width/2,e=e.height/2;if(i||t)return e=Math.abs(t)*a>Math.abs(i)*e?(n=(e=t<0?-e:e)*i/t,e):(n=a=i<0?-a:a)*t/i,{x:o+n,y:r+e};throw new Error("Not possible to find intersection inside of the rectangle")}function buildLayerMatrix(o){var r=_$l.map(_$l.range(maxRank(o)+1),function(){return[]});return _$l.forEach(o.nodes(),function(e){var t=o.node(e),n=t.rank;_$l.isUndefined(n)||(r[n][t.order]=e)}),r}function normalizeRanks$1(t){var n=_$l.min(_$l.map(t.nodes(),function(e){return t.node(e).rank}));_$l.forEach(t.nodes(),function(e){e=t.node(e);_$l.has(e,"rank")&&(e.rank-=n)})}function removeEmptyRanks$1(n){var o=_$l.min(_$l.map(n.nodes(),function(e){return n.node(e).rank})),r=[],i=(_$l.forEach(n.nodes(),function(e){var t=n.node(e).rank-o;r[t]||(r[t]=[]),r[t].push(e)}),0),a=n.graph().nodeRankFactor;_$l.forEach(r,function(e,t){_$l.isUndefined(e)&&t%a!=0?--i:i&&_$l.forEach(e,function(e){n.node(e).rank+=i})})}function addBorderNode$1(e,t,n,o){var r={width:0,height:0};return 4<=arguments.length&&(r.rank=n,r.order=o),addDummyNode(e,"border",r,t)}function maxRank(t){return _$l.max(_$l.map(t.nodes(),function(e){e=t.node(e).rank;if(!_$l.isUndefined(e))return e}))}function partition(e,t){var n={lhs:[],rhs:[]};return _$l.forEach(e,function(e){(t(e)?n.lhs:n.rhs).push(e)}),n}function time(e,t){var n=_$l.now();try{return t()}finally{console.log(e+" time: "+(_$l.now()-n)+"ms")}}function notime(e,t){return t()}var _$k=lodash_1,util$9=util$a,normalize$2={run:run$1,undo:undo$1};function run$1(t){t.graph().dummyChains=[],_$k.forEach(t.edges(),function(e){normalizeEdge(t,e)})}function normalizeEdge(e,t){var n,o,r,i=t.v,a=e.node(i).rank,s=t.w,l=e.node(s).rank,c=t.name,d=e.edge(t),u=d.labelRank;if(l!==a+1){for(e.removeEdge(t),r=0,++a;a<l;++r,++a)d.points=[],n=util$9.addDummyNode(e,"edge",o={width:0,height:0,edgeLabel:d,edgeObj:t,rank:a},"_d"),a===u&&(o.width=d.width,o.height=d.height,o.dummy="edge-label",o.labelpos=d.labelpos),e.setEdge(i,n,{weight:d.weight},c),0===r&&e.graph().dummyChains.push(n),i=n;e.setEdge(i,s,{weight:d.weight},c)}}function undo$1(r){_$k.forEach(r.graph().dummyChains,function(e){var t,n=r.node(e),o=n.edgeLabel;for(r.setEdge(n.edgeObj,o);n.dummy;)t=r.successors(e)[0],r.removeNode(e),o.points.push({x:n.x,y:n.y}),"edge-label"===n.dummy&&(o.x=n.x,o.y=n.y,o.width=n.width,o.height=n.height),n=r.node(e=t)})}var _$j=lodash_1,util$8={longestPath:longestPath$1,slack:slack$2};function longestPath$1(o){var r={};_$j.forEach(o.sources(),function t(e){var n=o.node(e);if(_$j.has(r,e))return n.rank;r[e]=!0;e=_$j.min(_$j.map(o.outEdges(e),function(e){return t(e.w)-o.edge(e).minlen}));return e!==Number.POSITIVE_INFINITY&&null!=e||(e=0),n.rank=e})}function slack$2(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var _$i=lodash_1,Graph$5=graphlib_1.Graph,slack$1=util$8.slack,feasibleTree_1=feasibleTree$2;function feasibleTree$2(e){var t,n=new Graph$5({directed:!1}),o=e.nodes()[0],r=e.nodeCount();for(n.setNode(o,{});tightTree(n,e)<r;)t=findMinSlackEdge(n,e),t=n.hasNode(t.v)?slack$1(e,t):-slack$1(e,t),shiftRanks(n,e,t);return n}function tightTree(r,i){return _$i.forEach(r.nodes(),function n(o){_$i.forEach(i.nodeEdges(o),function(e){var t=e.v,t=o===t?e.w:t;r.hasNode(t)||slack$1(i,e)||(r.setNode(t,{}),r.setEdge(o,t,{}),n(t))})}),r.nodeCount()}function findMinSlackEdge(t,n){return _$i.minBy(n.edges(),function(e){if(t.hasNode(e.v)!==t.hasNode(e.w))return slack$1(n,e)})}function shiftRanks(e,t,n){_$i.forEach(e.nodes(),function(e){t.node(e).rank+=n})}var _$h=lodash_1,feasibleTree$1=feasibleTree_1,slack=util$8.slack,initRank=util$8.longestPath,preorder=graphlib_1.alg.preorder,postorder$1=graphlib_1.alg.postorder,simplify=util$a.simplify,networkSimplex_1=networkSimplex$1;function networkSimplex$1(e){e=simplify(e),initRank(e);var t,n=feasibleTree$1(e);for(initLowLimValues(n),initCutValues(n,e);t=leaveEdge(n);)exchangeEdges(n,e,t,enterEdge(n,e,t))}function initCutValues(t,n){var e=(e=postorder$1(t,t.nodes())).slice(0,e.length-1);_$h.forEach(e,function(e){assignCutValue(t,n,e)})}function assignCutValue(e,t,n){var o=e.node(n).parent;e.edge(n,o).cutvalue=calcCutValue(e,t,n)}function calcCutValue(o,r,i){var a=o.node(i).parent,s=!0,e=r.edge(i,a),l=0;return e||(s=!1,e=r.edge(a,i)),l=e.weight,_$h.forEach(r.nodeEdges(i),function(e){var t=e.v===i,n=t?e.w:e.v;n!==a&&(t=t===s,e=r.edge(e).weight,l+=t?e:-e,isTreeEdge(o,i,n))&&(e=o.edge(i,n).cutvalue,l+=t?-e:e)}),l}function initLowLimValues(e,t){arguments.length<2&&(t=e.nodes()[0]),dfsAssignLowLim(e,{},1,t)}function dfsAssignLowLim(t,n,o,r,e){var i=o,a=t.node(r);return n[r]=!0,_$h.forEach(t.neighbors(r),function(e){_$h.has(n,e)||(o=dfsAssignLowLim(t,n,o,e,r))}),a.low=i,a.lim=o++,e?a.parent=e:delete a.parent,o}function leaveEdge(t){return _$h.find(t.edges(),function(e){return t.edge(e).cutvalue<0})}function enterEdge(t,n,e){var o=e.v,r=e.w,e=(n.hasEdge(o,r)||(o=e.w,r=e.v),t.node(o)),o=t.node(r),i=e,a=!1,r=(e.lim>o.lim&&(i=o,a=!0),_$h.filter(n.edges(),function(e){return a===isDescendant(t,t.node(e.v),i)&&a!==isDescendant(t,t.node(e.w),i)}));return _$h.minBy(r,function(e){return slack(n,e)})}function exchangeEdges(e,t,n,o){var r=n.v,n=n.w;e.removeEdge(r,n),e.setEdge(o.v,o.w,{}),initLowLimValues(e),initCutValues(e,t),updateRanks(e,t)}function updateRanks(r,i){var e=_$h.find(r.nodes(),function(e){return!i.node(e).parent}),e=(e=preorder(r,e)).slice(1);_$h.forEach(e,function(e){var t=r.node(e).parent,n=i.edge(e,t),o=!1;n||(n=i.edge(t,e),o=!0),i.node(e).rank=i.node(t).rank+(o?n.minlen:-n.minlen)})}function isTreeEdge(e,t,n){return e.hasEdge(t,n)}function isDescendant(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}networkSimplex$1.initLowLimValues=initLowLimValues,networkSimplex$1.initCutValues=initCutValues,networkSimplex$1.calcCutValue=calcCutValue,networkSimplex$1.leaveEdge=leaveEdge,networkSimplex$1.enterEdge=enterEdge,networkSimplex$1.exchangeEdges=exchangeEdges;var rankUtil=util$8,longestPath=util$8.longestPath,feasibleTree=feasibleTree_1,networkSimplex=networkSimplex_1,rank_1=rank$1;function rank$1(e){switch(e.graph().ranker){case"network-simplex":networkSimplexRanker(e);break;case"tight-tree":tightTreeRanker(e);break;case"longest-path":longestPathRanker(e);break;default:networkSimplexRanker(e)}}var longestPathRanker=longestPath;function tightTreeRanker(e){longestPath(e),feasibleTree(e)}function networkSimplexRanker(e){networkSimplex(e)}var _$g=lodash_1,parentDummyChains_1=parentDummyChains$1;function parentDummyChains$1(c){var d=postorder(c);_$g.forEach(c.graph().dummyChains,function(e){for(var t,n=c.node(e).edgeObj,o=findPath(c,d,n.v,n.w),r=o.path,i=o.lca,a=0,s=r[a],l=!0;e!==n.w;){if(t=c.node(e),l){for(;(s=r[a])!==i&&c.node(s).maxRank<t.rank;)a++;s===i&&(l=!1)}if(!l){for(;a<r.length-1&&c.node(s=r[a+1]).minRank<=t.rank;)a++;s=r[a]}c.setParent(e,s),e=c.successors(e)[0]}})}function findPath(e,t,n,o){for(var r,i=[],a=[],s=Math.min(t[n].low,t[o].low),l=Math.max(t[n].lim,t[o].lim),c=n;c=e.parent(c),i.push(c),c&&(t[c].low>s||l>t[c].lim););for(r=c,c=o;(c=e.parent(c))!==r;)a.push(c);return{path:i.concat(a.reverse()),lca:r}}function postorder(o){var r={},i=0;return _$g.forEach(o.children(),function e(t){var n=i;_$g.forEach(o.children(t),e),r[t]={low:n,lim:i++}}),r}var _$f=lodash_1,util$7=util$a,nestingGraph$1={run:run,cleanup:cleanup};function run(t){var n=util$7.addDummyNode(t,"root",{},"_root"),o=treeDepths(t),r=_$f.max(_$f.values(o))-1,i=2*r+1,a=(t.graph().nestingRoot=n,_$f.forEach(t.edges(),function(e){t.edge(e).minlen*=i}),sumWeights(t)+1);_$f.forEach(t.children(),function(e){dfs(t,n,i,a,r,o,e)}),t.graph().nodeRankFactor=i}function dfs(r,i,a,s,l,c,d){var u,p,e,t=r.children(d);t.length?(u=util$7.addBorderNode(r,"_bt"),p=util$7.addBorderNode(r,"_bb"),e=r.node(d),r.setParent(u,d),e.borderTop=u,r.setParent(p,d),e.borderBottom=p,_$f.forEach(t,function(e){dfs(r,i,a,s,l,c,e);var t=r.node(e),n=t.borderTop||e,e=t.borderBottom||e,t=t.borderTop?s:2*s,o=n!==e?1:l-c[d]+1;r.setEdge(u,n,{weight:t,minlen:o,nestingEdge:!0}),r.setEdge(e,p,{weight:t,minlen:o,nestingEdge:!0})}),r.parent(d)||r.setEdge(i,u,{weight:0,minlen:l+c[d]})):d!==i&&r.setEdge(i,d,{weight:0,minlen:a})}function treeDepths(r){var i={};return _$f.forEach(r.children(),function(e){!function t(e,n){var o=r.children(e);o&&o.length&&_$f.forEach(o,function(e){t(e,n+1)}),i[e]=n}(e,1)}),i}function sumWeights(n){return _$f.reduce(n.edges(),function(e,t){return e+n.edge(t).weight},0)}function cleanup(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,_$f.forEach(t.edges(),function(e){t.edge(e).nestingEdge&&t.removeEdge(e)})}var _$e=lodash_1,util$6=util$a,addBorderSegments_1=addBorderSegments$1;function addBorderSegments$1(a){_$e.forEach(a.children(),function e(t){var n=a.children(t),o=a.node(t);if(n.length&&_$e.forEach(n,e),_$e.has(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var r=o.minRank,i=o.maxRank+1;r<i;++r)addBorderNode(a,"borderLeft","_bl",t,o,r),addBorderNode(a,"borderRight","_br",t,o,r)}})}function addBorderNode(e,t,n,o,r,i){var a=r[t][i-1],n=util$6.addDummyNode(e,"border",{width:0,height:0,rank:i,borderType:t},n);r[t][i]=n,e.setParent(n,o),a&&e.setEdge(a,n,{weight:1})}var _$d=lodash_1,coordinateSystem$1={adjust:adjust,undo:undo};function adjust(e){var t=e.graph().rankdir.toLowerCase();"lr"!==t&&"rl"!==t||swapWidthHeight(e)}function undo(e){var t=e.graph().rankdir.toLowerCase();"bt"!==t&&"rl"!==t||reverseY(e),"lr"!==t&&"rl"!==t||(swapXY(e),swapWidthHeight(e))}function swapWidthHeight(t){_$d.forEach(t.nodes(),function(e){swapWidthHeightOne(t.node(e))}),_$d.forEach(t.edges(),function(e){swapWidthHeightOne(t.edge(e))})}function swapWidthHeightOne(e){var t=e.width;e.width=e.height,e.height=t}function reverseY(t){_$d.forEach(t.nodes(),function(e){reverseYOne(t.node(e))}),_$d.forEach(t.edges(),function(e){e=t.edge(e);_$d.forEach(e.points,reverseYOne),_$d.has(e,"y")&&reverseYOne(e)})}function reverseYOne(e){e.y=-e.y}function swapXY(t){_$d.forEach(t.nodes(),function(e){swapXYOne(t.node(e))}),_$d.forEach(t.edges(),function(e){e=t.edge(e);_$d.forEach(e.points,swapXYOne),_$d.has(e,"x")&&swapXYOne(e)})}function swapXYOne(e){var t=e.x;e.x=e.y,e.y=t}var _$c=lodash_1,initOrder_1=initOrder$1;function initOrder$1(o){var r={},e=_$c.filter(o.nodes(),function(e){return!o.children(e).length}),t=_$c.max(_$c.map(e,function(e){return o.node(e).rank})),i=_$c.map(_$c.range(t+1),function(){return[]});t=_$c.sortBy(e,function(e){return o.node(e).rank});return _$c.forEach(t,function e(t){var n;_$c.has(r,t)||(r[t]=!0,n=o.node(t),i[n.rank].push(t),_$c.forEach(o.successors(t),e))}),i}var _$b=lodash_1,crossCount_1=crossCount$1;function crossCount$1(e,t){for(var n=0,o=1;o<t.length;++o)n+=twoLayerCrossCount(e,t[o-1],t[o]);return n}function twoLayerCrossCount(t,e,n){for(var o=_$b.zipObject(n,_$b.map(n,function(e,t){return t})),e=_$b.flatten(_$b.map(e,function(e){return _$b.sortBy(_$b.map(t.outEdges(e),function(e){return{pos:o[e.w],weight:t.edge(e).weight}}),"pos")}),!0),r=1;r<n.length;)r<<=1;var i=2*r-1,a=(--r,_$b.map(new Array(i),function(){return 0})),s=0;return _$b.forEach(e.forEach(function(e){for(var t=e.pos+r,n=(a[t]+=e.weight,0);0<t;)t%2&&(n+=a[t+1]),a[t=t-1>>1]+=e.weight;s+=e.weight*n})),s}var _$a=lodash_1,barycenter_1=barycenter$1;function barycenter$1(o,e){return _$a.map(e,function(e){var t=o.inEdges(e);return t.length?{v:e,barycenter:(t=_$a.reduce(t,function(e,t){var n=o.edge(t),t=o.node(t.v);return{sum:e.sum+n.weight*t.order,weight:e.weight+n.weight}},{sum:0,weight:0})).sum/t.weight,weight:t.weight}:{v:e}})}var _$9=lodash_1,resolveConflicts_1=resolveConflicts$1;function resolveConflicts$1(e,t){var o={};return _$9.forEach(e,function(e,t){t=o[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};_$9.isUndefined(e.barycenter)||(t.barycenter=e.barycenter,t.weight=e.weight)}),_$9.forEach(t.edges(),function(e){var t=o[e.v],n=o[e.w];_$9.isUndefined(t)||_$9.isUndefined(n)||(n.indegree++,t.out.push(o[e.w]))}),doResolveConflicts(_$9.filter(o,function(e){return!e.indegree}))}function doResolveConflicts(n){var e=[];for(;n.length;){var t=n.pop();e.push(t),_$9.forEach(t.in.reverse(),function(t){return function(e){e.merged||(_$9.isUndefined(e.barycenter)||_$9.isUndefined(t.barycenter)||e.barycenter>=t.barycenter)&&mergeEntries(t,e)}}(t)),_$9.forEach(t.out,function(t){return function(e){e.in.push(t),0==--e.indegree&&n.push(e)}}(t))}return _$9.map(_$9.filter(e,function(e){return!e.merged}),function(e){return _$9.pick(e,["vs","i","barycenter","weight"])})}function mergeEntries(e,t){var n=0,o=0;e.weight&&(n+=e.barycenter*e.weight,o+=e.weight),t.weight&&(n+=t.barycenter*t.weight,o+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=n/o,e.weight=o,e.i=Math.min(t.i,e.i),t.merged=!0}var _$8=lodash_1,util$5=util$a,sort_1=sort$1;function sort$1(e,t){var e=util$5.partition(e,function(e){return _$8.has(e,"barycenter")}),n=e.lhs,o=_$8.sortBy(e.rhs,function(e){return-e.i}),r=[],i=0,a=0,s=0,e=(n.sort(compareWithBias(!!t)),s=consumeUnsortable(r,o,s),_$8.forEach(n,function(e){s+=e.vs.length,r.push(e.vs),i+=e.barycenter*e.weight,a+=e.weight,s=consumeUnsortable(r,o,s)}),{vs:_$8.flatten(r,!0)});return a&&(e.barycenter=i/a,e.weight=a),e}function consumeUnsortable(e,t,n){for(var o;t.length&&(o=_$8.last(t)).i<=n;)t.pop(),e.push(o.vs),n++;return n}function compareWithBias(n){return function(e,t){return e.barycenter<t.barycenter?-1:e.barycenter>t.barycenter?1:n?t.i-e.i:e.i-t.i}}var _$7=lodash_1,barycenter=barycenter$1,resolveConflicts=resolveConflicts$1,sort=sort$1,sortSubgraph_1=sortSubgraph$1;function sortSubgraph$1(n,e,o,r){var t,i=n.children(e),e=n.node(e),a=e?e.borderLeft:void 0,s=e?e.borderRight:void 0,l={},e=(a&&(i=_$7.filter(i,function(e){return e!==a&&e!==s})),barycenter(n,i)),i=(_$7.forEach(e,function(e){var t;n.children(e.v).length&&(t=sortSubgraph$1(n,e.v,o,r),l[e.v]=t,_$7.has(t,"barycenter"))&&mergeBarycenters(e,t)}),resolveConflicts(e,o)),e=(expandSubgraphs(i,l),sort(i,r));return a&&(e.vs=_$7.flatten([a,e.vs,s],!0),n.predecessors(a).length)&&(i=n.node(n.predecessors(a)[0]),t=n.node(n.predecessors(s)[0]),_$7.has(e,"barycenter")||(e.barycenter=0,e.weight=0),e.barycenter=(e.barycenter*e.weight+i.order+t.order)/(e.weight+2),e.weight+=2),e}function expandSubgraphs(e,t){_$7.forEach(e,function(e){e.vs=_$7.flatten(e.vs.map(function(e){return t[e]?t[e].vs:e}),!0)})}function mergeBarycenters(e,t){_$7.isUndefined(e.barycenter)?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)}var _$6=lodash_1,Graph$4=graphlib_1.Graph,buildLayerGraph_1=buildLayerGraph$1;function buildLayerGraph$1(r,n,i){var a=createRootNode(r),s=new Graph$4({compound:!0}).setGraph({root:a}).setDefaultNodeLabel(function(e){return r.node(e)});return _$6.forEach(r.nodes(),function(o){var e=r.node(o),t=r.parent(o);(e.rank===n||e.minRank<=n&&n<=e.maxRank)&&(s.setNode(o),s.setParent(o,t||a),_$6.forEach(r[i](o),function(e){var t=e.v===o?e.w:e.v,n=s.edge(t,o),n=_$6.isUndefined(n)?0:n.weight;s.setEdge(t,o,{weight:r.edge(e).weight+n})}),_$6.has(e,"minRank"))&&s.setNode(o,{borderLeft:e.borderLeft[n],borderRight:e.borderRight[n]})}),s}function createRootNode(e){for(var t;e.hasNode(t=_$6.uniqueId("_root")););return t}var _$5=lodash_1,addSubgraphConstraints_1=addSubgraphConstraints$1;function addSubgraphConstraints$1(r,i,e){var a,s={};_$5.forEach(e,function(e){for(var t,n,o=r.parent(e);o;){if((t=r.parent(o))?(n=s[t],s[t]=o):(n=a,a=o),n&&n!==o)return void i.setEdge(n,o);o=t}})}var _$4=lodash_1,initOrder=initOrder_1,crossCount=crossCount_1,sortSubgraph=sortSubgraph_1,buildLayerGraph=buildLayerGraph$1,addSubgraphConstraints=addSubgraphConstraints$1,Graph$3=graphlib_1.Graph,util$4=util$a,order_1=order$1;function order$1(e){for(var t,n=util$4.maxRank(e),o=buildLayerGraphs(e,_$4.range(1,n+1),"inEdges"),r=buildLayerGraphs(e,_$4.range(n-1,-1,-1),"outEdges"),i=(assignOrder(e,initOrder(e)),Number.POSITIVE_INFINITY),a=0,s=0;s<4;++a,++s){sweepLayerGraphs(a%2?o:r,2<=a%4);var l=util$4.buildLayerMatrix(e),c=crossCount(e,l);c<i&&(s=0,t=_$4.cloneDeep(l),i=c)}assignOrder(e,t)}function buildLayerGraphs(t,e,n){return _$4.map(e,function(e){return buildLayerGraph(t,e,n)})}function sweepLayerGraphs(e,t){var o=new Graph$3;_$4.forEach(e,function(n){var e=n.graph().root,e=sortSubgraph(n,e,o,t);_$4.forEach(e.vs,function(e,t){n.node(e).order=t}),addSubgraphConstraints(n,o,e.vs)})}function assignOrder(n,e){_$4.forEach(e,function(e){_$4.forEach(e,function(e,t){n.node(e).order=t})})}var _$3=lodash_1,Graph$2=graphlib_1.Graph,util$3=util$a,bk={positionX:positionX$1,findType1Conflicts:findType1Conflicts,findType2Conflicts:findType2Conflicts,addConflict:addConflict,hasConflict:hasConflict,verticalAlignment:verticalAlignment,horizontalCompaction:horizontalCompaction,alignCoordinates:alignCoordinates,findSmallestWidthAlignment:findSmallestWidthAlignment,balance:balance};function findType1Conflicts(c,e){var d={};return _$3.reduce(e,function(e,o){var i=0,a=0,s=e.length,l=_$3.last(o);return _$3.forEach(o,function(e,t){var n=findOtherInnerSegmentNode(c,e),r=n?c.node(n).order:s;!n&&e!==l||(_$3.forEach(o.slice(a,t+1),function(o){_$3.forEach(c.predecessors(o),function(e){var t=c.node(e),n=t.order;!(n<i||r<n)||t.dummy&&c.node(o).dummy||addConflict(d,e,o)})}),a=t+1,i=r)}),o}),d}function findType2Conflicts(s,e){var a={};function l(t,e,n,o,r){var i;_$3.forEach(_$3.range(e,n),function(e){i=t[e],s.node(i).dummy&&_$3.forEach(s.predecessors(i),function(e){var t=s.node(e);t.dummy&&(t.order<o||t.order>r)&&addConflict(a,e,i)})})}return _$3.reduce(e,function(n,o){var r,i=-1,a=0;return _$3.forEach(o,function(e,t){"border"===s.node(e).dummy&&(e=s.predecessors(e)).length&&(r=s.node(e[0]).order,l(o,a,t,i,r),a=t,i=r),l(o,a,o.length,r,n.length)}),o}),a}function findOtherInnerSegmentNode(t,e){if(t.node(e).dummy)return _$3.find(t.predecessors(e),function(e){return t.node(e).dummy})}function addConflict(e,t,n){n<t&&(o=t,t=n,n=o);var o=e[t];o||(e[t]=o={}),o[n]=!0}function hasConflict(e,t,n){var o;return n<t&&(o=t,t=n,n=o),_$3.has(e[t],n)}function verticalAlignment(e,t,s,l){var c={},d={},u={};return _$3.forEach(t,function(e){_$3.forEach(e,function(e,t){u[d[c[e]=e]=e]=t})}),_$3.forEach(t,function(e){var a=-1;_$3.forEach(e,function(e){var t=l(e);if(t.length)for(var n=((t=_$3.sortBy(t,function(e){return u[e]})).length-1)/2,o=Math.floor(n),r=Math.ceil(n);o<=r;++o){var i=t[o];d[e]===e&&a<u[i]&&!hasConflict(s,e,i)&&(d[i]=e,d[e]=c[e]=c[i],a=u[i])}})}),{root:c,align:d}}function horizontalCompaction(o,e,t,n,r){var i={},a=buildBlockGraph(o,e,t,r),s=r?"borderLeft":"borderRight";function l(e,t){for(var n=a.nodes(),o=n.pop(),r={};o;)r[o]?e(o):(r[o]=!0,n.push(o),n=n.concat(t(o))),o=n.pop()}return l(function(e){i[e]=a.inEdges(e).reduce(function(e,t){return Math.max(e,i[t.v]+a.edge(t))},0)},a.predecessors.bind(a)),l(function(e){var t=a.outEdges(e).reduce(function(e,t){return Math.min(e,i[t.w]-a.edge(t))},Number.POSITIVE_INFINITY),n=o.node(e);t!==Number.POSITIVE_INFINITY&&n.borderType!==s&&(i[e]=Math.max(i[e],t))},a.successors.bind(a)),_$3.forEach(n,function(e){i[e]=i[t[e]]}),i}function buildBlockGraph(i,e,a,t){var s=new Graph$2,n=i.graph(),l=sep(n.nodesep,n.edgesep,t);return _$3.forEach(e,function(e){var r;_$3.forEach(e,function(e){var t,n,o=a[e];s.setNode(o),r&&(t=a[r],n=s.edge(t,o),s.setEdge(t,o,Math.max(l(i,e,r),n||0))),r=e})}),s}function findSmallestWidthAlignment(r,e){return _$3.minBy(_$3.values(e),function(e){var n=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;return _$3.forIn(e,function(e,t){t=width(r,t)/2;n=Math.max(e+t,n),o=Math.min(e-t,o)}),n-o})}function alignCoordinates(a,s){var e=_$3.values(s),l=_$3.min(e),c=_$3.max(e);_$3.forEach(["u","d"],function(i){_$3.forEach(["l","r"],function(e){var t,n,o=i+e,r=a[o];r!==s&&(t=_$3.values(r),n="l"===e?l-_$3.min(t):c-_$3.max(t))&&(a[o]=_$3.mapValues(r,function(e){return e+n}))})})}function balance(n,o){return _$3.mapValues(n.ul,function(e,t){return o?n[o.toLowerCase()][t]:((t=_$3.sortBy(_$3.map(n,t)))[1]+t[2])/2})}function positionX$1(o){var r,e=util$3.buildLayerMatrix(o),i=_$3.merge(findType1Conflicts(o,e),findType2Conflicts(o,e)),a={},t=(_$3.forEach(["u","d"],function(n){r="u"===n?e:_$3.values(e).reverse(),_$3.forEach(["l","r"],function(e){"r"===e&&(r=_$3.map(r,function(e){return _$3.values(e).reverse()}));var t=("u"===n?o.predecessors:o.successors).bind(o),t=verticalAlignment(o,r,i,t),t=horizontalCompaction(o,r,t.root,t.align,"r"===e);"r"===e&&(t=_$3.mapValues(t,function(e){return-e})),a[n+e]=t})}),findSmallestWidthAlignment(o,a));return alignCoordinates(a,t),balance(a,o.graph().align)}function sep(a,s,l){return function(e,t,n){var o,r=e.node(t),i=e.node(n),t=0;if(t+=r.width/2,_$3.has(r,"labelpos"))switch(r.labelpos.toLowerCase()){case"l":o=-r.width/2;break;case"r":o=r.width/2}if(o&&(t+=l?o:-o),o=0,t=(t=(t+=(r.dummy?s:a)/2)+(i.dummy?s:a)/2)+i.width/2,_$3.has(i,"labelpos"))switch(i.labelpos.toLowerCase()){case"l":o=i.width/2;break;case"r":o=-i.width/2}return o&&(t+=l?o:-o),o=0,t}}function width(e,t){return e.node(t).width}var _$2=lodash_1,util$2=util$a,positionX=bk.positionX,position_1=position$1;function position$1(n){positionY(n=util$2.asNonCompoundGraph(n)),_$2.forEach(positionX(n),function(e,t){n.node(t).x=e})}function positionY(n){var e=util$2.buildLayerMatrix(n),o=n.graph().ranksep,r=0;_$2.forEach(e,function(e){var t=_$2.max(_$2.map(e,function(e){return n.node(e).height}));_$2.forEach(e,function(e){n.node(e).y=r+t/2}),r+=t+o})}var _$1=lodash_1,acyclic=acyclic$1,normalize$1=normalize$2,rank=rank_1,normalizeRanks=util$a.normalizeRanks,parentDummyChains=parentDummyChains_1,removeEmptyRanks=util$a.removeEmptyRanks,nestingGraph=nestingGraph$1,addBorderSegments=addBorderSegments_1,coordinateSystem=coordinateSystem$1,order=order_1,position=position_1,util$1=util$a,Graph$1=graphlib_1.Graph,layout_1=layout;function layout(t,e){var n=e&&e.debugTiming?util$1.time:util$1.notime;n("layout",function(){var e=n(" buildLayoutGraph",function(){return buildLayoutGraph(t)});n(" runLayout",function(){runLayout(e,n)}),n(" updateInputGraph",function(){updateInputGraph(t,e)})})}function runLayout(e,t){t(" makeSpaceForEdgeLabels",function(){makeSpaceForEdgeLabels(e)}),t(" removeSelfEdges",function(){removeSelfEdges(e)}),t(" acyclic",function(){acyclic.run(e)}),t(" nestingGraph.run",function(){nestingGraph.run(e)}),t(" rank",function(){rank(util$1.asNonCompoundGraph(e))}),t(" injectEdgeLabelProxies",function(){injectEdgeLabelProxies(e)}),t(" removeEmptyRanks",function(){removeEmptyRanks(e)}),t(" nestingGraph.cleanup",function(){nestingGraph.cleanup(e)}),t(" normalizeRanks",function(){normalizeRanks(e)}),t(" assignRankMinMax",function(){assignRankMinMax(e)}),t(" removeEdgeLabelProxies",function(){removeEdgeLabelProxies(e)}),t(" normalize.run",function(){normalize$1.run(e)}),t(" parentDummyChains",function(){parentDummyChains(e)}),t(" addBorderSegments",function(){addBorderSegments(e)}),t(" order",function(){order(e)}),t(" insertSelfEdges",function(){insertSelfEdges(e)}),t(" adjustCoordinateSystem",function(){coordinateSystem.adjust(e)}),t(" position",function(){position(e)}),t(" positionSelfEdges",function(){positionSelfEdges(e)}),t(" removeBorderNodes",function(){removeBorderNodes(e)}),t(" normalize.undo",function(){normalize$1.undo(e)}),t(" fixupEdgeLabelCoords",function(){fixupEdgeLabelCoords(e)}),t(" undoCoordinateSystem",function(){coordinateSystem.undo(e)}),t(" translateGraph",function(){translateGraph(e)}),t(" assignNodeIntersects",function(){assignNodeIntersects(e)}),t(" reversePoints",function(){reversePointsForReversedEdges(e)}),t(" acyclic.undo",function(){acyclic.undo(e)})}function updateInputGraph(o,r){_$1.forEach(o.nodes(),function(e){var t=o.node(e),n=r.node(e);t&&(t.x=n.x,t.y=n.y,r.children(e).length)&&(t.width=n.width,t.height=n.height)}),_$1.forEach(o.edges(),function(e){var t=o.edge(e),e=r.edge(e);t.points=e.points,_$1.has(e,"x")&&(t.x=e.x,t.y=e.y)}),o.graph().width=r.graph().width,o.graph().height=r.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(n){var o=new Graph$1({multigraph:!0,compound:!0}),e=canonicalize(n.graph());return o.setGraph(_$1.merge({},graphDefaults,selectNumberAttrs(e,graphNumAttrs),_$1.pick(e,graphAttrs))),_$1.forEach(n.nodes(),function(e){var t=canonicalize(n.node(e));o.setNode(e,_$1.defaults(selectNumberAttrs(t,nodeNumAttrs),nodeDefaults)),o.setParent(e,n.parent(e))}),_$1.forEach(n.edges(),function(e){var t=canonicalize(n.edge(e));o.setEdge(e,_$1.merge({},edgeDefaults,selectNumberAttrs(t,edgeNumAttrs),_$1.pick(t,edgeAttrs)))}),o}function makeSpaceForEdgeLabels(t){var n=t.graph();n.ranksep/=2,_$1.forEach(t.edges(),function(e){e=t.edge(e);e.minlen*=2,"c"!==e.labelpos.toLowerCase()&&("TB"===n.rankdir||"BT"===n.rankdir?e.width+=e.labeloffset:e.height+=e.labeloffset)})}function injectEdgeLabelProxies(n){_$1.forEach(n.edges(),function(e){var t=n.edge(e);t.width&&t.height&&(t=n.node(e.v),t={rank:(n.node(e.w).rank-t.rank)/2+t.rank,e:e},util$1.addDummyNode(n,"edge-proxy",t,"_ep"))})}function assignRankMinMax(t){var n=0;_$1.forEach(t.nodes(),function(e){e=t.node(e);e.borderTop&&(e.minRank=t.node(e.borderTop).rank,e.maxRank=t.node(e.borderBottom).rank,n=_$1.max(n,e.maxRank))}),t.graph().maxRank=n}function removeEdgeLabelProxies(n){_$1.forEach(n.nodes(),function(e){var t=n.node(e);"edge-proxy"===t.dummy&&(n.edge(t.e).labelRank=t.rank,n.removeNode(e))})}function translateGraph(t){var r=Number.POSITIVE_INFINITY,i=0,a=Number.POSITIVE_INFINITY,s=0,e=t.graph(),n=e.marginx||0,o=e.marginy||0;function l(e){var t=e.x,n=e.y,o=e.width,e=e.height;r=Math.min(r,t-o/2),i=Math.max(i,t+o/2),a=Math.min(a,n-e/2),s=Math.max(s,n+e/2)}_$1.forEach(t.nodes(),function(e){l(t.node(e))}),_$1.forEach(t.edges(),function(e){e=t.edge(e);_$1.has(e,"x")&&l(e)}),r-=n,a-=o,_$1.forEach(t.nodes(),function(e){e=t.node(e);e.x-=r,e.y-=a}),_$1.forEach(t.edges(),function(e){e=t.edge(e);_$1.forEach(e.points,function(e){e.x-=r,e.y-=a}),_$1.has(e,"x")&&(e.x-=r),_$1.has(e,"y")&&(e.y-=a)}),e.width=i-r+n,e.height=s-a+o}function assignNodeIntersects(i){_$1.forEach(i.edges(),function(e){var t,n=i.edge(e),o=i.node(e.v),e=i.node(e.w),r=n.points?(t=n.points[0],n.points[n.points.length-1]):(n.points=[],t=e,o);n.points.unshift(util$1.intersectRect(o,t)),n.points.push(util$1.intersectRect(e,r))})}function fixupEdgeLabelCoords(n){_$1.forEach(n.edges(),function(e){var t=n.edge(e);if(_$1.has(t,"x"))switch("l"!==t.labelpos&&"r"!==t.labelpos||(t.width-=t.labeloffset),t.labelpos){case"l":t.x-=t.width/2+t.labeloffset;break;case"r":t.x+=t.width/2+t.labeloffset}})}function reversePointsForReversedEdges(t){_$1.forEach(t.edges(),function(e){e=t.edge(e);e.reversed&&e.points.reverse()})}function removeBorderNodes(i){_$1.forEach(i.nodes(),function(e){var t,n,o,r;i.children(e).length&&(e=i.node(e),t=i.node(e.borderTop),n=i.node(e.borderBottom),o=i.node(_$1.last(e.borderLeft)),r=i.node(_$1.last(e.borderRight)),e.width=Math.abs(r.x-o.x),e.height=Math.abs(n.y-t.y),e.x=o.x+e.width/2,e.y=t.y+e.height/2)}),_$1.forEach(i.nodes(),function(e){"border"===i.node(e).dummy&&i.removeNode(e)})}function removeSelfEdges(n){_$1.forEach(n.edges(),function(e){var t;e.v===e.w&&((t=n.node(e.v)).selfEdges||(t.selfEdges=[]),t.selfEdges.push({e:e,label:n.edge(e)}),n.removeEdge(e))})}function insertSelfEdges(r){var e=util$1.buildLayerMatrix(r);_$1.forEach(e,function(e){var o=0;_$1.forEach(e,function(e,t){var n=r.node(e);n.order=t+o,_$1.forEach(n.selfEdges,function(e){util$1.addDummyNode(r,"selfedge",{width:e.label.width,height:e.label.height,rank:n.rank,order:t+ ++o,e:e.e,label:e.label},"_se")}),delete n.selfEdges})})}function positionSelfEdges(a){_$1.forEach(a.nodes(),function(e){var t,n,o,r,i=a.node(e);"selfedge"===i.dummy&&(t=(r=a.node(i.e.v)).x+r.width/2,n=r.y,o=i.x-t,r=r.height/2,a.setEdge(i.e,i.label),a.removeNode(e),i.label.points=[{x:t+2*o/3,y:n-r},{x:t+5*o/6,y:n-r},{x:t+o,y:n},{x:t+5*o/6,y:n+r},{x:t+2*o/3,y:n+r}],i.label.x=i.x,i.label.y=i.y)})}function selectNumberAttrs(e,t){return _$1.mapValues(_$1.pick(e,t),Number)}function canonicalize(e){var n={};return _$1.forEach(e,function(e,t){n[t.toLowerCase()]=e}),n}var _=lodash_1,util=util$a,Graph=graphlib_1.Graph,debug={debugOrdering:debugOrdering};function debugOrdering(t){var e=util.buildLayerMatrix(t),n=new Graph({compound:!0,multigraph:!0}).setGraph({});return _.forEach(t.nodes(),function(e){n.setNode(e,{label:e}),n.setParent(e,"layer"+t.node(e).rank)}),_.forEach(t.edges(),function(e){n.setEdge(e.v,e.w,{},e.name)}),_.forEach(e,function(e,t){n.setNode("layer"+t,{rank:"same"}),_.reduce(e,function(e,t){return n.setEdge(e,t,{style:"invis"}),t})}),n}var version$1="0.8.5",dagre={graphlib:graphlib_1,layout:layout_1,debug:debug,util:{time:util$a.time,notime:util$a.notime},version:version$1};function cc(n){if("string"==typeof n||"number"==typeof n)return""+n;let o="";if(Array.isArray(n))for(let e=0,t;e<n.length;e++)""!==(t=cc(n[e]))&&(o+=(o&&" ")+t);else for(var e in n)n[e]&&(o+=(o&&" ")+e);return o}const createStoreImpl=e=>{let o;const r=new Set;var t=(e,t)=>{e="function"==typeof e?e(o):e;if(!Object.is(e,o)){const n=o;o=(null!=t?t:"object"!=typeof e)?e:Object.assign({},o,e),r.forEach(e=>e(o,n))}},n=()=>o,i={setState:t,getState:n,subscribe:e=>(r.add(e),()=>r.delete(e)),destroy:()=>{"production"!==(import.meta.env&&import.meta.env.MODE)&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),r.clear()}};return o=e(t,n,i),i},createStore=e=>e?createStoreImpl(e):createStoreImpl,useSyncExternalStoreWithSelector=useSyncExternalStoreExports["useSyncExternalStoreWithSelector"];function useStore$1(e,t=e.getState,n){t=useSyncExternalStoreWithSelector(e.subscribe,e.getState,e.getServerState||e.getState,t,n);return react.exports.useDebugValue(t),t}function shallow(t,n){if(!Object.is(t,n)){if("object"!=typeof t||null===t||"object"!=typeof n||null===n)return!1;if(t instanceof Map&&n instanceof Map){if(t.size!==n.size)return!1;for(var[e,o]of t)if(!Object.is(o,n.get(e)))return!1}else if(t instanceof Set&&n instanceof Set){if(t.size!==n.size)return!1;for(const i of t)if(!n.has(i))return!1}else{var r=Object.keys(t);if(r.length!==Object.keys(n).length)return!1;for(let e=0;e<r.length;e++)if(!Object.prototype.hasOwnProperty.call(n,r[e])||!Object.is(t[r[e]],n[r[e]]))return!1}}return!0}var noop$1={value:()=>{}};function dispatch(){for(var e,t=0,n=arguments.length,o={};t<n;++t){if(!(e=arguments[t]+"")||e in o||/[\s.]/.test(e))throw new Error("illegal type: "+e);o[e]=[]}return new Dispatch(o)}function Dispatch(e){this._=e}function parseTypenames$1(e,o){return e.trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");if(0<=n&&(t=e.slice(n+1),e=e.slice(0,n)),e&&!o.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:t}})}function get$2(e,t){for(var n,o=0,r=e.length;o<r;++o)if((n=e[o]).name===t)return n.value}function set$2(e,t,n){for(var o=0,r=e.length;o<r;++o)if(e[o].name===t){e[o]=noop$1,e=e.slice(0,o).concat(e.slice(o+1));break}return null!=n&&e.push({name:t,value:n}),e}Dispatch.prototype=dispatch.prototype={constructor:Dispatch,on:function(e,t){var n,o=this._,r=parseTypenames$1(e+"",o),i=-1,a=r.length;if(!(arguments.length<2)){if(null!=t&&"function"!=typeof t)throw new Error("invalid callback: "+t);for(;++i<a;)if(n=(e=r[i]).type)o[n]=set$2(o[n],e.name,t);else if(null==t)for(n in o)o[n]=set$2(o[n],e.name,null);return this}for(;++i<a;)if(n=(n=(e=r[i]).type)&&get$2(o[n],e.name))return n},copy:function(){var e,t={},n=this._;for(e in n)t[e]=n[e].slice();return new Dispatch(t)},call:function(e,t){if(0<(n=arguments.length-2))for(var n,o,r=new Array(n),i=0;i<n;++i)r[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(i=0,n=(o=this._[e]).length;i<n;++i)o[i].value.apply(t,r)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var o=this._[e],r=0,i=o.length;r<i;++r)o[r].value.apply(t,n)}};var xhtml="http://www.w3.org/1999/xhtml",namespaces={svg:"http://www.w3.org/2000/svg",xhtml:xhtml,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function namespace$6(e){var t=e+="",n=t.indexOf(":");return 0<=n&&"xmlns"!==(t=e.slice(0,n))&&(e=e.slice(n+1)),namespaces.hasOwnProperty(t)?{space:namespaces[t],local:e}:e}function creatorInherit(n){return function(){var e=this.ownerDocument,t=this.namespaceURI;return t===xhtml&&e.documentElement.namespaceURI===xhtml?e.createElement(n):e.createElementNS(t,n)}}function creatorFixed(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function creator(e){e=namespace$6(e);return(e.local?creatorFixed:creatorInherit)(e)}function none(){}function selector$1(e){return null==e?none:function(){return this.querySelector(e)}}function selection_select(e){"function"!=typeof e&&(e=selector$1(e));for(var t=this._groups,n=t.length,o=new Array(n),r=0;r<n;++r)for(var i,a,s=t[r],l=s.length,c=o[r]=new Array(l),d=0;d<l;++d)(i=s[d])&&(a=e.call(i,i.__data__,d,s))&&("__data__"in i&&(a.__data__=i.__data__),c[d]=a);return new Selection$1(o,this._parents)}function array(e){return null==e?[]:Array.isArray(e)?e:Array.from(e)}function empty(){return[]}function selectorAll(e){return null==e?empty:function(){return this.querySelectorAll(e)}}function arrayAll(e){return function(){return array(e.apply(this,arguments))}}function selection_selectAll(e){e=("function"==typeof e?arrayAll:selectorAll)(e);for(var t=this._groups,n=t.length,o=[],r=[],i=0;i<n;++i)for(var a,s=t[i],l=s.length,c=0;c<l;++c)(a=s[c])&&(o.push(e.call(a,a.__data__,c,s)),r.push(a));return new Selection$1(o,r)}function matcher(e){return function(){return this.matches(e)}}function childMatcher(t){return function(e){return e.matches(t)}}var find=Array.prototype.find;function childFind(e){return function(){return find.call(this.children,e)}}function childFirst(){return this.firstElementChild}function selection_selectChild(e){return this.select(null==e?childFirst:childFind("function"==typeof e?e:childMatcher(e)))}var filter=Array.prototype.filter;function children(){return Array.from(this.children)}function childrenFilter(e){return function(){return filter.call(this.children,e)}}function selection_selectChildren(e){return this.selectAll(null==e?children:childrenFilter("function"==typeof e?e:childMatcher(e)))}function selection_filter(e){"function"!=typeof e&&(e=matcher(e));for(var t=this._groups,n=t.length,o=new Array(n),r=0;r<n;++r)for(var i,a=t[r],s=a.length,l=o[r]=[],c=0;c<s;++c)(i=a[c])&&e.call(i,i.__data__,c,a)&&l.push(i);return new Selection$1(o,this._parents)}function sparse(e){return new Array(e.length)}function selection_enter(){return new Selection$1(this._enter||this._groups.map(sparse),this._parents)}function EnterNode(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function constant$3(e){return function(){return e}}function bindIndex(e,t,n,o,r,i){for(var a,s=0,l=t.length,c=i.length;s<c;++s)(a=t[s])?(a.__data__=i[s],o[s]=a):n[s]=new EnterNode(e,i[s]);for(;s<l;++s)(a=t[s])&&(r[s]=a)}function bindKey(e,t,n,o,r,i,a){for(var s,l,c=new Map,d=t.length,u=i.length,p=new Array(d),g=0;g<d;++g)(s=t[g])&&(p[g]=l=a.call(s,s.__data__,g,t)+"",c.has(l)?r[g]=s:c.set(l,s));for(g=0;g<u;++g)l=a.call(e,i[g],g,i)+"",(s=c.get(l))?((o[g]=s).__data__=i[g],c.delete(l)):n[g]=new EnterNode(e,i[g]);for(g=0;g<d;++g)(s=t[g])&&c.get(p[g])===s&&(r[g]=s)}function datum(e){return e.__data__}function selection_data(e,t){if(!arguments.length)return Array.from(this,datum);var n=t?bindKey:bindIndex,o=this._parents,r=this._groups;"function"!=typeof e&&(e=constant$3(e));for(var i=r.length,a=new Array(i),s=new Array(i),l=new Array(i),c=0;c<i;++c){var d=o[c],u=r[c],p=u.length,g=arraylike(e.call(d,d&&d.__data__,c,o)),h=g.length,f=s[c]=new Array(h),m=a[c]=new Array(h);n(d,u,f,m,l[c]=new Array(p),g,t);for(var y,x,b=0,v=0;b<h;++b)if(y=f[b]){for(v<=b&&(v=b+1);!(x=m[v])&&++v<h;);y._next=x||null}}return(a=new Selection$1(a,o))._enter=s,a._exit=l,a}function arraylike(e){return"object"==typeof e&&"length"in e?e:Array.from(e)}function selection_exit(){return new Selection$1(this._exit||this._groups.map(sparse),this._parents)}function selection_join(e,t,n){var o=this.enter(),r=this,i=this.exit(),o="function"==typeof e?(o=e(o))&&o.selection():o.append(e+"");return null!=t&&(r=(r=t(r))&&r.selection()),null==n?i.remove():n(i),o&&r?o.merge(r).order():r}function selection_merge(e){for(var e=e.selection?e.selection():e,t=this._groups,n=e._groups,o=t.length,e=n.length,r=Math.min(o,e),i=new Array(o),a=0;a<r;++a)for(var s,l=t[a],c=n[a],d=l.length,u=i[a]=new Array(d),p=0;p<d;++p)(s=l[p]||c[p])&&(u[p]=s);for(;a<o;++a)i[a]=t[a];return new Selection$1(i,this._parents)}function selection_order(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var o,r=e[t],i=r.length-1,a=r[i];0<=--i;)(o=r[i])&&(a&&4^o.compareDocumentPosition(a)&&a.parentNode.insertBefore(o,a),a=o);return this}function selection_sort(n){function e(e,t){return e&&t?n(e.__data__,t.__data__):!e-!t}n=n||ascending;for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i){for(var a,s=t[i],l=s.length,c=r[i]=new Array(l),d=0;d<l;++d)(a=s[d])&&(c[d]=a);c.sort(e)}return new Selection$1(r,this._parents).order()}function ascending(e,t){return e<t?-1:t<e?1:t<=e?0:NaN}function selection_call(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function selection_nodes(){return Array.from(this)}function selection_node(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var o=e[t],r=0,i=o.length;r<i;++r){var a=o[r];if(a)return a}return null}function selection_size(){let e=0;for(const t of this)++e;return e}function selection_empty(){return!this.node()}function selection_each(e){for(var t=this._groups,n=0,o=t.length;n<o;++n)for(var r,i=t[n],a=0,s=i.length;a<s;++a)(r=i[a])&&e.call(r,r.__data__,a,i);return this}function attrRemove$1(e){return function(){this.removeAttribute(e)}}function attrRemoveNS$1(e){return function(){this.removeAttributeNS(e.space,e.local)}}function attrConstant$1(e,t){return function(){this.setAttribute(e,t)}}function attrConstantNS$1(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function attrFunction$1(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttribute(t):this.setAttribute(t,e)}}function attrFunctionNS$1(t,n){return function(){var e=n.apply(this,arguments);null==e?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function selection_attr(e,t){var n,o=namespace$6(e);return arguments.length<2?(n=this.node(),o.local?n.getAttributeNS(o.space,o.local):n.getAttribute(o)):this.each((null==t?o.local?attrRemoveNS$1:attrRemove$1:"function"==typeof t?o.local?attrFunctionNS$1:attrFunction$1:o.local?attrConstantNS$1:attrConstant$1)(o,t))}function defaultView(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function styleRemove$1(e){return function(){this.style.removeProperty(e)}}function styleConstant$1(e,t,n){return function(){this.style.setProperty(e,t,n)}}function styleFunction$1(t,n,o){return function(){var e=n.apply(this,arguments);null==e?this.style.removeProperty(t):this.style.setProperty(t,e,o)}}function selection_style(e,t,n){return 1<arguments.length?this.each((null==t?styleRemove$1:"function"==typeof t?styleFunction$1:styleConstant$1)(e,t,null==n?"":n)):styleValue(this.node(),e)}function styleValue(e,t){return e.style.getPropertyValue(t)||defaultView(e).getComputedStyle(e,null).getPropertyValue(t)}function propertyRemove(e){return function(){delete this[e]}}function propertyConstant(e,t){return function(){this[e]=t}}function propertyFunction(t,n){return function(){var e=n.apply(this,arguments);null==e?delete this[t]:this[t]=e}}function selection_property(e,t){return 1<arguments.length?this.each((null==t?propertyRemove:"function"==typeof t?propertyFunction:propertyConstant)(e,t)):this.node()[e]}function classArray(e){return e.trim().split(/^|\s+/)}function classList$1(e){return e.classList||new ClassList(e)}function ClassList(e){this._node=e,this._names=classArray(e.getAttribute("class")||"")}function classedAdd(e,t){for(var n=classList$1(e),o=-1,r=t.length;++o<r;)n.add(t[o])}function classedRemove(e,t){for(var n=classList$1(e),o=-1,r=t.length;++o<r;)n.remove(t[o])}function classedTrue(e){return function(){classedAdd(this,e)}}function classedFalse(e){return function(){classedRemove(this,e)}}function classedFunction(e,t){return function(){(t.apply(this,arguments)?classedAdd:classedRemove)(this,e)}}function selection_classed(e,t){var n=classArray(e+"");if(arguments.length<2){for(var o=classList$1(this.node()),r=-1,i=n.length;++r<i;)if(!o.contains(n[r]))return!1;return!0}return this.each(("function"==typeof t?classedFunction:t?classedTrue:classedFalse)(n,t))}function textRemove(){this.textContent=""}function textConstant$1(e){return function(){this.textContent=e}}function textFunction$1(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function selection_text(e){return arguments.length?this.each(null==e?textRemove:("function"==typeof e?textFunction$1:textConstant$1)(e)):this.node().textContent}function htmlRemove(){this.innerHTML=""}function htmlConstant(e){return function(){this.innerHTML=e}}function htmlFunction(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function selection_html(e){return arguments.length?this.each(null==e?htmlRemove:("function"==typeof e?htmlFunction:htmlConstant)(e)):this.node().innerHTML}function raise(){this.nextSibling&&this.parentNode.appendChild(this)}function selection_raise(){return this.each(raise)}function lower(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function selection_lower(){return this.each(lower)}function selection_append(e){var t="function"==typeof e?e:creator(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function constantNull(){return null}function selection_insert(e,t){var n="function"==typeof e?e:creator(e),o=null==t?constantNull:"function"==typeof t?t:selector$1(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),o.apply(this,arguments)||null)})}function remove(){var e=this.parentNode;e&&e.removeChild(this)}function selection_remove(){return this.each(remove)}function selection_cloneShallow(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function selection_cloneDeep(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function selection_clone(e){return this.select(e?selection_cloneDeep:selection_cloneShallow)}function selection_datum(e){return arguments.length?this.property("__data__",e):this.node().__data__}function contextListener(t){return function(e){t.call(this,e,this.__data__)}}function parseTypenames(e){return e.trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");return 0<=n&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function onRemove(i){return function(){var e=this.__on;if(e){for(var t,n=0,o=-1,r=e.length;n<r;++n)t=e[n],i.type&&t.type!==i.type||t.name!==i.name?e[++o]=t:this.removeEventListener(t.type,t.listener,t.options);++o?e.length=o:delete this.__on}}}function onAdd(i,a,s){return function(){var e,t=this.__on,n=contextListener(a);if(t)for(var o=0,r=t.length;o<r;++o)if((e=t[o]).type===i.type&&e.name===i.name)return this.removeEventListener(e.type,e.listener,e.options),this.addEventListener(e.type,e.listener=n,e.options=s),void(e.value=a);this.addEventListener(i.type,n,s),e={type:i.type,name:i.name,value:a,listener:n,options:s},t?t.push(e):this.__on=[e]}}function selection_on(e,t,n){var o,r,i=parseTypenames(e+""),a=i.length;if(!(arguments.length<2)){for(s=t?onAdd:onRemove,o=0;o<a;++o)this.each(s(i[o],t,n));return this}var s=this.node().__on;if(s)for(var l,c=0,d=s.length;c<d;++c)for(o=0,l=s[c];o<a;++o)if((r=i[o]).type===l.type&&r.name===l.name)return l.value}function dispatchEvent(e,t,n){var o=defaultView(e),r=o.CustomEvent;"function"==typeof r?r=new r(t,n):(r=o.document.createEvent("Event"),n?(r.initEvent(t,n.bubbles,n.cancelable),r.detail=n.detail):r.initEvent(t,!1,!1)),e.dispatchEvent(r)}function dispatchConstant(e,t){return function(){return dispatchEvent(this,e,t)}}function dispatchFunction(e,t){return function(){return dispatchEvent(this,e,t.apply(this,arguments))}}function selection_dispatch(e,t){return this.each(("function"==typeof t?dispatchFunction:dispatchConstant)(e,t))}function*selection_iterator(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var o,r=e[t],i=0,a=r.length;i<a;++i)(o=r[i])&&(yield o)}EnterNode.prototype={constructor:EnterNode,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}},ClassList.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){e=this._names.indexOf(e);0<=e&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return 0<=this._names.indexOf(e)}};var root=[null];function Selection$1(e,t){this._groups=e,this._parents=t}function selection(){return new Selection$1([[document.documentElement]],root)}function selection_selection(){return this}function select(e){return"string"==typeof e?new Selection$1([[document.querySelector(e)]],[document.documentElement]):new Selection$1([[e]],root)}function sourceEvent(e){for(var t;t=e.sourceEvent;)e=t;return e}function pointer(e,t){if(e=sourceEvent(e),t=void 0===t?e.currentTarget:t){var n=t.ownerSVGElement||t;if(n.createSVGPoint)return(n=n.createSVGPoint()).x=e.clientX,n.y=e.clientY,[(n=n.matrixTransform(t.getScreenCTM().inverse())).x,n.y];if(t.getBoundingClientRect)return n=t.getBoundingClientRect(),[e.clientX-n.left-t.clientLeft,e.clientY-n.top-t.clientTop]}return[e.pageX,e.pageY]}const nonpassive={passive:!(Selection$1.prototype=selection.prototype={constructor:Selection$1,select:selection_select,selectAll:selection_selectAll,selectChild:selection_selectChild,selectChildren:selection_selectChildren,filter:selection_filter,data:selection_data,enter:selection_enter,exit:selection_exit,join:selection_join,merge:selection_merge,selection:selection_selection,order:selection_order,sort:selection_sort,call:selection_call,nodes:selection_nodes,node:selection_node,size:selection_size,empty:selection_empty,each:selection_each,attr:selection_attr,style:selection_style,property:selection_property,classed:selection_classed,text:selection_text,html:selection_html,raise:selection_raise,lower:selection_lower,append:selection_append,insert:selection_insert,remove:selection_remove,clone:selection_clone,datum:selection_datum,on:selection_on,dispatch:selection_dispatch,[Symbol.iterator]:selection_iterator})},nonpassivecapture={capture:!0,passive:!1};function nopropagation$1(e){e.stopImmediatePropagation()}function noevent$1(e){e.preventDefault(),e.stopImmediatePropagation()}function dragDisable(e){var t=e.document.documentElement,e=select(e).on("dragstart.drag",noevent$1,nonpassivecapture);"onselectstart"in t?e.on("selectstart.drag",noevent$1,nonpassivecapture):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function yesdrag(e,t){var n=e.document.documentElement,o=select(e).on("dragstart.drag",null);t&&(o.on("click.drag",noevent$1,nonpassivecapture),setTimeout(function(){o.on("click.drag",null)},0)),"onselectstart"in n?o.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}var constant$2=e=>()=>e;function DragEvent(e,{sourceEvent:t,subject:n,target:o,identifier:r,active:i,x:a,y:s,dx:l,dy:c,dispatch:d}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:r,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:d}})}function defaultFilter$1(e){return!e.ctrlKey&&!e.button}function defaultContainer(){return this.parentNode}function defaultSubject(e,t){return null==t?{x:e.x,y:e.y}:t}function defaultTouchable$1(){return navigator.maxTouchPoints||"ontouchstart"in this}function drag(){var o,r,i,a,s=defaultFilter$1,l=defaultContainer,n=defaultSubject,t=defaultTouchable$1,f={},m=dispatch("start","drag","end"),y=0,c=0;function x(e){e.on("mousedown.drag",d).filter(t).on("touchstart.drag",g).on("touchmove.drag",h,nonpassive).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function d(e,t){!a&&s.call(this,e,t)&&(t=v(this,l.call(this,e,t),e,t,"mouse"))&&(select(e.view).on("mousemove.drag",u,nonpassivecapture).on("mouseup.drag",p,nonpassivecapture),dragDisable(e.view),nopropagation$1(e),i=!1,o=e.clientX,r=e.clientY,t("start",e))}function u(e){var t,n;noevent$1(e),i||(t=e.clientX-o,n=e.clientY-r,i=c<t*t+n*n),f.mouse("drag",e)}function p(e){select(e.view).on("mousemove.drag mouseup.drag",null),yesdrag(e.view,i),noevent$1(e),f.mouse("end",e)}function g(e,t){if(s.call(this,e,t))for(var n,o=e.changedTouches,r=l.call(this,e,t),i=o.length,a=0;a<i;++a)(n=v(this,r,e,t,o[a].identifier,o[a]))&&(nopropagation$1(e),n("start",e,o[a]))}function h(e){for(var t,n=e.changedTouches,o=n.length,r=0;r<o;++r)(t=f[n[r].identifier])&&(noevent$1(e),t("drag",e,n[r]))}function b(e){var t,n,o=e.changedTouches,r=o.length;for(a&&clearTimeout(a),a=setTimeout(function(){a=null},500),t=0;t<r;++t)(n=f[o[t].identifier])&&(nopropagation$1(e),n("end",e,o[t]))}function v(a,s,e,l,c,t){var d,u,p,g=m.copy(),h=pointer(t||e,s);if(null!=(p=n.call(a,new DragEvent("beforestart",{sourceEvent:e,target:x,identifier:c,active:y,x:h[0],y:h[1],dx:0,dy:0,dispatch:g}),l)))return d=p.x-h[0]||0,u=p.y-h[1]||0,function e(t,n,o){var r,i=h;switch(t){case"start":f[c]=e,r=y++;break;case"end":delete f[c],--y;case"drag":h=pointer(o||n,s),r=y}g.call(t,a,new DragEvent(t,{sourceEvent:n,subject:p,target:x,identifier:c,active:r,x:h[0]+d,y:h[1]+u,dx:h[0]-i[0],dy:h[1]-i[1],dispatch:g}),l)}}return x.filter=function(e){return arguments.length?(s="function"==typeof e?e:constant$2(!!e),x):s},x.container=function(e){return arguments.length?(l="function"==typeof e?e:constant$2(e),x):l},x.subject=function(e){return arguments.length?(n="function"==typeof e?e:constant$2(e),x):n},x.touchable=function(e){return arguments.length?(t="function"==typeof e?e:constant$2(!!e),x):t},x.on=function(){var e=m.on.apply(m,arguments);return e===m?x:e},x.clickDistance=function(e){return arguments.length?(c=(e=+e)*e,x):Math.sqrt(c)},x}function define(e,t,n){(e.prototype=t.prototype=n).constructor=e}function extend(e,t){var n,o=Object.create(e.prototype);for(n in t)o[n]=t[n];return o}function Color(){}DragEvent.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var darker=.7,brighter=1/darker,reI="\\s*([+-]?\\d+)\\s*",reN="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",reP="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",reHex=/^#([0-9a-f]{3,8})$/,reRgbInteger=new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`),reRgbPercent=new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`),reRgbaInteger=new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`),reRgbaPercent=new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`),reHslPercent=new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`),reHslaPercent=new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`),named={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function color_formatHex(){return this.rgb().formatHex()}function color_formatHex8(){return this.rgb().formatHex8()}function color_formatHsl(){return hslConvert(this).formatHsl()}function color_formatRgb(){return this.rgb().formatRgb()}function color(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=reHex.exec(e))?(n=t[1].length,t=parseInt(t[1],16),6===n?rgbn(t):3===n?new Rgb(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===n?rgba(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===n?rgba(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=reRgbInteger.exec(e))?new Rgb(t[1],t[2],t[3],1):(t=reRgbPercent.exec(e))?new Rgb(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=reRgbaInteger.exec(e))?rgba(t[1],t[2],t[3],t[4]):(t=reRgbaPercent.exec(e))?rgba(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=reHslPercent.exec(e))?hsla(t[1],t[2]/100,t[3]/100,1):(t=reHslaPercent.exec(e))?hsla(t[1],t[2]/100,t[3]/100,t[4]):named.hasOwnProperty(e)?rgbn(named[e]):"transparent"===e?new Rgb(NaN,NaN,NaN,0):null}function rgbn(e){return new Rgb(e>>16&255,e>>8&255,255&e,1)}function rgba(e,t,n,o){return new Rgb(e=o<=0?t=n=NaN:e,t,n,o)}function rgbConvert(e){return(e=e instanceof Color?e:color(e))?new Rgb((e=e.rgb()).r,e.g,e.b,e.opacity):new Rgb}function rgb(e,t,n,o){return 1===arguments.length?rgbConvert(e):new Rgb(e,t,n,null==o?1:o)}function Rgb(e,t,n,o){this.r=+e,this.g=+t,this.b=+n,this.opacity=+o}function rgb_formatHex(){return"#"+hex(this.r)+hex(this.g)+hex(this.b)}function rgb_formatHex8(){return"#"+hex(this.r)+hex(this.g)+hex(this.b)+hex(255*(isNaN(this.opacity)?1:this.opacity))}function rgb_formatRgb(){var e=clampa(this.opacity);return(1===e?"rgb(":"rgba(")+clampi(this.r)+`, ${clampi(this.g)}, `+clampi(this.b)+(1===e?")":`, ${e})`)}function clampa(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function clampi(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function hex(e){return((e=clampi(e))<16?"0":"")+e.toString(16)}function hsla(e,t,n,o){return o<=0?e=t=n=NaN:n<=0||1<=n?e=t=NaN:t<=0&&(e=NaN),new Hsl(e,t,n,o)}function hslConvert(e){var t,n,o,r,i,a,s,l;return e instanceof Hsl?new Hsl(e.h,e.s,e.l,e.opacity):(e=e instanceof Color?e:color(e))?e instanceof Hsl?e:(t=(e=e.rgb()).r/255,n=e.g/255,o=e.b/255,r=Math.min(t,n,o),a=NaN,l=((i=Math.max(t,n,o))+r)/2,(s=i-r)?(a=t===i?(n-o)/s+6*(n<o):n===i?(o-t)/s+2:(t-n)/s+4,s/=l<.5?i+r:2-i-r,a*=60):s=0<l&&l<1?0:a,new Hsl(a,s,l,e.opacity)):new Hsl}function hsl(e,t,n,o){return 1===arguments.length?hslConvert(e):new Hsl(e,t,n,null==o?1:o)}function Hsl(e,t,n,o){this.h=+e,this.s=+t,this.l=+n,this.opacity=+o}function clamph(e){return(e=(e||0)%360)<0?e+360:e}function clampt(e){return Math.max(0,Math.min(1,e||0))}function hsl2rgb(e,t,n){return 255*(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)}define(Color,color,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:color_formatHex,formatHex:color_formatHex,formatHex8:color_formatHex8,formatHsl:color_formatHsl,formatRgb:color_formatRgb,toString:color_formatRgb}),define(Rgb,rgb,extend(Color,{brighter(e){return e=null==e?brighter:Math.pow(brighter,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?darker:Math.pow(darker,e),new Rgb(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Rgb(clampi(this.r),clampi(this.g),clampi(this.b),clampa(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:rgb_formatHex,formatHex:rgb_formatHex,formatHex8:rgb_formatHex8,formatRgb:rgb_formatRgb,toString:rgb_formatRgb})),define(Hsl,hsl,extend(Color,{brighter(e){return e=null==e?brighter:Math.pow(brighter,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?darker:Math.pow(darker,e),new Hsl(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,t=n+(n<.5?n:1-n)*t,n=2*n-t;return new Rgb(hsl2rgb(240<=e?e-240:120+e,n,t),hsl2rgb(e,n,t),hsl2rgb(e<120?240+e:e-120,n,t),this.opacity)},clamp(){return new Hsl(clamph(this.h),clampt(this.s),clampt(this.l),clampa(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){var e=clampa(this.opacity);return(1===e?"hsl(":"hsla(")+clamph(this.h)+`, ${100*clampt(this.s)}%, ${100*clampt(this.l)}%`+(1===e?")":`, ${e})`)}}));var epsilon2=1e-12;function cosh(e){return((e=Math.exp(e))+1/e)/2}function sinh(e){return((e=Math.exp(e))-1/e)/2}function tanh(e){return((e=Math.exp(2*e))-1)/(e+1)}var taskHead,taskTail,interpolateZoom=function n(u,p,g){function e(e,t){var o,r,i,a=e[0],s=e[1],l=e[2],e=t[0],n=t[1],t=t[2],c=e-a,d=n-s,e=c*c+d*d;return(t=e<epsilon2?(i=Math.log(t/l)/u,function(e){return[a+e*c,s+e*d,l*Math.exp(u*e*i)]}):(o=Math.sqrt(e),n=(t*t-l*l+g*e)/(2*l*p*o),e=(t*t-l*l-g*e)/(2*t*p*o),r=Math.log(Math.sqrt(n*n+1)-n),i=(Math.log(Math.sqrt(e*e+1)-e)-r)/u,function(e){var e=e*i,t=cosh(r),n=l/(p*o)*(t*tanh(u*e+r)-sinh(r));return[a+n*c,s+n*d,l*t/cosh(u*e+r)]})).duration=1e3*i*u/Math.SQRT2,t}return e.rho=function(e){var e=Math.max(.001,+e),t=e*e;return n(e,t,t*t)},e}(Math.SQRT2,2,4),frame=0,timeout$1=0,interval=0,pokeDelay=1e3,clockLast=0,clockNow=0,clockSkew=0,clock="object"==typeof performance&&performance.now?performance:Date,setFrame="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function now(){return clockNow||(setFrame(clearNow),clockNow=clock.now()+clockSkew)}function clearNow(){clockNow=0}function Timer(){this._call=this._time=this._next=null}function timer(e,t,n){var o=new Timer;return o.restart(e,t,n),o}function timerFlush(){now(),++frame;for(var e,t=taskHead;t;)0<=(e=clockNow-t._time)&&t._call.call(void 0,e),t=t._next;--frame}function wake(){clockNow=(clockLast=clock.now())+clockSkew,frame=timeout$1=0;try{timerFlush()}finally{frame=0,nap(),clockNow=0}}function poke(){var e=clock.now(),t=e-clockLast;pokeDelay<t&&(clockSkew-=t,clockLast=e)}function nap(){for(var e,t,n=taskHead,o=1/0;n;)n=n._call?(o>n._time&&(o=n._time),(e=n)._next):(t=n._next,n._next=null,e?e._next=t:taskHead=t);taskTail=e,sleep(o)}function sleep(e){frame||(timeout$1=timeout$1&&clearTimeout(timeout$1),24<e-clockNow?(e<1/0&&(timeout$1=setTimeout(wake,e-clock.now()-clockSkew)),interval=interval&&clearInterval(interval)):(interval||(clockLast=clock.now(),interval=setInterval(poke,pokeDelay)),frame=1,setFrame(wake)))}function timeout(t,n,e){var o=new Timer;return n=null==n?0:+n,o.restart(e=>{o.stop(),t(e+n)},n,e),o}Timer.prototype=timer.prototype={constructor:Timer,restart:function(e,t,n){if("function"!=typeof e)throw new TypeError("callback is not a function");n=(null==n?now():+n)+(null==t?0:+t),this._next||taskTail===this||(taskTail?taskTail._next=this:taskHead=this,taskTail=this),this._call=e,this._time=n,sleep()},stop:function(){this._call&&(this._call=null,this._time=1/0,sleep())}};var emptyOn=dispatch("start","end","cancel","interrupt"),emptyTween=[],CREATED=0,SCHEDULED=1,STARTING=2,STARTED=3,RUNNING=4,ENDING=5,ENDED=6;function schedule(e,t,n,o,r,i){var a=e.__transition;if(a){if(n in a)return}else e.__transition={};create$2(e,n,{name:t,index:o,group:r,on:emptyOn,tween:emptyTween,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:CREATED})}function init(e,t){e=get$1(e,t);if(e.state>CREATED)throw new Error("too late; already scheduled");return e}function set$1(e,t){e=get$1(e,t);if(e.state>STARTED)throw new Error("too late; already running");return e}function get$1(e,t){e=e.__transition;if(e=e&&e[t])return e;throw new Error("transition not found")}function create$2(i,a,s){var l,c=i.__transition;function d(e){var t,n,o,r;if(s.state!==SCHEDULED)return p();for(t in c)if((r=c[t]).name===s.name){if(r.state===STARTED)return timeout(d);r.state===RUNNING?(r.state=ENDED,r.timer.stop(),r.on.call("interrupt",i,i.__data__,r.index,r.group),delete c[t]):+t<a&&(r.state=ENDED,r.timer.stop(),r.on.call("cancel",i,i.__data__,r.index,r.group),delete c[t])}if(timeout(function(){s.state===STARTED&&(s.state=RUNNING,s.timer.restart(u,s.delay,s.time),u(e))}),s.state=STARTING,s.on.call("start",i,i.__data__,s.index,s.group),s.state===STARTING){for(s.state=STARTED,l=new Array(o=s.tween.length),t=0,n=-1;t<o;++t)(r=s.tween[t].value.call(i,i.__data__,s.index,s.group))&&(l[++n]=r);l.length=n+1}}function u(e){for(var t=e<s.duration?s.ease.call(null,e/s.duration):(s.timer.restart(p),s.state=ENDING,1),n=-1,o=l.length;++n<o;)l[n].call(i,t);s.state===ENDING&&(s.on.call("end",i,i.__data__,s.index,s.group),p())}function p(){for(var e in s.state=ENDED,s.timer.stop(),delete c[a],c)return;delete i.__transition}(c[a]=s).timer=timer(function(e){s.state=SCHEDULED,s.timer.restart(d,s.delay,s.time),s.delay<=e&&d(e-s.delay)},0,s.time)}function interrupt(e,t){var n,o,r,i=e.__transition,a=!0;if(i){for(r in t=null==t?null:t+"",i)(n=i[r]).name!==t?a=!1:(o=n.state>STARTING&&n.state<ENDING,n.state=ENDED,n.timer.stop(),n.on.call(o?"interrupt":"cancel",e,e.__data__,n.index,n.group),delete i[r]);a&&delete e.__transition}}function selection_interrupt(e){return this.each(function(){interrupt(this,e)})}var constant$1=e=>()=>e;function linear(t,n){return function(e){return t+e*n}}function exponential(t,n,o){return t=Math.pow(t,o),n=Math.pow(n,o)-t,o=1/o,function(e){return Math.pow(t+e*n,o)}}function gamma(n){return 1==(n=+n)?nogamma:function(e,t){return t-e?exponential(e,t,n):constant$1(isNaN(e)?t:e)}}function nogamma(e,t){var n=t-e;return n?linear(e,n):constant$1(isNaN(e)?t:e)}var interpolateRgb=function e(t){var a=gamma(t);function n(t,e){var n=a((t=rgb(t)).r,(e=rgb(e)).r),o=a(t.g,e.g),r=a(t.b,e.b),i=nogamma(t.opacity,e.opacity);return function(e){return t.r=n(e),t.g=o(e),t.b=r(e),t.opacity=i(e),t+""}}return n.gamma=e,n}(1);function interpolateNumber(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}var reA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,reB=new RegExp(reA.source,"g");function zero(e){return function(){return e}}function one(t){return function(e){return t(e)+""}}function interpolateString(e,o){var t,n,r,i=reA.lastIndex=reB.lastIndex=0,a=-1,s=[],l=[];for(e+="",o+="";(t=reA.exec(e))&&(n=reB.exec(o));)(r=n.index)>i&&(r=o.slice(i,r),s[a]?s[a]+=r:s[++a]=r),(t=t[0])===(n=n[0])?s[a]?s[a]+=n:s[++a]=n:(s[++a]=null,l.push({i:a,x:interpolateNumber(t,n)})),i=reB.lastIndex;return i<o.length&&(r=o.slice(i),s[a]?s[a]+=r:s[++a]=r),s.length<2?l[0]?one(l[0].x):zero(o):(o=l.length,function(e){for(var t,n=0;n<o;++n)s[(t=l[n]).i]=t.x(e);return s.join("")})}var svgNode,degrees=180/Math.PI,identity$1={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function decompose(e,t,n,o,r,i){var a,s,l;return(a=Math.sqrt(e*e+t*t))&&(e/=a,t/=a),(l=e*n+t*o)&&(n-=e*l,o-=t*l),(s=Math.sqrt(n*n+o*o))&&(n/=s,o/=s,l/=s),e*o<t*n&&(e=-e,t=-t,l=-l,a=-a),{translateX:r,translateY:i,rotate:Math.atan2(t,e)*degrees,skewX:Math.atan(l)*degrees,scaleX:a,scaleY:s}}function parseCss(e){e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(e+"");return e.isIdentity?identity$1:decompose(e.a,e.b,e.c,e.d,e.e,e.f)}function parseSvg(e){return null!=e&&((svgNode=svgNode||document.createElementNS("http://www.w3.org/2000/svg","g")).setAttribute("transform",e),e=svgNode.transform.baseVal.consolidate())?decompose((e=e.matrix).a,e.b,e.c,e.d,e.e,e.f):identity$1}function interpolateTransform(p,g,h,f){function m(e){return e.length?e.pop()+" ":""}return function(e,t){var n,o,r,i,a,s,l,c,d=[],u=[];return e=p(e),t=p(t),r=e.translateX,i=e.translateY,l=t.translateX,s=t.translateY,a=d,o=u,r!==l||i!==s?(n=a.push("translate(",null,g,null,h),o.push({i:n-4,x:interpolateNumber(r,l)},{i:n-2,x:interpolateNumber(i,s)})):(l||s)&&a.push("translate("+l+g+s+h),o=e.rotate,r=t.rotate,n=d,i=u,o!==r?(180<o-r?r+=360:180<r-o&&(o+=360),i.push({i:n.push(m(n)+"rotate(",null,f)-2,x:interpolateNumber(o,r)})):r&&n.push(m(n)+"rotate("+r+f),a=e.skewX,l=t.skewX,s=d,i=u,a!==l?i.push({i:s.push(m(s)+"skewX(",null,f)-2,x:interpolateNumber(a,l)}):l&&s.push(m(s)+"skewX("+l+f),o=e.scaleX,r=e.scaleY,i=t.scaleX,a=t.scaleY,s=d,l=u,o!==i||r!==a?(c=s.push(m(s)+"scale(",null,",",null,")"),l.push({i:c-4,x:interpolateNumber(o,i)},{i:c-2,x:interpolateNumber(r,a)})):1===i&&1===a||s.push(m(s)+"scale("+i+","+a+")"),e=t=null,function(e){for(var t,n=-1,o=u.length;++n<o;)d[(t=u[n]).i]=t.x(e);return d.join("")}}}var interpolateTransformCss=interpolateTransform(parseCss,"px, ","px)","deg)"),interpolateTransformSvg=interpolateTransform(parseSvg,", ",")",")");function tweenRemove(r,i){var a,s;return function(){var e=set$1(this,r),t=e.tween;if(t!==a)for(var n=0,o=(s=a=t).length;n<o;++n)if(s[n].name===i){(s=s.slice()).splice(n,1);break}e.tween=s}}function tweenFunction(i,a,s){var l,c;if("function"!=typeof s)throw new Error;return function(){var e=set$1(this,i),t=e.tween;if(t!==l){c=(l=t).slice();for(var n={name:a,value:s},o=0,r=c.length;o<r;++o)if(c[o].name===a){c[o]=n;break}o===r&&c.push(n)}e.tween=c}}function transition_tween(e,t){var n=this._id;if(e+="",arguments.length<2){for(var o,r=get$1(this.node(),n).tween,i=0,a=r.length;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((null==t?tweenRemove:tweenFunction)(n,e,t))}function tweenValue(e,t,n){var o=e._id;return e.each(function(){var e=set$1(this,o);(e.value||(e.value={}))[t]=n.apply(this,arguments)}),function(e){return get$1(e,o).value[t]}}function interpolate(e,t){var n;return("number"==typeof t?interpolateNumber:t instanceof color?interpolateRgb:(n=color(t))?(t=n,interpolateRgb):interpolateString)(e,t)}function attrRemove(e){return function(){this.removeAttribute(e)}}function attrRemoveNS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function attrConstant(t,n,o){var r,i,a=o+"";return function(){var e=this.getAttribute(t);return e===a?null:e===r?i:i=n(r=e,o)}}function attrConstantNS(t,n,o){var r,i,a=o+"";return function(){var e=this.getAttributeNS(t.space,t.local);return e===a?null:e===r?i:i=n(r=e,o)}}function attrFunction(o,r,i){var a,s,l;return function(){var e,t,n=i(this);if(null!=n)return(e=this.getAttribute(o))===(t=n+"")?null:e===a&&t===s?l:(s=t,l=r(a=e,n));this.removeAttribute(o)}}function attrFunctionNS(o,r,i){var a,s,l;return function(){var e,t,n=i(this);if(null!=n)return(e=this.getAttributeNS(o.space,o.local))===(t=n+"")?null:e===a&&t===s?l:(s=t,l=r(a=e,n));this.removeAttributeNS(o.space,o.local)}}function transition_attr(e,t){var n=namespace$6(e),o="transform"===n?interpolateTransformSvg:interpolate;return this.attrTween(e,"function"==typeof t?(n.local?attrFunctionNS:attrFunction)(n,o,tweenValue(this,"attr."+e,t)):null==t?(n.local?attrRemoveNS:attrRemove)(n):(n.local?attrConstantNS:attrConstant)(n,o,t))}function attrInterpolate(t,n){return function(e){this.setAttribute(t,n.call(this,e))}}function attrInterpolateNS(t,n){return function(e){this.setAttributeNS(t.space,t.local,n.call(this,e))}}function attrTweenNS(t,n){var o,r;function e(){var e=n.apply(this,arguments);return o=e!==r?(r=e)&&attrInterpolateNS(t,e):o}return e._value=n,e}function attrTween(t,n){var o,r;function e(){var e=n.apply(this,arguments);return o=e!==r?(r=e)&&attrInterpolate(t,e):o}return e._value=n,e}function transition_attrTween(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if("function"!=typeof t)throw new Error;var o=namespace$6(e);return this.tween(n,(o.local?attrTweenNS:attrTween)(o,t))}function delayFunction(e,t){return function(){init(this,e).delay=+t.apply(this,arguments)}}function delayConstant(e,t){return t=+t,function(){init(this,e).delay=t}}function transition_delay(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?delayFunction:delayConstant)(t,e)):get$1(this.node(),t).delay}function durationFunction(e,t){return function(){set$1(this,e).duration=+t.apply(this,arguments)}}function durationConstant(e,t){return t=+t,function(){set$1(this,e).duration=t}}function transition_duration(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?durationFunction:durationConstant)(t,e)):get$1(this.node(),t).duration}function easeConstant(e,t){if("function"!=typeof t)throw new Error;return function(){set$1(this,e).ease=t}}function transition_ease(e){var t=this._id;return arguments.length?this.each(easeConstant(t,e)):get$1(this.node(),t).ease}function easeVarying(t,n){return function(){var e=n.apply(this,arguments);if("function"!=typeof e)throw new Error;set$1(this,t).ease=e}}function transition_easeVarying(e){if("function"!=typeof e)throw new Error;return this.each(easeVarying(this._id,e))}function transition_filter(e){"function"!=typeof e&&(e=matcher(e));for(var t=this._groups,n=t.length,o=new Array(n),r=0;r<n;++r)for(var i,a=t[r],s=a.length,l=o[r]=[],c=0;c<s;++c)(i=a[c])&&e.call(i,i.__data__,c,a)&&l.push(i);return new Transition(o,this._parents,this._name,this._id)}function transition_merge(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,o=t.length,e=n.length,r=Math.min(o,e),i=new Array(o),a=0;a<r;++a)for(var s,l=t[a],c=n[a],d=l.length,u=i[a]=new Array(d),p=0;p<d;++p)(s=l[p]||c[p])&&(u[p]=s);for(;a<o;++a)i[a]=t[a];return new Transition(i,this._parents,this._name,this._id)}function start(e){return(e+"").trim().split(/^|\s+/).every(function(e){var t=e.indexOf(".");return!(e=0<=t?e.slice(0,t):e)||"start"===e})}function onFunction(n,o,r){var i,a,s=start(o)?init:set$1;return function(){var e=s(this,n),t=e.on;t!==i&&(a=(i=t).copy()).on(o,r),e.on=a}}function transition_on(e,t){var n=this._id;return arguments.length<2?get$1(this.node(),n).on.on(e):this.each(onFunction(n,e,t))}function removeFunction(n){return function(){var e,t=this.parentNode;for(e in this.__transition)if(+e!==n)return;t&&t.removeChild(this)}}function transition_remove(){return this.on("end.remove",removeFunction(this._id))}function transition_select(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=selector$1(e));for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a)for(var s,l,c=o[a],d=c.length,u=i[a]=new Array(d),p=0;p<d;++p)(s=c[p])&&(l=e.call(s,s.__data__,p,c))&&("__data__"in s&&(l.__data__=s.__data__),u[p]=l,schedule(u[p],t,n,p,u,get$1(s,n)));return new Transition(i,this._parents,t,n)}function transition_selectAll(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=selectorAll(e));for(var o=this._groups,r=o.length,i=[],a=[],s=0;s<r;++s)for(var l,c=o[s],d=c.length,u=0;u<d;++u)if(l=c[u]){for(var p,g=e.call(l,l.__data__,u,c),h=get$1(l,n),f=0,m=g.length;f<m;++f)(p=g[f])&&schedule(p,t,n,f,g,h);i.push(g),a.push(l)}return new Transition(i,a,t,n)}var Selection=selection.prototype.constructor;function transition_selection(){return new Selection(this._groups,this._parents)}function styleNull(n,o){var r,i,a;return function(){var e=styleValue(this,n),t=(this.style.removeProperty(n),styleValue(this,n));return e===t?null:e===r&&t===i?a:a=o(r=e,i=t)}}function styleRemove(e){return function(){this.style.removeProperty(e)}}function styleConstant(t,n,o){var r,i,a=o+"";return function(){var e=styleValue(this,t);return e===a?null:e===r?i:i=n(r=e,o)}}function styleFunction(o,r,i){var a,s,l;return function(){var e=styleValue(this,o),t=i(this),n=t+"";return null==t&&(this.style.removeProperty(o),n=t=styleValue(this,o)),e===n?null:e===a&&n===s?l:(s=n,l=r(a=e,t))}}function styleMaybeRemove(o,r){var i,a,s,l,c="style."+r,d="end."+c;return function(){var e=set$1(this,o),t=e.on,n=null==e.value[c]?l=l||styleRemove(r):void 0;t===i&&s===n||(a=(i=t).copy()).on(d,s=n),e.on=a}}function transition_style(e,t,n){var o="transform"==(e+="")?interpolateTransformCss:interpolate;return null==t?this.styleTween(e,styleNull(e,o)).on("end.style."+e,styleRemove(e)):"function"==typeof t?this.styleTween(e,styleFunction(e,o,tweenValue(this,"style."+e,t))).each(styleMaybeRemove(this._id,e)):this.styleTween(e,styleConstant(e,o,t),n).on("end.style."+e,null)}function styleInterpolate(t,n,o){return function(e){this.style.setProperty(t,n.call(this,e),o)}}function styleTween(t,n,o){var r,i;function e(){var e=n.apply(this,arguments);return r=e!==i?(i=e)&&styleInterpolate(t,e,o):r}return e._value=n,e}function transition_styleTween(e,t,n){var o="style."+(e+="");if(arguments.length<2)return(o=this.tween(o))&&o._value;if(null==t)return this.tween(o,null);if("function"!=typeof t)throw new Error;return this.tween(o,styleTween(e,t,null==n?"":n))}function textConstant(e){return function(){this.textContent=e}}function textFunction(t){return function(){var e=t(this);this.textContent=null==e?"":e}}function transition_text(e){return this.tween("text","function"==typeof e?textFunction(tweenValue(this,"text",e)):textConstant(null==e?"":e+""))}function textInterpolate(t){return function(e){this.textContent=t.call(this,e)}}function textTween(t){var n,o;function e(){var e=t.apply(this,arguments);return n=e!==o?(o=e)&&textInterpolate(e):n}return e._value=t,e}function transition_textTween(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw new Error;return this.tween(t,textTween(e))}function transition_transition(){for(var e=this._name,t=this._id,n=newId(),o=this._groups,r=o.length,i=0;i<r;++i)for(var a,s=o[i],l=s.length,c=0;c<l;++c)(a=s[c])&&schedule(a,e,n,c,s,{time:(a=get$1(a,t)).time+a.delay+a.duration,delay:0,duration:a.duration,ease:a.ease});return new Transition(o,this._parents,e,n)}function transition_end(){var r,i,a=this,s=a._id,l=a.size();return new Promise(function(e,t){var n={value:t},o={value:function(){0==--l&&e()}};a.each(function(){var e=set$1(this,s),t=e.on;t!==r&&((i=(r=t).copy())._.cancel.push(n),i._.interrupt.push(n),i._.end.push(o)),e.on=i}),0===l&&e()})}var id$1=0;function Transition(e,t,n,o){this._groups=e,this._parents=t,this._name=n,this._id=o}function newId(){return++id$1}var selection_prototype=selection.prototype;function cubicInOut(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}Transition.prototype={constructor:Transition,select:transition_select,selectAll:transition_selectAll,selectChild:selection_prototype.selectChild,selectChildren:selection_prototype.selectChildren,filter:transition_filter,merge:transition_merge,selection:transition_selection,transition:transition_transition,call:selection_prototype.call,nodes:selection_prototype.nodes,node:selection_prototype.node,size:selection_prototype.size,empty:selection_prototype.empty,each:selection_prototype.each,on:transition_on,attr:transition_attr,attrTween:transition_attrTween,style:transition_style,styleTween:transition_styleTween,text:transition_text,textTween:transition_textTween,remove:transition_remove,tween:transition_tween,delay:transition_delay,duration:transition_duration,ease:transition_ease,easeVarying:transition_easeVarying,end:transition_end,[Symbol.iterator]:selection_prototype[Symbol.iterator]};var defaultTiming={time:null,delay:0,duration:250,ease:cubicInOut};function inherit(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function selection_transition(e){var t,n;e=e instanceof Transition?(t=e._id,e._name):(t=newId(),(n=defaultTiming).time=now(),null==e?null:e+"");for(var o=this._groups,r=o.length,i=0;i<r;++i)for(var a,s=o[i],l=s.length,c=0;c<l;++c)(a=s[c])&&schedule(a,e,t,c,s,n||inherit(a,t));return new Transition(o,this._parents,e,t)}selection.prototype.interrupt=selection_interrupt,selection.prototype.transition=selection_transition;var constant=e=>()=>e;function ZoomEvent(e,{sourceEvent:t,target:n,transform:o,dispatch:r}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:o,enumerable:!0,configurable:!0},_:{value:r}})}function Transform(e,t,n){this.k=e,this.x=t,this.y=n}Transform.prototype={constructor:Transform,scale:function(e){return 1===e?this:new Transform(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new Transform(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var identity=new Transform(1,0,0);function nopropagation(e){e.stopImmediatePropagation()}function noevent(e){e.preventDefault(),e.stopImmediatePropagation()}function defaultFilter(e){return!(e.ctrlKey&&"wheel"!==e.type||e.button)}function defaultExtent(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function defaultTransform(){return this.__zoom||identity}function defaultWheelDelta(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function defaultTouchable(){return navigator.maxTouchPoints||"ontouchstart"in this}function defaultConstrain(e,t,n){var o=e.invertX(t[0][0])-n[0][0],r=e.invertX(t[1][0])-n[1][0],i=e.invertY(t[0][1])-n[0][1],t=e.invertY(t[1][1])-n[1][1];return e.translate(o<r?(o+r)/2:Math.min(0,o)||Math.max(0,r),i<t?(i+t)/2:Math.min(0,i)||Math.max(0,t))}function zoom(){var c,d,l,u=defaultFilter,p=defaultExtent,g=defaultConstrain,a=defaultWheelDelta,t=defaultTouchable,s=[0,1/0],h=[[-1/0,-1/0],[1/0,1/0]],f=250,m=interpolateZoom,n=dispatch("start","zoom","end"),y=500,x=150,b=0,v=10;function $(e){e.property("__zoom",defaultTransform).on("wheel.zoom",r,{passive:!1}).on("mousedown.zoom",i).on("dblclick.zoom",N).filter(t).on("touchstart.zoom",j).on("touchmove.zoom",I).on("touchend.zoom touchcancel.zoom",O).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function S(e,t){return(t=Math.max(s[0],Math.min(s[1],t)))===e.k?e:new Transform(t,e.x,e.y)}function _(e,t,n){var o=t[0]-n[0]*e.k,t=t[1]-n[1]*e.k;return o===e.x&&t===e.y?e:new Transform(e.k,o,t)}function E(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function w(e,l,c,d){e.on("start.zoom",function(){C(this,arguments).event(d).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(d).end()}).tween("zoom",function(){var e=this,t=arguments,o=C(e,t).event(d),n=p.apply(e,t),r=null==c?E(n):"function"==typeof c?c.apply(e,t):c,i=Math.max(n[1][0]-n[0][0],n[1][1]-n[0][1]),n=e.__zoom,a="function"==typeof l?l.apply(e,t):l,s=m(n.invert(r).concat(i/n.k),a.invert(r).concat(i/a.k));return function(e){var t,n;e=1===e?a:(t=s(e),new Transform(n=i/t[2],r[0]-t[0]*n,r[1]-t[1]*n)),o.zoom(null,e)}})}function C(e,t,n){return!n&&e.__zooming||new o(e,t)}function o(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=p.apply(e,t),this.taps=0}function r(e,...t){if(u.apply(this,arguments)){var n=C(this,t).event(e),o=this.__zoom,r=Math.max(s[0],Math.min(s[1],o.k*Math.pow(2,a.apply(this,arguments)))),i=pointer(e);if(n.wheel)n.mouse[0][0]===i[0]&&n.mouse[0][1]===i[1]||(n.mouse[1]=o.invert(n.mouse[0]=i)),clearTimeout(n.wheel);else{if(o.k===r)return;n.mouse=[i,o.invert(i)],interrupt(this),n.start()}noevent(e),n.wheel=setTimeout(function(){n.wheel=null,n.end()},x),n.zoom("mouse",g(_(S(o,r),n.mouse[0],n.mouse[1]),n.extent,h))}}function i(e,...t){var o,r,n,i,a,s;!l&&u.apply(this,arguments)&&(o=e.currentTarget,r=C(this,t,!0).event(e),n=select(e.view).on("mousemove.zoom",function(e){{var t,n;noevent(e),r.moved||(t=e.clientX-a,n=e.clientY-s,r.moved=b<t*t+n*n)}r.event(e).zoom("mouse",g(_(r.that.__zoom,r.mouse[0]=pointer(e,o),r.mouse[1]),r.extent,h))},!0).on("mouseup.zoom",function(e){n.on("mousemove.zoom mouseup.zoom",null),yesdrag(e.view,r.moved),noevent(e),r.event(e).end()},!0),i=pointer(e,o),a=e.clientX,s=e.clientY,dragDisable(e.view),nopropagation(e),r.mouse=[i,this.__zoom.invert(i)],interrupt(this),r.start())}function N(e,...t){var n,o,r,i;u.apply(this,arguments)&&(i=this.__zoom,n=pointer(e.changedTouches?e.changedTouches[0]:e,this),o=i.invert(n),r=i.k*(e.shiftKey?.5:2),i=g(_(S(i,r),n,o),p.apply(this,t),h),noevent(e),0<f?select(this).transition().duration(f).call(w,i,n,e):select(this).call($.transform,i,n,e))}function j(e,...t){if(u.apply(this,arguments)){var n,o,r,i,a=e.touches,s=a.length,l=C(this,t,e.changedTouches.length===s).event(e);for(nopropagation(e),o=0;o<s;++o)i=[i=pointer(r=a[o],this),this.__zoom.invert(i),r.identifier],l.touch0?l.touch1||l.touch0[2]===i[2]||(l.touch1=i,l.taps=0):(l.touch0=i,n=!0,l.taps=1+!!c);c=c&&clearTimeout(c),n&&(l.taps<2&&(d=i[0],c=setTimeout(function(){c=null},y)),interrupt(this),l.start())}}function I(e,...t){if(this.__zooming){var n,o=C(this,t).event(e),r=e.changedTouches,i=r.length;for(noevent(e),n=0;n<i;++n)u=pointer(d=r[n],this),o.touch0&&o.touch0[2]===d.identifier?o.touch0[0]=u:o.touch1&&o.touch1[2]===d.identifier&&(o.touch1[0]=u);if(d=o.that.__zoom,o.touch1)var t=o.touch0[0],e=o.touch0[1],a=o.touch1[0],s=o.touch1[1],l=(l=a[0]-t[0])*l+(l=a[1]-t[1])*l,c=(c=s[0]-e[0])*c+(c=s[1]-e[1])*c,d=S(d,Math.sqrt(l/c)),u=[(t[0]+a[0])/2,(t[1]+a[1])/2],l=[(e[0]+s[0])/2,(e[1]+s[1])/2];else{if(!o.touch0)return;u=o.touch0[0],l=o.touch0[1]}o.zoom("touch",g(_(d,u,l),o.extent,h))}}function O(e,...t){if(this.__zooming){var n,o,r,i=C(this,t).event(e),a=e.changedTouches,s=a.length;for(nopropagation(e),l&&clearTimeout(l),l=setTimeout(function(){l=null},y),n=0;n<s;++n)r=a[n],i.touch0&&i.touch0[2]===r.identifier?delete i.touch0:i.touch1&&i.touch1[2]===r.identifier&&delete i.touch1;i.touch1&&!i.touch0&&(i.touch0=i.touch1,delete i.touch1),i.touch0?i.touch0[1]=this.__zoom.invert(i.touch0[0]):(i.end(),2===i.taps&&(r=pointer(r,this),Math.hypot(d[0]-r[0],d[1]-r[1])<v)&&(o=select(this).on("dblclick.zoom"))&&o.apply(this,arguments))}}return $.transform=function(e,t,n,o){var r=e.selection?e.selection():e;r.property("__zoom",defaultTransform),e!==r?w(e,t,n,o):r.interrupt().each(function(){C(this,arguments).event(o).start().zoom(null,"function"==typeof t?t.apply(this,arguments):t).end()})},$.scaleBy=function(e,t,n,o){$.scaleTo(e,function(){return this.__zoom.k*("function"==typeof t?t.apply(this,arguments):t)},n,o)},$.scaleTo=function(e,i,a,t){$.transform(e,function(){var e=p.apply(this,arguments),t=this.__zoom,n=null==a?E(e):"function"==typeof a?a.apply(this,arguments):a,o=t.invert(n),r="function"==typeof i?i.apply(this,arguments):i;return g(_(S(t,r),n,o),e,h)},a,t)},$.translateBy=function(e,t,n,o){$.transform(e,function(){return g(this.__zoom.translate("function"==typeof t?t.apply(this,arguments):t,"function"==typeof n?n.apply(this,arguments):n),p.apply(this,arguments),h)},null,o)},$.translateTo=function(e,o,r,i,t){$.transform(e,function(){var e=p.apply(this,arguments),t=this.__zoom,n=null==i?E(e):"function"==typeof i?i.apply(this,arguments):i;return g(identity.translate(n[0],n[1]).scale(t.k).translate("function"==typeof o?-o.apply(this,arguments):-o,"function"==typeof r?-r.apply(this,arguments):-r),e,h)},i,t)},o.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return 1==++this.active&&(this.that.__zooming=this).emit("start"),this},zoom:function(e,t){return this.mouse&&"mouse"!==e&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&"touch"!==e&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&"touch"!==e&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(e){var t=select(this.that).datum();n.call(e,this.that,new ZoomEvent(e,{sourceEvent:this.sourceEvent,target:$,type:e,transform:this.that.__zoom,dispatch:n}),t)}},$.wheelDelta=function(e){return arguments.length?(a="function"==typeof e?e:constant(+e),$):a},$.filter=function(e){return arguments.length?(u="function"==typeof e?e:constant(!!e),$):u},$.touchable=function(e){return arguments.length?(t="function"==typeof e?e:constant(!!e),$):t},$.extent=function(e){return arguments.length?(p="function"==typeof e?e:constant([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),$):p},$.scaleExtent=function(e){return arguments.length?(s[0]=+e[0],s[1]=+e[1],$):[s[0],s[1]]},$.translateExtent=function(e){return arguments.length?(h[0][0]=+e[0][0],h[1][0]=+e[1][0],h[0][1]=+e[0][1],h[1][1]=+e[1][1],$):[[h[0][0],h[0][1]],[h[1][0],h[1][1]]]},$.constrain=function(e){return arguments.length?(g=e,$):g},$.duration=function(e){return arguments.length?(f=+e,$):f},$.interpolate=function(e){return arguments.length?(m=e,$):m},$.on=function(){var e=n.on.apply(n,arguments);return e===n?$:e},$.clickDistance=function(e){return arguments.length?(b=(e=+e)*e,$):Math.sqrt(b)},$.tapDistance=function(e){return arguments.length?(v=+e,$):v},$}Transform.prototype;const StoreContext=react.exports.createContext(null),Provider$1=StoreContext.Provider,errorMessages={"001":()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001","002":()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.","003":e=>`Node type "${e}" not found. Using fallback type "default".`,"004":()=>"The React Flow parent container needs a width and a height to render the graph.","005":()=>"Only child nodes can use a parent extent.","006":()=>"Can't create edge. An edge needs a source and a target.","007":e=>`The old edge with id=${e} does not exist.`,"009":e=>`Marker type "${e}" doesn't exist.`,"008":(e,t)=>`Couldn't create edge for ${e?"target":"source"} handle id: "${e?t.targetHandle:t.sourceHandle}", edge id: ${t.id}.`,"010":()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.","011":e=>`Edge type "${e}" not found. Using fallback type "default".`},zustandErrorMessage=errorMessages["001"]();function useStore(e,t){var n=react.exports.useContext(StoreContext);if(null===n)throw new Error(zustandErrorMessage);return useStore$1(n,e,t)}const useStoreApi=()=>{const e=react.exports.useContext(StoreContext);if(null===e)throw new Error(zustandErrorMessage);return react.exports.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe,destroy:e.destroy}),[e])},selector$g=e=>e.userSelectionActive?"none":"all";function Panel({position:e,children:t,className:n,style:o,...r}){var i=useStore(selector$g),e=(""+e).split("-");return jsxRuntime.exports.jsx("div",{className:cc(["react-flow__panel",n,...e]),style:{...o,pointerEvents:i},...r,children:t})}function Attribution({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:jsxRuntime.exports.jsx(Panel,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:jsxRuntime.exports.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const EdgeText=({x:e,y:t,label:n,labelStyle:o={},labelShowBg:r=!0,labelBgStyle:i={},labelBgPadding:a=[2,4],labelBgBorderRadius:s=2,children:l,className:c,...d})=>{const u=react.exports.useRef(null),[p,g]=react.exports.useState({x:0,y:0,width:0,height:0});c=cc(["react-flow__edge-textwrapper",c]);return react.exports.useEffect(()=>{var e;u.current&&(e=u.current.getBBox(),g({x:e.x,y:e.y,width:e.width,height:e.height}))},[n]),void 0!==n&&n?jsxRuntime.exports.jsxs("g",{transform:`translate(${e-p.width/2} ${t-p.height/2})`,className:c,visibility:p.width?"visible":"hidden",...d,children:[r&&jsxRuntime.exports.jsx("rect",{width:p.width+2*a[0],x:-a[0],y:-a[1],height:p.height+2*a[1],className:"react-flow__edge-textbg",style:i,rx:s,ry:s}),jsxRuntime.exports.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:u,style:o,children:n}),l]}):null};var ConnectionMode,PanOnScrollMode,SelectionMode,ConnectionLineType,MarkerType,Position,EdgeText$1=react.exports.memo(EdgeText);const getDimensions=e=>({width:e.offsetWidth,height:e.offsetHeight}),clamp=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),clampPosition=(e={x:0,y:0},t)=>({x:clamp(e.x,t[0][0],t[1][0]),y:clamp(e.y,t[0][1],t[1][1])}),calcAutoPanVelocity=(e,t,n)=>e<t?clamp(Math.abs(e-t),1,50)/50:n<e?-clamp(Math.abs(e-n),1,50)/50:0,calcAutoPan=(e,t)=>{return[20*calcAutoPanVelocity(e.x,35,t.width-35),20*calcAutoPanVelocity(e.y,35,t.height-35)]},getHostForElement=e=>e.getRootNode?.()||window?.document,getBoundsOfBoxes=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),rectToBox=({x:e,y:t,width:n,height:o})=>({x:e,y:t,x2:e+n,y2:t+o}),boxToRect=({x:e,y:t,x2:n,y2:o})=>({x:e,y:t,width:n-e,height:o-t}),nodeToRect=e=>({...e.positionAbsolute||{x:0,y:0},width:e.width||0,height:e.height||0}),getOverlappingArea=(e,t)=>{var n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),e=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*e)},isRectObject=e=>isNumeric(e.width)&&isNumeric(e.height)&&isNumeric(e.x)&&isNumeric(e.y),isNumeric=e=>!isNaN(e)&&isFinite(e),internalsSymbol=Symbol.for("internals"),elementSelectionKeys=["Enter"," ","Escape"],devWarn=(e,t)=>{},isReactKeyboardEvent=e=>"nativeEvent"in e;function isInputDOMNode(e){var t=(isReactKeyboardEvent(e)?e.nativeEvent:e).composedPath?.()?.[0]||e.target,n=["INPUT","SELECT","TEXTAREA"].includes(t?.nodeName)||t?.hasAttribute("contenteditable"),e=e.ctrlKey||e.metaKey||e.shiftKey;return n&&!e||!!t?.closest(".nokey")}const isMouseEvent=e=>"clientX"in e,getEventPosition=(e,t)=>{var n=isMouseEvent(e),o=(n?e:e.touches?.[0]).clientX,n=(n?e:e.touches?.[0]).clientY;return{x:o-(t?.left??0),y:n-(t?.top??0)}},BaseEdge=({path:e,labelX:t,labelY:n,label:o,labelStyle:r,labelShowBg:i,labelBgStyle:a,labelBgPadding:s,labelBgBorderRadius:l,style:c,markerEnd:d,markerStart:u,interactionWidth:p=20})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx("path",{style:c,d:e,fill:"none",className:"react-flow__edge-path",markerEnd:d,markerStart:u}),p&&jsxRuntime.exports.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:p,className:"react-flow__edge-interaction"}),o&&isNumeric(t)&&isNumeric(n)?jsxRuntime.exports.jsx(EdgeText$1,{x:t,y:n,label:o,labelStyle:r,labelShowBg:i,labelBgStyle:a,labelBgPadding:s,labelBgBorderRadius:l}):null]});function getMouseHandler$1(n,o,r){return void 0===r?r:e=>{var t=o().edges.find(e=>e.id===n);t&&r(e,{...t})}}function getEdgeCenter({sourceX:e,sourceY:t,targetX:n,targetY:o}){var r=Math.abs(n-e)/2,e=n<e?n+r:n-r,n=Math.abs(o-t)/2;return[e,o<t?o+n:o-n,r,n]}function getBezierEdgeCenter({sourceX:e,sourceY:t,targetX:n,targetY:o,sourceControlX:r,sourceControlY:i,targetControlX:a,targetControlY:s}){r=.125*e+.375*r+.375*a+.125*n,a=.125*t+.375*i+.375*s+.125*o;return[r,a,Math.abs(r-e),Math.abs(a-t)]}function getControl({pos:e,x1:t,y1:n,x2:o,y2:r}){return e===Position.Left||e===Position.Right?[.5*(t+o),n]:[t,.5*(n+r)]}function getSimpleBezierPath({sourceX:e,sourceY:t,sourcePosition:n=Position.Bottom,targetX:o,targetY:r,targetPosition:i=Position.Top}){var[n,a]=getControl({pos:n,x1:e,y1:t,x2:o,y2:r}),[i,s]=getControl({pos:i,x1:o,y1:r,x2:e,y2:t}),[l,c,d,u]=getBezierEdgeCenter({sourceX:e,sourceY:t,targetX:o,targetY:r,sourceControlX:n,sourceControlY:a,targetControlX:i,targetControlY:s});return[`M${e},${t} C${n},${a} ${i},${s} ${o},`+r,l,c,d,u]}BaseEdge.displayName="BaseEdge",function(e){e.Strict="strict",e.Loose="loose"}(ConnectionMode=ConnectionMode||{}),function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"}(PanOnScrollMode=PanOnScrollMode||{}),function(e){e.Partial="partial",e.Full="full"}(SelectionMode=SelectionMode||{}),function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"}(ConnectionLineType=ConnectionLineType||{}),function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"}(MarkerType=MarkerType||{}),function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"}(Position=Position||{});const SimpleBezierEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,sourcePosition:r=Position.Bottom,targetPosition:i=Position.Top,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,interactionWidth:f})=>{var[e,t,r]=getSimpleBezierPath({sourceX:e,sourceY:t,sourcePosition:r,targetX:n,targetY:o,targetPosition:i});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:r,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,interactionWidth:f})}),handleDirections=(SimpleBezierEdge.displayName="SimpleBezierEdge",{[Position.Left]:{x:-1,y:0},[Position.Right]:{x:1,y:0},[Position.Top]:{x:0,y:-1},[Position.Bottom]:{x:0,y:1}}),getDirection=({source:e,sourcePosition:t=Position.Bottom,target:n})=>t===Position.Left||t===Position.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},distance=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function getPoints({source:e,sourcePosition:t=Position.Bottom,target:n,targetPosition:o=Position.Top,center:r,offset:i}){var a=handleDirections[t],s=handleDirections[o],l={x:e.x+a.x*i,y:e.y+a.y*i},i={x:n.x+s.x*i,y:n.y+s.y*i},c=getDirection({source:l,sourcePosition:t,target:i}),d=0!==c.x?"x":"y",c=c[d];let u=[],p,g;var[h,f,m,y]=getEdgeCenter({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y}),s=(a[d]*s[d]==-1?(p=r.x||h,g=r.y||f,h=[{x:p,y:l.y},{x:p,y:i.y}],r=[{x:l.x,y:g},{x:i.x,y:g}],u=a[d]===c?"x"==d?h:r:"x"==d?r:h):(f=[{x:l.x,y:i.y}],r=[{x:i.x,y:l.y}],u="x"==d?a.x===c?r:f:a.y===c?f:r,t!==o&&(c=a[d]===s[h="x"==d?"y":"x"],t=i[h]<l[h],o=l[h]<i[h],1===a[d]&&(!c&&t||c&&o)||1!==a[d]&&(!c&&o||c&&t))&&(u="x"==d?f:r),p=u[0].x,g=u[0].y),[e,l,...u,i,n]);return[s,p,g,m,y]}function getBend(e,t,n,o){var o=Math.min(distance(e,t)/2,distance(t,n)/2,o),{x:t,y:r}=t;if(e.x===t&&t===n.x||e.y===r&&r===n.y)return`L${t} `+r;if(e.y===r){const i=e.x<n.x?-1:1,a=e.y<n.y?1:-1;return`L ${t+o*i},${r}Q ${t},${r} ${t},`+(r+o*a)}const i=e.x<n.x?1:-1,a=e.y<n.y?-1:1;return`L ${t},${r+o*a}Q ${t},${r} ${t+o*i},`+r}function getSmoothStepPath({sourceX:e,sourceY:t,sourcePosition:n=Position.Bottom,targetX:o,targetY:r,targetPosition:i=Position.Top,borderRadius:a=5,centerX:s,centerY:l,offset:c=20}){const[d,u,p,g,h]=getPoints({source:{x:e,y:t},sourcePosition:n,target:{x:o,y:r},targetPosition:i,center:{x:s,y:l},offset:c});return[d.reduce((e,t,n)=>{let o="";return e+=o=0<n&&n<d.length-1?getBend(d[n-1],t,d[n+1],a):(0===n?"M":"L")+t.x+" "+t.y},""),u,p,g,h]}const SmoothStepEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,sourcePosition:u=Position.Bottom,targetPosition:p=Position.Top,markerEnd:g,markerStart:h,pathOptions:f,interactionWidth:m})=>{var[e,t,u]=getSmoothStepPath({sourceX:e,sourceY:t,sourcePosition:u,targetX:n,targetY:o,targetPosition:p,borderRadius:f?.borderRadius,offset:f?.offset});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:u,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:g,markerStart:h,interactionWidth:m})}),StepEdge=(SmoothStepEdge.displayName="SmoothStepEdge",react.exports.memo(e=>jsxRuntime.exports.jsx(SmoothStepEdge,{...e,pathOptions:react.exports.useMemo(()=>({borderRadius:0,offset:e.pathOptions?.offset}),[e.pathOptions?.offset])})));function getStraightPath({sourceX:e,sourceY:t,targetX:n,targetY:o}){var[r,i,a,s]=getEdgeCenter({sourceX:e,sourceY:t,targetX:n,targetY:o});return[`M ${e},${t}L ${n},`+o,r,i,a,s]}StepEdge.displayName="StepEdge";const StraightEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:u,markerStart:p,interactionWidth:g})=>{var[e,t,n]=getStraightPath({sourceX:e,sourceY:t,targetX:n,targetY:o});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:n,label:r,labelStyle:i,labelShowBg:a,labelBgStyle:s,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:u,markerStart:p,interactionWidth:g})});function calculateControlOffset(e,t){return 0<=e?.5*e:25*t*Math.sqrt(-e)}function getControlWithCurvature({pos:e,x1:t,y1:n,x2:o,y2:r,c:i}){switch(e){case Position.Left:return[t-calculateControlOffset(t-o,i),n];case Position.Right:return[t+calculateControlOffset(o-t,i),n];case Position.Top:return[t,n-calculateControlOffset(n-r,i)];case Position.Bottom:return[t,n+calculateControlOffset(r-n,i)]}}function getBezierPath({sourceX:e,sourceY:t,sourcePosition:n=Position.Bottom,targetX:o,targetY:r,targetPosition:i=Position.Top,curvature:a=.25}){var[n,s]=getControlWithCurvature({pos:n,x1:e,y1:t,x2:o,y2:r,c:a}),[i,a]=getControlWithCurvature({pos:i,x1:o,y1:r,x2:e,y2:t,c:a}),[l,c,d,u]=getBezierEdgeCenter({sourceX:e,sourceY:t,targetX:o,targetY:r,sourceControlX:n,sourceControlY:s,targetControlX:i,targetControlY:a});return[`M${e},${t} C${n},${s} ${i},${a} ${o},`+r,l,c,d,u]}StraightEdge.displayName="StraightEdge";const BezierEdge=react.exports.memo(({sourceX:e,sourceY:t,targetX:n,targetY:o,sourcePosition:r=Position.Bottom,targetPosition:i=Position.Top,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,pathOptions:f,interactionWidth:m})=>{var[e,t,r]=getBezierPath({sourceX:e,sourceY:t,sourcePosition:r,targetX:n,targetY:o,targetPosition:i,curvature:f?.curvature});return jsxRuntime.exports.jsx(BaseEdge,{path:e,labelX:t,labelY:r,label:a,labelStyle:s,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:p,markerEnd:g,markerStart:h,interactionWidth:m})}),NodeIdContext=(BezierEdge.displayName="BezierEdge",react.exports.createContext(null)),Provider=NodeIdContext.Provider,useNodeId=(NodeIdContext.Consumer,()=>{return react.exports.useContext(NodeIdContext)}),isEdge=e=>"id"in e&&"source"in e&&"target"in e,getEdgeId=({source:e,sourceHandle:t,target:n,targetHandle:o})=>`reactflow__edge-${e}${t||""}-`+n+(o||""),getMarkerId=(t,e)=>{return void 0===t?"":"string"==typeof t?t:(e?e+"__":"")+Object.keys(t).sort().map(e=>e+"="+t[e]).join("&")},connectionExists=(t,e)=>e.some(e=>!(e.source!==t.source||e.target!==t.target||e.sourceHandle!==t.sourceHandle&&(e.sourceHandle||t.sourceHandle)||e.targetHandle!==t.targetHandle&&(e.targetHandle||t.targetHandle))),addEdge=(e,t)=>{if(!e.source||!e.target)return t;let n;return n=isEdge(e)?{...e}:{...e,id:getEdgeId(e)},connectionExists(n,t)?t:t.concat(n)},pointToRendererPoint=({x:e,y:t},[n,o,r],i,[a,s])=>{e={x:(e-n)/r,y:(t-o)/r};return i?{x:a*Math.round(e.x/a),y:s*Math.round(e.y/s)}:e},rendererPointToPoint=({x:e,y:t},[n,o,r])=>({x:e*r+n,y:t*r+o}),getNodePositionWithOrigin=(e,t=[0,0])=>{var n,o;return e?(n=(e.width??0)*t[0],t=(e.height??0)*t[1],{...o={x:e.position.x-n,y:e.position.y-t},positionAbsolute:e.positionAbsolute?{x:e.positionAbsolute.x-n,y:e.positionAbsolute.y-t}:o}):{x:0,y:0,positionAbsolute:{x:0,y:0}}},getRectOfNodes=(e,r=[0,0])=>{return 0===e.length?{x:0,y:0,width:0,height:0}:(e=e.reduce((e,t)=>{var{x:n,y:o}=getNodePositionWithOrigin(t,r).positionAbsolute;return getBoundsOfBoxes(e,rectToBox({x:n,y:o,width:t.width||0,height:t.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0}),boxToRect(e))},getNodesInside=(e,t,[n,o,r]=[0,0,1],i=!1,a=!1,s=[0,0])=>{const l={x:(t.x-n)/r,y:(t.y-o)/r,width:t.width/r,height:t.height/r},c=[];return e.forEach(e=>{var{width:t,height:n,selectable:o=!0,hidden:r=!1}=e;if(a&&!o||r)return!1;o=getNodePositionWithOrigin(e,s).positionAbsolute,r={x:o.x,y:o.y,width:t||0,height:n||0},o=getOverlappingArea(l,r);(void 0===t||void 0===n||null===t||null===n||i&&0<o||(t||0)*(n||0)<=o||e.dragging)&&c.push(e)}),c},getConnectedEdges=(e,t)=>{const n=e.map(e=>e.id);return t.filter(e=>n.includes(e.source)||n.includes(e.target))},getTransformForBounds=(e,t,n,o,r,i=.1)=>{var a=t/(e.width*(1+i)),i=n/(e.height*(1+i)),a=Math.min(a,i),i=clamp(a,o,r);return[t/2-(e.x+e.width/2)*i,n/2-(e.y+e.height/2)*i,i]},getD3Transition=(e,t=0)=>e.transition().duration(t);function getHandles(n,e,o,r){return(e[o]||[]).reduce((e,t)=>(`${n.id}-${t.id}-`+o!==r&&e.push({id:t.id||null,type:o,nodeId:n.id,x:(n.positionAbsolute?.x??0)+t.x+t.width/2,y:(n.positionAbsolute?.y??0)+t.y+t.height/2}),e),[])}function getClosestHandle(n,o,e){let r=null,i=1/0;return e.forEach(e=>{var t=Math.sqrt(Math.pow(e.x-n.x,2)+Math.pow(e.y-n.y,2));t<=o&&t<i&&(i=t,r=e)}),r}const nullConnection={source:null,target:null,sourceHandle:null,targetHandle:null};function isValidHandle(e,t,n,o,r,i,a,s){var l,i="target"===i,t=s.querySelector(`.react-flow__handle[data-id="${t?.nodeId}-${t?.id}-${t?.type}"]`),{x:e,y:c}=getEventPosition(e),s=s.elementFromPoint(e,c),e=s?.classList.contains("react-flow__handle")?s:t,c={handleDomNode:e,isValid:!1,connection:nullConnection};return e&&(s=getHandleType(void 0,e),t=e.getAttribute("data-nodeid"),e=e.getAttribute("data-handleid"),c.connection=l={source:i?t:o,sourceHandle:i?e:r,target:i?o:t,targetHandle:i?r:e},n===ConnectionMode.Strict?i&&"source"===s||!i&&"target"===s:t!==o||e!==r)&&(c.isValid=a(l)),c}function getHandleLookup({nodes:e,nodeId:i,handleId:a,handleType:s}){return e.reduce((n,o)=>{if(o[internalsSymbol]){var r=o[internalsSymbol]["handleBounds"];let e=[],t=[];r&&(e=getHandles(o,r,"source",i+`-${a}-`+s),t=getHandles(o,r,"target",i+`-${a}-`+s)),n.push(...e,...t)}return n},[])}function getHandleType(e,t){return e||(t?.classList.contains("target")?"target":t?.classList.contains("source")?"source":null)}function resetRecentHandle(e){e?.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function getConnectionStatus(e,t){let n=null;return t?n="valid":e&&!t&&(n="invalid"),n}function handlePointerDown({event:e,handleId:l,nodeId:c,onConnect:t,isTarget:d,getState:u,setState:p,isValidConnection:g,edgeUpdaterType:h,onEdgeUpdateEnd:f}){const m=getHostForElement(e.target),{connectionMode:y,domNode:n,autoPanOnConnect:x,connectionRadius:b,onConnectStart:v,panBy:$,getNodes:S,cancelConnection:_}=u();let E=0,w;var{x:o,y:C}=getEventPosition(e),o=m?.elementFromPoint(o,C),C=getHandleType(h,o);const N=n?.getBoundingClientRect();if(N&&C){let n,o=getEventPosition(e,N),r=!1,i=null,a=!1,s=null;const O=getHandleLookup({nodes:S(),nodeId:c,handleId:l,handleType:C}),T=()=>{var e,t;x&&([e,t]=calcAutoPan(o,N),$({x:e,y:t}),E=requestAnimationFrame(T))};function j(e){var t=u()["transform"],e=(o=getEventPosition(e,N),w=getClosestHandle(pointToRendererPoint(o,t,!1,[1,1]),b,O),r||(T(),r=!0),isValidHandle(e,w,y,c,l,d?"target":"source",g,m));if(s=e.handleDomNode,i=e.connection,a=e.isValid,p({connectionPosition:w&&a?rendererPointToPoint({x:w.x,y:w.y},t):o,connectionStatus:getConnectionStatus(!!w,a)}),!w&&!a&&!s)return resetRecentHandle(n);i.source!==i.target&&s&&(resetRecentHandle(n),(n=s).classList.add("connecting","react-flow__handle-connecting"),s.classList.toggle("valid",a),s.classList.toggle("react-flow__handle-valid",a))}function I(e){(w||s)&&i&&a&&t?.(i),u().onConnectEnd?.(e),h&&f?.(e),resetRecentHandle(n),_(),cancelAnimationFrame(E),r=!1,a=!1,i=null,s=null,m.removeEventListener("mousemove",j),m.removeEventListener("mouseup",I),m.removeEventListener("touchmove",j),m.removeEventListener("touchend",I)}p({connectionPosition:o,connectionNodeId:c,connectionHandleId:l,connectionHandleType:C,connectionStatus:null}),v?.(e,{nodeId:c,handleId:l,handleType:C}),m.addEventListener("mousemove",j),m.addEventListener("mouseup",I),m.addEventListener("touchmove",j),m.addEventListener("touchend",I)}}const alwaysValid=()=>!0,selector$f=e=>({connectionStartHandle:e.connectionStartHandle,connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName}),Handle=react.exports.forwardRef(({type:i="source",position:e=Position.Top,isValidConnection:a=alwaysValid,isConnectable:t=!0,id:n,onConnect:r,children:o,className:s,onMouseDown:l,onTouchStart:c,...d},u)=>{const p=useStoreApi(),g=useNodeId();if(!g)return p.getState().onError?.("010",errorMessages["010"]()),null;const{connectionStartHandle:h,connectOnClick:f,noPanClassName:m}=useStore(selector$f,shallow),y=n||null,x="target"===i,b=e=>{var{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:o}=p.getState(),t={...t,...e};o&&(e=p.getState()["edges"],p.setState({edges:addEdge(t,e)})),n?.(t),r?.(t)};n=e=>{var t=isMouseEvent(e);(t&&0===e.button||!t)&&handlePointerDown({event:e,handleId:y,nodeId:g,onConnect:b,isTarget:x,getState:p.getState,setState:p.setState,isValidConnection:a}),(t?l:c)?.(e)};return jsxRuntime.exports.jsx("div",{"data-handleid":y,"data-nodeid":g,"data-handlepos":e,"data-id":`${g}-${y}-`+i,className:cc(["react-flow__handle","react-flow__handle-"+e,"nodrag",m,s,{source:!x,target:x,connectable:t,connecting:h?.nodeId===g&&h?.handleId===y&&h?.type===i}]),onMouseDown:n,onTouchStart:n,onClick:f?e=>{var t,{onClickConnectStart:n,onClickConnectEnd:o,connectionMode:r}=p.getState();h?(t=getHostForElement(e.target),{connection:r,isValid:t}=isValidHandle(e,{nodeId:g,id:y,type:i},r,h.nodeId,h.handleId||null,h.type,a,t),t&&b(r),o?.(e),p.setState({connectionStartHandle:null})):(n?.(e,{nodeId:g,handleId:y,handleType:i}),p.setState({connectionStartHandle:{nodeId:g,type:i,handleId:y}}))}:void 0,ref:u,...d,children:o})});Handle.displayName="Handle";var Handle$1=react.exports.memo(Handle);const DefaultNode=({data:e,isConnectable:t,targetPosition:n=Position.Top,sourcePosition:o=Position.Bottom})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Handle$1,{type:"target",position:n,isConnectable:t}),e?.label,jsxRuntime.exports.jsx(Handle$1,{type:"source",position:o,isConnectable:t})]});DefaultNode.displayName="DefaultNode";var DefaultNode$1=react.exports.memo(DefaultNode);const InputNode=({data:e,isConnectable:t,sourcePosition:n=Position.Bottom})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[e?.label,jsxRuntime.exports.jsx(Handle$1,{type:"source",position:n,isConnectable:t})]});InputNode.displayName="InputNode";var InputNode$1=react.exports.memo(InputNode);const OutputNode=({data:e,isConnectable:t,targetPosition:n=Position.Top})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Handle$1,{type:"target",position:n,isConnectable:t}),e?.label]});OutputNode.displayName="OutputNode";var OutputNode$1=react.exports.memo(OutputNode);const GroupNode=()=>null,selector$e=(GroupNode.displayName="GroupNode",e=>({selectedNodes:e.getNodes().filter(e=>e.selected),selectedEdges:e.edges.filter(e=>e.selected)})),selectId=e=>e.id;function areEqual(e,t){return shallow(e.selectedNodes.map(selectId),t.selectedNodes.map(selectId))&&shallow(e.selectedEdges.map(selectId),t.selectedEdges.map(selectId))}const SelectionListener=react.exports.memo(({onSelectionChange:t})=>{const n=useStoreApi(),{selectedNodes:o,selectedEdges:r}=useStore(selector$e,areEqual);return react.exports.useEffect(()=>{var e={nodes:o,edges:r};t?.(e),n.getState().onSelectionChange?.(e)},[o,r,t]),null}),changeSelector=(SelectionListener.displayName="SelectionListener",e=>!!e.onSelectionChange);function Wrapper$1({onSelectionChange:e}){var t=useStore(changeSelector);return e||t?jsxRuntime.exports.jsx(SelectionListener,{onSelectionChange:e}):null}const selector$d=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset});function useStoreUpdater(e,t){react.exports.useEffect(()=>{void 0!==e&&t(e)},[e])}function useDirectStoreUpdater(e,t,n){react.exports.useEffect(()=>{void 0!==t&&n({[e]:t})},[t])}const StoreUpdater=({nodes:e,edges:t,defaultNodes:n,defaultEdges:o,onConnect:r,onConnectStart:i,onConnectEnd:a,onClickConnectStart:s,onClickConnectEnd:l,nodesDraggable:c,nodesConnectable:d,nodesFocusable:u,edgesFocusable:p,elevateNodesOnSelect:g,minZoom:h,maxZoom:f,nodeExtent:m,onNodesChange:y,onEdgesChange:x,elementsSelectable:b,connectionMode:v,snapGrid:$,snapToGrid:S,translateExtent:_,connectOnClick:E,defaultEdgeOptions:w,fitView:C,fitViewOptions:N,onNodesDelete:j,onEdgesDelete:I,onNodeDrag:O,onNodeDragStart:T,onNodeDragStop:R,onSelectionDrag:P,onSelectionDragStart:k,onSelectionDragStop:A,noPanClassName:D,nodeOrigin:L,rfId:B,autoPanOnConnect:F,autoPanOnNodeDrag:z,onError:V,connectionRadius:G})=>{const{setNodes:H,setEdges:U,setDefaultNodesAndEdges:K,setMinZoom:Y,setMaxZoom:W,setTranslateExtent:X,setNodeExtent:q,reset:Z}=useStore(selector$d,shallow);var M=useStoreApi();return react.exports.useEffect(()=>{var e=o?.map(e=>({...e,...w}));return K(n,e),()=>{Z()}},[]),useDirectStoreUpdater("defaultEdgeOptions",w,M.setState),useDirectStoreUpdater("connectionMode",v,M.setState),useDirectStoreUpdater("onConnect",r,M.setState),useDirectStoreUpdater("onConnectStart",i,M.setState),useDirectStoreUpdater("onConnectEnd",a,M.setState),useDirectStoreUpdater("onClickConnectStart",s,M.setState),useDirectStoreUpdater("onClickConnectEnd",l,M.setState),useDirectStoreUpdater("nodesDraggable",c,M.setState),useDirectStoreUpdater("nodesConnectable",d,M.setState),useDirectStoreUpdater("nodesFocusable",u,M.setState),useDirectStoreUpdater("edgesFocusable",p,M.setState),useDirectStoreUpdater("elementsSelectable",b,M.setState),useDirectStoreUpdater("elevateNodesOnSelect",g,M.setState),useDirectStoreUpdater("snapToGrid",S,M.setState),useDirectStoreUpdater("snapGrid",$,M.setState),useDirectStoreUpdater("onNodesChange",y,M.setState),useDirectStoreUpdater("onEdgesChange",x,M.setState),useDirectStoreUpdater("connectOnClick",E,M.setState),useDirectStoreUpdater("fitViewOnInit",C,M.setState),useDirectStoreUpdater("fitViewOnInitOptions",N,M.setState),useDirectStoreUpdater("onNodesDelete",j,M.setState),useDirectStoreUpdater("onEdgesDelete",I,M.setState),useDirectStoreUpdater("onNodeDrag",O,M.setState),useDirectStoreUpdater("onNodeDragStart",T,M.setState),useDirectStoreUpdater("onNodeDragStop",R,M.setState),useDirectStoreUpdater("onSelectionDrag",P,M.setState),useDirectStoreUpdater("onSelectionDragStart",k,M.setState),useDirectStoreUpdater("onSelectionDragStop",A,M.setState),useDirectStoreUpdater("noPanClassName",D,M.setState),useDirectStoreUpdater("nodeOrigin",L,M.setState),useDirectStoreUpdater("rfId",B,M.setState),useDirectStoreUpdater("autoPanOnConnect",F,M.setState),useDirectStoreUpdater("autoPanOnNodeDrag",z,M.setState),useDirectStoreUpdater("onError",V,M.setState),useDirectStoreUpdater("connectionRadius",G,M.setState),useStoreUpdater(e,H),useStoreUpdater(t,U),useStoreUpdater(h,Y),useStoreUpdater(f,W),useStoreUpdater(_,X),useStoreUpdater(m,q),null},style={display:"none"},ariaLiveStyle={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},ARIA_NODE_DESC_KEY="react-flow__node-desc",ARIA_EDGE_DESC_KEY="react-flow__edge-desc",ARIA_LIVE_MESSAGE="react-flow__aria-live",selector$c=e=>e.ariaLiveMessage;function AriaLiveMessage({rfId:e}){var t=useStore(selector$c);return jsxRuntime.exports.jsx("div",{id:ARIA_LIVE_MESSAGE+"-"+e,"aria-live":"assertive","aria-atomic":"true",style:ariaLiveStyle,children:t})}function A11yDescriptions({rfId:e,disableKeyboardA11y:t}){return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsxs("div",{id:ARIA_NODE_DESC_KEY+"-"+e,style:style,children:["Press enter or space to select a node.",!t&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "]}),jsxRuntime.exports.jsx("div",{id:ARIA_EDGE_DESC_KEY+"-"+e,style:style,children:"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."}),!t&&jsxRuntime.exports.jsx(AriaLiveMessage,{rfId:e})]})}const shiftX=(e,t,n)=>n===Position.Left?e-t:n===Position.Right?e+t:e,shiftY=(e,t,n)=>n===Position.Top?e-t:n===Position.Bottom?e+t:e,EdgeUpdaterClassName="react-flow__edgeupdater",EdgeAnchor=({position:e,centerX:t,centerY:n,radius:o=10,onMouseDown:r,onMouseEnter:i,onMouseOut:a,type:s})=>jsxRuntime.exports.jsx("circle",{onMouseDown:r,onMouseEnter:i,onMouseOut:a,className:cc([EdgeUpdaterClassName,EdgeUpdaterClassName+"-"+s]),cx:shiftX(t,o,e),cy:shiftY(n,o,e),r:o,stroke:"transparent",fill:"transparent"});var wrapEdge=J=>{var e=({id:a,className:e,type:t,data:A,onClick:o,onEdgeDoubleClick:n,selected:r,animated:i,label:D,labelStyle:L,labelShowBg:B,labelBgStyle:F,labelBgPadding:z,labelBgBorderRadius:V,style:G,source:s,target:l,sourceX:c,sourceY:d,targetX:u,targetY:p,sourcePosition:g,targetPosition:h,elementsSelectable:f,hidden:m,sourceHandleId:y,targetHandleId:x,onContextMenu:b,onMouseEnter:v,onMouseMove:$,onMouseLeave:S,edgeUpdaterRadius:_,onEdgeUpdate:E,onEdgeUpdateStart:H,onEdgeUpdateEnd:U,markerEnd:w,markerStart:C,rfId:N,ariaLabel:j,isFocusable:I,pathOptions:K,interactionWidth:Y})=>{const O=react.exports.useRef(null),[W,T]=react.exports.useState(!1),[X,R]=react.exports.useState(!1),P=useStoreApi();var q=react.exports.useMemo(()=>`url(#${getMarkerId(C,N)})`,[C,N]),Z=react.exports.useMemo(()=>`url(#${getMarkerId(w,N)})`,[w,N]);if(m)return null;m=getMouseHandler$1(a,P.getState,n),n=getMouseHandler$1(a,P.getState,b),b=getMouseHandler$1(a,P.getState,v),v=getMouseHandler$1(a,P.getState,$),$=getMouseHandler$1(a,P.getState,S);const k=(e,t)=>{if(0===e.button){var n=t?l:s,o=(t?x:y)||null;const r=t?"target":"source";const i=P.getState().edges.find(e=>e.id===a);R(!0),H?.(e,i,r);handlePointerDown({event:e,handleId:o,nodeId:n,onConnect:e=>E?.(i,e),isTarget:t,getState:P.getState,setState:P.setState,isValidConnection:()=>!0,edgeUpdaterType:r,onEdgeUpdateEnd:e=>{R(!1),U?.(e,i,r)}})}};var S=()=>T(!0),M=()=>T(!1),Q=void 0!==E;return jsxRuntime.exports.jsxs("g",{className:cc(["react-flow__edge","react-flow__edge-"+t,e,{selected:r,animated:i,inactive:!f&&!o,updating:W}]),onClick:e=>{var{edges:t,addSelectedEdges:n}=P.getState();f&&(P.setState({nodesSelectionActive:!1}),n([a])),o&&(n=t.find(e=>e.id===a),o(e,n))},onDoubleClick:m,onContextMenu:n,onMouseEnter:b,onMouseMove:v,onMouseLeave:$,onKeyDown:I?e=>{var t,n,o;elementSelectionKeys.includes(e.key)&&f&&({unselectNodesAndEdges:t,addSelectedEdges:n,edges:o}=P.getState(),"Escape"===e.key?(O.current?.blur(),t({edges:[o.find(e=>e.id===a)]})):n([a]))}:void 0,tabIndex:I?0:void 0,role:I?"button":void 0,"data-testid":"rf__edge-"+a,"aria-label":null===j?void 0:j||`Edge from ${s} to `+l,"aria-describedby":I?ARIA_EDGE_DESC_KEY+"-"+N:void 0,ref:O,children:[!X&&jsxRuntime.exports.jsx(J,{id:a,source:s,target:l,selected:r,animated:i,label:D,labelStyle:L,labelShowBg:B,labelBgStyle:F,labelBgPadding:z,labelBgBorderRadius:V,data:A,style:G,sourceX:c,sourceY:d,targetX:u,targetY:p,sourcePosition:g,targetPosition:h,sourceHandleId:y,targetHandleId:x,markerStart:q,markerEnd:Z,pathOptions:K,interactionWidth:Y}),Q&&jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(EdgeAnchor,{position:g,centerX:c,centerY:d,radius:_,onMouseDown:e=>k(e,!0),onMouseEnter:S,onMouseOut:M,type:"source"}),jsxRuntime.exports.jsx(EdgeAnchor,{position:h,centerX:u,centerY:p,radius:_,onMouseDown:e=>k(e,!1),onMouseEnter:S,onMouseOut:M,type:"target"})]})]})};return e.displayName="EdgeWrapper",react.exports.memo(e)};function createEdgeTypes(n){var e={default:wrapEdge(n.default||BezierEdge),straight:wrapEdge(n.bezier||StraightEdge),step:wrapEdge(n.step||StepEdge),smoothstep:wrapEdge(n.step||SmoothStepEdge),simplebezier:wrapEdge(n.simplebezier||SimpleBezierEdge)},t=Object.keys(n).filter(e=>!["default","bezier"].includes(e)).reduce((e,t)=>(e[t]=wrapEdge(n[t]||BezierEdge),e),{});return{...e,...t}}function getHandlePosition(e,t,n=null){var o=(n?.x||0)+t.x,r=(n?.y||0)+t.y,i=n?.width||t.width,a=n?.height||t.height;switch(e){case Position.Top:return{x:o+i/2,y:r};case Position.Right:return{x:o+i,y:r+a/2};case Position.Bottom:return{x:o+i/2,y:r+a};case Position.Left:return{x:o,y:r+a/2}}}function getHandle(e,t){return e?t?e.find(e=>e.id===t):1===e.length?e[0]:null:null}const getEdgePositions=(e,t,n,o,r,i)=>{n=getHandlePosition(n,e,t),e=getHandlePosition(i,o,r);return{sourceX:n.x,sourceY:n.y,targetX:e.x,targetY:e.y}};function isEdgeVisible({sourcePos:e,targetPos:t,sourceWidth:n,sourceHeight:o,targetWidth:r,targetHeight:i,width:a,height:s,transform:l}){n={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+n,t.x+r),y2:Math.max(e.y+o,t.y+i)},n.x===n.x2&&(n.x2+=1),n.y===n.y2&&(n.y2+=1),r=rectToBox({x:(0-l[0])/l[2],y:(0-l[1])/l[2],width:a/l[2],height:s/l[2]}),e=Math.max(0,Math.min(r.x2,n.x2)-Math.max(r.x,n.x)),o=Math.max(0,Math.min(r.y2,n.y2)-Math.max(r.y,n.y));return 0<Math.ceil(e*o)}function getNodeData(e){var t=e?.[internalsSymbol]?.handleBounds||null,n=t&&e?.width&&e?.height&&void 0!==e?.positionAbsolute?.x&&void 0!==e?.positionAbsolute?.y;return[{x:e?.positionAbsolute?.x||0,y:e?.positionAbsolute?.y||0,width:e?.width||0,height:e?.height||0},t,!!n]}function isParentSelected(e,t){return!!e.parentNode&&!!(e=t.get(e.parentNode))&&(!!e.selected||isParentSelected(e,t))}function hasSelector(e,t,n){let o=e;do{if(o?.matches(t))return!0;if(o===n.current)return!1}while(o=o.parentElement);return!1}function getDragItems(t,n,o,r){return Array.from(t.values()).filter(e=>(e.selected||e.id===r)&&(!e.parentNode||!isParentSelected(e,t))&&(e.draggable||n&&void 0===e.draggable)).map(e=>({id:e.id,position:e.position||{x:0,y:0},positionAbsolute:e.positionAbsolute||{x:0,y:0},distance:{x:o.x-(e.positionAbsolute?.x??0),y:o.y-(e.positionAbsolute?.y??0)},delta:{x:0,y:0},extent:e.extent,parentNode:e.parentNode,width:e.width,height:e.height}))}function calcNextPosition(e,t,n,o,r=[0,0],i){let a=e.extent||o;var s,l,c;"parent"===e.extent?a=e.parentNode&&e.width&&e.height?(c=n.get(e.parentNode),{x:s,y:l}=getNodePositionWithOrigin(c,r).positionAbsolute,c&&isNumeric(s)&&isNumeric(l)&&isNumeric(c.width)&&isNumeric(c.height)?[[s+e.width*r[0],l+e.height*r[1]],[s+c.width-e.width+e.width*r[0],l+c.height-e.height+e.height*r[1]]]:a):(i?.("005",errorMessages["005"]()),o):e.extent&&e.parentNode&&(s=n.get(e.parentNode),{x:l,y:c}=getNodePositionWithOrigin(s,r).positionAbsolute,a=[[e.extent[0][0]+l,e.extent[0][1]+c],[e.extent[1][0]+l,e.extent[1][1]+c]]);let d={x:0,y:0};e.parentNode&&(i=n.get(e.parentNode),d=getNodePositionWithOrigin(i,r).positionAbsolute);o=a?clampPosition(t,a):t;return{position:{x:o.x-d.x,y:o.y-d.y},positionAbsolute:o}}function getEventHandlerParams({nodeId:t,dragItems:e,nodeInternals:n}){e=e.map(e=>{return{...n.get(e.id),position:e.position,positionAbsolute:e.positionAbsolute}});return[t?e.find(e=>e.id===t):e[0],e]}const getHandleBounds=(e,t,n,o)=>{e=t.querySelectorAll(e);if(!e||!e.length)return null;e=Array.from(e);const r=t.getBoundingClientRect(),i={x:r.width*o[0],y:r.height*o[1]};return e.map(e=>{var t=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),position:e.getAttribute("data-handlepos"),x:(t.left-r.left-i.x)/n,y:(t.top-r.top-i.y)/n,...getDimensions(e)}})};function getMouseHandler(n,o,r){return void 0===r?r:e=>{var t=o().nodeInternals.get(n);r(e,{...t})}}function handleNodeClick({id:e,store:t,unselect:n=!1}){var{addSelectedNodes:o,unselectNodesAndEdges:r,multiSelectionActive:i,nodeInternals:a}=t.getState(),a=a.get(e);t.setState({nodesSelectionActive:!1}),a.selected?(n||a.selected&&i)&&r({nodes:[a]}):o([e])}function useGetPointerPosition(){const i=useStoreApi();return react.exports.useCallback(({sourceEvent:e})=>{var{transform:t,snapGrid:n,snapToGrid:o}=i.getState(),r=(e.touches?e.touches[0]:e).clientX,e=(e.touches?e.touches[0]:e).clientY,r={x:(r-t[0])/t[2],y:(e-t[1])/t[2]};return{xSnapped:o?n[0]*Math.round(r.x/n[0]):r.x,ySnapped:o?n[1]*Math.round(r.y/n[1]):r.y,...r}},[])}function wrapSelectionDragFunc(o){return(e,t,n)=>o?.(e,n)}function useDrag({nodeRef:n,disabled:o=!1,noDragClassName:a,handleSelector:s,nodeId:f,isSelectable:l,selectNodesOnDrag:c}){const m=useStoreApi(),[e,y]=react.exports.useState(!1),x=react.exports.useRef([]),b=react.exports.useRef({x:null,y:null}),d=react.exports.useRef(0),u=react.exports.useRef(null),p=react.exports.useRef({x:0,y:0}),v=react.exports.useRef(null),g=react.exports.useRef(!1),h=useGetPointerPosition();return react.exports.useEffect(()=>{if(n?.current){const t=select(n.current),r=({x:n,y:o})=>{const{nodeInternals:r,onNodeDrag:e,onSelectionDrag:t,updateNodePositions:i,nodeExtent:a,snapGrid:s,snapToGrid:l,nodeOrigin:c,onError:d}=m.getState();let u=!(b.current={x:n,y:o});var p,g,h;x.current=x.current.map(e=>{var t={x:n-e.distance.x,y:o-e.distance.y},t=(l&&(t.x=s[0]*Math.round(t.x/s[0]),t.y=s[1]*Math.round(t.y/s[1])),calcNextPosition(e,t,r,a,c,d));return u=u||e.position.x!==t.position.x||e.position.y!==t.position.y,e.position=t.position,e.positionAbsolute=t.positionAbsolute,e}),u&&(i(x.current,!0,!0),y(!0),p=f?e:wrapSelectionDragFunc(t))&&v.current&&([g,h]=getEventHandlerParams({nodeId:f,dragItems:x.current,nodeInternals:r}),p(v.current,g,h))},i=()=>{var e,t,n,o;u.current&&([e,t]=calcAutoPan(p.current,u.current),0===e&&0===t||({transform:n,panBy:o}=m.getState(),b.current.x=(b.current.x??0)-e/n[2],b.current.y=(b.current.y??0)-t/n[2],r(b.current),o({x:e,y:t})),d.current=requestAnimationFrame(i))};var e;if(!o)return e=drag().on("start",e=>{var{nodeInternals:t,multiSelectionActive:n,domNode:o,nodesDraggable:r,unselectNodesAndEdges:i,onNodeDragStart:a,onSelectionDragStart:s}=m.getState(),a=f?a:wrapSelectionDragFunc(s),s=(c||n||!f||t.get(f)?.selected||i(),f&&l&&c&&handleNodeClick({id:f,store:m}),h(e));b.current=s,x.current=getDragItems(t,r,s,f),a&&x.current&&([n,i]=getEventHandlerParams({nodeId:f,dragItems:x.current,nodeInternals:t}),a(e.sourceEvent,n,i)),u.current=o?.getBoundingClientRect()||null,p.current=getEventPosition(e.sourceEvent,u.current)}).on("drag",e=>{var t=h(e),n=m.getState()["autoPanOnNodeDrag"];!g.current&&n&&(g.current=!0,i()),b.current.x===t.xSnapped&&b.current.y===t.ySnapped||!x.current||(v.current=e.sourceEvent,p.current=getEventPosition(e.sourceEvent,u.current),r(t))}).on("end",e=>{var t,n,o,r;y(!1),g.current=!1,cancelAnimationFrame(d.current),x.current&&({updateNodePositions:r,nodeInternals:t,onNodeDragStop:n,onSelectionDragStop:o}=m.getState(),n=f?n:wrapSelectionDragFunc(o),r(x.current,!1,!1),n)&&([o,r]=getEventHandlerParams({nodeId:f,dragItems:x.current,nodeInternals:t}),n(e.sourceEvent,o,r))}).filter(e=>{var t=e.target;return!e.button&&(!a||!hasSelector(t,"."+a,n))&&(!s||hasSelector(t,s,n))}),t.call(e),()=>{t.on(".drag",null)};t.on(".drag",null)}},[n,o,a,s,l,m,f,c,h]),e}function useUpdateNodePositions(){const f=useStoreApi();return react.exports.useCallback(e=>{const{nodeInternals:o,nodeExtent:r,updateNodePositions:t,getNodes:n,snapToGrid:i,snapGrid:a,onError:s,nodesDraggable:l}=f.getState();var c=n().filter(e=>e.selected&&(e.draggable||l&&void 0===e.draggable)),d=i?a[0]:5,u=i?a[1]:5,p=e.isShiftPressed?4:1;const g=e.x*d*p,h=e.y*u*p;d=c.map(e=>{var t,n;return e.positionAbsolute&&(t={x:e.positionAbsolute.x+g,y:e.positionAbsolute.y+h},{positionAbsolute:t,position:n}=(i&&(t.x=a[0]*Math.round(t.x/a[0]),t.y=a[1]*Math.round(t.y/a[1])),calcNextPosition(e,t,o,r,void 0,s)),e.position=n,e.positionAbsolute=t),e});t(d,!0,!1)},[])}const arrowKeyDiffs={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var wrapNode=z=>{var e=({id:o,type:r,data:e,xPos:n,yPos:i,xPosOrigin:t,yPosOrigin:a,selected:s,onClick:l,onMouseEnter:c,onMouseMove:d,onMouseLeave:u,onContextMenu:p,onDoubleClick:g,style:h,className:f,isDraggable:m,isSelectable:y,isConnectable:x,isFocusable:b,selectNodesOnDrag:v,sourcePosition:$,targetPosition:S,hidden:_,resizeObserver:E,dragHandle:w,zIndex:C,isParent:N,noDragClassName:j,noPanClassName:I,initialized:A,disableKeyboardA11y:O,ariaLabel:D,rfId:L})=>{const T=useStoreApi(),R=react.exports.useRef(null),P=react.exports.useRef($),k=react.exports.useRef(S),M=react.exports.useRef(r);var B=y||m||l||c||d||u;const F=useUpdateNodePositions();c=getMouseHandler(o,T.getState,c),d=getMouseHandler(o,T.getState,d),u=getMouseHandler(o,T.getState,u),p=getMouseHandler(o,T.getState,p),g=getMouseHandler(o,T.getState,g),react.exports.useEffect(()=>{if(R.current&&!_){const e=R.current;return E?.observe(e),()=>E?.unobserve(e)}},[_]),react.exports.useEffect(()=>{var e=M.current!==r,t=P.current!==$,n=k.current!==S;R.current&&(e||t||n)&&(e&&(M.current=r),t&&(P.current=$),n&&(k.current=S),T.getState().updateNodeDimensions([{id:o,nodeElement:R.current,forceUpdate:!0}]))},[o,r,$,S]),j=useDrag({nodeRef:R,disabled:_||!m,noDragClassName:j,handleSelector:w,nodeId:o,isSelectable:y,selectNodesOnDrag:v});return _?null:jsxRuntime.exports.jsx("div",{className:cc(["react-flow__node","react-flow__node-"+r,{[I]:m},f,{selected:s,selectable:y,parent:N,dragging:j}]),ref:R,style:{zIndex:C,transform:`translate(${t}px,${a}px)`,pointerEvents:B?"all":"none",visibility:A?"visible":"hidden",...h},"data-id":o,"data-testid":"rf__node-"+o,onMouseEnter:c,onMouseMove:d,onMouseLeave:u,onContextMenu:p,onClick:e=>{var t;!y||v&&m||handleNodeClick({id:o,store:T}),l&&(t=T.getState().nodeInternals.get(o),l(e,{...t}))},onDoubleClick:g,onKeyDown:b?e=>{var t;isInputDOMNode(e)||(elementSelectionKeys.includes(e.key)&&y?((t="Escape"===e.key)&&R.current?.blur(),handleNodeClick({id:o,store:T,unselect:t})):!O&&m&&s&&Object.prototype.hasOwnProperty.call(arrowKeyDiffs,e.key)&&(T.setState({ariaLiveMessage:`Moved selected node ${e.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~n}, y: `+~~i}),F({x:arrowKeyDiffs[e.key].x,y:arrowKeyDiffs[e.key].y,isShiftPressed:e.shiftKey})))}:void 0,tabIndex:b?0:void 0,role:b?"button":void 0,"aria-describedby":O?void 0:ARIA_NODE_DESC_KEY+"-"+L,"aria-label":D,children:jsxRuntime.exports.jsx(Provider,{value:o,children:jsxRuntime.exports.jsx(z,{id:o,data:e,type:r,xPos:n,yPos:i,selected:s,isConnectable:x,sourcePosition:$,targetPosition:S,dragging:j,dragHandle:w,zIndex:C})})})};return e.displayName="NodeWrapper",react.exports.memo(e)};function createNodeTypes(n){var e={input:wrapNode(n.input||InputNode$1),default:wrapNode(n.default||DefaultNode$1),output:wrapNode(n.output||OutputNode$1),group:wrapNode(n.group||GroupNode)},t=Object.keys(n).filter(e=>!["input","default","output","group"].includes(e)).reduce((e,t)=>(e[t]=wrapNode(n[t]||DefaultNode$1),e),{});return{...e,...t}}const getPositionWithOrigin=({x:e,y:t,width:n,height:o,origin:r})=>!n||!o||(r[0]<0||r[1]<0||1<r[0]||1<r[1])?{x:e,y:t}:{x:e-n*r[0],y:t-o*r[1]},doc="undefined"!=typeof document?document:null;var useKeyPress=(o=null,r={target:doc})=>{const[e,i]=react.exports.useState(!1),a=react.exports.useRef(new Set([])),[s,l]=react.exports.useMemo(()=>{var e,t;return null!==o?(t=(e=(Array.isArray(o)?o:[o]).filter(e=>"string"==typeof e).map(e=>e.split("+"))).reduce((e,t)=>e.concat(...t),[]),[e,t]):[[],[]]},[o]);return react.exports.useEffect(()=>{if(null!==o){const e=e=>{if(isInputDOMNode(e))return!1;var t=useKeyOrCode(e.code,l);a.current.add(e[t]),isMatchingKey(s,a.current,!1)&&(e.preventDefault(),i(!0))},t=e=>{if(isInputDOMNode(e))return!1;var t=useKeyOrCode(e.code,l);isMatchingKey(s,a.current,!0)?(i(!1),a.current.clear()):a.current.delete(e[t])},n=()=>{a.current.clear(),i(!1)};return r?.target?.addEventListener("keydown",e),r?.target?.addEventListener("keyup",t),window.addEventListener("blur",n),()=>{r?.target?.removeEventListener("keydown",e),r?.target?.removeEventListener("keyup",t),window.removeEventListener("blur",n)}}},[o,i]),e};function isMatchingKey(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function useKeyOrCode(e,t){return t.includes(e)?"code":"key"}function calculateXYZPosition(e,t,n,o){var r;return e.parentNode?(e=t.get(e.parentNode),r=getNodePositionWithOrigin(e,o),calculateXYZPosition(e,t,{x:(n.x??0)+r.x,y:(n.y??0)+r.y,z:(e[internalsSymbol]?.z??0)>(n.z??0)?e[internalsSymbol]?.z??0:n.z??0},o)):n}function updateAbsoluteNodePositions(r,i,a){r.forEach(e=>{if(e.parentNode&&!r.has(e.parentNode))throw new Error(`Parent node ${e.parentNode} not found`);var t,n,o;(e.parentNode||a?.[e.id])&&({x:t,y:n,z:o}=calculateXYZPosition(e,r,{...e.position,z:e[internalsSymbol]?.z??0},i),e.positionAbsolute={x:t,y:n},e[internalsSymbol].z=o,a?.[e.id])&&(e[internalsSymbol].isParent=!0)})}function createNodeInternals(e,r,t,n){const i=new Map,a={},s=n?1e3:0;return e.forEach(e=>{var t=(isNumeric(e.zIndex)?e.zIndex:0)+(e.selected?s:0),n=r.get(e.id),o={width:n?.width,height:n?.height,...e,positionAbsolute:{x:e.position.x,y:e.position.y}};e.parentNode&&(o.parentNode=e.parentNode,a[e.parentNode]=!0),Object.defineProperty(o,internalsSymbol,{enumerable:!1,value:{handleBounds:n?.[internalsSymbol]?.handleBounds,z:t}}),i.set(e.id,o)}),updateAbsoluteNodePositions(i,t,a),i}function fitView(e,n={}){var{getNodes:e,width:t,height:o,minZoom:r,maxZoom:i,d3Zoom:a,d3Selection:s,fitViewOnInitDone:l,fitViewOnInit:c,nodeOrigin:d}=e(),l=n.initial&&!l&&c;if(a&&s&&(l||!n.initial)){var c=e().filter(t=>{var e=n.includeHiddenNodes?t.width&&t.height:!t.hidden;return n.nodes?.length?e&&n.nodes.some(e=>e.id===t.id):e}),l=c.every(e=>e.width&&e.height);if(0<c.length&&l)return e=getRectOfNodes(c,d),[l,c,d]=getTransformForBounds(e,t,o,n.minZoom??r,n.maxZoom??i,n.padding??.1),e=identity.translate(l,c).scale(d),"number"==typeof n.duration&&0<n.duration?a.transform(getD3Transition(s,n.duration),e):a.transform(s,e),!0}return!1}function handleControlledNodeSelectionChange(e,n){return e.forEach(e=>{var t=n.get(e.id);t&&n.set(t.id,{...t,[internalsSymbol]:t[internalsSymbol],selected:e.selected})}),new Map(n)}function handleControlledEdgeSelectionChange(n,e){return e.map(t=>{var e=n.find(e=>e.id===t.id);return e&&(t.selected=e.selected),t})}function updateNodesAndEdgesSelections({changedNodes:e,changedEdges:t,get:n,set:o}){var{nodeInternals:n,edges:r,onNodesChange:i,onEdgesChange:a,hasDefaultNodes:s,hasDefaultEdges:l}=n();e?.length&&(s&&o({nodeInternals:handleControlledNodeSelectionChange(e,n)}),i?.(e)),t?.length&&(l&&o({edges:handleControlledEdgeSelectionChange(t,r)}),a?.(t))}const noop=()=>{},initialViewportHelper={zoomIn:noop,zoomOut:noop,zoomTo:noop,getZoom:()=>1,setViewport:noop,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:noop,fitBounds:noop,project:e=>e,viewportInitialized:!1},selector$b=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection}),useViewportHelper=()=>{const a=useStoreApi(),{d3Zoom:s,d3Selection:l}=useStore(selector$b,shallow);return react.exports.useMemo(()=>l&&s?{zoomIn:e=>s.scaleBy(getD3Transition(l,e?.duration),1.2),zoomOut:e=>s.scaleBy(getD3Transition(l,e?.duration),1/1.2),zoomTo:(e,t)=>s.scaleTo(getD3Transition(l,t?.duration),e),getZoom:()=>a.getState().transform[2],setViewport:(e,t)=>{var[n,o,r]=a.getState().transform,n=identity.translate(e.x??n,e.y??o).scale(e.zoom??r);s.transform(getD3Transition(l,t?.duration),n)},getViewport:()=>{var[e,t,n]=a.getState().transform;return{x:e,y:t,zoom:n}},fitView:e=>fitView(a.getState,e),setCenter:(e,t,n)=>{var{width:o,height:r,maxZoom:i}=a.getState(),i=void 0!==n?.zoom?n.zoom:i,o=identity.translate(o/2-e*i,r/2-t*i).scale(i);s.transform(getD3Transition(l,n?.duration),o)},fitBounds:(e,t)=>{var{width:n,height:o,minZoom:r,maxZoom:i}=a.getState(),[e,n,o]=getTransformForBounds(e,n,o,r,i,t?.padding??.1),r=identity.translate(e,n).scale(o);s.transform(getD3Transition(l,t?.duration),r)},project:e=>{var{transform:t,snapToGrid:n,snapGrid:o}=a.getState();return pointToRendererPoint(e,t,n,o)},viewportInitialized:!0}:initialViewportHelper,[s,l])};function useReactFlow(){const e=useViewportHelper(),f=useStoreApi(),t=react.exports.useCallback(()=>f.getState().getNodes().map(e=>({...e})),[]),n=react.exports.useCallback(e=>f.getState().nodeInternals.get(e),[]),o=react.exports.useCallback(()=>{var{edges:e=[]}=f.getState();return e.map(e=>({...e}))},[]),r=react.exports.useCallback(t=>{var{edges:e=[]}=f.getState();return e.find(e=>e.id===t)},[]),i=react.exports.useCallback(e=>{var{getNodes:t,setNodes:n,hasDefaultNodes:o,onNodesChange:r}=f.getState(),t=t(),e="function"==typeof e?e(t):e;o?n(e):r&&r(0===e.length?t.map(e=>({type:"remove",id:e.id})):e.map(e=>({item:e,type:"reset"})))},[]),a=react.exports.useCallback(e=>{var{edges:t=[],setEdges:n,hasDefaultEdges:o,onEdgesChange:r}=f.getState(),e="function"==typeof e?e(t):e;o?n(e):r&&r(0===e.length?t.map(e=>({type:"remove",id:e.id})):e.map(e=>({item:e,type:"reset"})))},[]),s=react.exports.useCallback(e=>{var e=Array.isArray(e)?e:[e],{getNodes:t,setNodes:n,hasDefaultNodes:o,onNodesChange:r}=f.getState();o?n([...t(),...e]):r&&r(e.map(e=>({item:e,type:"add"})))},[]),l=react.exports.useCallback(e=>{var e=Array.isArray(e)?e:[e],{edges:t=[],setEdges:n,hasDefaultEdges:o,onEdgesChange:r}=f.getState();o?n([...t,...e]):r&&r(e.map(e=>({item:e,type:"add"})))},[]),c=react.exports.useCallback(()=>{var{getNodes:e,edges:t=[],transform:n}=f.getState(),[n,o,r]=n;return{nodes:e().map(e=>({...e})),edges:t.map(e=>({...e})),viewport:{x:n,y:o,zoom:r}}},[]),d=react.exports.useCallback(({nodes:e,edges:t})=>{const{nodeInternals:n,getNodes:o,edges:r,hasDefaultNodes:i,hasDefaultEdges:a,onNodesDelete:s,onEdgesDelete:l,onNodesChange:c,onEdgesChange:d}=f.getState(),u=(e||[]).map(e=>e.id),p=(t||[]).map(e=>e.id);var e=o().reduce((e,t)=>{var n=!u.includes(t.id)&&t.parentNode&&e.find(e=>e.id===t.parentNode);return("boolean"!=typeof t.deletable||t.deletable)&&(u.includes(t.id)||n)&&e.push(t),e},[]),t=r.filter(e=>"boolean"!=typeof e.deletable||e.deletable),g=t.filter(e=>p.includes(e.id));if(e||g){t=getConnectedEdges(e,t),g=[...g,...t];const h=g.reduce((e,t)=>(e.includes(t.id)||e.push(t.id),e),[]);(a||i)&&(a&&f.setState({edges:r.filter(e=>!h.includes(e.id))}),i)&&(e.forEach(e=>{n.delete(e.id)}),f.setState({nodeInternals:new Map(n)})),0<h.length&&(l?.(g),d)&&d(h.map(e=>({id:e,type:"remove"}))),0<e.length&&(s?.(e),c)&&(t=e.map(e=>({id:e.id,type:"remove"})),c(t))}},[]),u=react.exports.useCallback(e=>{var t=isRectObject(e),n=t?null:f.getState().nodeInternals.get(e.id);return[t?e:nodeToRect(n),n,t]},[]),p=react.exports.useCallback((t,n=!0,e)=>{const[o,r,i]=u(t);return o?(e||f.getState().getNodes()).filter(e=>{return!!(i||e.id!==r.id&&e.positionAbsolute)&&(e=nodeToRect(e),e=getOverlappingArea(e,o),n&&0<e||e>=t.width*t.height)}):[]},[]),g=react.exports.useCallback((e,t,n=!0)=>{var[o]=u(e);return!!o&&(o=getOverlappingArea(o,t),n&&0<o||o>=e.width*e.height)},[]);return react.exports.useMemo(()=>({...e,getNodes:t,getNode:n,getEdges:o,getEdge:r,setNodes:i,setEdges:a,addNodes:s,addEdges:l,toObject:c,deleteElements:d,getIntersectingNodes:p,isNodeIntersecting:g}),[e,t,n,o,r,i,a,s,l,c,d,p,g])}var useGlobalKeyHandler=({deleteKeyCode:e,multiSelectionKeyCode:t})=>{const n=useStoreApi(),o=useReactFlow()["deleteElements"],r=useKeyPress(e),i=useKeyPress(t);react.exports.useEffect(()=>{var e,t;r&&({edges:t,getNodes:e}=n.getState(),e=e().filter(e=>e.selected),t=t.filter(e=>e.selected),o({nodes:e,edges:t}),n.setState({nodesSelectionActive:!1}))},[r]),react.exports.useEffect(()=>{n.setState({multiSelectionActive:i})},[i])};function useResizeHandler(n){const o=useStoreApi();react.exports.useEffect(()=>{let e;const t=()=>{var e;n.current&&(0!==(e=getDimensions(n.current)).height&&0!==e.width||o.getState().onError?.("004",errorMessages["004"]()),o.setState({width:e.width||500,height:e.height||500}))};return t(),window.addEventListener("resize",t),n.current&&(e=new ResizeObserver(()=>t())).observe(n.current),()=>{window.removeEventListener("resize",t),e&&n.current&&e.unobserve(n.current)}},[])}const containerStyle={position:"absolute",width:"100%",height:"100%",top:0,left:0},viewChanged=(e,t)=>e.x!==t.x||e.y!==t.y||e.zoom!==t.k,eventToFlowTransform=e=>({x:e.x,y:e.y,zoom:e.k}),isWrappedWithClass=(e,t)=>e.target.closest("."+t),isRightClickPan=(e,t)=>2===t&&Array.isArray(e)&&e.includes(2),selector$a=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection,d3ZoomHandler:e.d3ZoomHandler,userSelectionActive:e.userSelectionActive}),ZoomPane=({onMove:o,onMoveStart:r,onMoveEnd:i,onPaneContextMenu:a,zoomOnScroll:s=!0,zoomOnPinch:l=!0,panOnScroll:c=!1,panOnScrollSpeed:d=.5,panOnScrollMode:u=PanOnScrollMode.Free,zoomOnDoubleClick:p=!0,elementsSelectable:e,panOnDrag:g=!0,defaultViewport:h,translateExtent:f,minZoom:m,maxZoom:y,zoomActivationKeyCode:t,preventScrolling:n=!0,children:x,noWheelClassName:b,noPanClassName:v})=>{const $=react.exports.useRef(),S=useStoreApi(),_=react.exports.useRef(!1),E=react.exports.useRef(!1),w=react.exports.useRef(null),C=react.exports.useRef({x:0,y:0,zoom:0}),{d3Zoom:N,d3Selection:j,d3ZoomHandler:I,userSelectionActive:O}=useStore(selector$a,shallow),T=useKeyPress(t),R=react.exports.useRef(0);return useResizeHandler(w),react.exports.useEffect(()=>{var e,t,n,o;w.current&&(n=w.current.getBoundingClientRect(),e=zoom().scaleExtent([m,y]).translateExtent(f),t=select(w.current).call(e),o=identity.translate(h.x,h.y).scale(clamp(h.zoom,m,y)),n=[[0,0],[n.width,n.height]],o=e.constrain()(o,n,f),e.transform(t,o),S.setState({d3Zoom:e,d3Selection:t,d3ZoomHandler:t.on("wheel.zoom"),transform:[o.x,o.y,o.k],domNode:w.current.closest(".react-flow")}))},[]),react.exports.useEffect(()=>{j&&N&&(!c||T||O?void 0!==I&&j.on("wheel.zoom",function(e,t){if(!n||isWrappedWithClass(e,b))return null;e.preventDefault(),I.call(this,e,t)}):j.on("wheel.zoom",e=>{if(isWrappedWithClass(e,b))return!1;e.preventDefault(),e.stopImmediatePropagation();var t,n,o=j.property("__zoom").k||1;e.ctrlKey&&l?(n=pointer(e),t=-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*10,t=o*Math.pow(2,t),N.scaleTo(j,t,n)):(t=1===e.deltaMode?20:1,n=u===PanOnScrollMode.Vertical?0:e.deltaX*t,e=u===PanOnScrollMode.Horizontal?0:e.deltaY*t,N.translateBy(j,-n/o*d,-e/o*d))}))},[O,c,u,j,N,I,T,l,n,b]),react.exports.useEffect(()=>{N&&N.on("start",e=>{if(!e.sourceEvent)return null;R.current=e.sourceEvent.button;var t,n=S.getState()["onViewportChangeStart"];_.current=!0,"mousedown"===e.sourceEvent?.type&&S.setState({paneDragging:!0}),(r||n)&&(t=eventToFlowTransform(e.transform),C.current=t,n?.(t),r?.(e.sourceEvent,t))})},[N,r]),react.exports.useEffect(()=>{N&&(O&&!_.current?N.on("zoom",null):O||N.on("zoom",e=>{var t,n=S.getState()["onViewportChange"];S.setState({transform:[e.transform.x,e.transform.y,e.transform.k]}),E.current=!(!a||!isRightClickPan(g,R.current??0)),(o||n)&&(t=eventToFlowTransform(e.transform),n?.(t),o?.(e.sourceEvent,t))}))},[O,N,o,g,a]),react.exports.useEffect(()=>{N&&N.on("end",e=>{if(!e.sourceEvent)return null;const t=S.getState()["onViewportChangeEnd"];if(_.current=!1,S.setState({paneDragging:!1}),a&&isRightClickPan(g,R.current??0)&&!E.current&&a(e.sourceEvent),E.current=!1,(i||t)&&viewChanged(C.current,e.transform)){const n=eventToFlowTransform(e.transform);C.current=n,clearTimeout($.current),$.current=setTimeout(()=>{t?.(n),i?.(e.sourceEvent,n)},c?150:0)}})},[N,c,g,i,a]),react.exports.useEffect(()=>{N&&N.filter(e=>{var t,n=T||s,o=l&&e.ctrlKey;return!(1!==e.button||"mousedown"!==e.type||!isWrappedWithClass(e,"react-flow__node")&&!isWrappedWithClass(e,"react-flow__edge"))||!!(g||n||c||p||l)&&!O&&!(!p&&"dblclick"===e.type||isWrappedWithClass(e,b)&&"wheel"===e.type||isWrappedWithClass(e,v)&&"wheel"!==e.type||!l&&e.ctrlKey&&"wheel"===e.type||!(n||c||o||"wheel"!==e.type)||!(g||"mousedown"!==e.type&&"touchstart"!==e.type)||Array.isArray(g)&&!g.includes(e.button)&&("mousedown"===e.type||"touchstart"===e.type)||(t=Array.isArray(g)&&g.includes(e.button)||!e.button||e.button<=1,e.ctrlKey&&"wheel"!==e.type))&&t})},[O,N,s,l,c,p,g,e,T]),jsxRuntime.exports.jsx("div",{className:"react-flow__renderer",ref:w,style:containerStyle,children:x})},selector$9=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function UserSelection(){var{userSelectionActive:e,userSelectionRect:t}=useStore(selector$9,shallow);return e&&t?jsxRuntime.exports.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}function handleParentExpand(e,t){var n,o,e=e.find(e=>e.id===t.parentNode);e&&(n=t.position.x+t.width-e.width,o=t.position.y+t.height-e.height,0<n||0<o||t.position.x<0||t.position.y<0)&&(e.style={...e.style},e.style.width=e.style.width??e.width,e.style.height=e.style.height??e.height,0<n&&(e.style.width+=n),0<o&&(e.style.height+=o),t.position.x<0&&(n=Math.abs(t.position.x),e.position.x=e.position.x-n,e.style.width+=n,t.position.x=0),t.position.y<0&&(o=Math.abs(t.position.y),e.position.y=e.position.y-o,e.style.height+=o,t.position.y=0),e.width=e.style.width,e.height=e.style.height)}function applyChanges(i,e){var t;return i.some(e=>"reset"===e.type)?i.filter(e=>"reset"===e.type).map(e=>e.item):(t=i.filter(e=>"add"===e.type).map(e=>e.item),e.reduce((e,t)=>{var n=i.filter(e=>e.id===t.id);if(0===n.length)e.push(t);else{var o={...t};for(const r of n)if(r)switch(r.type){case"select":o.selected=r.selected;break;case"position":void 0!==r.position&&(o.position=r.position),void 0!==r.positionAbsolute&&(o.positionAbsolute=r.positionAbsolute),void 0!==r.dragging&&(o.dragging=r.dragging),o.expandParent&&handleParentExpand(e,o);break;case"dimensions":void 0!==r.dimensions&&(o.width=r.dimensions.width,o.height=r.dimensions.height),void 0!==r.updateStyle&&(o.style={...o.style||{},...r.dimensions}),"boolean"==typeof r.resizing&&(o.resizing=r.resizing),o.expandParent&&handleParentExpand(e,o);break;case"remove":return e}e.push(o)}return e},t))}function applyNodeChanges(e,t){return applyChanges(e,t)}const createSelectionChange=(e,t)=>({id:e,type:"select",selected:t});function getSelectionChanges(e,o){return e.reduce((e,t)=>{var n=o.includes(t.id);return!t.selected&&n?(t.selected=!0,e.push(createSelectionChange(t.id,!0))):t.selected&&!n&&(t.selected=!1,e.push(createSelectionChange(t.id,!1))),e},[])}const wrapHandler=(t,n)=>e=>{e.target===n.current&&t?.(e)},selector$8=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging}),Pane=react.exports.memo(({isSelecting:u,selectionMode:p=SelectionMode.Full,panOnDrag:t,onSelectionStart:r,onSelectionEnd:n,onPaneClick:o,onPaneContextMenu:i,onPaneScroll:a,onPaneMouseEnter:e,onPaneMouseMove:s,onPaneMouseLeave:l,children:c})=>{const d=react.exports.useRef(null),g=useStoreApi(),h=react.exports.useRef(0),f=react.exports.useRef(0),m=react.exports.useRef(),{userSelectionActive:y,elementsSelectable:x,dragging:b}=useStore(selector$8,shallow),v=()=>{g.setState({userSelectionActive:!1,userSelectionRect:null}),h.current=0,f.current=0},$=e=>{o?.(e),g.getState().resetSelectedElements(),g.setState({nodesSelectionActive:!1})};var S=a?e=>a(e):void 0,_=x&&(u||y);return jsxRuntime.exports.jsxs("div",{className:cc(["react-flow__pane",{dragging:b,selection:u}]),onClick:_?void 0:wrapHandler($,d),onContextMenu:wrapHandler(e=>{Array.isArray(t)&&t?.includes(2)?e.preventDefault():i?.(e)},d),onWheel:wrapHandler(S,d),onMouseEnter:_?void 0:e,onMouseDown:_?e=>{var t,{resetSelectedElements:n,domNode:o}=g.getState();m.current=o?.getBoundingClientRect(),x&&u&&0===e.button&&e.target===d.current&&m.current&&({x:o,y:t}=getEventPosition(e,m.current),n(),g.setState({userSelectionRect:{width:0,height:0,startX:o,startY:t,x:o,y:t}}),r?.(e))}:void 0,onMouseMove:_?e=>{var t,n,{userSelectionRect:o,nodeInternals:r,edges:i,transform:a,onNodesChange:s,onEdgesChange:l,nodeOrigin:c,getNodes:d}=g.getState();u&&m.current&&o&&(g.setState({userSelectionActive:!0,nodesSelectionActive:!1}),e=getEventPosition(e,m.current),t=o.startX??0,n=o.startY??0,o={...o,x:e.x<t?e.x:t,y:e.y<n?e.y:n,width:Math.abs(e.x-t),height:Math.abs(e.y-n)},t=d(),e=getNodesInside(r,o,a,p===SelectionMode.Partial,!0,c),n=getConnectedEdges(e,i).map(e=>e.id),d=e.map(e=>e.id),h.current!==d.length&&(h.current=d.length,(r=getSelectionChanges(t,d)).length)&&s?.(r),f.current!==n.length&&(f.current=n.length,(a=getSelectionChanges(i,n)).length)&&l?.(a),g.setState({userSelectionRect:o}))}:s,onMouseUp:_?e=>{var t;0===e.button&&(t=g.getState()["userSelectionRect"],!y&&t&&e.target===d.current&&$(e),g.setState({nodesSelectionActive:0<h.current}),v(),n?.(e))}:void 0,onMouseLeave:_?e=>{y&&(g.setState({nodesSelectionActive:0<h.current}),n?.(e)),v()}:l,ref:d,style:containerStyle,children:[c,jsxRuntime.exports.jsx(UserSelection,{})]})}),selector$7=(Pane.displayName="Pane",e=>{var t=e.getNodes().filter(e=>e.selected);return{...getRectOfNodes(t,e.nodeOrigin),transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`,userSelectionActive:e.userSelectionActive}});function NodesSelection({onSelectionContextMenu:n,noPanClassName:e,disableKeyboardA11y:t}){const o=useStoreApi();var{width:r,height:i,x:a,y:s,transformString:l,userSelectionActive:c}=useStore(selector$7,shallow);const d=useUpdateNodePositions(),u=react.exports.useRef(null);return react.exports.useEffect(()=>{t||u.current?.focus({preventScroll:!0})},[t]),useDrag({nodeRef:u}),!c&&r&&i?(c=n?e=>{var t=o.getState().getNodes().filter(e=>e.selected);n(e,t)}:void 0,jsxRuntime.exports.jsx("div",{className:cc(["react-flow__nodesselection","react-flow__container",e]),style:{transform:l},children:jsxRuntime.exports.jsx("div",{ref:u,className:"react-flow__nodesselection-rect",onContextMenu:c,tabIndex:t?void 0:-1,onKeyDown:t?void 0:e=>{Object.prototype.hasOwnProperty.call(arrowKeyDiffs,e.key)&&d({x:arrowKeyDiffs[e.key].x,y:arrowKeyDiffs[e.key].y,isShiftPressed:e.shiftKey})},style:{width:r,height:i,top:s,left:a}})})):null}var NodesSelection$1=react.exports.memo(NodesSelection);const selector$6=e=>e.nodesSelectionActive,FlowRenderer=({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:i,onPaneScroll:a,deleteKeyCode:s,onMove:l,onMoveStart:c,onMoveEnd:d,selectionKeyCode:u,selectionOnDrag:p,selectionMode:g,onSelectionStart:h,onSelectionEnd:f,multiSelectionKeyCode:m,panActivationKeyCode:y,zoomActivationKeyCode:x,elementsSelectable:b,zoomOnScroll:v,zoomOnPinch:$,panOnScroll:S,panOnScrollSpeed:_,panOnScrollMode:E,zoomOnDoubleClick:w,panOnDrag:C,defaultViewport:N,translateExtent:j,minZoom:I,maxZoom:O,preventScrolling:T,onSelectionContextMenu:R,noWheelClassName:P,noPanClassName:k,disableKeyboardA11y:M})=>{var A=useStore(selector$6),u=useKeyPress(u),y=useKeyPress(y)||C,C=u||p&&!0!==y;return useGlobalKeyHandler({deleteKeyCode:s,multiSelectionKeyCode:m}),jsxRuntime.exports.jsx(ZoomPane,{onMove:l,onMoveStart:c,onMoveEnd:d,onPaneContextMenu:i,elementsSelectable:b,zoomOnScroll:v,zoomOnPinch:$,panOnScroll:S,panOnScrollSpeed:_,panOnScrollMode:E,zoomOnDoubleClick:w,panOnDrag:!u&&y,defaultViewport:N,translateExtent:j,minZoom:I,maxZoom:O,zoomActivationKeyCode:x,preventScrolling:T,noWheelClassName:P,noPanClassName:k,children:jsxRuntime.exports.jsxs(Pane,{onSelectionStart:h,onSelectionEnd:f,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:i,onPaneScroll:a,panOnDrag:y,isSelecting:!!C,selectionMode:g,children:[e,A&&jsxRuntime.exports.jsx(NodesSelection$1,{onSelectionContextMenu:R,noPanClassName:k,disableKeyboardA11y:M})]})})};FlowRenderer.displayName="FlowRenderer";var FlowRenderer$1=react.exports.memo(FlowRenderer);function useVisibleNodes(t){return useStore(react.exports.useCallback(e=>t?getNodesInside(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes(),[t]))}const selector$5=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,updateNodeDimensions:e.updateNodeDimensions,onError:e.onError}),NodeRenderer=d=>{const{nodesDraggable:u,nodesConnectable:p,nodesFocusable:g,elementsSelectable:h,updateNodeDimensions:t,onError:f}=useStore(selector$5,shallow);var e=useVisibleNodes(d.onlyRenderVisibleElements);const n=react.exports.useRef(),m=react.exports.useMemo(()=>{var e;return"undefined"==typeof ResizeObserver?null:(e=new ResizeObserver(e=>{e=e.map(e=>({id:e.target.getAttribute("data-id"),nodeElement:e.target,forceUpdate:!0}));t(e)}),n.current=e)},[]);return react.exports.useEffect(()=>()=>{n?.current?.disconnect()},[]),jsxRuntime.exports.jsx("div",{className:"react-flow__nodes",style:containerStyle,children:e.map(e=>{let t=e.type||"default";d.nodeTypes[t]||(f?.("003",errorMessages["003"](t)),t="default");var n=d.nodeTypes[t]||d.nodeTypes.default,o=!!(e.draggable||u&&void 0===e.draggable),r=!!(e.selectable||h&&void 0===e.selectable),i=!!(e.connectable||p&&void 0===e.connectable),a=!!(e.focusable||g&&void 0===e.focusable),s=d.nodeExtent?clampPosition(e.positionAbsolute,d.nodeExtent):e.positionAbsolute,l=s?.x??0,s=s?.y??0,c=getPositionWithOrigin({x:l,y:s,width:e.width??0,height:e.height??0,origin:d.nodeOrigin});return jsxRuntime.exports.jsx(n,{id:e.id,className:e.className,style:e.style,type:t,data:e.data,sourcePosition:e.sourcePosition||Position.Bottom,targetPosition:e.targetPosition||Position.Top,hidden:e.hidden,xPos:l,yPos:s,xPosOrigin:c.x,yPosOrigin:c.y,selectNodesOnDrag:d.selectNodesOnDrag,onClick:d.onNodeClick,onMouseEnter:d.onNodeMouseEnter,onMouseMove:d.onNodeMouseMove,onMouseLeave:d.onNodeMouseLeave,onContextMenu:d.onNodeContextMenu,onDoubleClick:d.onNodeDoubleClick,selected:!!e.selected,isDraggable:o,isSelectable:r,isConnectable:i,isFocusable:a,resizeObserver:m,dragHandle:e.dragHandle,zIndex:e[internalsSymbol]?.z??0,isParent:!!e[internalsSymbol]?.isParent,noDragClassName:d.noDragClassName,noPanClassName:d.noPanClassName,initialized:!!e.width&&!!e.height,rfId:d.rfId,disableKeyboardA11y:d.disableKeyboardA11y,ariaLabel:e.ariaLabel},e.id)})})};NodeRenderer.displayName="NodeRenderer";var NodeRenderer$1=react.exports.memo(NodeRenderer);const defaultEdgeTree=[{level:0,isMaxLevel:!0,edges:[]}];function groupEdgesByZLevel(e,r,i=!1){let a=-1;e=e.reduce((e,t)=>{var n=isNumeric(t.zIndex);let o=n?t.zIndex:0;return e[o=i?n?t.zIndex:Math.max(r.get(t.source)?.[internalsSymbol]?.z||0,r.get(t.target)?.[internalsSymbol]?.z||0):o]?e[o].push(t):e[o]=[t],a=o>a?o:a,e},{}),e=Object.entries(e).map(([e,t])=>{e=+e;return{edges:t,level:e,isMaxLevel:e===a}});return 0===e.length?defaultEdgeTree:e}function useVisibleEdges(e,o,t){return groupEdgesByZLevel(useStore(react.exports.useCallback(n=>e?n.edges.filter(e=>{var t=o.get(e.source),e=o.get(e.target);return t?.width&&t?.height&&e?.width&&e?.height&&isEdgeVisible({sourcePos:t.positionAbsolute||{x:0,y:0},targetPos:e.positionAbsolute||{x:0,y:0},sourceWidth:t.width,sourceHeight:t.height,targetWidth:e.width,targetHeight:e.height,width:n.width,height:n.height,transform:n.transform})}):n.edges,[e,o])),o,t)}const ArrowSymbol=({color:e="none",strokeWidth:t=1})=>jsxRuntime.exports.jsx("polyline",{stroke:e,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:t,fill:"none",points:"-5,-4 0,0 -5,4"}),ArrowClosedSymbol=({color:e="none",strokeWidth:t=1})=>jsxRuntime.exports.jsx("polyline",{stroke:e,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:t,fill:e,points:"-5,-4 0,0 -5,4 -5,-4"}),MarkerSymbols={[MarkerType.Arrow]:ArrowSymbol,[MarkerType.ArrowClosed]:ArrowClosedSymbol};function useMarkerSymbol(e){const t=useStoreApi();return react.exports.useMemo(()=>{return Object.prototype.hasOwnProperty.call(MarkerSymbols,e)?MarkerSymbols[e]:(t.getState().onError?.("009",errorMessages["009"](e)),null)},[e])}const Marker=({id:e,type:t,color:n,width:o=12.5,height:r=12.5,markerUnits:i="strokeWidth",strokeWidth:a,orient:s="auto-start-reverse"})=>{t=useMarkerSymbol(t);return t?jsxRuntime.exports.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:""+o,markerHeight:""+r,viewBox:"-10 -10 20 20",markerUnits:i,orient:s,refX:"0",refY:"0",children:jsxRuntime.exports.jsx(t,{color:n,strokeWidth:a})}):null},markerSelector=({defaultColor:r,rfId:i})=>e=>{const o=[];return e.edges.reduce((n,e)=>([e.markerStart,e.markerEnd].forEach(e=>{var t;e&&"object"==typeof e&&(t=getMarkerId(e,i),o.includes(t)||(n.push({id:t,color:e.color||r,...e}),o.push(t)))}),n),[]).sort((e,t)=>e.id.localeCompare(t.id))},MarkerDefinitions=({defaultColor:e,rfId:t})=>{e=useStore(react.exports.useCallback(markerSelector({defaultColor:e,rfId:t}),[e,t]),(e,n)=>!(e.length!==n.length||e.some((e,t)=>e.id!==n[t].id)));return jsxRuntime.exports.jsx("defs",{children:e.map(e=>jsxRuntime.exports.jsx(Marker,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})};MarkerDefinitions.displayName="MarkerDefinitions";var MarkerDefinitions$1=react.exports.memo(MarkerDefinitions);const selector$4=e=>({nodesConnectable:e.nodesConnectable,edgesFocusable:e.edgesFocusable,elementsSelectable:e.elementsSelectable,width:e.width,height:e.height,connectionMode:e.connectionMode,nodeInternals:e.nodeInternals,onError:e.onError}),EdgeRenderer=({defaultMarkerColor:o,onlyRenderVisibleElements:e,elevateEdgesOnSelect:t,rfId:u,edgeTypes:p,noPanClassName:g,onEdgeUpdate:h,onEdgeContextMenu:f,onEdgeMouseEnter:m,onEdgeMouseMove:y,onEdgeMouseLeave:x,onEdgeClick:b,edgeUpdaterRadius:v,onEdgeDoubleClick:$,onEdgeUpdateStart:S,onEdgeUpdateEnd:_,children:n})=>{const{edgesFocusable:E,elementsSelectable:w,width:r,height:i,connectionMode:C,nodeInternals:N,onError:j}=useStore(selector$4,shallow);e=useVisibleEdges(e,N,t);return r?jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[e.map(({level:e,edges:t,isMaxLevel:n})=>jsxRuntime.exports.jsxs("svg",{style:{zIndex:e},width:r,height:i,className:"react-flow__edges react-flow__container",children:[n&&jsxRuntime.exports.jsx(MarkerDefinitions$1,{defaultColor:o,rfId:u}),jsxRuntime.exports.jsx("g",{children:t.map(e=>{var[t,n,o]=getNodeData(N.get(e.source)),[r,i,a]=getNodeData(N.get(e.target));if(!o||!a)return null;let s=e.type||"default";p[s]||(j?.("011",errorMessages["011"](s)),s="default");var l,o=p[s]||p.default,a=C===ConnectionMode.Strict?i.target:(i.target??[]).concat(i.source??[]),i=getHandle(n.source,e.sourceHandle),n=getHandle(a,e.targetHandle),a=i?.position||Position.Bottom,c=n?.position||Position.Top,d=!!(e.focusable||E&&void 0===e.focusable);return i&&n?({sourceX:t,sourceY:r,targetX:n,targetY:l}=getEdgePositions(t,i,a,r,n,c),jsxRuntime.exports.jsx(o,{id:e.id,className:cc([e.className,g]),type:s,data:e.data,selected:!!e.selected,animated:!!e.animated,hidden:!!e.hidden,label:e.label,labelStyle:e.labelStyle,labelShowBg:e.labelShowBg,labelBgStyle:e.labelBgStyle,labelBgPadding:e.labelBgPadding,labelBgBorderRadius:e.labelBgBorderRadius,style:e.style,source:e.source,target:e.target,sourceHandleId:e.sourceHandle,targetHandleId:e.targetHandle,markerEnd:e.markerEnd,markerStart:e.markerStart,sourceX:t,sourceY:r,targetX:n,targetY:l,sourcePosition:a,targetPosition:c,elementsSelectable:w,onEdgeUpdate:h,onContextMenu:f,onMouseEnter:m,onMouseMove:y,onMouseLeave:x,onClick:b,edgeUpdaterRadius:v,onEdgeDoubleClick:$,onEdgeUpdateStart:S,onEdgeUpdateEnd:_,rfId:u,ariaLabel:e.ariaLabel,isFocusable:d,pathOptions:"pathOptions"in e?e.pathOptions:void 0,interactionWidth:e.interactionWidth},e.id)):(j?.("008",errorMessages["008"](i,e)),null)})})]},e)),n]}):null};EdgeRenderer.displayName="EdgeRenderer";var EdgeRenderer$1=react.exports.memo(EdgeRenderer);const selector$3=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function Viewport({children:e}){var t=useStore(selector$3);return jsxRuntime.exports.jsx("div",{className:"react-flow__viewport react-flow__container",style:{transform:t},children:e})}function useOnInitHandler(e){const t=useReactFlow(),n=react.exports.useRef(!1);react.exports.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const oppositePosition={[Position.Left]:Position.Right,[Position.Right]:Position.Left,[Position.Top]:Position.Bottom,[Position.Bottom]:Position.Top},ConnectionLine=({nodeId:t,handleType:e,style:n,type:o=ConnectionLineType.Bezier,CustomComponent:r,connectionStatus:i})=>{const{fromNode:a,handleId:s,toX:l,toY:c,connectionMode:d}=useStore(react.exports.useCallback(e=>({fromNode:e.nodeInternals.get(t),handleId:e.connectionHandleId,toX:(e.connectionPosition.x-e.transform[0])/e.transform[2],toY:(e.connectionPosition.y-e.transform[1])/e.transform[2],connectionMode:e.connectionMode}),[t]),shallow);var u=a?.[internalsSymbol]?.handleBounds;let p=u?.[e];if(d===ConnectionMode.Loose&&(p=p||u?.["source"===e?"target":"source"]),!a||!p)return null;var u=s?p.find(e=>e.id===s):p[0],e=u?u.x+u.width/2:(a.width??0)/2,g=u?u.y+u.height/2:a.height??0,e=(a.positionAbsolute?.x??0)+e,g=(a.positionAbsolute?.y??0)+g,h=u?.position,f=h?oppositePosition[h]:null;if(!h||!f)return null;if(r)return jsxRuntime.exports.jsx(r,{connectionLineType:o,connectionLineStyle:n,fromNode:a,fromHandle:u,fromX:e,fromY:g,toX:l,toY:c,fromPosition:h,toPosition:f,connectionStatus:i});let m="";r={sourceX:e,sourceY:g,sourcePosition:h,targetX:l,targetY:c,targetPosition:f};return o===ConnectionLineType.Bezier?[m]=getBezierPath(r):o===ConnectionLineType.Step?[m]=getSmoothStepPath({...r,borderRadius:0}):o===ConnectionLineType.SmoothStep?[m]=getSmoothStepPath(r):o===ConnectionLineType.SimpleBezier?[m]=getSimpleBezierPath(r):m=`M${e},${g} ${l},`+c,jsxRuntime.exports.jsx("path",{d:m,fill:"none",className:"react-flow__connection-path",style:n})},selector$2=(ConnectionLine.displayName="ConnectionLine",e=>({nodeId:e.connectionNodeId,handleType:e.connectionHandleType,nodesConnectable:e.nodesConnectable,connectionStatus:e.connectionStatus,width:e.width,height:e.height}));function ConnectionLineWrapper({containerStyle:e,style:t,type:n,component:o}){var{nodeId:r,handleType:i,nodesConnectable:a,width:s,height:l,connectionStatus:c}=useStore(selector$2,shallow);return r&&i&&s&&a?jsxRuntime.exports.jsx("svg",{style:e,width:s,height:l,className:"react-flow__edges react-flow__connectionline react-flow__container",children:jsxRuntime.exports.jsx("g",{className:cc(["react-flow__connection",c]),children:jsxRuntime.exports.jsx(ConnectionLine,{nodeId:r,handleType:i,style:t,type:n,CustomComponent:o,connectionStatus:c})})}):null}const GraphView=({nodeTypes:e,edgeTypes:t,onMove:n,onMoveStart:o,onMoveEnd:r,onInit:i,onNodeClick:a,onEdgeClick:s,onNodeDoubleClick:l,onEdgeDoubleClick:c,onNodeMouseEnter:d,onNodeMouseMove:u,onNodeMouseLeave:p,onNodeContextMenu:g,onSelectionContextMenu:h,onSelectionStart:f,onSelectionEnd:m,connectionLineType:y,connectionLineStyle:x,connectionLineComponent:b,connectionLineContainerStyle:v,selectionKeyCode:$,selectionOnDrag:S,selectionMode:_,multiSelectionKeyCode:E,panActivationKeyCode:w,zoomActivationKeyCode:C,deleteKeyCode:N,onlyRenderVisibleElements:j,elementsSelectable:I,selectNodesOnDrag:O,defaultViewport:T,translateExtent:A,minZoom:D,maxZoom:L,preventScrolling:B,defaultMarkerColor:F,zoomOnScroll:z,zoomOnPinch:V,panOnScroll:G,panOnScrollSpeed:H,panOnScrollMode:U,zoomOnDoubleClick:K,panOnDrag:Y,onPaneClick:W,onPaneMouseEnter:X,onPaneMouseMove:q,onPaneMouseLeave:Z,onPaneScroll:Q,onPaneContextMenu:J,onEdgeUpdate:ee,onEdgeContextMenu:te,onEdgeMouseEnter:ne,onEdgeMouseMove:oe,onEdgeMouseLeave:re,edgeUpdaterRadius:ie,onEdgeUpdateStart:ae,onEdgeUpdateEnd:se,noDragClassName:R,noWheelClassName:le,noPanClassName:P,elevateEdgesOnSelect:ce,disableKeyboardA11y:k,nodeOrigin:de,nodeExtent:ue,rfId:M})=>(useOnInitHandler(i),jsxRuntime.exports.jsx(FlowRenderer$1,{onPaneClick:W,onPaneMouseEnter:X,onPaneMouseMove:q,onPaneMouseLeave:Z,onPaneContextMenu:J,onPaneScroll:Q,deleteKeyCode:N,selectionKeyCode:$,selectionOnDrag:S,selectionMode:_,onSelectionStart:f,onSelectionEnd:m,multiSelectionKeyCode:E,panActivationKeyCode:w,zoomActivationKeyCode:C,elementsSelectable:I,onMove:n,onMoveStart:o,onMoveEnd:r,zoomOnScroll:z,zoomOnPinch:V,zoomOnDoubleClick:K,panOnScroll:G,panOnScrollSpeed:H,panOnScrollMode:U,panOnDrag:Y,defaultViewport:T,translateExtent:A,minZoom:D,maxZoom:L,onSelectionContextMenu:h,preventScrolling:B,noDragClassName:R,noWheelClassName:le,noPanClassName:P,disableKeyboardA11y:k,children:jsxRuntime.exports.jsxs(Viewport,{children:[jsxRuntime.exports.jsx(EdgeRenderer$1,{edgeTypes:t,onEdgeClick:s,onEdgeDoubleClick:c,onEdgeUpdate:ee,onlyRenderVisibleElements:j,onEdgeContextMenu:te,onEdgeMouseEnter:ne,onEdgeMouseMove:oe,onEdgeMouseLeave:re,onEdgeUpdateStart:ae,onEdgeUpdateEnd:se,edgeUpdaterRadius:ie,defaultMarkerColor:F,noPanClassName:P,elevateEdgesOnSelect:!!ce,disableKeyboardA11y:k,rfId:M,children:jsxRuntime.exports.jsx(ConnectionLineWrapper,{style:x,type:y,component:b,containerStyle:v})}),jsxRuntime.exports.jsx("div",{className:"react-flow__edgelabel-renderer"}),jsxRuntime.exports.jsx(NodeRenderer$1,{nodeTypes:e,onNodeClick:a,onNodeDoubleClick:l,onNodeMouseEnter:d,onNodeMouseMove:u,onNodeMouseLeave:p,onNodeContextMenu:g,selectNodesOnDrag:O,onlyRenderVisibleElements:j,noPanClassName:P,noDragClassName:R,disableKeyboardA11y:k,nodeOrigin:de,nodeExtent:ue,rfId:M})]})}));GraphView.displayName="GraphView";var GraphView$1=react.exports.memo(GraphView);const infiniteExtent=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],initialState$6={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:infiniteExtent,nodeExtent:infiniteExtent,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:ConnectionMode.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,multiSelectionActive:!1,connectionStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:devWarn},createRFStore=()=>createStore((d,u)=>({...initialState$6,setNodes:e=>{var{nodeInternals:t,nodeOrigin:n,elevateNodesOnSelect:o}=u();d({nodeInternals:createNodeInternals(e,t,n,o)})},getNodes:()=>Array.from(u().nodeInternals.values()),setEdges:e=>{const{defaultEdgeOptions:t={}}=u();d({edges:e.map(e=>({...t,...e}))})},setDefaultNodesAndEdges:(e,t)=>{var n=void 0!==e,o=void 0!==t,e=n?createNodeInternals(e,new Map,u().nodeOrigin,u().elevateNodesOnSelect):new Map;d({nodeInternals:e,edges:o?t:[],hasDefaultNodes:n,hasDefaultEdges:o})},updateNodeDimensions:e=>{const{onNodesChange:t,nodeInternals:r,fitViewOnInit:n,fitViewOnInitDone:o,fitViewOnInitOptions:i,domNode:a,nodeOrigin:s}=u();var l=a?.querySelector(".react-flow__viewport");if(l){l=window.getComputedStyle(l);const c=new window.DOMMatrixReadOnly(l.transform)["m22"];l=e.reduce((e,t)=>{var n,o=r.get(t.id);return o&&(n=getDimensions(t.nodeElement)).width&&n.height&&(o.width!==n.width||o.height!==n.height||t.forceUpdate)&&(r.set(o.id,{...o,[internalsSymbol]:{...o[internalsSymbol],handleBounds:{source:getHandleBounds(".source",t.nodeElement,c,s),target:getHandleBounds(".target",t.nodeElement,c,s)}},...n}),e.push({id:o.id,type:"dimensions",dimensions:n})),e},[]),e=(updateAbsoluteNodePositions(r,s),o||n&&!o&&fitView(u,{initial:!0,...i}));d({nodeInternals:new Map(r),fitViewOnInitDone:e}),0<l?.length&&t?.(l)}},updateNodePositions:(e,n=!0,o=!1)=>{var t=u()["triggerNodeChanges"];t(e.map(e=>{var t={id:e.id,type:"position",dragging:o};return n&&(t.positionAbsolute=e.positionAbsolute,t.position=e.position),t}))},triggerNodeChanges:e=>{var{onNodesChange:t,nodeInternals:n,hasDefaultNodes:o,nodeOrigin:r,getNodes:i,elevateNodesOnSelect:a}=u();e?.length&&(o&&(o=createNodeInternals(applyNodeChanges(e,i()),n,r,a),d({nodeInternals:o})),t?.(e))},addSelectedNodes:e=>{var{multiSelectionActive:t,edges:n,getNodes:o}=u();let r,i=null;t?r=e.map(e=>createSelectionChange(e,!0)):(r=getSelectionChanges(o(),e),i=getSelectionChanges(n,[])),updateNodesAndEdgesSelections({changedNodes:r,changedEdges:i,get:u,set:d})},addSelectedEdges:e=>{var{multiSelectionActive:t,edges:n,getNodes:o}=u();let r,i=null;t?r=e.map(e=>createSelectionChange(e,!0)):(r=getSelectionChanges(n,e),i=getSelectionChanges(o(),[])),updateNodesAndEdgesSelections({changedNodes:i,changedEdges:r,get:u,set:d})},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{var{edges:n,getNodes:o}=u(),t=t||n;updateNodesAndEdgesSelections({changedNodes:(e||o()).map(e=>(e.selected=!1,createSelectionChange(e.id,!1))),changedEdges:t.map(e=>createSelectionChange(e.id,!1)),get:u,set:d})},setMinZoom:e=>{var{d3Zoom:t,maxZoom:n}=u();t?.scaleExtent([e,n]),d({minZoom:e})},setMaxZoom:e=>{var{d3Zoom:t,minZoom:n}=u();t?.scaleExtent([n,e]),d({maxZoom:e})},setTranslateExtent:e=>{u().d3Zoom?.translateExtent(e),d({translateExtent:e})},resetSelectedElements:()=>{var{edges:e,getNodes:t}=u();updateNodesAndEdgesSelections({changedNodes:t().filter(e=>e.selected).map(e=>createSelectionChange(e.id,!1)),changedEdges:e.filter(e=>e.selected).map(e=>createSelectionChange(e.id,!1)),get:u,set:d})},setNodeExtent:t=>{var e=u()["nodeInternals"];e.forEach(e=>{e.positionAbsolute=clampPosition(e.position,t)}),d({nodeExtent:t,nodeInternals:new Map(e)})},panBy:e=>{var{transform:t,width:n,height:o,d3Zoom:r,d3Selection:i,translateExtent:a}=u();r&&i&&(e.x||e.y)&&(e=identity.translate(t[0]+e.x,t[1]+e.y).scale(t[2]),t=[[0,0],[n,o]],n=r?.constrain()(e,t,a),r.transform(i,n))},cancelConnection:()=>d({connectionNodeId:initialState$6.connectionNodeId,connectionHandleId:initialState$6.connectionHandleId,connectionHandleType:initialState$6.connectionHandleType,connectionStatus:initialState$6.connectionStatus}),reset:()=>d({...initialState$6})})),ReactFlowProvider=({children:e})=>{var t=react.exports.useRef(null);return t.current||(t.current=createRFStore()),jsxRuntime.exports.jsx(Provider$1,{value:t.current,children:e})},Wrapper=(ReactFlowProvider.displayName="ReactFlowProvider",({children:e})=>{return react.exports.useContext(StoreContext)?jsxRuntime.exports.jsx(jsxRuntime.exports.Fragment,{children:e}):jsxRuntime.exports.jsx(ReactFlowProvider,{children:e})});function useNodeOrEdgeTypes(e,t){return react.exports.useRef(null),react.exports.useMemo(()=>t(e),[e])}Wrapper.displayName="ReactFlowWrapper";const defaultNodeTypes={input:InputNode$1,default:DefaultNode$1,output:OutputNode$1,group:GroupNode},defaultEdgeTypes={default:BezierEdge,straight:StraightEdge,step:StepEdge,smoothstep:SmoothStepEdge,simplebezier:SimpleBezierEdge},initNodeOrigin=[0,0],initSnapGrid=[15,15],initDefaultViewport={x:0,y:0,zoom:1},wrapperStyle={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},ReactFlow=react.exports.forwardRef(({nodes:e,edges:t,defaultNodes:n,defaultEdges:o,className:r,nodeTypes:i=defaultNodeTypes,edgeTypes:a=defaultEdgeTypes,onNodeClick:s,onEdgeClick:l,onInit:c,onMove:d,onMoveStart:u,onMoveEnd:p,onConnect:g,onConnectStart:h,onConnectEnd:f,onClickConnectStart:m,onClickConnectEnd:y,onNodeMouseEnter:x,onNodeMouseMove:b,onNodeMouseLeave:v,onNodeContextMenu:$,onNodeDoubleClick:S,onNodeDragStart:_,onNodeDrag:E,onNodeDragStop:w,onNodesDelete:C,onEdgesDelete:A,onSelectionChange:D,onSelectionDragStart:L,onSelectionDrag:B,onSelectionDragStop:F,onSelectionContextMenu:z,onSelectionStart:V,onSelectionEnd:G,connectionMode:H=ConnectionMode.Strict,connectionLineType:U=ConnectionLineType.Bezier,connectionLineStyle:K,connectionLineComponent:Y,connectionLineContainerStyle:W,deleteKeyCode:X="Backspace",selectionKeyCode:q="Shift",selectionOnDrag:Z=!1,selectionMode:Q=SelectionMode.Full,panActivationKeyCode:J="Space",multiSelectionKeyCode:ee="Meta",zoomActivationKeyCode:te="Meta",snapToGrid:ne=!1,snapGrid:oe=initSnapGrid,onlyRenderVisibleElements:re=!1,selectNodesOnDrag:ie=!0,nodesDraggable:ae,nodesConnectable:se,nodesFocusable:le,nodeOrigin:N=initNodeOrigin,edgesFocusable:ce,elementsSelectable:de,defaultViewport:ue=initDefaultViewport,minZoom:j=.5,maxZoom:I=2,translateExtent:O=infiniteExtent,preventScrolling:pe=!0,nodeExtent:T,defaultMarkerColor:ge="#b1b1b7",zoomOnScroll:he=!0,zoomOnPinch:fe=!0,panOnScroll:me=!1,panOnScrollSpeed:ye=.5,panOnScrollMode:xe=PanOnScrollMode.Free,zoomOnDoubleClick:be=!0,panOnDrag:ve=!0,onPaneClick:$e,onPaneMouseEnter:Se,onPaneMouseMove:_e,onPaneMouseLeave:Ee,onPaneScroll:we,onPaneContextMenu:Ce,children:Ne,onEdgeUpdate:je,onEdgeContextMenu:Ie,onEdgeDoubleClick:Oe,onEdgeMouseEnter:Te,onEdgeMouseMove:Re,onEdgeMouseLeave:Pe,onEdgeUpdateStart:ke,onEdgeUpdateEnd:Me,edgeUpdaterRadius:Ae=10,onNodesChange:De,onEdgesChange:Le,noDragClassName:Be="nodrag",noWheelClassName:Fe="nowheel",noPanClassName:R="nopan",fitView:ze=!1,fitViewOptions:Ve,connectOnClick:Ge=!0,attributionPosition:He,proOptions:Ue,defaultEdgeOptions:Ke,elevateNodesOnSelect:Ye=!0,elevateEdgesOnSelect:We=!1,disableKeyboardA11y:P=!1,autoPanOnConnect:Xe=!0,autoPanOnNodeDrag:qe=!0,connectionRadius:Ze=20,onError:Qe,style:Je,id:k,...et},tt)=>{var i=useNodeOrEdgeTypes(i,createNodeTypes),a=useNodeOrEdgeTypes(a,createEdgeTypes),M=k||"1";return jsxRuntime.exports.jsx("div",{...et,style:{...Je,...wrapperStyle},ref:tt,className:cc(["react-flow",r]),"data-testid":"rf__wrapper",id:k,children:jsxRuntime.exports.jsxs(Wrapper,{children:[jsxRuntime.exports.jsx(GraphView$1,{onInit:c,onMove:d,onMoveStart:u,onMoveEnd:p,onNodeClick:s,onEdgeClick:l,onNodeMouseEnter:x,onNodeMouseMove:b,onNodeMouseLeave:v,onNodeContextMenu:$,onNodeDoubleClick:S,nodeTypes:i,edgeTypes:a,connectionLineType:U,connectionLineStyle:K,connectionLineComponent:Y,connectionLineContainerStyle:W,selectionKeyCode:q,selectionOnDrag:Z,selectionMode:Q,deleteKeyCode:X,multiSelectionKeyCode:ee,panActivationKeyCode:J,zoomActivationKeyCode:te,onlyRenderVisibleElements:re,selectNodesOnDrag:ie,defaultViewport:ue,translateExtent:O,minZoom:j,maxZoom:I,preventScrolling:pe,zoomOnScroll:he,zoomOnPinch:fe,zoomOnDoubleClick:be,panOnScroll:me,panOnScrollSpeed:ye,panOnScrollMode:xe,panOnDrag:ve,onPaneClick:$e,onPaneMouseEnter:Se,onPaneMouseMove:_e,onPaneMouseLeave:Ee,onPaneScroll:we,onPaneContextMenu:Ce,onSelectionContextMenu:z,onSelectionStart:V,onSelectionEnd:G,onEdgeUpdate:je,onEdgeContextMenu:Ie,onEdgeDoubleClick:Oe,onEdgeMouseEnter:Te,onEdgeMouseMove:Re,onEdgeMouseLeave:Pe,onEdgeUpdateStart:ke,onEdgeUpdateEnd:Me,edgeUpdaterRadius:Ae,defaultMarkerColor:ge,noDragClassName:Be,noWheelClassName:Fe,noPanClassName:R,elevateEdgesOnSelect:We,rfId:M,disableKeyboardA11y:P,nodeOrigin:N,nodeExtent:T}),jsxRuntime.exports.jsx(StoreUpdater,{nodes:e,edges:t,defaultNodes:n,defaultEdges:o,onConnect:g,onConnectStart:h,onConnectEnd:f,onClickConnectStart:m,onClickConnectEnd:y,nodesDraggable:ae,nodesConnectable:se,nodesFocusable:le,edgesFocusable:ce,elementsSelectable:de,elevateNodesOnSelect:Ye,minZoom:j,maxZoom:I,nodeExtent:T,onNodesChange:De,onEdgesChange:Le,snapToGrid:ne,snapGrid:oe,connectionMode:H,translateExtent:O,connectOnClick:Ge,defaultEdgeOptions:Ke,fitView:ze,fitViewOptions:Ve,onNodesDelete:C,onEdgesDelete:A,onNodeDragStart:_,onNodeDrag:E,onNodeDragStop:w,onSelectionDrag:B,onSelectionDragStart:L,onSelectionDragStop:F,noPanClassName:R,nodeOrigin:N,rfId:M,autoPanOnConnect:Xe,autoPanOnNodeDrag:qe,onError:Qe,connectionRadius:Ze}),jsxRuntime.exports.jsx(Wrapper$1,{onSelectionChange:D}),Ne,jsxRuntime.exports.jsx(Attribution,{proOptions:Ue,position:He}),jsxRuntime.exports.jsx(A11yDescriptions,{rfId:M,disableKeyboardA11y:P})]})})});function PlusIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:jsxRuntime.exports.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function MinusIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:jsxRuntime.exports.jsx("path",{d:"M0 0h32v4.2H0z"})})}function FitViewIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:jsxRuntime.exports.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function LockIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:jsxRuntime.exports.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function UnlockIcon(){return jsxRuntime.exports.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:jsxRuntime.exports.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}ReactFlow.displayName="ReactFlow";const ControlButton=({children:e,className:t,...n})=>jsxRuntime.exports.jsx("button",{type:"button",className:cc(["react-flow__controls-button",t]),...n,children:e}),isInteractiveSelector=(ControlButton.displayName="ControlButton",e=>e.nodesDraggable&&e.nodesConnectable&&e.elementsSelectable),Controls=({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:r,onZoomIn:i,onZoomOut:a,onFitView:s,onInteractiveChange:l,className:c,children:d,position:u="bottom-left"})=>{const p=useStoreApi(),[g,h]=react.exports.useState(!1),f=useStore(isInteractiveSelector),{zoomIn:m,zoomOut:y,fitView:x}=useReactFlow();return react.exports.useEffect(()=>{h(!0)},[]),g?jsxRuntime.exports.jsxs(Panel,{className:cc(["react-flow__controls",c]),position:u,style:e,children:[t&&jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(ControlButton,{onClick:()=>{m(),i?.()},className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",children:jsxRuntime.exports.jsx(PlusIcon,{})}),jsxRuntime.exports.jsx(ControlButton,{onClick:()=>{y(),a?.()},className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",children:jsxRuntime.exports.jsx(MinusIcon,{})})]}),n&&jsxRuntime.exports.jsx(ControlButton,{className:"react-flow__controls-fitview",onClick:()=>{x(r),s?.()},title:"fit view","aria-label":"fit view",children:jsxRuntime.exports.jsx(FitViewIcon,{})}),o&&jsxRuntime.exports.jsx(ControlButton,{className:"react-flow__controls-interactive",onClick:()=>{p.setState({nodesDraggable:!f,nodesConnectable:!f,elementsSelectable:!f}),l?.(!f)},title:"toggle interactivity","aria-label":"toggle interactivity",children:f?jsxRuntime.exports.jsx(UnlockIcon,{}):jsxRuntime.exports.jsx(LockIcon,{})}),d]}):null};Controls.displayName="Controls";var BackgroundVariant,Controls$1=react.exports.memo(Controls);function LinePattern({color:e,dimensions:t,lineWidth:n}){return jsxRuntime.exports.jsx("path",{stroke:e,strokeWidth:n,d:`M${t[0]/2} 0 V${t[1]} M0 ${t[1]/2} H`+t[0]})}function DotPattern({color:e,radius:t}){return jsxRuntime.exports.jsx("circle",{cx:t,cy:t,r:t,fill:e})}!function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"}(BackgroundVariant=BackgroundVariant||{});const defaultColor={[BackgroundVariant.Dots]:"#91919a",[BackgroundVariant.Lines]:"#eee",[BackgroundVariant.Cross]:"#e2e2e2"},defaultSize={[BackgroundVariant.Dots]:1,[BackgroundVariant.Lines]:1,[BackgroundVariant.Cross]:6},selector=e=>({transform:e.transform,patternId:"pattern-"+e.rfId});function Background({variant:e=BackgroundVariant.Dots,gap:t=20,size:n,lineWidth:o=1,color:r,style:i,className:a}){var s=react.exports.useRef(null),{transform:l,patternId:c}=useStore(selector,shallow),r=r||defaultColor[e],n=n||defaultSize[e],d=e===BackgroundVariant.Dots,e=e===BackgroundVariant.Cross,t=Array.isArray(t)?t:[t,t],t=[t[0]*l[2]||1,t[1]*l[2]||1],n=n*l[2],e=e?[n,n]:t,u=d?[n/2,n/2]:[e[0]/2,e[1]/2];return jsxRuntime.exports.jsxs("svg",{className:cc(["react-flow__background",a]),style:{...i,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:s,children:[jsxRuntime.exports.jsx("pattern",{id:c,x:l[0]%t[0],y:l[1]%t[1],width:t[0],height:t[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${u[0]},-${u[1]})`,children:d?jsxRuntime.exports.jsx(DotPattern,{color:r,radius:n/2}):jsxRuntime.exports.jsx(LinePattern,{dimensions:e,color:r,lineWidth:o})}),jsxRuntime.exports.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${c})`})]})}Background.displayName="Background";var match,version,store,wmget,wmhas,wmset,set,get,has,STATE,activeXDocument,IteratorPrototype$2,PrototypeOfArrayIteratorPrototype,arrayIterator,Background$1=react.exports.memo(Background),commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},check=function(e){return e&&e.Math==Math&&e},global$d=check("object"==typeof globalThis&&globalThis)||check("object"==typeof window&&window)||check("object"==typeof self&&self)||check("object"==typeof commonjsGlobal&&commonjsGlobal)||function(){return this}()||Function("return this")(),objectGetOwnPropertyDescriptor={},fails$e=function(e){try{return!!e()}catch(e){return!0}},fails$d=fails$e,descriptors=!fails$e(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}),fails$c=fails$e,functionBindNative=!fails$e(function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}),NATIVE_BIND$1=functionBindNative,call$6=Function.prototype.call,functionCall=NATIVE_BIND$1?call$6.bind(call$6):function(){return call$6.apply(call$6,arguments)},objectPropertyIsEnumerable={},$propertyIsEnumerable={}.propertyIsEnumerable,getOwnPropertyDescriptor$2=Object.getOwnPropertyDescriptor,NASHORN_BUG=getOwnPropertyDescriptor$2&&!$propertyIsEnumerable.call({1:2},1),createPropertyDescriptor$3=(objectPropertyIsEnumerable.f=NASHORN_BUG?function(e){e=getOwnPropertyDescriptor$2(this,e);return!!e&&e.enumerable}:$propertyIsEnumerable,function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}),NATIVE_BIND=functionBindNative,FunctionPrototype$1=Function.prototype,bind=FunctionPrototype$1.bind,call$5=FunctionPrototype$1.call,uncurryThis$f=NATIVE_BIND&&bind.bind(call$5,call$5),functionUncurryThis=NATIVE_BIND?function(e){return e&&uncurryThis$f(e)}:function(e){return e&&function(){return call$5.apply(e,arguments)}},uncurryThis$e=functionUncurryThis,toString$6=uncurryThis$e({}.toString),stringSlice$2=uncurryThis$e("".slice),classofRaw$1=function(e){return stringSlice$2(toString$6(e),8,-1)},uncurryThis$d=functionUncurryThis,fails$b=fails$e,classof$4=classofRaw$1,$Object$4=Object,split=functionUncurryThis("".split),indexedObject=fails$b(function(){return!$Object$4("z").propertyIsEnumerable(0)})?function(e){return"String"==classof$4(e)?split(e,""):$Object$4(e)}:$Object$4,$TypeError$8=TypeError,requireObjectCoercible$5=function(e){if(null==e)throw $TypeError$8("Can't call method on "+e);return e},IndexedObject$2=indexedObject,requireObjectCoercible$4=requireObjectCoercible$5,toIndexedObject$5=function(e){return IndexedObject$2(requireObjectCoercible$4(e))},isCallable$g=function(e){return"function"==typeof e},isCallable$f=isCallable$g,isObject$6=function(e){return"object"==typeof e?null!==e:isCallable$f(e)},global$c=global$d,isCallable$e=isCallable$g,aFunction=function(e){return isCallable$e(e)?e:void 0},getBuiltIn$4=function(e,t){return arguments.length<2?aFunction(global$c[e]):global$c[e]&&global$c[e][t]},uncurryThis$c=functionUncurryThis,objectIsPrototypeOf=functionUncurryThis({}.isPrototypeOf),getBuiltIn$3=getBuiltIn$4,engineUserAgent=getBuiltIn$4("navigator","userAgent")||"",global$b=global$d,userAgent=engineUserAgent,process=global$b.process,Deno=global$b.Deno,versions=process&&process.versions||Deno&&Deno.version,v8=versions&&versions.v8,engineV8Version=version=!(version=v8?0<(match=v8.split("."))[0]&&match[0]<4?1:+(match[0]+match[1]):version)&&userAgent&&(!(match=userAgent.match(/Edge\/(\d+)/))||74<=match[1])&&(match=userAgent.match(/Chrome\/(\d+)/))?+match[1]:version,V8_VERSION=engineV8Version,fails$a=fails$e,nativeSymbol=!!Object.getOwnPropertySymbols&&!fails$a(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&V8_VERSION&&V8_VERSION<41}),NATIVE_SYMBOL$2=nativeSymbol,useSymbolAsUid=nativeSymbol&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,getBuiltIn$2=getBuiltIn$4,isCallable$d=isCallable$g,isPrototypeOf$1=objectIsPrototypeOf,USE_SYMBOL_AS_UID$1=useSymbolAsUid,$Object$3=Object,isSymbol$2=useSymbolAsUid?function(e){return"symbol"==typeof e}:function(e){var t=getBuiltIn$2("Symbol");return isCallable$d(t)&&isPrototypeOf$1(t.prototype,$Object$3(e))},$String$3=String,tryToString$1=function(e){try{return $String$3(e)}catch(e){return"Object"}},isCallable$c=isCallable$g,tryToString=tryToString$1,$TypeError$7=TypeError,aCallable$2=function(e){if(isCallable$c(e))return e;throw $TypeError$7(tryToString(e)+" is not a function")},aCallable$1=aCallable$2,getMethod$1=function(e,t){e=e[t];return null==e?void 0:aCallable$1(e)},call$4=functionCall,isCallable$b=isCallable$g,isObject$5=isObject$6,$TypeError$6=TypeError,ordinaryToPrimitive$1=function(e,t){var n,o;if("string"===t&&isCallable$b(n=e.toString)&&!isObject$5(o=call$4(n,e)))return o;if(isCallable$b(n=e.valueOf)&&!isObject$5(o=call$4(n,e)))return o;if("string"!==t&&isCallable$b(n=e.toString)&&!isObject$5(o=call$4(n,e)))return o;throw $TypeError$6("Can't convert object to primitive value")},shared$3={exports:{}},global$a=global$d,defineProperty$6=Object.defineProperty,defineGlobalProperty$3=function(t,n){try{defineProperty$6(global$a,t,{value:n,configurable:!0,writable:!0})}catch(e){global$a[t]=n}return n},global$9=global$d,defineGlobalProperty$2=defineGlobalProperty$3,SHARED="__core-js_shared__",store$3=global$d[SHARED]||defineGlobalProperty$2(SHARED,{}),sharedStore=store$3,store$2=sharedStore,requireObjectCoercible$3=((shared$3.exports=function(e,t){return store$2[e]||(store$2[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.24.1",mode:"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.24.1/LICENSE",source:"https://github.com/zloirock/core-js"}),requireObjectCoercible$5),$Object$2=Object,toObject$4=function(e){return $Object$2(requireObjectCoercible$3(e))},uncurryThis$b=functionUncurryThis,toObject$3=toObject$4,hasOwnProperty=functionUncurryThis({}.hasOwnProperty),hasOwnProperty_1=Object.hasOwn||function(e,t){return hasOwnProperty(toObject$3(e),t)},uncurryThis$a=functionUncurryThis,id=0,postfix=Math.random(),toString$5=uncurryThis$a(1..toString),uid$2=function(e){return"Symbol("+(void 0===e?"":e)+")_"+toString$5(++id+postfix,36)},global$8=global$d,shared$2=shared$3.exports,hasOwn$9=hasOwnProperty_1,uid$1=uid$2,NATIVE_SYMBOL$1=nativeSymbol,USE_SYMBOL_AS_UID=useSymbolAsUid,WellKnownSymbolsStore=shared$2("wks"),Symbol$1=global$8.Symbol,symbolFor=Symbol$1&&Symbol$1.for,createWellKnownSymbol=USE_SYMBOL_AS_UID?Symbol$1:Symbol$1&&Symbol$1.withoutSetter||uid$1,wellKnownSymbol$a=function(e){var t;return hasOwn$9(WellKnownSymbolsStore,e)&&(NATIVE_SYMBOL$1||"string"==typeof WellKnownSymbolsStore[e])||(t="Symbol."+e,NATIVE_SYMBOL$1&&hasOwn$9(Symbol$1,e)?WellKnownSymbolsStore[e]=Symbol$1[e]:WellKnownSymbolsStore[e]=(USE_SYMBOL_AS_UID&&symbolFor?symbolFor:createWellKnownSymbol)(t)),WellKnownSymbolsStore[e]},call$3=functionCall,isObject$4=isObject$6,isSymbol$1=isSymbol$2,getMethod=getMethod$1,ordinaryToPrimitive=ordinaryToPrimitive$1,wellKnownSymbol$9=wellKnownSymbol$a,$TypeError$5=TypeError,TO_PRIMITIVE=wellKnownSymbol$a("toPrimitive"),toPrimitive$1=function(e,t){if(!isObject$4(e)||isSymbol$1(e))return e;var n=getMethod(e,TO_PRIMITIVE);if(n){if(n=call$3(n,e,t=void 0===t?"default":t),!isObject$4(n)||isSymbol$1(n))return n;throw $TypeError$5("Can't convert object to primitive value")}return ordinaryToPrimitive(e,t=void 0===t?"number":t)},toPrimitive=toPrimitive$1,isSymbol=isSymbol$2,toPropertyKey$2=function(e){e=toPrimitive(e,"string");return isSymbol(e)?e:e+""},global$7=global$d,isObject$3=isObject$6,document$1=global$d.document,EXISTS$1=isObject$3(document$1)&&isObject$3(document$1.createElement),documentCreateElement$2=function(e){return EXISTS$1?document$1.createElement(e):{}},DESCRIPTORS$a=descriptors,fails$9=fails$e,createElement=documentCreateElement$2,ie8DomDefine=!descriptors&&!fails$e(function(){return 7!=Object.defineProperty(createElement("div"),"a",{get:function(){return 7}}).a}),DESCRIPTORS$9=descriptors,call$2=functionCall,propertyIsEnumerableModule$1=objectPropertyIsEnumerable,createPropertyDescriptor$2=createPropertyDescriptor$3,toIndexedObject$4=toIndexedObject$5,toPropertyKey$1=toPropertyKey$2,hasOwn$8=hasOwnProperty_1,IE8_DOM_DEFINE$1=ie8DomDefine,$getOwnPropertyDescriptor$1=Object.getOwnPropertyDescriptor,objectDefineProperty=(objectGetOwnPropertyDescriptor.f=DESCRIPTORS$9?$getOwnPropertyDescriptor$1:function(e,t){if(e=toIndexedObject$4(e),t=toPropertyKey$1(t),IE8_DOM_DEFINE$1)try{return $getOwnPropertyDescriptor$1(e,t)}catch(e){}if(hasOwn$8(e,t))return createPropertyDescriptor$2(!call$2(propertyIsEnumerableModule$1.f,e,t),e[t])},{}),DESCRIPTORS$8=descriptors,fails$8=fails$e,v8PrototypeDefineBug=descriptors&&fails$e(function(){return 42!=Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype}),isObject$2=isObject$6,$String$2=String,$TypeError$4=TypeError,anObject$5=function(e){if(isObject$2(e))return e;throw $TypeError$4($String$2(e)+" is not an object")},DESCRIPTORS$7=descriptors,IE8_DOM_DEFINE=ie8DomDefine,V8_PROTOTYPE_DEFINE_BUG$1=v8PrototypeDefineBug,anObject$4=anObject$5,toPropertyKey=toPropertyKey$2,$TypeError$3=TypeError,$defineProperty=Object.defineProperty,$getOwnPropertyDescriptor=Object.getOwnPropertyDescriptor,ENUMERABLE="enumerable",CONFIGURABLE$1="configurable",WRITABLE="writable",DESCRIPTORS$6=(objectDefineProperty.f=DESCRIPTORS$7?V8_PROTOTYPE_DEFINE_BUG$1?function(e,t,n){var o;return anObject$4(e),t=toPropertyKey(t),anObject$4(n),"function"==typeof e&&"prototype"===t&&"value"in n&&WRITABLE in n&&!n[WRITABLE]&&(o=$getOwnPropertyDescriptor(e,t))&&o[WRITABLE]&&(e[t]=n.value,n={configurable:(CONFIGURABLE$1 in n?n:o)[CONFIGURABLE$1],enumerable:(ENUMERABLE in n?n:o)[ENUMERABLE],writable:!1}),$defineProperty(e,t,n)}:$defineProperty:function(e,t,n){if(anObject$4(e),t=toPropertyKey(t),anObject$4(n),IE8_DOM_DEFINE)try{return $defineProperty(e,t,n)}catch(e){}if("get"in n||"set"in n)throw $TypeError$3("Accessors not supported");return"value"in n&&(e[t]=n.value),e},descriptors),definePropertyModule$3=objectDefineProperty,createPropertyDescriptor$1=createPropertyDescriptor$3,createNonEnumerableProperty$4=DESCRIPTORS$6?function(e,t,n){return definePropertyModule$3.f(e,t,createPropertyDescriptor$1(1,n))}:function(e,t,n){return e[t]=n,e},makeBuiltIn$2={exports:{}},DESCRIPTORS$5=descriptors,hasOwn$7=hasOwnProperty_1,FunctionPrototype=Function.prototype,getDescriptor=DESCRIPTORS$5&&Object.getOwnPropertyDescriptor,EXISTS=hasOwn$7(FunctionPrototype,"name"),PROPER=EXISTS&&"something"===function(){}.name,CONFIGURABLE=EXISTS&&(!DESCRIPTORS$5||getDescriptor(FunctionPrototype,"name").configurable),functionName={EXISTS:EXISTS,PROPER:PROPER,CONFIGURABLE:CONFIGURABLE},uncurryThis$9=functionUncurryThis,isCallable$a=isCallable$g,store$1=sharedStore,functionToString=functionUncurryThis(Function.toString),inspectSource$2=(isCallable$a(store$1.inspectSource)||(store$1.inspectSource=function(e){return functionToString(e)}),store$1.inspectSource),global$6=global$d,isCallable$9=isCallable$g,inspectSource$1=inspectSource$2,WeakMap$1=global$d.WeakMap,nativeWeakMap=isCallable$9(WeakMap$1)&&/native code/.test(inspectSource$1(WeakMap$1)),shared$1=shared$3.exports,uid=uid$2,keys=shared$1("keys"),sharedKey$3=function(e){return keys[e]||(keys[e]=uid(e))},hiddenKeys$4={},NATIVE_WEAK_MAP=nativeWeakMap,global$5=global$d,uncurryThis$8=functionUncurryThis,isObject$1=isObject$6,createNonEnumerableProperty$3=createNonEnumerableProperty$4,hasOwn$6=hasOwnProperty_1,shared=sharedStore,sharedKey$2=sharedKey$3,hiddenKeys$3=hiddenKeys$4,OBJECT_ALREADY_INITIALIZED="Object already initialized",TypeError$1=global$5.TypeError,WeakMap=global$5.WeakMap,enforce=function(e){return has(e)?get(e):set(e,{})},getterFor=function(t){return function(e){if(isObject$1(e)&&(e=get(e)).type===t)return e;throw TypeError$1("Incompatible receiver, "+t+" required")}},internalState=(has=NATIVE_WEAK_MAP||shared.state?(store=shared.state||(shared.state=new WeakMap),wmget=uncurryThis$8(store.get),wmhas=uncurryThis$8(store.has),wmset=uncurryThis$8(store.set),set=function(e,t){if(wmhas(store,e))throw new TypeError$1(OBJECT_ALREADY_INITIALIZED);return t.facade=e,wmset(store,e,t),t},get=function(e){return wmget(store,e)||{}},function(e){return wmhas(store,e)}):(STATE=sharedKey$2("state"),hiddenKeys$3[STATE]=!0,set=function(e,t){if(hasOwn$6(e,STATE))throw new TypeError$1(OBJECT_ALREADY_INITIALIZED);return t.facade=e,createNonEnumerableProperty$3(e,STATE,t),t},get=function(e){return hasOwn$6(e,STATE)?e[STATE]:{}},function(e){return hasOwn$6(e,STATE)}),{set:set,get:get,has:has,enforce:enforce,getterFor:getterFor}),fails$7=fails$e,isCallable$8=isCallable$g,hasOwn$5=hasOwnProperty_1,DESCRIPTORS$4=descriptors,CONFIGURABLE_FUNCTION_NAME$1=functionName.CONFIGURABLE,inspectSource=inspectSource$2,InternalStateModule$1=internalState,enforceInternalState=InternalStateModule$1.enforce,getInternalState$1=InternalStateModule$1.get,defineProperty$5=Object.defineProperty,CONFIGURABLE_LENGTH=DESCRIPTORS$4&&!fails$7(function(){return 8!==defineProperty$5(function(){},"length",{value:8}).length}),TEMPLATE=String(String).split("String"),makeBuiltIn$1=makeBuiltIn$2.exports=function(e,t,n){"Symbol("===String(t).slice(0,7)&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!hasOwn$5(e,"name")||CONFIGURABLE_FUNCTION_NAME$1&&e.name!==t)&&(DESCRIPTORS$4?defineProperty$5(e,"name",{value:t,configurable:!0}):e.name=t),CONFIGURABLE_LENGTH&&n&&hasOwn$5(n,"arity")&&e.length!==n.arity&&defineProperty$5(e,"length",{value:n.arity});try{n&&hasOwn$5(n,"constructor")&&n.constructor?DESCRIPTORS$4&&defineProperty$5(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}n=enforceInternalState(e);return hasOwn$5(n,"source")||(n.source=TEMPLATE.join("string"==typeof t?t:"")),e},isCallable$7=(Function.prototype.toString=makeBuiltIn$1(function(){return isCallable$8(this)&&getInternalState$1(this).source||inspectSource(this)},"toString"),isCallable$g),definePropertyModule$2=objectDefineProperty,makeBuiltIn=makeBuiltIn$2.exports,defineGlobalProperty$1=defineGlobalProperty$3,defineBuiltIn$3=function(e,t,n,o){var r=(o=o||{}).enumerable,i=void 0!==o.name?o.name:t;if(isCallable$7(n)&&makeBuiltIn(n,i,o),o.global)r?e[t]=n:defineGlobalProperty$1(t,n);else{try{o.unsafe?e[t]&&(r=!0):delete e[t]}catch(e){}r?e[t]=n:definePropertyModule$2.f(e,t,{value:n,enumerable:!1,configurable:!o.nonConfigurable,writable:!o.nonWritable})}return e},objectGetOwnPropertyNames={},ceil=Math.ceil,floor=Math.floor,mathTrunc=Math.trunc||function(e){e=+e;return(0<e?floor:ceil)(e)},trunc=mathTrunc,toIntegerOrInfinity$2=function(e){e=+e;return e!=e||0==e?0:trunc(e)},toIntegerOrInfinity$1=toIntegerOrInfinity$2,max=Math.max,min$2=Math.min,toAbsoluteIndex$1=function(e,t){e=toIntegerOrInfinity$1(e);return e<0?max(e+t,0):min$2(e,t)},toIntegerOrInfinity=toIntegerOrInfinity$2,min$1=Math.min,toLength$2=function(e){return 0<e?min$1(toIntegerOrInfinity(e),9007199254740991):0},toLength$1=toLength$2,lengthOfArrayLike$2=function(e){return toLength$1(e.length)},toIndexedObject$3=toIndexedObject$5,toAbsoluteIndex=toAbsoluteIndex$1,lengthOfArrayLike$1=lengthOfArrayLike$2,createMethod$2=function(s){return function(e,t,n){var o,r=toIndexedObject$3(e),i=lengthOfArrayLike$1(r),a=toAbsoluteIndex(n,i);if(s&&t!=t){for(;a<i;)if((o=r[a++])!=o)return!0}else for(;a<i;a++)if((s||a in r)&&r[a]===t)return s||a||0;return!s&&-1}},arrayIncludes={includes:createMethod$2(!0),indexOf:createMethod$2(!1)},uncurryThis$7=functionUncurryThis,hasOwn$4=hasOwnProperty_1,toIndexedObject$2=toIndexedObject$5,indexOf=arrayIncludes.indexOf,hiddenKeys$2=hiddenKeys$4,push=uncurryThis$7([].push),objectKeysInternal=function(e,t){var n,o=toIndexedObject$2(e),r=0,i=[];for(n in o)!hasOwn$4(hiddenKeys$2,n)&&hasOwn$4(o,n)&&push(i,n);for(;t.length>r;)!hasOwn$4(o,n=t[r++])||~indexOf(i,n)||push(i,n);return i},enumBugKeys$3=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],internalObjectKeys$1=objectKeysInternal,enumBugKeys$2=enumBugKeys$3,hiddenKeys$1=enumBugKeys$3.concat("length","prototype"),objectGetOwnPropertySymbols=(objectGetOwnPropertyNames.f=Object.getOwnPropertyNames||function(e){return internalObjectKeys$1(e,hiddenKeys$1)},{}),getBuiltIn$1=(objectGetOwnPropertySymbols.f=Object.getOwnPropertySymbols,getBuiltIn$4),uncurryThis$6=functionUncurryThis,getOwnPropertyNamesModule=objectGetOwnPropertyNames,getOwnPropertySymbolsModule$1=objectGetOwnPropertySymbols,anObject$3=anObject$5,concat$1=functionUncurryThis([].concat),ownKeys$1=getBuiltIn$1("Reflect","ownKeys")||function(e){var t=getOwnPropertyNamesModule.f(anObject$3(e)),n=getOwnPropertySymbolsModule$1.f;return n?concat$1(t,n(e)):t},hasOwn$3=hasOwnProperty_1,ownKeys=ownKeys$1,getOwnPropertyDescriptorModule=objectGetOwnPropertyDescriptor,definePropertyModule$1=objectDefineProperty,copyConstructorProperties$2=function(e,t,n){for(var o=ownKeys(t),r=definePropertyModule$1.f,i=getOwnPropertyDescriptorModule.f,a=0;a<o.length;a++){var s=o[a];hasOwn$3(e,s)||n&&hasOwn$3(n,s)||r(e,s,i(t,s))}},fails$6=fails$e,isCallable$6=isCallable$g,replacement=/#|\.prototype\./,isForced$1=function(e,t){e=data[normalize(e)];return e==POLYFILL||e!=NATIVE&&(isCallable$6(t)?fails$6(t):!!t)},normalize=isForced$1.normalize=function(e){return String(e).replace(replacement,".").toLowerCase()},data=isForced$1.data={},NATIVE=isForced$1.NATIVE="N",POLYFILL=isForced$1.POLYFILL="P",isForced_1=isForced$1,global$4=global$d,getOwnPropertyDescriptor$1=objectGetOwnPropertyDescriptor.f,createNonEnumerableProperty$2=createNonEnumerableProperty$4,defineBuiltIn$2=defineBuiltIn$3,defineGlobalProperty=defineGlobalProperty$3,copyConstructorProperties$1=copyConstructorProperties$2,isForced=isForced_1,_export=function(e,t){var n,o,r,i=e.target,a=e.global,s=e.stat,l=a?global$4:s?global$4[i]||defineGlobalProperty(i,{}):(global$4[i]||{}).prototype;if(l)for(n in t){if(o=t[n],r=e.dontCallGetSet?(r=getOwnPropertyDescriptor$1(l,n))&&r.value:l[n],!isForced(a?n:i+(s?".":"#")+n,e.forced)&&void 0!==r){if(typeof o==typeof r)continue;copyConstructorProperties$1(o,r)}(e.sham||r&&r.sham)&&createNonEnumerableProperty$2(o,"sham",!0),defineBuiltIn$2(l,n,o,e)}},internalObjectKeys=objectKeysInternal,enumBugKeys$1=enumBugKeys$3,objectKeys$2=Object.keys||function(e){return internalObjectKeys(e,enumBugKeys$1)},DESCRIPTORS$3=descriptors,uncurryThis$5=functionUncurryThis,call$1=functionCall,fails$5=fails$e,objectKeys$1=objectKeys$2,getOwnPropertySymbolsModule=objectGetOwnPropertySymbols,propertyIsEnumerableModule=objectPropertyIsEnumerable,toObject$2=toObject$4,IndexedObject$1=indexedObject,$assign=Object.assign,defineProperty$4=Object.defineProperty,concat=uncurryThis$5([].concat),objectAssign=!$assign||fails$5(function(){var e,t,n,o;return!(!DESCRIPTORS$3||1===$assign({b:1},$assign(defineProperty$4({},"a",{enumerable:!0,get:function(){defineProperty$4(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)||(t={},o="abcdefghijklmnopqrst",(e={})[n=Symbol()]=7,o.split("").forEach(function(e){t[e]=e}),7!=$assign({},e)[n])||objectKeys$1($assign({},t)).join("")!=o})?function(e,t){for(var n=toObject$2(e),o=arguments.length,r=1,i=getOwnPropertySymbolsModule.f,a=propertyIsEnumerableModule.f;r<o;)for(var s,l=IndexedObject$1(arguments[r++]),c=i?concat(objectKeys$1(l),i(l)):objectKeys$1(l),d=c.length,u=0;u<d;)s=c[u++],DESCRIPTORS$3&&!call$1(a,l,s)||(n[s]=l[s]);return n}:$assign,$$7=_export,assign=objectAssign,objectDefineProperties=(_export({target:"Object",stat:!0,arity:2,forced:Object.assign!==assign},{assign:assign}),{}),DESCRIPTORS$2=descriptors,V8_PROTOTYPE_DEFINE_BUG=v8PrototypeDefineBug,definePropertyModule=objectDefineProperty,anObject$2=anObject$5,toIndexedObject$1=toIndexedObject$5,objectKeys=objectKeys$2,getBuiltIn=(objectDefineProperties.f=DESCRIPTORS$2&&!V8_PROTOTYPE_DEFINE_BUG?Object.defineProperties:function(e,t){anObject$2(e);for(var n,o=toIndexedObject$1(t),r=objectKeys(t),i=r.length,a=0;a<i;)definePropertyModule.f(e,n=r[a++],o[n]);return e},getBuiltIn$4),html$1=getBuiltIn$4("document","documentElement"),anObject$1=anObject$5,definePropertiesModule=objectDefineProperties,enumBugKeys=enumBugKeys$3,hiddenKeys=hiddenKeys$4,html=html$1,documentCreateElement$1=documentCreateElement$2,sharedKey$1=sharedKey$3,GT=">",LT="<",PROTOTYPE="prototype",SCRIPT="script",IE_PROTO$1=sharedKey$3("IE_PROTO"),EmptyConstructor=function(){},scriptTag=function(e){return LT+SCRIPT+GT+e+LT+"/"+SCRIPT+GT},NullProtoObjectViaActiveX=function(e){e.write(scriptTag("")),e.close();var t=e.parentWindow.Object;return e=null,t},NullProtoObjectViaIFrame=function(){var e=documentCreateElement$1("iframe"),t="java"+SCRIPT+":";return e.style.display="none",html.appendChild(e),e.src=String(t),(t=e.contentWindow.document).open(),t.write(scriptTag("document.F=Object")),t.close(),t.F},NullProtoObject=function(){try{activeXDocument=new ActiveXObject("htmlfile")}catch(e){}NullProtoObject="undefined"==typeof document||document.domain&&activeXDocument?NullProtoObjectViaActiveX(activeXDocument):NullProtoObjectViaIFrame();for(var e=enumBugKeys.length;e--;)delete NullProtoObject[PROTOTYPE][enumBugKeys[e]];return NullProtoObject()},objectCreate=(hiddenKeys[IE_PROTO$1]=!0,Object.create||function(e,t){var n;return null!==e?(EmptyConstructor[PROTOTYPE]=anObject$1(e),n=new EmptyConstructor,EmptyConstructor[PROTOTYPE]=null,n[IE_PROTO$1]=e):n=NullProtoObject(),void 0===t?n:definePropertiesModule.f(n,t)}),wellKnownSymbol$8=wellKnownSymbol$a,create$1=objectCreate,defineProperty$3=objectDefineProperty.f,UNSCOPABLES=wellKnownSymbol$8("unscopables"),ArrayPrototype=Array.prototype,addToUnscopables$2=(null==ArrayPrototype[UNSCOPABLES]&&defineProperty$3(ArrayPrototype,UNSCOPABLES,{configurable:!0,value:create$1(null)}),function(e){ArrayPrototype[UNSCOPABLES][e]=!0}),iterators={},fails$4=fails$e,correctPrototypeGetter=!fails$e(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),hasOwn$2=hasOwnProperty_1,isCallable$5=isCallable$g,toObject$1=toObject$4,sharedKey=sharedKey$3,CORRECT_PROTOTYPE_GETTER=correctPrototypeGetter,IE_PROTO=sharedKey$3("IE_PROTO"),$Object$1=Object,ObjectPrototype=$Object$1.prototype,objectGetPrototypeOf=CORRECT_PROTOTYPE_GETTER?$Object$1.getPrototypeOf:function(e){var t,e=toObject$1(e);return hasOwn$2(e,IE_PROTO)?e[IE_PROTO]:(t=e.constructor,isCallable$5(t)&&e instanceof t?t.prototype:e instanceof $Object$1?ObjectPrototype:null)},fails$3=fails$e,isCallable$4=isCallable$g,getPrototypeOf$1=objectGetPrototypeOf,defineBuiltIn$1=defineBuiltIn$3,wellKnownSymbol$7=wellKnownSymbol$a,ITERATOR$2=wellKnownSymbol$a("iterator"),BUGGY_SAFARI_ITERATORS$1=!1,NEW_ITERATOR_PROTOTYPE=([].keys&&("next"in(arrayIterator=[].keys())?(PrototypeOfArrayIteratorPrototype=getPrototypeOf$1(getPrototypeOf$1(arrayIterator)))!==Object.prototype&&(IteratorPrototype$2=PrototypeOfArrayIteratorPrototype):BUGGY_SAFARI_ITERATORS$1=!0),null==IteratorPrototype$2||fails$3(function(){var e={};return IteratorPrototype$2[ITERATOR$2].call(e)!==e})),iteratorsCore=(isCallable$4((IteratorPrototype$2=NEW_ITERATOR_PROTOTYPE?{}:IteratorPrototype$2)[ITERATOR$2])||defineBuiltIn$1(IteratorPrototype$2,ITERATOR$2,function(){return this}),{IteratorPrototype:IteratorPrototype$2,BUGGY_SAFARI_ITERATORS:BUGGY_SAFARI_ITERATORS$1}),defineProperty$2=objectDefineProperty.f,hasOwn$1=hasOwnProperty_1,wellKnownSymbol$6=wellKnownSymbol$a,TO_STRING_TAG$3=wellKnownSymbol$a("toStringTag"),setToStringTag$2=function(e,t,n){(e=e&&!n?e.prototype:e)&&!hasOwn$1(e,TO_STRING_TAG$3)&&defineProperty$2(e,TO_STRING_TAG$3,{configurable:!0,value:t})},IteratorPrototype$1=iteratorsCore.IteratorPrototype,create=objectCreate,createPropertyDescriptor=createPropertyDescriptor$3,setToStringTag$1=setToStringTag$2,Iterators$2=iterators,returnThis$1=function(){return this},createIteratorConstructor$1=function(e,t,n,o){t+=" Iterator";return e.prototype=create(IteratorPrototype$1,{next:createPropertyDescriptor(+!o,n)}),setToStringTag$1(e,t,!1),Iterators$2[t]=returnThis$1,e},isCallable$3=isCallable$g,$String$1=String,$TypeError$2=TypeError,aPossiblePrototype$1=function(e){if("object"==typeof e||isCallable$3(e))return e;throw $TypeError$2("Can't set "+$String$1(e)+" as a prototype")},uncurryThis$4=functionUncurryThis,anObject=anObject$5,aPossiblePrototype=aPossiblePrototype$1,objectSetPrototypeOf=Object.setPrototypeOf||("__proto__"in{}?function(){var n,o=!1,e={};try{(n=uncurryThis$4(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(e,[]),o=e instanceof Array}catch(e){}return function(e,t){return anObject(e),aPossiblePrototype(t),o?n(e,t):e.__proto__=t,e}}():void 0),$$6=_export,call=functionCall,FunctionName=functionName,isCallable$2=isCallable$g,createIteratorConstructor=createIteratorConstructor$1,getPrototypeOf=objectGetPrototypeOf,setPrototypeOf=objectSetPrototypeOf,setToStringTag=setToStringTag$2,createNonEnumerableProperty$1=createNonEnumerableProperty$4,defineBuiltIn=defineBuiltIn$3,wellKnownSymbol$5=wellKnownSymbol$a,Iterators$1=iterators,IteratorsCore=iteratorsCore,PROPER_FUNCTION_NAME$1=FunctionName.PROPER,CONFIGURABLE_FUNCTION_NAME=FunctionName.CONFIGURABLE,IteratorPrototype=IteratorsCore.IteratorPrototype,BUGGY_SAFARI_ITERATORS=IteratorsCore.BUGGY_SAFARI_ITERATORS,ITERATOR$1=wellKnownSymbol$5("iterator"),KEYS="keys",VALUES="values",ENTRIES="entries",returnThis=function(){return this},defineIterator$1=function(e,t,n,o,r,i,a){createIteratorConstructor(n,t,o);function s(e){if(e===r&&g)return g;if(!BUGGY_SAFARI_ITERATORS&&e in u)return u[e];switch(e){case KEYS:case VALUES:case ENTRIES:return function(){return new n(this,e)}}return function(){return new n(this)}}var l,c,o=t+" Iterator",d=!1,u=e.prototype,p=u[ITERATOR$1]||u["@@iterator"]||r&&u[r],g=!BUGGY_SAFARI_ITERATORS&&p||s(r),h="Array"==t&&u.entries||p;if(h&&(h=getPrototypeOf(h.call(new e)))!==Object.prototype&&h.next&&(getPrototypeOf(h)!==IteratorPrototype&&(setPrototypeOf?setPrototypeOf(h,IteratorPrototype):isCallable$2(h[ITERATOR$1])||defineBuiltIn(h,ITERATOR$1,returnThis)),setToStringTag(h,o,!0)),PROPER_FUNCTION_NAME$1&&r==VALUES&&p&&p.name!==VALUES&&(CONFIGURABLE_FUNCTION_NAME?createNonEnumerableProperty$1(u,"name",VALUES):(d=!0,g=function(){return call(p,this)})),r)if(l={values:s(VALUES),keys:i?g:s(KEYS),entries:s(ENTRIES)},a)for(c in l)!BUGGY_SAFARI_ITERATORS&&!d&&c in u||defineBuiltIn(u,c,l[c]);else $$6({target:t,proto:!0,forced:BUGGY_SAFARI_ITERATORS||d},l);return u[ITERATOR$1]!==g&&defineBuiltIn(u,ITERATOR$1,g,{name:r}),Iterators$1[t]=g,l},toIndexedObject=toIndexedObject$5,addToUnscopables$1=addToUnscopables$2,Iterators=iterators,InternalStateModule=internalState,defineProperty$1=objectDefineProperty.f,defineIterator=defineIterator$1,DESCRIPTORS$1=descriptors,ARRAY_ITERATOR="Array Iterator",setInternalState=InternalStateModule.set,getInternalState=InternalStateModule.getterFor(ARRAY_ITERATOR),es_array_iterator=defineIterator(Array,"Array",function(e,t){setInternalState(this,{type:ARRAY_ITERATOR,target:toIndexedObject(e),index:0,kind:t})},function(){var e=getInternalState(this),t=e.target,n=e.kind,o=e.index++;return!t||o>=t.length?{value:e.target=void 0,done:!0}:"keys"==n?{value:o,done:!1}:"values"==n?{value:t[o],done:!1}:{value:[o,t[o]],done:!1}},"values"),values=Iterators.Arguments=Iterators.Array;if(addToUnscopables$1("keys"),addToUnscopables$1("values"),addToUnscopables$1("entries"),DESCRIPTORS$1&&"values"!==values.name)try{defineProperty$1(values,"name",{value:"values"})}catch(e){}var COLLECTION_NAME,domIterables={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},documentCreateElement=documentCreateElement$2,classList=documentCreateElement$2("span").classList,DOMTokenListPrototype$1=classList&&classList.constructor&&classList.constructor.prototype,domTokenListPrototype=DOMTokenListPrototype$1===Object.prototype?void 0:DOMTokenListPrototype$1,global$3=global$d,DOMIterables=domIterables,DOMTokenListPrototype=domTokenListPrototype,ArrayIteratorMethods=es_array_iterator,createNonEnumerableProperty=createNonEnumerableProperty$4,wellKnownSymbol$4=wellKnownSymbol$a,ITERATOR=wellKnownSymbol$4("iterator"),TO_STRING_TAG$2=wellKnownSymbol$4("toStringTag"),ArrayValues=ArrayIteratorMethods.values,handlePrototype=function(t,e){if(t){if(t[ITERATOR]!==ArrayValues)try{createNonEnumerableProperty(t,ITERATOR,ArrayValues)}catch(e){t[ITERATOR]=ArrayValues}if(t[TO_STRING_TAG$2]||createNonEnumerableProperty(t,TO_STRING_TAG$2,e),DOMIterables[e])for(var n in ArrayIteratorMethods)if(t[n]!==ArrayIteratorMethods[n])try{createNonEnumerableProperty(t,n,ArrayIteratorMethods[n])}catch(e){t[n]=ArrayIteratorMethods[n]}}};for(COLLECTION_NAME in DOMIterables)handlePrototype(global$3[COLLECTION_NAME]&&global$3[COLLECTION_NAME].prototype,COLLECTION_NAME);handlePrototype(DOMTokenListPrototype,"DOMTokenList");var EmptyStringDescriptionStore,SymbolWrapper,NATIVE_SYMBOL,symbolToString,symbolValueOf,regexp,replace$1,stringSlice$1,EIoFolderType,EIoFolderMode,EEngineFolderMode,EDagNodeType,wellKnownSymbol$3=wellKnownSymbol$a,TO_STRING_TAG$1=wellKnownSymbol$a("toStringTag"),test={},toStringTagSupport=(test[TO_STRING_TAG$1]="z","[object z]"===String(test)),TO_STRING_TAG_SUPPORT=toStringTagSupport,isCallable$1=isCallable$g,classofRaw=classofRaw$1,wellKnownSymbol$2=wellKnownSymbol$a,TO_STRING_TAG=wellKnownSymbol$a("toStringTag"),$Object=Object,CORRECT_ARGUMENTS="Arguments"==classofRaw(function(){return arguments}()),tryGet=function(e,t){try{return e[t]}catch(e){}},classof$3=TO_STRING_TAG_SUPPORT?classofRaw:function(e){var t;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=tryGet(e=$Object(e),TO_STRING_TAG))?t:CORRECT_ARGUMENTS?classofRaw(e):"Object"==(t=classofRaw(e))&&isCallable$1(e.callee)?"Arguments":t},classof$2=classof$3,$String=String,toString$4=function(e){if("Symbol"===classof$2(e))throw TypeError("Cannot convert a Symbol value to a string");return $String(e)},$$5=_export,DESCRIPTORS=descriptors,global$2=global$d,uncurryThis$3=functionUncurryThis,hasOwn=hasOwnProperty_1,isCallable=isCallable$g,isPrototypeOf=objectIsPrototypeOf,toString$3=toString$4,defineProperty=objectDefineProperty.f,copyConstructorProperties=copyConstructorProperties$2,NativeSymbol=global$2.Symbol,SymbolPrototype=NativeSymbol&&NativeSymbol.prototype;!DESCRIPTORS||!isCallable(NativeSymbol)||"description"in SymbolPrototype&&void 0===NativeSymbol().description||(EmptyStringDescriptionStore={},copyConstructorProperties(SymbolWrapper=function(){var e=arguments.length<1||void 0===arguments[0]?void 0:toString$3(arguments[0]),t=isPrototypeOf(SymbolPrototype,this)?new NativeSymbol(e):void 0===e?NativeSymbol():NativeSymbol(e);return""===e&&(EmptyStringDescriptionStore[t]=!0),t},NativeSymbol),(SymbolWrapper.prototype=SymbolPrototype).constructor=SymbolWrapper,NATIVE_SYMBOL="Symbol(test)"==String(NativeSymbol("test")),symbolToString=uncurryThis$3(SymbolPrototype.toString),symbolValueOf=uncurryThis$3(SymbolPrototype.valueOf),regexp=/^Symbol\((.*)\)[^)]+$/,replace$1=uncurryThis$3("".replace),stringSlice$1=uncurryThis$3("".slice),defineProperty(SymbolPrototype,"description",{configurable:!0,get:function(){var e=symbolValueOf(this),t=symbolToString(e);return hasOwn(EmptyStringDescriptionStore,e)?"":""===(e=NATIVE_SYMBOL?stringSlice$1(t,7,-1):replace$1(t,regexp,"$1"))?void 0:e}}),$$5({global:!0,constructor:!0,forced:!0},{Symbol:SymbolWrapper}));const TooltipNodePopoverCard=({engineName:e,onClickCallback:t,onMouseLeaveCallback:n})=>jsxRuntime.exports.jsxs(Stack$1,Object.assign({direction:"row",alignItems:"center",sx:{width:200,height:"auto",borderRadius:"4px",padding:"5px 5px",fontSize:"10px",lineHeight:"16px",backgroundColor:"#465364",boxSizing:"border-box",position:"absolute",right:"-210px",top:"-10px",zIndex:1e3},onMouseLeave:e=>{n(e)}},{children:[jsxRuntime.exports.jsx(Box$1,Object.assign({sx:{padding:"5px 10px 5px 5px"}},{children:jsxRuntime.exports.jsx(Engineering,{style:{fontSize:"18px",color:"#fff"}})})),jsxRuntime.exports.jsxs(Box$1,{children:[jsxRuntime.exports.jsxs(Typography,Object.assign({variant:"body1",sx:{color:"#fff",fontSize:"10px",lineHeight:"16px",marginTop:"0",marginBottom:"0"}},{children:["We added a required ",e," node."]})),jsxRuntime.exports.jsx(Button,Object.assign({size:"small",sx:{color:"#8EC7FF",fontSize:"10px",fontStyle:"italic",lineHeight:"16px",marginTop:"0",marginBottom:"0",marginLeft:"0",marginRight:"0",paddingLeft:"0",paddingBottom:"0"},onClick:t},{children:"Click to Show"}))]})]})),TooltipNode=({engineName:e,onClickCallback:t})=>{const[n,o]=react.exports.useState(!1);var r=react.exports.useCallback(()=>{o(!1)},[]);return jsxRuntime.exports.jsxs(Box$1,Object.assign({sx:{marginTop:30,position:"relative"}},{children:[jsxRuntime.exports.jsx(IconButton,Object.assign({sx:{backgroundColor:"#78909C",color:"#fff","&:hover":{backgroundColor:"#78909C",color:"#fff"}},onMouseOver:e=>{e.stopPropagation(),e.preventDefault(),n||o(!0)},onClick:e=>{e.stopPropagation(),e.preventDefault()}},{children:jsxRuntime.exports.jsx(Engineering,{})})),n&&jsxRuntime.exports.jsx(TooltipNodePopoverCard,{engineName:e,onClickCallback:t,onMouseLeaveCallback:r})]}))},DagNodeCard=({title:e,description:t,avatarImgUrl:n,isStartNode:o=!1,isRemoveable:r=!1,onSettingsClick:i,onRemoveNodeClick:a,onRemoveBranchClick:s,onHideClick:l})=>{const[c,d]=react.exports.useState(!0),[u,p]=react.exports.useState(!1),[g,h]=react.exports.useState(!1);var f=react.exports.useRef(null),m=react.exports.useCallback(()=>{i&&i()},[i]),y=react.exports.useCallback(()=>{a&&a()},[a]),x=react.exports.useCallback(()=>{s&&s()},[s]),b=react.exports.useCallback(()=>{h(!g)},[g]),v={border:"1px solid #DADFE8",color:"#5C6269",fontSize:"12px"},$={width:24,height:24};return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Box,Object.assign({sx:{width:300,height:200,maxHeight:200,border:"0.5px solid #4CAF50;",marginTop:30,backgroundColor:"#fff",borderRadius:5,boxShadow:"0px 0px 6px 0px rgba(0, 0, 0, 0.25)",boxSizing:"border-box"}},{children:jsxRuntime.exports.jsxs(Stack$2,Object.assign({display:"flex",flexDirection:"column",height:"100%",width:"100%"},{children:[jsxRuntime.exports.jsx(Box,Object.assign({sx:{padding:"10px 12px",boxSizing:"border-box"}},{children:jsxRuntime.exports.jsxs(Stack$2,Object.assign({display:"flex",direction:"row",justifyContent:"space-between"},{children:[jsxRuntime.exports.jsxs(Stack$2,Object.assign({display:"flex",direction:"row",alignItems:"center",gap:2},{children:[n&&c?jsxRuntime.exports.jsx(Avatar,{sx:$,src:n,imgProps:{onError:()=>d(!1)}}):jsxRuntime.exports.jsx(Avatar,Object.assign({sx:$},{children:jsxRuntime.exports.jsx(Engines,{})})),jsxRuntime.exports.jsx("h3",Object.assign({style:{margin:0,fontWeight:"400",fontSize:"14px"}},{children:e}))]})),jsxRuntime.exports.jsx(StartNodeIndicator,{isVisible:o})]}))})),jsxRuntime.exports.jsx(Box,Object.assign({sx:{padding:"15px 20px 10px 20px",flex:"auto",border:"1px solid #DADFE8",borderLeft:"none",borderRight:"none",overflowY:"auto",overflowX:"hidden",maxHeight:90,height:"100%"}},{children:jsxRuntime.exports.jsx(Typography,Object.assign({style:{fontSize:10,lineHeight:"16px",margin:0},"data-testid":"os-processing-center-dag-builder-node-description"},{children:t}))})),jsxRuntime.exports.jsx(Box,Object.assign({sx:{padding:"8px 20px 0 20px",boxSizing:"border-box"}},{children:jsxRuntime.exports.jsxs(Stack$2,Object.assign({display:"flex",direction:"row",justifyContent:"space-between",spacing:2},{children:[jsxRuntime.exports.jsx(Button,Object.assign({variant:"outlined",size:"medium",onClick:m,startIcon:jsxRuntime.exports.jsx(Settings,{style:{height:"14px",width:"14px"}}),sx:v},{children:jsxRuntime.exports.jsx(FormattedMessage,{id:"os-processing-center-dag-builder-settings-btn",defaultMessage:"Settings",description:"Settings button text for dag node"})})),r&&jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Button,Object.assign({ref:f,variant:"outlined",size:"medium",onClick:()=>p(!u),startIcon:jsxRuntime.exports.jsx(DeleteOutline,{style:{height:"14px",width:"14px"}}),sx:v},{children:jsxRuntime.exports.jsx(FormattedMessage,{id:"os-processing-center-dag-builder-remove-btn",defaultMessage:"Remove",description:"Remove button text for dag node"})})),jsxRuntime.exports.jsxs(Menu,Object.assign({open:u,onClose:function(){p(!u)},anchorEl:f.current,anchorOrigin:{horizontal:"right",vertical:"bottom"}},{children:[jsxRuntime.exports.jsx(MenuItem,Object.assign({onClick:y},{children:"Remove Node"})),jsxRuntime.exports.jsx(MenuItem,Object.assign({onClick:b},{children:"Remove Branch"}))]}))]}),!r&&jsxRuntime.exports.jsx(Button,Object.assign({variant:"outlined",size:"medium",onClick:l,startIcon:jsxRuntime.exports.jsx(DeleteOutline,{style:{height:"14px",width:"14px"}}),sx:v},{children:jsxRuntime.exports.jsx(FormattedMessage,{id:"os-processing-center-dag-builder-hide-btn",defaultMessage:"Hide",description:"Hide button text for dag node"})}))]}))}))]}))})),jsxRuntime.exports.jsxs(Dialog,Object.assign({open:g,PaperProps:{style:{width:"410px",padding:"15px",boxSizing:"border-box"}},onClose:b},{children:[jsxRuntime.exports.jsx(DialogTitle,Object.assign({sx:{fontSize:"18px"}},{children:"Are you sure?"})),jsxRuntime.exports.jsx(DialogContent,{children:jsxRuntime.exports.jsx(DialogContentText,Object.assign({sx:{fontSize:"14px"}},{children:"You will be removing this node, plus all nodes and branches attached to it. Are you sure?"}))}),jsxRuntime.exports.jsxs(DialogActions,{children:[jsxRuntime.exports.jsx(Button,Object.assign({onClick:b,autoFocus:!0},{children:"Cancel"})),jsxRuntime.exports.jsx(Button,Object.assign({variant:"contained",size:"large",onClick:x,autoFocus:!0},{children:"Delete"}))]})]}))]})},StartNodeIndicator=({isVisible:e})=>e?jsxRuntime.exports.jsx("div",Object.assign({style:{borderRadius:"50px",height:40,width:40,border:"0.5px solid #4CAF50",fontSize:"10px",display:"flex",justifyContent:"center",alignItems:"center",color:"#4CAF50"}},{children:jsxRuntime.exports.jsx("span",{children:"Start"})})):null,DagNode=({isTooltip:e=!1,title:t,description:n,avatarImgUrl:o,isStartNode:r=!1,isRemoveable:i=!1,onSettingsClick:a,onRemoveNodeClick:s,onRemoveBranchClick:l})=>{const[c,d]=react.exports.useState(e);var e=react.exports.useCallback(()=>{d(!1)},[]),u=react.exports.useCallback(()=>{d(!0)},[]);return c?jsxRuntime.exports.jsx(TooltipNode,{engineName:t,onClickCallback:e}):jsxRuntime.exports.jsx(DagNodeCard,{title:t,avatarImgUrl:o,isStartNode:r,description:n,isRemoveable:i,onSettingsClick:a,onRemoveNodeClick:s,onRemoveBranchClick:l,onHideClick:u})},AddNodeBtn=({id:e,isDisabled:t=!1,tooltip:n,onClick:o})=>{var r=react.exports.useCallback(()=>{t||o&&o()},[o,t]);return jsxRuntime.exports.jsx(Box$1,Object.assign({"data-testid":"add-node-btn-"+e,title:n,sx:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",background:"white",display:"flex",alignItems:"center",justifyContent:"center",flexDirection:"column",height:"26px",width:"26px",zIndex:2,border:t?"1px solid #CCC":"1px solid #0E6EEC",color:t?"#CCC":"#0E6EEC",borderRadius:"50px",cursor:t?"not-allowed":"pointer",transition:"0.3s all ease-in-out","&:hover":{backgroundColor:t?"#fff":"#0E6EEC",color:t?"#CCC":"#FFF"}},onClick:r},{children:jsxRuntime.exports.jsx("span",Object.assign({style:{fontSize:"22px",lineHeight:"22px"}},{children:"+"}))}))},SLICE_NAME="processingCenterDagBuilder",si2ChunkEngineDefinition=(!function(e){e.Input="input",e.Output="output"}(EIoFolderType=EIoFolderType||{}),!function(e){e.Stream="stream",e.Chunk="chunk",e.Ingest="ingest"}(EIoFolderMode=EIoFolderMode||{}),!function(e){e.Stream="Stream",e.Chunk="Chunk"}(EEngineFolderMode=EEngineFolderMode||{}),!function(e){e.Push="Push",e.Pull="Pull",e.Cognition="Cognition",e.Utility="Utility"}(EDagNodeType=EDagNodeType||{}),{id:"8bdb0e3b-ff28-4f6e-a3ba-887bd06e6440",loadingStatus:"success",definition:{id:"8bdb0e3b-ff28-4f6e-a3ba-887bd06e6440",category:{name:"Ingestion",id:"4be1a1b2-653d-4eaa-ba18-747a265305d8"},name:"SI2 audio/video Chunk creator",mode:"Stream",outputFormats:["video/mp4"],supportedInputFormats:["application/json"],preferredInputFormat:"application/json",iconPath:null,logoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg",signedIconPath:null,signedLogoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg"}}),si2PlaybackEngineDefinition={id:"352556c7-de07-4d55-b33f-74b1cf237f25",loadingStatus:"success",definition:{id:"352556c7-de07-4d55-b33f-74b1cf237f25",category:{name:"Ingestion",id:"4be1a1b2-653d-4eaa-ba18-747a265305d8"},name:"SI2 Playback segment creator",mode:"Stream",outputFormats:["video/mp4"],supportedInputFormats:["application/json"],preferredInputFormat:"application/json",iconPath:null,logoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg",signedIconPath:null,signedLogoPath:"https://www.filepicker.io/api/file/p2bLdy4nRrOwv34yoEhg"}},namespace$5="engines",initialState$5={engines:[si2ChunkEngineDefinition,si2PlaybackEngineDefinition],engineCategories:{loadingStatus:"idle",categories:[]}},processingCenterDagBuilderEngineSlice=createSlice({name:SLICE_NAME+"/"+namespace$5,initialState:initialState$5,reducers:{fetchEngineStart(e,t){e.engines.some(e=>e.id===t.payload)||e.engines.push({id:t.payload,loadingStatus:"pending"})},fetchEngineComplete(e,t){var n=e.engines.findIndex(e=>e.id===t.payload.id);e.engines[n].definition=t.payload,e.engines[n].loadingStatus="success"},fetchEngineFailed(e,t){var n=e.engines.findIndex(e=>e.id===t.payload);e.engines[n].loadingStatus="failure"},fetchEngineCategoriesStart(e){e.engineCategories.loadingStatus="pending"},fetchEngineCategoriesComplete(e,t){e.engineCategories.categories=t.payload,e.engineCategories.loadingStatus="success"},fetchEngineCategoriesFailed(e){e.engineCategories.loadingStatus="failure"}}}),actions$6=processingCenterDagBuilderEngineSlice.actions;var engines_slice=processingCenterDagBuilderEngineSlice.reducer;const selectEngines$1=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$5].engines},selectEngineCategories=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$5].engineCategories};var engines=Object.freeze({__proto__:null,selectEngines:selectEngines$1,selectEngineCategories:selectEngineCategories});const namespace$4="dagNodes",initialState$4={dagNodes:[],openNodePanel:!1,nodeTypeSelected:null,nodeToBeAdded:{parentNodeId:"",engineId:""}},processingCenterDagBuilderNodesSlice$1=createSlice({name:SLICE_NAME+"/"+namespace$4,initialState:initialState$4,reducers:{addDagNode(e,t){const n=t["payload"];n.nodeId||(n.nodeId=v4()),n.parentId&&0===e.dagNodes.filter(e=>e.nodeId===n.parentId).length?console.error("Tried to add a node with a parent that doesn't exist"):e.dagNodes.push(n)},resetDagNodes(e){e.dagNodes=[]},updateDagNode(e,t){const n=t["payload"];t=e.dagNodes.findIndex(e=>e.nodeId===n.nodeId);-1===t?console.error("Tried to update a node that doesn't exist"):e.dagNodes[t]=n},removeDagNode(n,e){const o=e.payload["nodeId"];e=n.dagNodes.findIndex(e=>e.nodeId===o);-1===e?console.error("Tried to remove a node that doesn't exist"):(n.dagNodes.splice(e,1),n.dagNodes.forEach((e,t)=>{e.parentId===o&&delete n.dagNodes[t].parentId}))},setOpenNodePanel(e,t){e.openNodePanel=t.payload},setNodeToBeAdded(e,t){e.nodeToBeAdded.parentNodeId=t.payload.parentNodeId||"",e.nodeToBeAdded.engineId=t.payload.engineId||""},setNodeTypeSelected(e,t){e.nodeTypeSelected=t.payload}}}),actions$5=processingCenterDagBuilderNodesSlice$1.actions;var dagNodes_slice=processingCenterDagBuilderNodesSlice$1.reducer;const namespace$3="dagTemplates",initialState$3={createStatus:"idle",readStatus:"idle"},processingCenterDagBuilderNodesSlice=createSlice({name:SLICE_NAME+"/"+namespace$3,initialState:initialState$3,reducers:{createDagTemplateStart(e,t){e.createStatus="pending"},createDagTemplateSuccess(e){e.createStatus="idle",console.log("Successfully created dag template")},createDagTemplateFailed(e){e.createStatus="failure"},loadDagTemplateStart(e,t){e.readStatus="pending"},loadDagTemplateSuccess(e){e.readStatus="idle"},loadDagTemplateFailed(e){e.readStatus="failure"}}}),actions$4=processingCenterDagBuilderNodesSlice.actions;var dagTemplates_slice=processingCenterDagBuilderNodesSlice.reducer;const namespace$2="basicInfo",initialState$2={name:null,description:null,avatarUrl:null,previewImage:null,basicInfoComplete:!1},basicInfoSlice=createSlice({name:SLICE_NAME+"/"+namespace$2,initialState:initialState$2,reducers:{setName(e,t){e.name=t.payload},setDescription(e,t){e.description=t.payload},setAvatarUrl(e,t){e.avatarUrl=t.payload},setPreviewImage(e,t){e.previewImage=t.payload},setBasicInfoComplete(e,t){e.basicInfoComplete=t.payload}}}),actions$3=basicInfoSlice.actions;var basicInfo_slice=basicInfoSlice.reducer,isObject=isObject$6,classof$1=classofRaw$1,wellKnownSymbol$1=wellKnownSymbol$a,MATCH$1=wellKnownSymbol$a("match"),isRegexp=function(e){var t;return isObject(e)&&(void 0!==(t=e[MATCH$1])?!!t:"RegExp"==classof$1(e))},isRegExp=isRegexp,$TypeError$1=TypeError,notARegexp=function(e){if(isRegExp(e))throw $TypeError$1("The method doesn't accept regular expressions");return e},wellKnownSymbol=wellKnownSymbol$a,MATCH=wellKnownSymbol$a("match"),correctIsRegexpLogic=function(t){var n=/./;try{"/./"[t](n)}catch(e){try{return n[MATCH]=!1,"/./"[t](n)}catch(e){}}return!1},$$4=_export,uncurryThis$2=functionUncurryThis,getOwnPropertyDescriptor=objectGetOwnPropertyDescriptor.f,toLength=toLength$2,toString$2=toString$4,notARegExp$1=notARegexp,requireObjectCoercible$2=requireObjectCoercible$5,correctIsRegExpLogic$1=correctIsRegexpLogic,un$StartsWith=uncurryThis$2("".startsWith),stringSlice=uncurryThis$2("".slice),min=Math.min,CORRECT_IS_REGEXP_LOGIC=correctIsRegExpLogic$1("startsWith"),MDN_POLYFILL_BUG=!CORRECT_IS_REGEXP_LOGIC&&!!function(){var e=getOwnPropertyDescriptor(String.prototype,"startsWith");return e&&!e.writable}();$$4({target:"String",proto:!0,forced:!MDN_POLYFILL_BUG&&!CORRECT_IS_REGEXP_LOGIC},{startsWith:function(e){var t=toString$2(requireObjectCoercible$2(this)),n=(notARegExp$1(e),toLength(min(1<arguments.length?arguments[1]:void 0,t.length))),o=toString$2(e);return un$StartsWith?un$StartsWith(t,o,n):stringSlice(t,n,n+o.length)===o}});const SHARED_TEXT={basicInfo:{title:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.header-title",defaultMessage:"Save As: Basic Information",description:"Dag builder basic info header title"}),name:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.name",defaultMessage:"Dag Name",description:"Dag builder basic info name input"}),description:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.description",defaultMessage:"Description",description:"Dag builder basic info description input"}),continueButton:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.continue-button",defaultMessage:"Continue",description:"Dag builder basic info continue button"}),avatar:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.avatar",defaultMessage:"Avatar",description:"Dag builder basic info avatar"}),avatarDescription1:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.avatar-description1",defaultMessage:"Recommended image size:",description:"Dag builder basic info avatar-description"}),avatarDescription2:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-basic-info.avatar-description2",defaultMessage:"300x300 .png or .jpg",description:"Dag builder basic info avatar-description"})},nodeType:{title:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.header-title",defaultMessage:"Choose a Node Type",description:"Dag builder node type header title"}),cancelButton:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.cancel-button",defaultMessage:"Cancel",description:"Dag builder node type cancel button"}),nextButton:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.next-button",defaultMessage:"Next",description:"Dag builder node type next button"}),pullNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.pull-title",defaultMessage:"Pull",description:"Dag builder node type pull title"}),pullNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.pull-description",defaultMessage:"Retrieves data from a source, typically a URI, and brings it into aiWare.",description:"Dag builder node type pull description"}),pushNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.push-title",defaultMessage:"Push",description:"Dag builder node type push title"}),pushNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.push-description",defaultMessage:"Listens for data sent to it from an external source and brings it into aiWare.",description:"Dag builder node type push description"}),cognitionNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.cognition-title",defaultMessage:"Cognition",description:"Dag builder node type cognition-title"}),cognitionNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.cognition-description",defaultMessage:"Engines for cognition.",description:"Dag builder node type cognition description"}),utilityNodeText:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.utility-title",defaultMessage:"Utility",description:"Dag builder node type utility title"}),utilityNodeDescription:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-node-type.utlity-description",defaultMessage:"Miscellaneous utility engines for cognition.",description:"Processes results from a single cognition capability."})},panels:{back:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder.panel.footer.button.back",defaultMessage:"Back",description:"Dag builder engine list footer: back"}),next:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder.panel.footer.button.next",defaultMessage:"Next",description:"Dag builder engine list footer: next"})},engineList:{addNode:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.footer.button.add-node",defaultMessage:"Add Node",description:"Dag builder engine list footer: add node"}),titlePull:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-title-pull",defaultMessage:"Choose an Ingestion Pull Engine",description:"Dag builder engine list title - pull"}),titlePush:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-title-push",defaultMessage:"Choose an Ingestion Push Engine",description:"Dag builder engine list title - push"}),cognitionTitle:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-title-cognition",defaultMessage:"Choose a Cognition Category",description:"Cognition panel title"}),cognitionSubTitle:()=>jsxRuntime.exports.jsx(FormattedMessage,{id:"pc.dag-builder-engine-list.header-subtitle-cognition",defaultMessage:"Select from available Cognition Categories to view engines to add to this DAG.",description:"Cognition panel subtitle"})}},selectName=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].name},selectDescription=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].description},selectAvatarUrl=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].avatarUrl},selectPreviewImage=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].previewImage},selectIsBasicInfoComplete=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$2].basicInfoComplete};var basicInfo=Object.freeze({__proto__:null,selectName:selectName,selectDescription:selectDescription,selectAvatarUrl:selectAvatarUrl,selectPreviewImage:selectPreviewImage,selectIsBasicInfoComplete:selectIsBasicInfoComplete});const selectDagNodes=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].dagNodes},selectOpenNodepanel=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].openNodePanel},selectNodeTypeSelected=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].nodeTypeSelected},selectNodeToBeAdded=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$4].nodeToBeAdded};var dagNodes=Object.freeze({__proto__:null,selectDagNodes:selectDagNodes,selectOpenNodepanel:selectOpenNodepanel,selectNodeTypeSelected:selectNodeTypeSelected,selectNodeToBeAdded:selectNodeToBeAdded});const selectEngines=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].engines},selectActiveView$1=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].activeView},selectSelectedEngine=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].selectedEngine},selectSearchTerm=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace].searchTerm};var EOverlayPanelViewMode,engineList=Object.freeze({__proto__:null,selectEngines:selectEngines,selectActiveView:selectActiveView$1,selectSelectedEngine:selectSelectedEngine,selectSearchTerm:selectSearchTerm});!function(e){e.basicInfoView="basicInfoView",e.engineListView="engineListView",e.nodeTypeView="nodeTypeView"}(EOverlayPanelViewMode=EOverlayPanelViewMode||{});const namespace$1="overlayPanel",initialOverlayOptions={overlayWidth:null},initialState$1={activeView:EOverlayPanelViewMode.basicInfoView,isOpen:!0,overlayOptions:Object.assign({},initialOverlayOptions)},overlayPanelSlice=createSlice({name:SLICE_NAME+"/"+namespace$1,initialState:initialState$1,reducers:{setActiveView(e,t){var{activeView:t,options:n}=t.payload;e.activeView=t,e.overlayOptions=n||Object.assign({},initialOverlayOptions),e.isOpen=!!t},closePanel(e){e.isOpen=!1,e.activeView=null,e.overlayOptions=Object.assign({},initialOverlayOptions)}}}),actions$2=overlayPanelSlice.actions;var overlayPanel_slice=overlayPanelSlice.reducer;const selectActiveView=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$1].activeView},selectIsOpen=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$1].isOpen},selectOverlayOptions=e=>{return null==(e=null==e?void 0:e[SLICE_NAME])?void 0:e[namespace$1].overlayOptions};var overlayPanel=Object.freeze({__proto__:null,selectActiveView:selectActiveView,selectIsOpen:selectIsOpen,selectOverlayOptions:selectOverlayOptions}),selectors={basicInfo:basicInfo,dagNodes:dagNodes,engines:engines,engineList:engineList,overlayPanel:overlayPanel};const OverlayPanelHeader=({title:e})=>jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Typography,Object.assign({variant:"h5",sx:{lineHeight:"50px",paddingLeft:"20px"}},{children:e})),jsxRuntime.exports.jsx(Divider,{sx:{width:"100%"}})]}),OverlayPanelFooterArea=({children:e})=>jsxRuntime.exports.jsxs(Stack$2,Object.assign({sx:{marginTop:"auto"}},{children:[jsxRuntime.exports.jsx(Divider,{sx:{width:"100%",paddingBottom:"20px"}}),jsxRuntime.exports.jsx(Stack$2,Object.assign({padding:"20px",direction:"row",justifyContent:"flex-end",gap:"10px"},{children:jsxRuntime.exports.jsx(jsxRuntime.exports.Fragment,{children:e})}))]})),OverlayPanelContainer=({children:e})=>jsxRuntime.exports.jsx(Stack$2,Object.assign({sx:{width:"380px",background:"#fff",borderLeft:"1px solid #D5DFE9",height:"100%"}},{children:jsxRuntime.exports.jsx(jsxRuntime.exports.Fragment,{children:e})}));var EEngineListViewMode,$$3=_export,$includes=arrayIncludes.includes,fails$2=fails$e,addToUnscopables=addToUnscopables$2,BROKEN_ON_SPARSE=fails$e(function(){return!Array(1).includes()}),$$2=($$3({target:"Array",proto:!0,forced:BROKEN_ON_SPARSE},{includes:function(e){return $includes(this,e,1<arguments.length?arguments[1]:void 0)}}),addToUnscopables("includes"),_export),uncurryThis$1=functionUncurryThis,notARegExp=notARegexp,requireObjectCoercible$1=requireObjectCoercible$5,toString$1=toString$4,correctIsRegExpLogic=correctIsRegexpLogic,stringIndexOf=functionUncurryThis("".indexOf),whitespaces$2=($$2({target:"String",proto:!0,forced:!correctIsRegExpLogic("includes")},{includes:function(e){return!!~stringIndexOf(toString$1(requireObjectCoercible$1(this)),toString$1(notARegExp(e)),1<arguments.length?arguments[1]:void 0)}}),"\t\n\v\f\r                 \u2028\u2029\ufeff"),uncurryThis=functionUncurryThis,requireObjectCoercible=requireObjectCoercible$5,toString=toString$4,whitespaces$1=whitespaces$2,replace=functionUncurryThis("".replace),whitespace="["+whitespaces$1+"]",ltrim=RegExp("^"+whitespace+whitespace+"*"),rtrim=RegExp(whitespace+whitespace+"*$"),createMethod$1=function(t){return function(e){e=toString(requireObjectCoercible(e));return 1&t&&(e=replace(e,ltrim,"")),e=2&t?replace(e,rtrim,""):e}},stringTrim={start:createMethod$1(1),end:createMethod$1(2),trim:createMethod$1(3)},PROPER_FUNCTION_NAME=functionName.PROPER,fails$1=fails$e,whitespaces=whitespaces$2,non="​…᠎",stringTrimForced=function(e){return fails$1(function(){return!!whitespaces[e]()||non[e]()!==non||PROPER_FUNCTION_NAME&&whitespaces[e].name!==e})},$$1=_export,$trim=stringTrim.trim,forcedStringTrimMethod=stringTrimForced;$$1({target:"String",proto:!0,forced:stringTrimForced("trim")},{trim:function(){return $trim(this)}});const virtualIndexIncrement=5,EngineList=()=>{const n=useDispatch(),o=useSelector(selectors.engineList.selectEngines),r=useSelector(selectors.engineList.selectSelectedEngine);var e=useSelector(selectors.engineList.selectSearchTerm),t=0===o.length;const[i,a]=react.exports.useState(!1),[s,l]=react.exports.useState(virtualIndexIncrement),[c,d]=react.exports.useState([...o]);const u=react.exports.useRef(null);const p=react.exports.useCallback(e=>{setTimeout(()=>n(actions.engineList.setSelectedEngine(e)),350)},[r]);return jsxRuntime.exports.jsxs(Stack$2,Object.assign({sx:{overflow:"hidden",gap:"10px"}},{children:[jsxRuntime.exports.jsx(TextField,{value:e,onChange:e=>{const t=e["target"]["value"];l(virtualIndexIncrement),a(!0),n(actions.engineList.setSearchTerm(t));e=[...o].filter(e=>{return(((null==e?void 0:e.name)||"").toLowerCase()+((null==e?void 0:e.description)||"").toLowerCase()).includes(t.toLowerCase().trim())});d(e),setTimeout(()=>a(!1),500)},placeholder:"Search Engines"}),jsxRuntime.exports.jsxs(Stack$2,Object.assign({sx:{overflow:"auto","& .engine-outer-container":{overflow:"initial"}},ref:u,onScroll:()=>{var e,t,n;u.current&&({scrollTop:e,scrollHeight:t,clientHeight:n}=u.current,t-500<=e+n)&&(s>=c.length||l(e=>e+virtualIndexIncrement))}},{children:[c.slice(0,s>c.length?c.length:s).map(e=>{var t=e.id===(null===r||void 0===r?void 0:r.id);return jsxRuntime.exports.jsx(Engine,Object.assign({},e,{disableUnavailableCheck:!0,onSave:()=>p(e),saved:t,onDeselect:()=>p(null)}))}),i&&jsxRuntime.exports.jsx(EngineSearchSkeleton,{})]})),t&&!i&&jsxRuntime.exports.jsx(EngineSearchEmptyState,{})]}))},CategoryList=()=>{const o=useDispatch();var e=(null==(e=useSelector(selectEngineCategories))?void 0:e.categories)||[];return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Typography,Object.assign({sx:{fontSize:"14px",marginBottom:"10px"}},{children:SHARED_TEXT.engineList.cognitionSubTitle()})),jsxRuntime.exports.jsx(Stack$2,Object.assign({sx:{height:"100%",overflow:"auto","& .engine-category-card:last-of-type":{borderBottom:"0px"}}},{children:e.filter(e=>{return null==(e=null==(e=null==e?void 0:e.engines)?void 0:e.records)?void 0:e.length}).map((n,e)=>jsxRuntime.exports.jsx(EngineCategoryCard,{category:n,onClick:()=>{return t=null==(t=null==(e=n)?void 0:e.engines)?void 0:t.records,o(actions.engineList.setEngines(t)),o(actions.engineList.setActiveView(EEngineListViewMode.engines)),void o(actions.engineList.setActiveEngineCategory(e));var e,t}},e))}))]})},EngineListPanel=(!function(e){e.categories="categories",e.engines="engines"}(EEngineListViewMode=EEngineListViewMode||{}),()=>{const t=useDispatch(),n=useSelector(selectors.dagNodes.selectNodeTypeSelected);var e=useSelector(selectors.engineList.selectActiveView);return react.exports.useEffect(()=>{let e=EEngineListViewMode.engines;switch(n){case EDagNodeType.Push:case EDagNodeType.Pull:case EDagNodeType.Cognition:e=EEngineListViewMode.categories}t(actions.engineList.setActiveView(e))},[n]),jsxRuntime.exports.jsxs(OverlayPanelContainer,{children:[jsxRuntime.exports.jsx(OverlayPanelHeader,{title:(()=>{switch(n){case EDagNodeType.Push:return SHARED_TEXT.engineList.titlePull();case EDagNodeType.Pull:return SHARED_TEXT.engineList.titlePush();case EDagNodeType.Cognition:return SHARED_TEXT.engineList.cognitionTitle()}return""})()}),jsxRuntime.exports.jsxs(Stack$2,Object.assign({sx:{padding:"20px",boxSizing:"border-box",overflow:"hidden"}},{children:[e===EEngineListViewMode.engines&&jsxRuntime.exports.jsx(EngineList,{}),e===EEngineListViewMode.categories&&jsxRuntime.exports.jsx(CategoryList,{})]})),jsxRuntime.exports.jsx(EngineListPanelFooter,{})]})}),EngineListPanelFooter=()=>{const a=useDispatch(),e=useSelector(selectors.engineList.selectActiveView),s=useSelector(selectors.engineList.selectSelectedEngine),l=useSelector(selectEngines$1);const{parentNodeId:c,engineId:d}=useSelector(selectors.dagNodes.selectNodeToBeAdded),t=()=>{a(actions.engineList.resetEngineListState())},n=()=>{if(s){var{id:t,fields:n,mode:o,preferredInputFormat:r}=s,i=(a(actions.engines.fetchEngineStart(t)),console.log("engines",l),l.find(e=>e.id===d));let e=c;i&&(null==(i=i.definition)?void 0:i.mode)===EEngineFolderMode.Stream&&o===EEngineFolderMode.Chunk&&(i=v4(),e=i,o=null!=r&&r.toLowerCase().startsWith("video")?"video":"audio",a(actions.dagNodes.addDagNode({engineId:"8bdb0e3b-ff28-4f6e-a3ba-887bd06e6440",nodeId:i,parentId:c,engineFields:[{fieldName:"ffmpegTemplate",fieldValue:o}]})),a(actions.dagNodes.addDagNode({engineId:"352556c7-de07-4d55-b33f-74b1cf237f25",nodeId:v4(),parentId:c}))),a(actions.dagNodes.addDagNode({engineId:t,engineFields:n,parentId:e})),a(actions.engineList.resetEngineListState()),a(actions.overlayPanel.setActiveView({activeView:null}))}};return jsxRuntime.exports.jsx(OverlayPanelFooterArea,{children:e===EEngineListViewMode.engines?jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Button,Object.assign({onClick:t},{children:SHARED_TEXT.panels.back()})),jsxRuntime.exports.jsx(Button,Object.assign({disabled:e===EEngineListViewMode.engines?!s:(e,EEngineListViewMode.categories,!1),onClick:n,variant:"contained"},{children:SHARED_TEXT.engineList.addNode()}))]}):e===EEngineListViewMode.categories?jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[" ",jsxRuntime.exports.jsx(Button,{children:SHARED_TEXT.panels.back()}),jsxRuntime.exports.jsx(Button,Object.assign({variant:"contained"},{children:SHARED_TEXT.panels.next()}))]}):null})},namespace="engineList",initialState={engines:[],activeCategory:null,activeView:EEngineListViewMode.categories,selectedEngine:null,searchTerm:""},engineListSlice=createSlice({name:SLICE_NAME+"/"+namespace,initialState:Object.assign({},initialState),reducers:{setEngines(e,t){e.engines=t.payload},setSelectedEngine(e,t){e.selectedEngine=t.payload},setActiveView(e,t){e.activeView=t.payload},setActiveEngineCategory(e,t){e.activeCategory=t.payload},setSearchTerm(e,t){e.searchTerm=t.payload},resetEngineListState(e){e.activeCategory=initialState.activeCategory,e.selectedEngine=initialState.selectedEngine,e.searchTerm=initialState.searchTerm,e.activeView=initialState.activeView}}}),actions$1=engineListSlice.actions;var engineList_slice=engineListSlice.reducer;const actions={[namespace$5]:actions$6,[namespace$4]:actions$5,[namespace$3]:actions$4,[namespace$2]:actions$3,[namespace]:actions$1,[namespace$1]:actions$2},rootReducer=combineReducers({[namespace$5]:engines_slice,[namespace$4]:dagNodes_slice,[namespace$3]:dagTemplates_slice,[namespace$2]:basicInfo_slice,[namespace]:engineList_slice,[namespace$1]:overlayPanel_slice});var aCallable=aCallable$2,toObject=toObject$4,IndexedObject=indexedObject,lengthOfArrayLike=lengthOfArrayLike$2,$TypeError=TypeError,createMethod=function(c){return function(e,t,n,o){aCallable(t);var r=toObject(e),i=IndexedObject(r),a=lengthOfArrayLike(r),s=c?a-1:0,l=c?-1:1;if(n<2)for(;;){if(s in i){o=i[s],s+=l;break}if(s+=l,c?s<0:a<=s)throw $TypeError("Reduce of empty array with no initial value")}for(;c?0<=s:s<a;s+=l)s in i&&(o=t(o,i[s],s,r));return o}},arrayReduce={left:createMethod(!1),right:createMethod(!0)},fails=fails$e,arrayMethodIsStrict$1=function(e,t){var n=[][e];return!!n&&fails(function(){n.call(null,t||function(){return 1},1)})},classof=classofRaw$1,global$1=global$d,engineIsNode="process"==classofRaw$1(global$d.process),$=_export,$reduce=arrayReduce.left,arrayMethodIsStrict=arrayMethodIsStrict$1,CHROME_VERSION=engineV8Version,IS_NODE=engineIsNode,STRICT_METHOD=arrayMethodIsStrict$1("reduce"),CHROME_BUG=!IS_NODE&&79<CHROME_VERSION&&CHROME_VERSION<83;function __awaiter(e,a,s,l){return new(s=s||Promise)(function(n,t){function o(e){try{i(l.next(e))}catch(e){t(e)}}function r(e){try{i(l.throw(e))}catch(e){t(e)}}function i(e){var t;e.done?n(e.value):((t=e.value)instanceof s?t:new s(function(e){e(t)})).then(o,r)}i((l=l.apply(e,a||[])).next())})}function fetchEngine(t,n){return __awaiter(this,void 0,void 0,function*(){var e="engine";return(yield baseGraphQLApiWithError(Object.assign(Object.assign({query:`
2
2
  query engine($id: ID!){
3
3
  engine(id: $id) {
4
4
 
@@ -17,4 +17,4 @@ import{cc as createSvgIcon,j as jsxRuntime,ee as isSymbol_1,ec as identity_1,ce
17
17
  signedLogoPath
18
18
  }
19
19
  }
20
- `,operationName:e},t),{variables:{id:n}})))[e]})}function fetchEngineCategories(n){var o;return __awaiter(this,void 0,void 0,function*(){var e="engineCategories",t=yield baseGraphQLApiWithError(Object.assign(Object.assign({query:"\n query engineCategories($limit: Int){\n engineCategories(limit: $limit) {\n records {\n name\n description\n iconClass\n id\n engines(\n limit: 10000\n filter: { state: active }\n ) {\n count\n offset\n limit\n records {\n id\n description\n name\n state\n signedIconPath\n edgeVersion\n modifiedDateTime\n fields {\n name\n type\n defaultValue\n defaultValues\n required\n max\n min\n options {\n __typename\n key\n value\n }\n }\n standaloneJobTemplates {\n type\n }\n libraryRequired\n supportedInputFormats\n mode\n }\n }\n }\n }\n }\n ",operationName:e},n),{variables:{limit:100}}));return null==(o=t[e])?void 0:o.records})}function createDagTemplate(t,n){return __awaiter(this,void 0,void 0,function*(){var e="createDagTemplate";return(yield baseGraphQLApiWithError(Object.assign(Object.assign({query:"\n mutation createDagTemplate($input: CreateDagTemplate!){\n createDagTemplate(input: $input) {\n id\n name\n targetOrganizationId\n description\n dag\n dagTemplateLanguage\n mimeType\n cognitiveCategoryId\n tags\n }\n }\n ",operationName:e},t),{variables:{input:n}})))[e]})}function readDagTemplate(n,o){return __awaiter(this,void 0,void 0,function*(){var e="getDagTemplate",t="dagTemplate";return(yield baseGraphQLApiWithError(Object.assign(Object.assign({query:"\n query getDagTemplate($id: ID!){\n dagTemplate (id: $id) {\n id\n name\n targetOrganizationId\n description\n dag\n dagTemplateLanguage\n mimeType\n cognitiveCategoryId\n tags\n }\n }\n ",operationName:e},n),{variables:{id:o}})))[t]})}function*createDagTemplateSaga(e){try{yield createDagTemplate(yield select$1(selectApiConfigs),e.payload);yield put(actions.dagTemplates.createDagTemplateSuccess()),yield put(showMessage({content:"DAG Template saved",severity:MessageSeverity.Success}))}catch(e){console.log(e),yield put(actions.dagTemplates.createDagTemplateFailed()),yield put(showMessage({content:"Failed to save DAG Template",severity:MessageSeverity.Error}))}}function*loadDagTemplateSaga(e){try{var t=yield readDagTemplate(yield select$1(selectApiConfigs),e.payload);const o=JSON.parse(t.dag.template);var n=o.tasks.find(e=>1===e.ioFolders.length&&"output"===e.ioFolders[0].type);const r=[],i=(t,e)=>{var n=v4(),o={nodeId:n,engineId:(null==t?void 0:t.engineId)||"",engineFields:Object.keys((null==t?void 0:t.payload)||{}).map(e=>({fieldName:e,fieldValue:null==t?void 0:t.payload[e]}))};return e&&(o.parentId=e),r.push(o),n},a=(e,t)=>{const n=t||i(e);(e=>{if(!e.ioFolders.find(e=>"output"===e.type))return[];const t=e.ioFolders.filter(e=>"output"===e.type).map(e=>e.referenceId).reduce((e,t)=>{var n=o.routes.filter(e=>e.parentIoFolderReferenceId===t).map(e=>e.childIoFolderReferenceId);return e.push(...n),e},[]);return o.tasks.filter(e=>e.ioFolders.find(e=>"input"===e.type&&t.includes(e.referenceId)))})(e).forEach(e=>{var t=i(e,n);a(e,t)})};if(!n)throw new Error("Unable to find a root task for the dag template");a(n);for(const s of r)yield put(actions.dagNodes.addDagNode(s)),yield put(actions.engines.fetchEngineStart(s.engineId));yield put(actions.basicInfo.setName(t.name)),yield put(actions.basicInfo.setDescription(t.description||"")),yield put(actions.basicInfo.setBasicInfoComplete(!0)),yield put(actions.dagTemplates.loadDagTemplateSuccess())}catch(e){console.log(e),yield put(actions.dagTemplates.loadDagTemplateFailed()),yield put(showMessage({content:"Failed to load DAG Template",severity:MessageSeverity.Error}))}}function*fetchEngineSaga(t){try{var e=yield fetchEngine(yield select$1(selectApiConfigs),t.payload);yield put(actions.engines.fetchEngineComplete(e))}catch(e){console.log(e),yield put(actions.engines.fetchEngineFailed(t.payload))}}function*fetchEngineCategoriesSaga(e){try{var t=yield fetchEngineCategories(yield select$1(selectApiConfigs));yield put(actions.engines.fetchEngineCategoriesComplete(t))}catch(e){console.log(e),yield put(actions.engines.fetchEngineCategoriesFailed())}}function*fetchEngineWatcher(){yield takeEvery$1(actions.engines.fetchEngineStart,fetchEngineSaga)}function*fetchEngineCategoriesWatcher(){yield takeEvery$1(actions.engines.fetchEngineCategoriesStart,fetchEngineCategoriesSaga)}function*createDagTemplateWatcher(){yield takeEvery$1(actions.dagTemplates.createDagTemplateStart,createDagTemplateSaga)}function*loadDagTemplateWatcher(){yield takeEvery$1(actions.dagTemplates.loadDagTemplateStart,loadDagTemplateSaga)}function*rootSaga(){yield all([fetchEngineWatcher(),createDagTemplateWatcher(),loadDagTemplateWatcher(),fetchEngineCategoriesWatcher()])}function getProcessingCenterDagBuilderModule(){return{id:SLICE_NAME,reducerMap:{[SLICE_NAME]:rootReducer},sagas:[rootSaga],initialActions:[]}}const useStyles$4=makeStyles()((e,{hasAdditionalContent:t})=>({node:{marginTop:30,position:"relative",paddingBottom:t?"24px":"12px"},closeButton:{position:"absolute",top:0,right:0,transform:"translate(50%, -50%)",color:"white",background:"red",borderRadius:"100%",cursor:"pointer"},expandButton:{position:"absolute",bottom:"4px",right:"4px",fontSize:"0.9em",background:e.palette.background.default,border:"1px solid",borderColor:e.palette.text.primary,borderRadius:"100%"},addButton:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",color:e.palette.primary.main,background:"white",borderRadius:"100%",borderWidth:"1px",borderStyle:"solid",borderColor:e.palette.text.primary,cursor:"pointer",zIndex:2},additionalInfo:{padding:0},engineName:{width:"100%",height:"100%"}})),EngineNode=e=>{var e=e["data"];const{dagNode:t,isExpanded:n,bringToForeground:o,sendToBackground:r}=e,i=useDispatch();var a=useSelector(selectEngines$1);const s=useSelector(selectDagNodes),[l,c]=react.exports.useState(!1),[d,u]=react.exports.useState(!1);var p=react.exports.useRef(null);const g=!!(t.engineFields&&0<t.engineFields.length);var h=react.exports.useCallback(()=>{console.log("hasAdditionalContent",g),(n?r:o)()},[o,n,r]),f=react.exports.useCallback(()=>{c(!l)},[l]);const m=react.exports.useCallback(t=>{t&&(s.filter(e=>e.parentId===t).forEach(e=>m(e.nodeId)),i(actions.dagNodes.removeDagNode({nodeId:t})))},[s,i]);var y=react.exports.useCallback(()=>{u(!d)},[d]),b=react.exports.useCallback(()=>{m(t.nodeId)},[t.nodeId,m]),x=react.exports.useCallback(()=>{t.nodeId&&(i(actions.dagNodes.removeDagNode({nodeId:t.nodeId})),t.parentId)&&s.filter(e=>e.parentId===t.nodeId).forEach(e=>i(actions.dagNodes.updateDagNode(Object.assign(Object.assign({},e),{parentId:t.parentId}))))},[t.nodeId,t.parentId,s,i]),v=react.exports.useCallback(()=>()=>{i(actions.dagNodes.setNodeToBeAdded({parentNodeId:t.nodeId,engineId:t.engineId})),i(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.nodeTypeView}))},[i,a,t.nodeId,t.engineId]);const $=useStyles$4({hasAdditionalContent:g})["classes"];g&&jsxRuntime.exports.jsx(Collapse,Object.assign({in:n},{children:jsxRuntime.exports.jsx(List$2,{children:null==(e=e.dagNode.engineFields)?void 0:e.map(e=>jsxRuntime.exports.jsx(ListItem,Object.assign({className:$.additionalInfo},{children:jsxRuntime.exports.jsx(Typography,Object.assign({variant:"caption"},{children:e.fieldName+": "+e.fieldValue}))}),e.fieldName+"-"+e.fieldValue))})}));var e=(null==(e=null==(e=null==(e=a.find(e=>e.id===t.engineId))?void 0:e.definition)?void 0:e.category)?void 0:e.name)||"",S=(null==(S=null==(S=a.find(e=>e.id===t.engineId))?void 0:S.definition)?void 0:S.name)||"Unknown Engine",_=(null==(_=null==(_=a.find(e=>e.id===t.engineId))?void 0:_.definition)?void 0:_.name)||"",a=(null==(a=null==(a=a.find(e=>e.id===t.engineId))?void 0:a.definition)?void 0:a.signedLogoPath)||"",e="Ingestion"===e;return jsxRuntime.exports.jsxs("div",Object.assign({className:$.node},{children:[t.parentId&&jsxRuntime.exports.jsx(Handle$1,{type:"target",position:Position.Top}),jsxRuntime.exports.jsx(DagNode,{isStartNode:void 0===t.parentId,isTooltip:e,title:S,description:_,avatarImgUrl:a,isRemoveable:!0,onSettingsClick:h,onRemoveClick:x}),t.parentId&&jsxRuntime.exports.jsx(jsxRuntime.exports.Fragment,{children:jsxRuntime.exports.jsxs(Menu,Object.assign({open:l,onClose:f,anchorEl:p.current,anchorOrigin:{horizontal:"right",vertical:"bottom"}},{children:[jsxRuntime.exports.jsx(MenuItem,Object.assign({onClick:x},{children:"Remove Node"})),jsxRuntime.exports.jsx(MenuItem,Object.assign({onClick:y},{children:"Remove Branch"}))]}))}),jsxRuntime.exports.jsxs(Dialog,Object.assign({open:d,onClose:y},{children:[jsxRuntime.exports.jsx(DialogTitle,{children:"Are you sure?"}),jsxRuntime.exports.jsx(DialogContent,{children:jsxRuntime.exports.jsx(DialogContentText,{children:"You will be removing this node, plus all nodes and branches attached to it. Are you sure?"})}),jsxRuntime.exports.jsxs(DialogActions,{children:[jsxRuntime.exports.jsx(Button,Object.assign({onClick:y,autoFocus:!0},{children:"Cancel"})),jsxRuntime.exports.jsx(Button,Object.assign({onClick:b,autoFocus:!0},{children:"Delete"}))]})]})),!e&&jsxRuntime.exports.jsx(AddNodeBtn,{id:t.engineId,onClick:v()}),jsxRuntime.exports.jsx(Handle$1,{type:"source",position:Position.Bottom})]}))},nodeWidth=258,nodeHeight=190,getLayoutedElements=(e,t)=>{const n=new dagre.graphlib.Graph;return n.setDefaultEdgeLabel(()=>({})),n.setGraph({rankdir:"TB"}),e.forEach(e=>{n.setNode(e.id,{width:nodeWidth,height:nodeHeight})}),t.forEach(e=>{n.setEdge(e.source,e.target)}),dagre.layout(n),e.forEach(e=>{var t=n.node(e.id);return e.targetPosition=Position.Top,e.sourcePosition=Position.Bottom,e.position={x:t.x-nodeWidth/2,y:t.y-nodeHeight/2},e}),{nodes:e,edges:t}},generateEdges=n=>{const o=[];return n.forEach(t=>{var e=n.find(e=>e.nodeId===t.parentId);null!=e&&e.nodeId&&t.nodeId&&o.push({id:`reactflow-edge-${e.nodeId}__`+t.nodeId,source:e.nodeId,sourceHandle:null,target:t.nodeId,targetHandle:null})}),o},DagDiagram=()=>{var e=react.exports.useMemo(()=>({engine:EngineNode}),[]),t=useDispatch();const n=useSelector(selectDagNodes);var o=useSelector(selectEngines$1);const[r,i]=react.exports.useState(),[a,s]=react.exports.useState([]),[l,c]=react.exports.useState([]),[d,u]=react.exports.useState();var p=react.exports.useCallback(e=>{i(e),e.fitBounds({x:-100,y:0,width:500,height:500})},[]);return react.exports.useEffect(()=>{var e=n.map(e=>({id:e.nodeId,type:"engine",data:{dagNode:e,bringToForeground:()=>u(e.nodeId),sendToBackground:()=>u(void 0),isExpanded:d===e.nodeId},deletable:!1,position:{x:0,y:0}})),{nodes:e,edges:t}=getLayoutedElements(e,generateEdges(n));c(t),s(e.map(e=>e.data.dagNode.nodeId===d?Object.assign(Object.assign({},e),{zIndex:1}):e))},[n,t,d]),react.exports.useEffect(()=>{r&&setTimeout(r.fitView,10)},[l,a,r,o]),jsxRuntime.exports.jsxs(ReactFlow,Object.assign({nodes:a,edges:l,nodeTypes:e,onInit:p,fitViewOptions:{padding:10,maxZoom:2}},{children:[jsxRuntime.exports.jsx(Controls$1,{}),jsxRuntime.exports.jsx(Background$1,{})]}))},visuallyHidden={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:-1,overflow:"hidden",padding:0,position:"absolute",whiteSpace:"nowrap",width:"1px"};var visuallyHidden$1=visuallyHidden;const useStyles$3=makeStyles()(e=>({header:{alignItems:"center",borderBottom:"0.5px solid "+e.palette.divider,display:"flex",justifyContent:"space-between",height:64,padding:e.spacing(2,2,2,6),backgroundColor:"#FAFAFA"},headerNoBorder:{alignItems:"center",borderBottom:"0.5px solid transparent",display:"flex",justifyContent:"space-between",height:64,padding:e.spacing(0,0,0,6)},marginRight:{marginRight:e.spacing(2)},navigationToggle:{marginRight:e.spacing(1)},headerActionContainer:{alignItems:"center",display:"flex",flexGrow:1,height:"100%",justifyContent:"flex-end"},verticalDivider:{borderRight:".5px solid "+e.palette.divider,height:"70%",margin:"0 "+e.spacing(1)},title:{userSelect:"none",fontStyle:"normal",fontSize:"18px",lineHeight:e.spacing(5),letterSpacing:"0.25px",textTransform:"uppercase",color:e.palette.text.secondary}})),VerticalDivider=({spacing:t})=>jsxRuntime.exports.jsx(Box,{width:"0px",height:"60%",border:"1px solid",borderColor:e=>e.palette.grey[300],margin:e=>e.spacing(0,t,0,t)}),HeaderActionButton=({name:e,icon:t,tooltip:n,onClick:o,iconStyles:r})=>{return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Typography,Object.assign({style:visuallyHidden$1,id:`pc-dag-builder-${e}-header-icon`},{children:n})),jsxRuntime.exports.jsx(Tooltip,Object.assign({title:n},{children:jsxRuntime.exports.jsx(IconButton,Object.assign({onClick:o,"aria-labelledby":`pc-dag-builder-${e}-header-icon`,"data-testid":`pc-dag-builder-${e}-header-icon`,size:"large"},{children:jsxRuntime.exports.jsx(t,{sx:r})}))}))]})},PanelHeader=({onPanelClose:e})=>{var t=useStyles$3()["classes"],n=useSelector(selectName);const o=useDispatch();return jsxRuntime.exports.jsxs("header",Object.assign({className:t.header,"data-testid":"pc-dag-builder-panel-header"},{children:[jsxRuntime.exports.jsx(Typography,Object.assign({variant:"h1","data-testid":"pc-dag-builder-panel-title",className:t.title},{children:"DAG Builder"})),jsxRuntime.exports.jsx(VerticalDivider,{spacing:3}),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"body1"},{children:n||"Untitled Dag"})),jsxRuntime.exports.jsx(HeaderActionButton,{name:"edit",tooltip:"Edit DAG Info",icon:EditOutlined,iconStyles:{height:"20px",width:"20px",color:e=>e.palette.grey[500]},onClick:()=>{o(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.basicInfoView}))}}),jsxRuntime.exports.jsxs("div",Object.assign({className:t.headerActionContainer},{children:[jsxRuntime.exports.jsx(Button,Object.assign({sx:{marginRight:e=>e.spacing(3)},variant:"contained",disabled:!0},{children:"Save"})),jsxRuntime.exports.jsx(VerticalDivider,{spacing:1}),jsxRuntime.exports.jsx(HeaderActionButton,{name:"help",tooltip:"Help",icon:HelpOutline,onClick:()=>console.log("Open help")}),jsxRuntime.exports.jsx(HeaderActionButton,{name:"fullscreen",tooltip:"Toggle Fullscreen",icon:FullscreenOutlined,onClick:()=>console.log("Switch to full screen")}),jsxRuntime.exports.jsx(Typography,Object.assign({style:visuallyHidden$1,id:"pc-dag-builder-close-header-icon"},{children:"Close Panel"})),jsxRuntime.exports.jsx(Tooltip,Object.assign({title:"Close DAG Builder"},{children:jsxRuntime.exports.jsx(IconButton,Object.assign({onClick:()=>{e&&e()},"aria-labelledby":"pc-dag-builder-close-header-icon","data-testid":"pc-dag-builder-close-header-icon",size:"large"},{children:jsxRuntime.exports.jsx(Hide,{})}))}))]}))]}))},{ImageUpload}=imageUpload["jsx"],{CharacterCountTextField}=characterCountTextField["jsx"],useStyles$2=makeStyles()(e=>({dagInput:{width:"340px"},formControlWrapper:{marginTop:15,paddingLeft:"20px"},bottomDivider:{width:"100%",position:"fixed",bottom:"60px"},bottomButtonContainer:{width:"380px",display:"flex",height:"60px",padding:"20px",position:"fixed",bottom:"0px",justifyContent:"center",alignItems:"center"}})),BasicInfoPanel=()=>{var e=useStyles$2()["classes"],t=useSelector(selectPreviewImage);const n=useDispatch();var o=useSelector(selectName)||"",r=useSelector(selectDescription)||"",i=0<o.length;return jsxRuntime.exports.jsxs(OverlayPanelContainer,{children:[jsxRuntime.exports.jsx(OverlayPanelHeader,{title:SHARED_TEXT.basicInfo.title()}),jsxRuntime.exports.jsx(FormControl,Object.assign({className:e.formControlWrapper,error:!0},{children:jsxRuntime.exports.jsx(TextField,{id:"pc-dag-builder-image-name",label:SHARED_TEXT.basicInfo.name(),onChange:e=>{e=e.target.value;n(actions.basicInfo.setName(e))},className:e.dagInput,variant:"outlined",InputLabelProps:0<o.length?{shrink:!0}:{},inputProps:{maxLength:100},value:o,required:!0,"data-test":"pc-dag-builder-image-name"})})),jsxRuntime.exports.jsx(FormControl,Object.assign({className:e.formControlWrapper,error:!0},{children:jsxRuntime.exports.jsx("div",Object.assign({className:e.dagInput},{children:jsxRuntime.exports.jsx(CharacterCountTextField,{handleChange:e=>{n(actions.basicInfo.setDescription(e))},variant:"outlined",value:r,defaultValue:r,label:SHARED_TEXT.basicInfo.description(),lines:5,maxChar:300,error:!1,shrinkAlways:!1,testId:"pc-dag-builder-image-description"})}))})),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"h6",sx:{marginTop:"15px",paddingLeft:"20px"}},{children:SHARED_TEXT.basicInfo.avatar()})),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"body2",sx:{paddingLeft:"20px"}},{children:SHARED_TEXT.basicInfo.avatarDescription1()})),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"body2",sx:{paddingLeft:"20px"}},{children:SHARED_TEXT.basicInfo.avatarDescription2()})),jsxRuntime.exports.jsx(FormControl,Object.assign({sx:{width:"100%"},className:e.formControlWrapper,error:!0},{children:jsxRuntime.exports.jsx(ImageUpload,{image:t,getUrl:!0,handleChange:e=>{var t;e.unsignedUrl?(t=e.unsignedUrl,e=e.getUrl,n(actions.basicInfo.setAvatarUrl(t)),n(actions.basicInfo.setPreviewImage(e))):(n(actions.basicInfo.setAvatarUrl("")),n(actions.basicInfo.setPreviewImage("")))},testId:"pc-dag-builder-image"})})),jsxRuntime.exports.jsx(OverlayPanelFooterArea,{children:jsxRuntime.exports.jsx(Button,Object.assign({disabled:!i,sx:{width:"100%",height:"28px"},variant:"contained",onClick:()=>n(actions.overlayPanel.setActiveView({activeView:null}))},{children:SHARED_TEXT.basicInfo.continueButton()}))})]})},useStyles$1=makeStyles()(e=>({bottomButtonContainer:{width:"380px",display:"flex",height:"68px",padding:"20px",position:"fixed",bottom:"0px",justifyContent:"flex-end",alignItems:"center"},icon:{fill:"#FFF !important",width:"32px",height:"32px",padding:"7px",borderRadius:"50%"},selected:{backgroundColor:"#f7f7f7"}})),NodeTypePanel=()=>{const t=useStyles$1()["classes"],[n,o]=react.exports.useState("");const e=0<useSelector(selectDagNodes).length,r=useDispatch(),i=[{node:EDagNodeType.Push,icon:EngineCategoryIcons.Push,backgroundIconColor:"#F44336",sharedTextNodeType:SHARED_TEXT.nodeType.pushNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.pushNodeDescription()},{node:EDagNodeType.Pull,icon:EngineCategoryIcons.Pull,backgroundIconColor:"#4CAF50",sharedTextNodeType:SHARED_TEXT.nodeType.pullNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.pullNodeDescription()}],a=[{node:EDagNodeType.Cognition,icon:Process,backgroundIconColor:"#FFBB0A",sharedTextNodeType:SHARED_TEXT.nodeType.cognitionNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.cognitionNodeDescription()},{node:EDagNodeType.Utility,icon:EngineCategoryIcons.CognitionUtility,backgroundIconColor:"#78909C",sharedTextNodeType:SHARED_TEXT.nodeType.utilityNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.utilityNodeDescription()}];return jsxRuntime.exports.jsxs(OverlayPanelContainer,{children:[jsxRuntime.exports.jsx(OverlayPanelHeader,{title:SHARED_TEXT.nodeType.title()}),(e?a:i).map(e=>jsxRuntime.exports.jsxs("div",{children:[jsxRuntime.exports.jsxs(Stack,Object.assign({sx:{padding:"20px",cursor:"pointer"},className:n===e.node?t.selected:"",onClick:()=>o(e.node)},{children:[jsxRuntime.exports.jsxs(Stack,Object.assign({direction:"row",justifyItems:"center"},{children:[jsxRuntime.exports.jsx(Icon,{sx:{background:e.backgroundIconColor},className:t.icon,color:"secondary",fontSize:"small",component:e.icon,"data-test":"pc-dag-builder-node-type-icon-"+e.node}),jsxRuntime.exports.jsx(Typography,Object.assign({"data-test":"pc-dag-builder-node-type-title-"+e.node,sx:{marginLeft:"10px",lineHeight:"32px"},variant:"body2"},{children:e.sharedTextNodeType}))]})),jsxRuntime.exports.jsx(Typography,Object.assign({"data-test":"pc-dag-builder-node-type-description-"+e.node,variant:"caption",sx:{marginLeft:"42px"}},{children:e.sharedTextNodeDescription}))]})),jsxRuntime.exports.jsx(Divider,{})]},e.node)),jsxRuntime.exports.jsxs(OverlayPanelFooterArea,{children:[jsxRuntime.exports.jsx(Button,Object.assign({"data-test":"pc-dag-builder-node-type-cancel-button",sx:{color:"#2A323C",width:"67px",height:"28px"},variant:"text",onClick:()=>{r(actions.dagNodes.setNodeToBeAdded({parentNodeId:""})),r(actions.dagNodes.setOpenNodePanel(!1)),r(actions.overlayPanel.setActiveView({activeView:null}))}},{children:SHARED_TEXT.nodeType.cancelButton()})),jsxRuntime.exports.jsx(Button,Object.assign({disabled:0===n.length,"data-test":"pc-dag-builder-node-type-next-button",sx:{width:"56px",height:"28px"},variant:"outlined",onClick:()=>{r(actions.dagNodes.setNodeTypeSelected(n)),r(actions.dagNodes.setOpenNodePanel(!1)),r(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.engineListView}))}},{children:SHARED_TEXT.nodeType.nextButton()}))]})]})},OverlayPanel=()=>{var e=useSelector(selectors.overlayPanel.selectOverlayOptions),t=useSelector(selectors.overlayPanel.selectActiveView),n=useSelector(selectors.overlayPanel.selectIsOpen),e=(null==e?void 0:e.overlayWidth)||"380px";return n?jsxRuntime.exports.jsxs(Stack,Object.assign({sx:{background:"transparent",height:"100%",width:"100%",position:"absolute",left:0,top:0,padding:0,display:"flex",flexDirection:"row"}},{children:[jsxRuntime.exports.jsx(Box,{sx:{flexGrow:1,display:"flex",flexWrap:"wrap",justifyContent:"center",alignItems:"center"}}),jsxRuntime.exports.jsx(Fade,Object.assign({in:!0},{children:jsxRuntime.exports.jsxs(Box,Object.assign({width:e,sx:{background:"rgb(100, 100, 100, 0.25)"}},{children:[t===EOverlayPanelViewMode.basicInfoView&&jsxRuntime.exports.jsx(BasicInfoPanel,{}),t===EOverlayPanelViewMode.engineListView&&jsxRuntime.exports.jsx(EngineListPanel,{}),t===EOverlayPanelViewMode.nodeTypeView&&jsxRuntime.exports.jsx(NodeTypePanel,{})]}))}))]})):null},useStyles=makeStyles()(e=>({root:{width:"100%",position:"relative"},panel:{backgroundColor:e.palette.background.paper,boxShadow:"0px 0px 12px rgba(0, 0, 0, 0.25)",height:"calc(100vh - 60px)",display:"flex",flexDirection:"column"},fullScreen:{position:"fixed",width:"100%",height:"100vh",top:0,left:0,right:0,bottom:0,zIndex:1004},overlay:{backgroundColor:e.palette.grey[50],opacity:"0.5 !important",height:"100%",position:"absolute",top:0,width:"100%",zIndex:1001},flexGrow:{flexGrow:1},controls:{display:"flex",justifyContent:"flex-start",gap:"10px",width:"100%",padding:"20px",boxSizing:"border-box",borderBottom:"1px solid #d5dfe9"},actions:{display:"flex",alignItems:"center",gap:"10px",marginLeft:"auto"}})),MainLayout=({hidePanel:e,isFullScreen:t,dagTemplateId:n,ingestionAdapterId:o})=>{var r=useStyles()["classes"];const i=useDispatch();var a=useSelector(panelsSelector)||[],s=(a.filter(e=>{return"PROCESSING_CENTER_DAG_BUILDER"===(null==(e=null==e?void 0:e.panelConfig)?void 0:e.parentPanelId)}).reduce((e,t)=>{let n=0;return t.panelConfig.width?n=Number(t.panelConfig.width):t.panelConfig.size&&(n=getTabPanelWidthBySize(t.panelConfig.size)||0),Math.max(e,n)},0),useSelector(selectOpenNodepanel),useSelector(selectDagNodes));const l=useSelector(selectIsBasicInfoComplete),c=0<s.length;s=a.find(e=>"DATA_CENTER"===e.panelId)||{panelConfig:{dimmed:0}},s=0<(null==(a=null===s?void 0:s.panelConfig)?void 0:a.dimmed);return react.exports.useEffect(()=>{o&&!n&&(i(actions.engines.fetchEngineStart(o)),i(actions.dagNodes.addDagNode({engineId:o})))},[i,o,n]),react.exports.useEffect(()=>{i(actions.engines.fetchEngineCategoriesStart())},[]),react.exports.useEffect(()=>{l&&!c&&(i(actions.dagNodes.setOpenNodePanel(!0)),i(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.nodeTypeView}))),l||i(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.basicInfoView}))},[l,c]),react.exports.useEffect(()=>{n&&i(actions.dagTemplates.loadDagTemplateStart(n))},[n,i]),react.exports.useCallback(()=>{window.aiware.mountPanel({panelId:"DATA_CENTER_PROCESS_AI",microFrontend:{name:"DATA_CENTER_PROCESS_AI",config:{name:"DATA CENTER PROCESS AI",parentPanelId:"PROCESSING_CENTER_DAG_BUILDER",isFullScreen:t,enableNonSingleEngineJobEngines:!0,onSaveEngineSelection:e=>{e.forEach(e=>{var{id:e,fields:t}=e;i(actions.engines.fetchEngineStart(e)),i(actions.dagNodes.addDagNode({engineId:e,engineFields:t}))})}}},panelConfig:{type:"APP_BAR_PANEL_TEMPLATE",marginTop:t?0:55,marginStart:t?0:80,size:"small",zIndex:t?1012:1003,parentPanelId:"PROCESSING_CENTER_DAG_BUILDER",dimmed:0}})},[i]),jsxRuntime.exports.jsxs(Container,Object.assign({dimmed:s,fullScreen:!1,classes:r},{children:[jsxRuntime.exports.jsx("div",{children:jsxRuntime.exports.jsx(PanelHeader,{onPanelClose:e})}),jsxRuntime.exports.jsxs(Box,Object.assign({width:"100%",height:"100%",position:"relative"},{children:[jsxRuntime.exports.jsx("div",{style:{position:"relative",top:"100px",left:"100px"}}),jsxRuntime.exports.jsx(Box,Object.assign({width:"100%",height:"100%"},{children:jsxRuntime.exports.jsx(DagDiagram,{})})),jsxRuntime.exports.jsx(OverlayPanel,{})]}))]}))},Container=({fullScreen:e,classes:t,dimmed:n,children:o})=>e?jsxRuntime.exports.jsx(Portal,{children:jsxRuntime.exports.jsxs("div",Object.assign({role:"presentation","data-test":"pc-dag-builder-widget",className:classNames(t.panel,t.fullScreen)},{children:[n&&jsxRuntime.exports.jsx("div",{className:t.overlay}),o]}))}):jsxRuntime.exports.jsx("div",Object.assign({role:"presentation","data-test":"dc-widget",className:classNames(t.root,t.panel)},{children:o})),DagBuilder=e=>(console.log("ingestionadapterId",e.ingestionAdapterId),jsxRuntime.exports.jsx(AIWareThemeProvider,{children:jsxRuntime.exports.jsx(DynamicModuleLoader,Object.assign({modules:[getProcessingCenterDagBuilderModule(),getDataCenterProcessAIModule(),getLibraryModule()]},{children:jsxRuntime.exports.jsx(AIWareIntlProvider,{children:jsxRuntime.exports.jsx(MainLayout,Object.assign({},e))})}))}));export{DagBuilder};
20
+ `,operationName:e},t),{variables:{id:n}})))[e]})}function fetchEngineCategories(n){var o;return __awaiter(this,void 0,void 0,function*(){var e="engineCategories",t=yield baseGraphQLApiWithError(Object.assign(Object.assign({query:"\n query engineCategories($limit: Int){\n engineCategories(limit: $limit) {\n records {\n name\n description\n iconClass\n id\n engines(\n limit: 10000\n filter: { state: active }\n ) {\n count\n offset\n limit\n records {\n id\n description\n name\n state\n signedIconPath\n edgeVersion\n modifiedDateTime\n fields {\n name\n type\n defaultValue\n defaultValues\n required\n max\n min\n options {\n __typename\n key\n value\n }\n }\n standaloneJobTemplates {\n type\n }\n libraryRequired\n supportedInputFormats\n mode\n }\n }\n }\n }\n }\n ",operationName:e},n),{variables:{limit:100}}));return null==(o=t[e])?void 0:o.records})}function createDagTemplate(t,n){return __awaiter(this,void 0,void 0,function*(){var e="createDagTemplate";return(yield baseGraphQLApiWithError(Object.assign(Object.assign({query:"\n mutation createDagTemplate($input: CreateDagTemplate!){\n createDagTemplate(input: $input) {\n id\n name\n targetOrganizationId\n description\n dag\n dagTemplateLanguage\n mimeType\n cognitiveCategoryId\n tags\n }\n }\n ",operationName:e},t),{variables:{input:n}})))[e]})}function readDagTemplate(n,o){return __awaiter(this,void 0,void 0,function*(){var e="getDagTemplate",t="dagTemplate";return(yield baseGraphQLApiWithError(Object.assign(Object.assign({query:"\n query getDagTemplate($id: ID!){\n dagTemplate (id: $id) {\n id\n name\n targetOrganizationId\n description\n dag\n dagTemplateLanguage\n mimeType\n cognitiveCategoryId\n tags\n }\n }\n ",operationName:e},n),{variables:{id:o}})))[t]})}function*createDagTemplateSaga(e){try{yield createDagTemplate(yield select$1(selectApiConfigs),e.payload);yield put(actions.dagTemplates.createDagTemplateSuccess()),yield put(showMessage({content:"DAG Template saved",severity:MessageSeverity.Success}))}catch(e){console.log(e),yield put(actions.dagTemplates.createDagTemplateFailed()),yield put(showMessage({content:"Failed to save DAG Template",severity:MessageSeverity.Error}))}}function*loadDagTemplateSaga(e){try{var t=yield readDagTemplate(yield select$1(selectApiConfigs),e.payload);const o=JSON.parse(t.dag.template);var n=o.tasks.find(e=>1===e.ioFolders.length&&"output"===e.ioFolders[0].type);const r=[],i=(t,e)=>{var n=v4(),o={nodeId:n,engineId:(null==t?void 0:t.engineId)||"",engineFields:Object.keys((null==t?void 0:t.payload)||{}).map(e=>({fieldName:e,fieldValue:null==t?void 0:t.payload[e]}))};return e&&(o.parentId=e),r.push(o),n},a=(e,t)=>{const n=t||i(e);(e=>{if(!e.ioFolders.find(e=>"output"===e.type))return[];const t=e.ioFolders.filter(e=>"output"===e.type).map(e=>e.referenceId).reduce((e,t)=>{var n=o.routes.filter(e=>e.parentIoFolderReferenceId===t).map(e=>e.childIoFolderReferenceId);return e.push(...n),e},[]);return o.tasks.filter(e=>e.ioFolders.find(e=>"input"===e.type&&t.includes(e.referenceId)))})(e).forEach(e=>{var t=i(e,n);a(e,t)})};if(!n)throw new Error("Unable to find a root task for the dag template");a(n);for(const s of r)yield put(actions.dagNodes.addDagNode(s)),yield put(actions.engines.fetchEngineStart(s.engineId));yield put(actions.basicInfo.setName(t.name)),yield put(actions.basicInfo.setDescription(t.description||"")),yield put(actions.basicInfo.setBasicInfoComplete(!0)),yield put(actions.dagTemplates.loadDagTemplateSuccess())}catch(e){console.log(e),yield put(actions.dagTemplates.loadDagTemplateFailed()),yield put(showMessage({content:"Failed to load DAG Template",severity:MessageSeverity.Error}))}}function*fetchEngineSaga(t){try{var e=yield fetchEngine(yield select$1(selectApiConfigs),t.payload);yield put(actions.engines.fetchEngineComplete(e))}catch(e){console.log(e),yield put(actions.engines.fetchEngineFailed(t.payload))}}function*fetchEngineCategoriesSaga(e){try{var t=yield fetchEngineCategories(yield select$1(selectApiConfigs));yield put(actions.engines.fetchEngineCategoriesComplete(t))}catch(e){console.log(e),yield put(actions.engines.fetchEngineCategoriesFailed())}}function*fetchEngineWatcher(){yield takeEvery$1(actions.engines.fetchEngineStart,fetchEngineSaga)}function*fetchEngineCategoriesWatcher(){yield takeEvery$1(actions.engines.fetchEngineCategoriesStart,fetchEngineCategoriesSaga)}function*createDagTemplateWatcher(){yield takeEvery$1(actions.dagTemplates.createDagTemplateStart,createDagTemplateSaga)}function*loadDagTemplateWatcher(){yield takeEvery$1(actions.dagTemplates.loadDagTemplateStart,loadDagTemplateSaga)}function*rootSaga(){yield all([fetchEngineWatcher(),createDagTemplateWatcher(),loadDagTemplateWatcher(),fetchEngineCategoriesWatcher()])}function getProcessingCenterDagBuilderModule(){return{id:SLICE_NAME,reducerMap:{[SLICE_NAME]:rootReducer},sagas:[rootSaga],initialActions:[]}}$({target:"Array",proto:!0,forced:!STRICT_METHOD||CHROME_BUG},{reduce:function(e){var t=arguments.length;return $reduce(this,e,t,1<t?arguments[1]:void 0)}});const useStyles$4=makeStyles()(e=>({node:{pointerEvents:"all",position:"relative"},closeButton:{position:"absolute",top:0,right:0,transform:"translate(50%, -50%)",color:"white",background:"red",borderRadius:"100%",cursor:"pointer"},expandButton:{position:"absolute",bottom:"4px",right:"4px",fontSize:"0.9em",background:e.palette.background.default,border:"1px solid",borderColor:e.palette.text.primary,borderRadius:"100%"},addButton:{position:"absolute",bottom:0,left:"50%",transform:"translate(-50%, 50%)",color:e.palette.primary.main,background:"white",borderRadius:"100%",borderWidth:"1px",borderStyle:"solid",borderColor:e.palette.text.primary,cursor:"pointer",zIndex:2},additionalInfo:{padding:0},engineName:{width:"100%",height:"100%"}})),EngineRenderer=e=>{var e=e["data"];const{dagNode:t,isExpanded:n,bringToForeground:o,sendToBackground:r}=e,i=useDispatch();var e=useSelector(selectEngines$1);const a=useSelector(selectDagNodes);var s=!!(t.engineFields&&0<t.engineFields.length),l=react.exports.useCallback(()=>{(n?r:o)()},[o,n,r]);const c=react.exports.useCallback(t=>{t&&(a.filter(e=>e.parentId===t).forEach(e=>c(e.nodeId)),i(actions.dagNodes.removeDagNode({nodeId:t})))},[a,i]);var d=react.exports.useCallback(()=>{c(t.nodeId)},[t.nodeId,c]),u=react.exports.useCallback(()=>{t.nodeId&&(i(actions.dagNodes.removeDagNode({nodeId:t.nodeId})),t.parentId)&&a.filter(e=>e.parentId===t.nodeId).forEach(e=>i(actions.dagNodes.updateDagNode(Object.assign(Object.assign({},e),{parentId:t.parentId}))))},[t.nodeId,t.parentId,a,i]),p=react.exports.useCallback(()=>()=>{i(actions.dagNodes.setNodeToBeAdded({parentNodeId:t.nodeId,engineId:t.engineId})),i(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.nodeTypeView}))},[i,t.nodeId,t.engineId]),s=useStyles$4({hasAdditionalContent:s})["classes"],g=(null==(g=null==(g=null==(g=e.find(e=>e.id===t.engineId))?void 0:g.definition)?void 0:g.category)?void 0:g.name)||"",h=(null==(h=null==(h=e.find(e=>e.id===t.engineId))?void 0:h.definition)?void 0:h.name)||"Unknown Engine",f=(null==(f=null==(f=e.find(e=>e.id===t.engineId))?void 0:f.definition)?void 0:f.name)||"",e=(null==(e=null==(e=e.find(e=>e.id===t.engineId))?void 0:e.definition)?void 0:e.signedLogoPath)||"",m="Ingestion"===g,g="Ingestion"!==g;return jsxRuntime.exports.jsxs("div",Object.assign({className:s.node},{children:[t.parentId&&jsxRuntime.exports.jsx(Handle$1,{type:"target",position:Position.Top}),jsxRuntime.exports.jsx(DagNode,{isStartNode:void 0===t.parentId,isTooltip:m,title:h,description:f,avatarImgUrl:e,isRemoveable:g,onSettingsClick:l,onRemoveNodeClick:u,onRemoveBranchClick:d}),!m&&jsxRuntime.exports.jsx(AddNodeBtn,{id:t.engineId,onClick:p()}),jsxRuntime.exports.jsx(Handle$1,{type:"source",position:Position.Bottom})]}))},nodeWidth=258,nodeHeight=190,getLayoutedElements=(e,t)=>{const n=new dagre.graphlib.Graph;return n.setDefaultEdgeLabel(()=>({})),n.setGraph({rankdir:"TB"}),e.forEach(e=>{n.setNode(e.id,{width:nodeWidth,height:nodeHeight})}),t.forEach(e=>{n.setEdge(e.source,e.target)}),dagre.layout(n),e.forEach(e=>{var t=n.node(e.id);return e.targetPosition=Position.Top,e.sourcePosition=Position.Bottom,e.position={x:t.x-nodeWidth/2,y:t.y-nodeHeight/2},e}),{nodes:e,edges:t}},generateEdges=n=>{const o=[];return n.forEach(t=>{var e=n.find(e=>e.nodeId===t.parentId);null!=e&&e.nodeId&&t.nodeId&&o.push({id:`reactflow-edge-${e.nodeId}__`+t.nodeId,source:e.nodeId,sourceHandle:null,target:t.nodeId,targetHandle:null})}),o},DagDiagram=()=>{var e=react.exports.useMemo(()=>({engine:EngineRenderer}),[]),t=useDispatch();const n=useSelector(selectDagNodes);var o=useSelector(selectEngines$1);const[r,i]=react.exports.useState(),[a,s]=react.exports.useState([]),[l,c]=react.exports.useState([]),[d,u]=react.exports.useState();var p=react.exports.useCallback(e=>{i(e),e.fitBounds({x:-100,y:0,width:500,height:500})},[]);return react.exports.useEffect(()=>{var e=n.map(e=>({id:e.nodeId,type:"engine",data:{dagNode:e,bringToForeground:()=>u(e.nodeId),sendToBackground:()=>u(void 0),isExpanded:d===e.nodeId},deletable:!1,position:{x:0,y:0}})),{nodes:e,edges:t}=getLayoutedElements(e,generateEdges(n));c(t),s(e.map(e=>e.data.dagNode.nodeId===d?Object.assign(Object.assign({},e),{zIndex:1}):e))},[n,t,d]),react.exports.useEffect(()=>{r&&setTimeout(r.fitView,10)},[l,a,r,o]),jsxRuntime.exports.jsxs(ReactFlow,Object.assign({nodes:a,edges:l,nodeTypes:e,onInit:p,fitViewOptions:{padding:10,maxZoom:2}},{children:[jsxRuntime.exports.jsx(Controls$1,{}),jsxRuntime.exports.jsx(Background$1,{})]}))},visuallyHidden={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:-1,overflow:"hidden",padding:0,position:"absolute",whiteSpace:"nowrap",width:"1px"};var visuallyHidden$1=visuallyHidden;const useStyles$3=makeStyles()(e=>({header:{alignItems:"center",borderBottom:"0.5px solid "+e.palette.divider,display:"flex",justifyContent:"space-between",height:64,padding:e.spacing(2,2,2,6),backgroundColor:"#FAFAFA"},headerNoBorder:{alignItems:"center",borderBottom:"0.5px solid transparent",display:"flex",justifyContent:"space-between",height:64,padding:e.spacing(0,0,0,6)},marginRight:{marginRight:e.spacing(2)},navigationToggle:{marginRight:e.spacing(1)},headerActionContainer:{alignItems:"center",display:"flex",flexGrow:1,height:"100%",justifyContent:"flex-end"},verticalDivider:{borderRight:".5px solid "+e.palette.divider,height:"70%",margin:"0 "+e.spacing(1)},title:{userSelect:"none",fontStyle:"normal",fontSize:"18px",lineHeight:e.spacing(5),letterSpacing:"0.25px",textTransform:"uppercase",color:e.palette.text.secondary}})),VerticalDivider=({spacing:t})=>jsxRuntime.exports.jsx(Box,{width:"0px",height:"60%",border:"1px solid",borderColor:e=>e.palette.grey[300],margin:e=>e.spacing(0,t,0,t)}),HeaderActionButton=({name:e,icon:t,tooltip:n,onClick:o,iconStyles:r})=>{return jsxRuntime.exports.jsxs(jsxRuntime.exports.Fragment,{children:[jsxRuntime.exports.jsx(Typography,Object.assign({style:visuallyHidden$1,id:`pc-dag-builder-${e}-header-icon`},{children:n})),jsxRuntime.exports.jsx(Tooltip,Object.assign({title:n},{children:jsxRuntime.exports.jsx(IconButton,Object.assign({onClick:o,"aria-labelledby":`pc-dag-builder-${e}-header-icon`,"data-testid":`pc-dag-builder-${e}-header-icon`,size:"large"},{children:jsxRuntime.exports.jsx(t,{sx:r})}))}))]})},PanelHeader=({onPanelClose:e})=>{var t=useStyles$3()["classes"],n=useSelector(selectName);const o=useDispatch();return jsxRuntime.exports.jsxs("header",Object.assign({className:t.header,"data-testid":"pc-dag-builder-panel-header"},{children:[jsxRuntime.exports.jsx(Typography,Object.assign({variant:"h1","data-testid":"pc-dag-builder-panel-title",className:t.title},{children:"DAG Builder"})),jsxRuntime.exports.jsx(VerticalDivider,{spacing:3}),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"body1"},{children:n||"Untitled Dag"})),jsxRuntime.exports.jsx(HeaderActionButton,{name:"edit",tooltip:"Edit DAG Info",icon:EditOutlined,iconStyles:{height:"20px",width:"20px",color:e=>e.palette.grey[500]},onClick:()=>{o(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.basicInfoView}))}}),jsxRuntime.exports.jsxs("div",Object.assign({className:t.headerActionContainer},{children:[jsxRuntime.exports.jsx(Button,Object.assign({sx:{marginRight:e=>e.spacing(3)},variant:"contained",disabled:!0},{children:"Save"})),jsxRuntime.exports.jsx(VerticalDivider,{spacing:1}),jsxRuntime.exports.jsx(HeaderActionButton,{name:"help",tooltip:"Help",icon:HelpOutline,onClick:()=>console.log("Open help")}),jsxRuntime.exports.jsx(HeaderActionButton,{name:"fullscreen",tooltip:"Toggle Fullscreen",icon:FullscreenOutlined,onClick:()=>console.log("Switch to full screen")}),jsxRuntime.exports.jsx(Typography,Object.assign({style:visuallyHidden$1,id:"pc-dag-builder-close-header-icon"},{children:"Close Panel"})),jsxRuntime.exports.jsx(Tooltip,Object.assign({title:"Close DAG Builder"},{children:jsxRuntime.exports.jsx(IconButton,Object.assign({onClick:()=>{e&&e()},"aria-labelledby":"pc-dag-builder-close-header-icon","data-testid":"pc-dag-builder-close-header-icon",size:"large"},{children:jsxRuntime.exports.jsx(Hide,{})}))}))]}))]}))},{ImageUpload}=imageUpload["jsx"],{CharacterCountTextField}=characterCountTextField["jsx"],useStyles$2=makeStyles()(e=>({dagInput:{width:"340px"},formControlWrapper:{marginTop:15,paddingLeft:"20px"},bottomDivider:{width:"100%",position:"fixed",bottom:"60px"},bottomButtonContainer:{width:"380px",display:"flex",height:"60px",padding:"20px",position:"fixed",bottom:"0px",justifyContent:"center",alignItems:"center"}})),BasicInfoPanel=()=>{var e=useStyles$2()["classes"],t=useSelector(selectPreviewImage);const n=useDispatch();var o=useSelector(selectName)||"",r=useSelector(selectDescription)||"";const i=useSelector(selectDagNodes);var a=0<o.length;return jsxRuntime.exports.jsxs(OverlayPanelContainer,{children:[jsxRuntime.exports.jsx(OverlayPanelHeader,{title:SHARED_TEXT.basicInfo.title()}),jsxRuntime.exports.jsx(FormControl,Object.assign({className:e.formControlWrapper,error:!0},{children:jsxRuntime.exports.jsx(TextField,{id:"pc-dag-builder-image-name",label:SHARED_TEXT.basicInfo.name(),onChange:e=>{e=e.target.value;n(actions.basicInfo.setName(e))},className:e.dagInput,variant:"outlined",InputLabelProps:0<o.length?{shrink:!0}:{},inputProps:{maxLength:100},value:o,required:!0,"data-test":"pc-dag-builder-image-name"})})),jsxRuntime.exports.jsx(FormControl,Object.assign({className:e.formControlWrapper,error:!0},{children:jsxRuntime.exports.jsx("div",Object.assign({className:e.dagInput},{children:jsxRuntime.exports.jsx(CharacterCountTextField,{handleChange:e=>{n(actions.basicInfo.setDescription(e))},variant:"outlined",value:r,defaultValue:r,label:SHARED_TEXT.basicInfo.description(),lines:5,maxChar:300,error:!1,shrinkAlways:!1,testId:"pc-dag-builder-image-description"})}))})),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"h6",sx:{marginTop:"15px",paddingLeft:"20px"}},{children:SHARED_TEXT.basicInfo.avatar()})),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"body2",sx:{paddingLeft:"20px"}},{children:SHARED_TEXT.basicInfo.avatarDescription1()})),jsxRuntime.exports.jsx(Typography,Object.assign({variant:"body2",sx:{paddingLeft:"20px"}},{children:SHARED_TEXT.basicInfo.avatarDescription2()})),jsxRuntime.exports.jsx(FormControl,Object.assign({sx:{width:"100%"},className:e.formControlWrapper,error:!0},{children:jsxRuntime.exports.jsx(ImageUpload,{image:t,getUrl:!0,handleChange:e=>{var t;e.unsignedUrl?(t=e.unsignedUrl,e=e.getUrl,n(actions.basicInfo.setAvatarUrl(t)),n(actions.basicInfo.setPreviewImage(e))):(n(actions.basicInfo.setAvatarUrl("")),n(actions.basicInfo.setPreviewImage("")))},testId:"pc-dag-builder-image"})})),jsxRuntime.exports.jsx(OverlayPanelFooterArea,{children:jsxRuntime.exports.jsx(Button,Object.assign({disabled:!a,sx:{width:"100%",height:"28px"},variant:"contained",onClick:()=>{n(actions.basicInfo.setBasicInfoComplete(!0)),n(actions.overlayPanel.setActiveView({activeView:0===i.length?EOverlayPanelViewMode.nodeTypeView:null}))}},{children:SHARED_TEXT.basicInfo.continueButton()}))})]})},useStyles$1=makeStyles()(e=>({bottomButtonContainer:{width:"380px",display:"flex",height:"68px",padding:"20px",position:"fixed",bottom:"0px",justifyContent:"flex-end",alignItems:"center"},icon:{fill:"#FFF !important",width:"32px",height:"32px",padding:"7px",borderRadius:"50%"},selected:{backgroundColor:"#f7f7f7"}})),NodeTypePanel=()=>{const t=useStyles$1()["classes"],[n,o]=react.exports.useState("");const e=0<useSelector(selectDagNodes).length,r=useDispatch(),i=[{node:EDagNodeType.Push,icon:EngineCategoryIcons.Push,backgroundIconColor:"#F44336",sharedTextNodeType:SHARED_TEXT.nodeType.pushNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.pushNodeDescription()},{node:EDagNodeType.Pull,icon:EngineCategoryIcons.Pull,backgroundIconColor:"#4CAF50",sharedTextNodeType:SHARED_TEXT.nodeType.pullNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.pullNodeDescription()}],a=[{node:EDagNodeType.Cognition,icon:Process,backgroundIconColor:"#FFBB0A",sharedTextNodeType:SHARED_TEXT.nodeType.cognitionNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.cognitionNodeDescription()},{node:EDagNodeType.Utility,icon:EngineCategoryIcons.CognitionUtility,backgroundIconColor:"#78909C",sharedTextNodeType:SHARED_TEXT.nodeType.utilityNodeText(),sharedTextNodeDescription:SHARED_TEXT.nodeType.utilityNodeDescription()}];return jsxRuntime.exports.jsxs(OverlayPanelContainer,{children:[jsxRuntime.exports.jsx(OverlayPanelHeader,{title:SHARED_TEXT.nodeType.title()}),(e?a:i).map(e=>jsxRuntime.exports.jsxs("div",{children:[jsxRuntime.exports.jsxs(Stack$2,Object.assign({sx:{padding:"20px",cursor:"pointer"},className:n===e.node?t.selected:"",onClick:()=>o(e.node)},{children:[jsxRuntime.exports.jsxs(Stack$2,Object.assign({direction:"row",justifyItems:"center"},{children:[jsxRuntime.exports.jsx(Icon,{sx:{background:e.backgroundIconColor},className:t.icon,color:"secondary",fontSize:"small",component:e.icon,"data-test":"pc-dag-builder-node-type-icon-"+e.node}),jsxRuntime.exports.jsx(Typography,Object.assign({"data-test":"pc-dag-builder-node-type-title-"+e.node,sx:{marginLeft:"10px",lineHeight:"32px"},variant:"body2"},{children:e.sharedTextNodeType}))]})),jsxRuntime.exports.jsx(Typography,Object.assign({"data-test":"pc-dag-builder-node-type-description-"+e.node,variant:"caption",sx:{marginLeft:"42px"}},{children:e.sharedTextNodeDescription}))]})),jsxRuntime.exports.jsx(Divider,{})]},e.node)),jsxRuntime.exports.jsxs(OverlayPanelFooterArea,{children:[jsxRuntime.exports.jsx(Button,Object.assign({"data-test":"pc-dag-builder-node-type-cancel-button",sx:{color:"#2A323C",width:"67px",height:"28px"},variant:"text",onClick:()=>{r(actions.dagNodes.setNodeToBeAdded({parentNodeId:""})),r(actions.dagNodes.setOpenNodePanel(!1)),r(actions.overlayPanel.setActiveView({activeView:null}))}},{children:SHARED_TEXT.nodeType.cancelButton()})),jsxRuntime.exports.jsx(Button,Object.assign({disabled:0===n.length,"data-test":"pc-dag-builder-node-type-next-button",sx:{width:"56px",height:"28px"},variant:"outlined",onClick:()=>{r(actions.dagNodes.setNodeTypeSelected(n)),r(actions.dagNodes.setOpenNodePanel(!1)),r(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.engineListView}))}},{children:SHARED_TEXT.nodeType.nextButton()}))]})]})},OverlayPanel=()=>{var e=useSelector(selectors.overlayPanel.selectOverlayOptions),t=useSelector(selectors.overlayPanel.selectActiveView),n=useSelector(selectors.overlayPanel.selectIsOpen),e=(null==e?void 0:e.overlayWidth)||"380px";return n?jsxRuntime.exports.jsxs(Stack$2,Object.assign({sx:{background:"transparent",height:"100%",width:"100%",position:"absolute",left:0,top:0,padding:0,display:"flex",flexDirection:"row"}},{children:[jsxRuntime.exports.jsx(Box,{sx:{flexGrow:1,display:"flex",flexWrap:"wrap",justifyContent:"center",alignItems:"center"}}),jsxRuntime.exports.jsx(Fade,Object.assign({in:!0},{children:jsxRuntime.exports.jsxs(Box,Object.assign({width:e,sx:{background:"rgb(100, 100, 100, 0.25)"}},{children:[t===EOverlayPanelViewMode.basicInfoView&&jsxRuntime.exports.jsx(BasicInfoPanel,{}),t===EOverlayPanelViewMode.engineListView&&jsxRuntime.exports.jsx(EngineListPanel,{}),t===EOverlayPanelViewMode.nodeTypeView&&jsxRuntime.exports.jsx(NodeTypePanel,{})]}))}))]})):null},useStyles=makeStyles()(e=>({root:{width:"100%",position:"relative"},panel:{backgroundColor:e.palette.background.paper,boxShadow:"0px 0px 12px rgba(0, 0, 0, 0.25)",height:"calc(100vh - 60px)",display:"flex",flexDirection:"column"},fullScreen:{position:"fixed",width:"100%",height:"100vh",top:0,left:0,right:0,bottom:0,zIndex:1004},overlay:{backgroundColor:e.palette.grey[50],opacity:"0.5 !important",height:"100%",position:"absolute",top:0,width:"100%",zIndex:1001},flexGrow:{flexGrow:1},controls:{display:"flex",justifyContent:"flex-start",gap:"10px",width:"100%",padding:"20px",boxSizing:"border-box",borderBottom:"1px solid #d5dfe9"},actions:{display:"flex",alignItems:"center",gap:"10px",marginLeft:"auto"}})),MainLayout=({hidePanel:e,dagTemplateId:t,ingestionAdapterId:n})=>{var o=useStyles()["classes"];const r=useDispatch();var i=useSelector(panelsSelector)||[],a=useSelector(selectDagNodes);const s=useSelector(selectIsBasicInfoComplete),l=0<a.length;a=i.find(e=>"DATA_CENTER"===e.panelId)||{panelConfig:{dimmed:0}},a=0<(null==(i=null===a?void 0:a.panelConfig)?void 0:i.dimmed);return react.exports.useEffect(()=>{n&&!t&&(r(actions.engines.fetchEngineStart(n)),r(actions.dagNodes.addDagNode({engineId:n})))},[r,n,t]),react.exports.useEffect(()=>{r(actions.engines.fetchEngineCategoriesStart())},[]),react.exports.useEffect(()=>{s&&!l&&(r(actions.dagNodes.setOpenNodePanel(!0)),r(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.nodeTypeView}))),s||r(actions.overlayPanel.setActiveView({activeView:EOverlayPanelViewMode.basicInfoView}))},[s,l]),react.exports.useEffect(()=>{t&&r(actions.dagTemplates.loadDagTemplateStart(t))},[t,r]),jsxRuntime.exports.jsxs(Container,Object.assign({dimmed:a,fullScreen:!1,classes:o},{children:[jsxRuntime.exports.jsx("div",{children:jsxRuntime.exports.jsx(PanelHeader,{onPanelClose:e})}),jsxRuntime.exports.jsxs(Box,Object.assign({width:"100%",height:"100%",position:"relative"},{children:[jsxRuntime.exports.jsx("div",{style:{position:"relative",top:"100px",left:"100px"}}),jsxRuntime.exports.jsx(Box,Object.assign({width:"100%",height:"100%"},{children:jsxRuntime.exports.jsx(DagDiagram,{})})),jsxRuntime.exports.jsx(OverlayPanel,{})]}))]}))},Container=({fullScreen:e,classes:t,dimmed:n,children:o})=>e?jsxRuntime.exports.jsx(Portal,{children:jsxRuntime.exports.jsxs("div",Object.assign({role:"presentation","data-test":"pc-dag-builder-widget",className:classNames(t.panel,t.fullScreen)},{children:[n&&jsxRuntime.exports.jsx("div",{className:t.overlay}),o]}))}):jsxRuntime.exports.jsx("div",Object.assign({role:"presentation","data-test":"dc-widget",className:classNames(t.root,t.panel)},{children:o})),DagBuilder=e=>(console.log("ingestionadapterId",e.ingestionAdapterId),jsxRuntime.exports.jsx(AIWareThemeProvider,{children:jsxRuntime.exports.jsx(DynamicModuleLoader,Object.assign({modules:[getProcessingCenterDagBuilderModule(),getDataCenterProcessAIModule(),getLibraryModule()]},{children:jsxRuntime.exports.jsx(AIWareIntlProvider,{children:jsxRuntime.exports.jsx(MainLayout,Object.assign({},e))})}))}));export{DagBuilder};