@muonroi/ui-engine-rule-components 0.1.8 → 0.1.9

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.
@@ -698,9 +698,9 @@ React keys must be passed directly to JSX without using spread:
698
698
  `,`
699
699
  +`).split(`
700
700
  `)),d=c.reduce((u,f)=>u.concat(...f),[]);return[c,d]}return[[],[]]},[s]);return ve.useEffect(()=>{const l=(e==null?void 0:e.target)??Bbe,c=(e==null?void 0:e.actInsideInputWithModifier)??!0;if(s!==null){const d=p=>{var w,S;if(n.current=p.ctrlKey||p.metaKey||p.shiftKey||p.altKey,(!n.current||n.current&&!c)&&j_e(p))return!1;const b=Wbe(p.code,a);if(r.current.add(p[b]),$be(o,r.current,!1)){const k=((S=(w=p.composedPath)==null?void 0:w.call(p))==null?void 0:S[0])||p.target,O=(k==null?void 0:k.nodeName)==="BUTTON"||(k==null?void 0:k.nodeName)==="A";e.preventDefault!==!1&&(n.current||!O)&&p.preventDefault(),i(!0)}},u=p=>{const m=Wbe(p.code,a);$be(o,r.current,!0)?(i(!1),r.current.clear()):r.current.delete(p[m]),p.key==="Meta"&&r.current.clear(),n.current=!1},f=()=>{r.current.clear(),i(!1)};return l==null||l.addEventListener("keydown",d),l==null||l.addEventListener("keyup",u),window.addEventListener("blur",f),window.addEventListener("contextmenu",f),()=>{l==null||l.removeEventListener("keydown",d),l==null||l.removeEventListener("keyup",u),window.removeEventListener("blur",f),window.removeEventListener("contextmenu",f)}}},[s,i]),t}function $be(s,e,t){return s.filter(i=>t||i.length===e.size).some(i=>i.every(n=>e.has(n)))}function Wbe(s,e){return e.includes(s)?"code":"key"}const gje=()=>{const s=ko();return ve.useMemo(()=>({zoomIn:e=>{const{panZoom:t}=s.getState();return t?t.scaleBy(1.2,{duration:e==null?void 0:e.duration}):Promise.resolve(!1)},zoomOut:e=>{const{panZoom:t}=s.getState();return t?t.scaleBy(1/1.2,{duration:e==null?void 0:e.duration}):Promise.resolve(!1)},zoomTo:(e,t)=>{const{panZoom:i}=s.getState();return i?i.scaleTo(e,{duration:t==null?void 0:t.duration}):Promise.resolve(!1)},getZoom:()=>s.getState().transform[2],setViewport:async(e,t)=>{const{transform:[i,n,r],panZoom:o}=s.getState();return o?(await o.setViewport({x:e.x??i,y:e.y??n,zoom:e.zoom??r},t),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[e,t,i]=s.getState().transform;return{x:e,y:t,zoom:i}},setCenter:async(e,t,i)=>s.getState().setCenter(e,t,i),fitBounds:async(e,t)=>{const{width:i,height:n,minZoom:r,maxZoom:o,panZoom:a}=s.getState(),l=AG(e,i,n,r,o,(t==null?void 0:t.padding)??.1);return a?(await a.setViewport(l,{duration:t==null?void 0:t.duration,ease:t==null?void 0:t.ease,interpolate:t==null?void 0:t.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(e,t={})=>{const{transform:i,snapGrid:n,snapToGrid:r,domNode:o}=s.getState();if(!o)return e;const{x:a,y:l}=o.getBoundingClientRect(),c={x:e.x-a,y:e.y-l},d=t.snapGrid??n,u=t.snapToGrid??r;return pA(c,i,u,d)},flowToScreenPosition:e=>{const{transform:t,domNode:i}=s.getState();if(!i)return e;const{x:n,y:r}=i.getBoundingClientRect(),o=$B(e,t);return{x:o.x+n,y:o.y+r}}}),[])};function Hbe(s,e){const t=[],i=new Map,n=[];for(const r of s)if(r.type==="add"){n.push(r);continue}else if(r.type==="remove"||r.type==="replace")i.set(r.id,[r]);else{const o=i.get(r.id);o?o.push(r):i.set(r.id,[r])}for(const r of e){const o=i.get(r.id);if(!o){t.push(r);continue}if(o[0].type==="remove")continue;if(o[0].type==="replace"){t.push({...o[0].item});continue}const a={...r};for(const l of o)pje(l,a);t.push(a)}return n.length&&n.forEach(r=>{r.index!==void 0?t.splice(r.index,0,{...r.item}):t.push({...r.item})}),t}function pje(s,e){switch(s.type){case"select":{e.selected=s.selected;break}case"position":{typeof s.position<"u"&&(e.position=s.position),typeof s.dragging<"u"&&(e.dragging=s.dragging);break}case"dimensions":{typeof s.dimensions<"u"&&(e.measured={...s.dimensions},s.setAttributes&&((s.setAttributes===!0||s.setAttributes==="width")&&(e.width=s.dimensions.width),(s.setAttributes===!0||s.setAttributes==="height")&&(e.height=s.dimensions.height))),typeof s.resizing=="boolean"&&(e.resizing=s.resizing);break}}}function Vbe(s,e){return Hbe(s,e)}function zbe(s,e){return Hbe(s,e)}function $C(s,e){return{id:s,type:"select",selected:e}}function HE(s,e=new Set,t=!1){const i=[];for(const[n,r]of s){const o=e.has(n);!(r.selected===void 0&&!o)&&r.selected!==o&&(t&&(r.selected=o),i.push($C(r.id,o)))}return i}function Ube({items:s=[],lookup:e}){var n;const t=[],i=new Map(s.map(r=>[r.id,r]));for(const[r,o]of s.entries()){const a=e.get(o.id),l=((n=a==null?void 0:a.internals)==null?void 0:n.userNode)??a;l!==void 0&&l!==o&&t.push({id:o.id,item:o,type:"replace"}),l===void 0&&t.push({item:o,type:"add",index:r})}for(const[r]of e)i.get(r)===void 0&&t.push({id:r,type:"remove"});return t}function jbe(s){return{id:s.id,type:"remove"}}const qbe=s=>Hze(s),mje=s=>A_e(s);function Qbe(s){return ve.forwardRef(s)}const _je=typeof window<"u"?ve.useLayoutEffect:ve.useEffect;function Gbe(s){const[e,t]=ve.useState(BigInt(0)),[i]=ve.useState(()=>bje(()=>t(n=>n+BigInt(1))));return _je(()=>{const n=i.get();n.length&&(s(n),i.reset())},[e]),i}function bje(s){let e=[];return{get:()=>e,reset:()=>{e=[]},push:t=>{e.push(t),s()}}}const Kbe=ve.createContext(null);function vje({children:s}){const e=ko(),t=ve.useCallback(a=>{const{nodes:l=[],setNodes:c,hasDefaultNodes:d,onNodesChange:u,nodeLookup:f,fitViewQueued:p,onNodesChangeMiddlewareMap:m}=e.getState();let b=l;for(const S of a)b=typeof S=="function"?S(b):S;let w=Ube({items:b,lookup:f});for(const S of m.values())w=S(w);d&&c(b),w.length>0?u==null||u(w):p&&window.requestAnimationFrame(()=>{const{fitViewQueued:S,nodes:k,setNodes:O}=e.getState();S&&O(k)})},[]),i=Gbe(t),n=ve.useCallback(a=>{const{edges:l=[],setEdges:c,hasDefaultEdges:d,onEdgesChange:u,edgeLookup:f}=e.getState();let p=l;for(const m of a)p=typeof m=="function"?m(p):m;d?c(p):u&&u(Ube({items:p,lookup:f}))},[]),r=Gbe(n),o=ve.useMemo(()=>({nodeQueue:i,edgeQueue:r}),[]);return M.jsx(Kbe.Provider,{value:o,children:s})}function yje(){const s=ve.useContext(Kbe);if(!s)throw new Error("useBatchContext must be used within a BatchProvider");return s}const wje=s=>!!s.panZoom;function vA(){const s=gje(),e=ko(),t=yje(),i=Fs(wje),n=ve.useMemo(()=>{const r=u=>e.getState().nodeLookup.get(u),o=u=>{t.nodeQueue.push(u)},a=u=>{t.edgeQueue.push(u)},l=u=>{var S,k;const{nodeLookup:f,nodeOrigin:p}=e.getState(),m=qbe(u)?u:f.get(u.id),b=m.parentId?V_e(m.position,m.measured,m.parentId,f,p):m.position,w={...m,position:b,width:((S=m.measured)==null?void 0:S.width)??m.width,height:((k=m.measured)==null?void 0:k.height)??m.height};return PE(w)},c=(u,f,p={replace:!1})=>{o(m=>m.map(b=>{if(b.id===u){const w=typeof f=="function"?f(b):f;return p.replace&&qbe(w)?w:{...b,...w}}return b}))},d=(u,f,p={replace:!1})=>{a(m=>m.map(b=>{if(b.id===u){const w=typeof f=="function"?f(b):f;return p.replace&&mje(w)?w:{...b,...w}}return b}))};return{getNodes:()=>e.getState().nodes.map(u=>({...u})),getNode:u=>{var f;return(f=r(u))==null?void 0:f.internals.userNode},getInternalNode:r,getEdges:()=>{const{edges:u=[]}=e.getState();return u.map(f=>({...f}))},getEdge:u=>e.getState().edgeLookup.get(u),setNodes:o,setEdges:a,addNodes:u=>{const f=Array.isArray(u)?u:[u];t.nodeQueue.push(p=>[...p,...f])},addEdges:u=>{const f=Array.isArray(u)?u:[u];t.edgeQueue.push(p=>[...p,...f])},toObject:()=>{const{nodes:u=[],edges:f=[],transform:p}=e.getState(),[m,b,w]=p;return{nodes:u.map(S=>({...S})),edges:f.map(S=>({...S})),viewport:{x:m,y:b,zoom:w}}},deleteElements:async({nodes:u=[],edges:f=[]})=>{const{nodes:p,edges:m,onNodesDelete:b,onEdgesDelete:w,triggerNodeChanges:S,triggerEdgeChanges:k,onDelete:O,onBeforeDelete:L}=e.getState(),{nodes:D,edges:R}=await qze({nodesToRemove:u,edgesToRemove:f,nodes:p,edges:m,onBeforeDelete:L}),A=R.length>0,F=D.length>0;if(A){const $=R.map(jbe);w==null||w(R),k($)}if(F){const $=D.map(jbe);b==null||b(D),S($)}return(F||A)&&(O==null||O({nodes:D,edges:R})),{deletedNodes:D,deletedEdges:R}},getIntersectingNodes:(u,f=!0,p)=>{const m=W_e(u),b=m?u:l(u),w=p!==void 0;return b?(p||e.getState().nodes).filter(S=>{const k=e.getState().nodeLookup.get(S.id);if(k&&!m&&(S.id===u.id||!k.internals.positionAbsolute))return!1;const O=PE(w?S:k),L=fA(O,b);return f&&L>0||L>=O.width*O.height||L>=b.width*b.height}):[]},isNodeIntersecting:(u,f,p=!0)=>{const b=W_e(u)?u:l(u);if(!b)return!1;const w=fA(b,f);return p&&w>0||w>=f.width*f.height||w>=b.width*b.height},updateNode:c,updateNodeData:(u,f,p={replace:!1})=>{c(u,m=>{const b=typeof f=="function"?f(m):f;return p.replace?{...m,data:b}:{...m,data:{...m.data,...b}}},p)},updateEdge:d,updateEdgeData:(u,f,p={replace:!1})=>{d(u,m=>{const b=typeof f=="function"?f(m):f;return p.replace?{...m,data:b}:{...m,data:{...m.data,...b}}},p)},getNodesBounds:u=>{const{nodeLookup:f,nodeOrigin:p}=e.getState();return Vze(u,{nodeLookup:f,nodeOrigin:p})},getHandleConnections:({type:u,id:f,nodeId:p})=>{var m;return Array.from(((m=e.getState().connectionLookup.get(`${p}-${u}${f?`-${f}`:""}`))==null?void 0:m.values())??[])},getNodeConnections:({type:u,handleId:f,nodeId:p})=>{var m;return Array.from(((m=e.getState().connectionLookup.get(`${p}${u?f?`-${u}-${f}`:`-${u}`:""}`))==null?void 0:m.values())??[])},fitView:async u=>{const f=e.getState().fitViewResolver??Kze();return e.setState({fitViewQueued:!0,fitViewOptions:u,fitViewResolver:f}),t.nodeQueue.push(p=>[...p]),f.promise}}},[]);return ve.useMemo(()=>({...n,...s,viewportInitialized:i}),[i])}const Zbe=s=>s.selected,Cje=typeof window<"u"?window:void 0;function Sje({deleteKeyCode:s,multiSelectionKeyCode:e}){const t=ko(),{deleteElements:i}=vA(),n=bA(s,{actInsideInputWithModifier:!1}),r=bA(e,{target:Cje});ve.useEffect(()=>{if(n){const{edges:o,nodes:a}=t.getState();i({nodes:a.filter(Zbe),edges:o.filter(Zbe)}),t.setState({nodesSelectionActive:!1})}},[n]),ve.useEffect(()=>{t.setState({multiSelectionActive:r})},[r])}function xje(s){const e=ko();ve.useEffect(()=>{const t=()=>{var n,r,o,a;if(!s.current||!(((r=(n=s.current).checkVisibility)==null?void 0:r.call(n))??!0))return!1;const i=PG(s.current);(i.height===0||i.width===0)&&((a=(o=e.getState()).onError)==null||a.call(o,"004",df.error004())),e.setState({width:i.width||500,height:i.height||500})};if(s.current){t(),window.addEventListener("resize",t);const i=new ResizeObserver(()=>t());return i.observe(s.current),()=>{window.removeEventListener("resize",t),i&&s.current&&i.unobserve(s.current)}}},[])}const GB={position:"absolute",width:"100%",height:"100%",top:0,left:0},kje=s=>({userSelectionActive:s.userSelectionActive,lib:s.lib,connectionInProgress:s.connection.inProgress});function Oje({onPaneContextMenu:s,zoomOnScroll:e=!0,zoomOnPinch:t=!0,panOnScroll:i=!1,panOnScrollSpeed:n=.5,panOnScrollMode:r=PC.Free,zoomOnDoubleClick:o=!0,panOnDrag:a=!0,defaultViewport:l,translateExtent:c,minZoom:d,maxZoom:u,zoomActivationKeyCode:f,preventScrolling:p=!0,children:m,noWheelClassName:b,noPanClassName:w,onViewportChange:S,isControlledViewport:k,paneClickDistance:O,selectionOnDrag:L}){const D=ko(),R=ve.useRef(null),{userSelectionActive:A,lib:F,connectionInProgress:$}=Fs(kje,No),Y=bA(f),q=ve.useRef();xje(R);const j=ve.useCallback(G=>{S==null||S({x:G[0],y:G[1],zoom:G[2]}),k||D.setState({transform:G})},[S,k]);return ve.useEffect(()=>{if(R.current){q.current=IUe({domNode:R.current,minZoom:d,maxZoom:u,translateExtent:c,viewport:l,onDraggingChange:se=>D.setState(le=>le.paneDragging===se?le:{paneDragging:se}),onPanZoomStart:(se,le)=>{const{onViewportChangeStart:ie,onMoveStart:re}=D.getState();re==null||re(se,le),ie==null||ie(le)},onPanZoom:(se,le)=>{const{onViewportChange:ie,onMove:re}=D.getState();re==null||re(se,le),ie==null||ie(le)},onPanZoomEnd:(se,le)=>{const{onViewportChangeEnd:ie,onMoveEnd:re}=D.getState();re==null||re(se,le),ie==null||ie(le)}});const{x:G,y:V,zoom:J}=q.current.getViewport();return D.setState({panZoom:q.current,transform:[G,V,J],domNode:R.current.closest(".react-flow")}),()=>{var se;(se=q.current)==null||se.destroy()}}},[]),ve.useEffect(()=>{var G;(G=q.current)==null||G.update({onPaneContextMenu:s,zoomOnScroll:e,zoomOnPinch:t,panOnScroll:i,panOnScrollSpeed:n,panOnScrollMode:r,zoomOnDoubleClick:o,panOnDrag:a,zoomActivationKeyPressed:Y,preventScrolling:p,noPanClassName:w,userSelectionActive:A,noWheelClassName:b,lib:F,onTransformChange:j,connectionInProgress:$,selectionOnDrag:L,paneClickDistance:O})},[s,e,t,i,n,r,o,a,Y,p,w,A,b,F,j,$,L,O]),M.jsx("div",{className:"react-flow__renderer",ref:R,style:GB,children:m})}const Eje=s=>({userSelectionActive:s.userSelectionActive,userSelectionRect:s.userSelectionRect});function Lje(){const{userSelectionActive:s,userSelectionRect:e}=Fs(Eje,No);return s&&e?M.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:e.width,height:e.height,transform:`translate(${e.x}px, ${e.y}px)`}}):null}const JG=(s,e)=>t=>{t.target===e.current&&(s==null||s(t))},Tje=s=>({userSelectionActive:s.userSelectionActive,elementsSelectable:s.elementsSelectable,connectionInProgress:s.connection.inProgress,dragging:s.paneDragging});function Dje({isSelecting:s,selectionKeyPressed:e,selectionMode:t=dA.Full,panOnDrag:i,paneClickDistance:n,selectionOnDrag:r,onSelectionStart:o,onSelectionEnd:a,onPaneClick:l,onPaneContextMenu:c,onPaneScroll:d,onPaneMouseEnter:u,onPaneMouseMove:f,onPaneMouseLeave:p,children:m}){const b=ko(),{userSelectionActive:w,elementsSelectable:S,dragging:k,connectionInProgress:O}=Fs(Tje,No),L=S&&(s||w),D=ve.useRef(null),R=ve.useRef(),A=ve.useRef(new Set),F=ve.useRef(new Set),$=ve.useRef(!1),Y=ie=>{if($.current||O){$.current=!1;return}l==null||l(ie),b.getState().resetSelectedElements(),b.setState({nodesSelectionActive:!1})},q=ie=>{if(Array.isArray(i)&&(i!=null&&i.includes(2))){ie.preventDefault();return}c==null||c(ie)},j=d?ie=>d(ie):void 0,G=ie=>{$.current&&(ie.stopPropagation(),$.current=!1)},V=ie=>{var nt,dt;const{domNode:re}=b.getState();if(R.current=re==null?void 0:re.getBoundingClientRect(),!R.current)return;const ge=ie.target===D.current;if(!ge&&!!ie.target.closest(".nokey")||!s||!(r&&ge||e)||ie.button!==0||!ie.isPrimary)return;(dt=(nt=ie.target)==null?void 0:nt.setPointerCapture)==null||dt.call(nt,ie.pointerId),$.current=!1;const{x:De,y:Fe}=bp(ie.nativeEvent,R.current);b.setState({userSelectionRect:{width:0,height:0,startX:De,startY:Fe,x:De,y:Fe}}),ge||(ie.stopPropagation(),ie.preventDefault())},J=ie=>{const{userSelectionRect:re,transform:ge,nodeLookup:ne,edgeLookup:pe,connectionLookup:De,triggerNodeChanges:Fe,triggerEdgeChanges:nt,defaultEdgeOptions:dt,resetSelectedElements:bt}=b.getState();if(!R.current||!re)return;const{x:rt,y:Ct}=bp(ie.nativeEvent,R.current),{startX:Zt,startY:di}=re;if(!$.current){const Ei=e?0:n;if(Math.hypot(rt-Zt,Ct-di)<=Ei)return;bt(),o==null||o(ie)}$.current=!0;const Vt={startX:Zt,startY:di,x:rt<Zt?rt:Zt,y:Ct<di?Ct:di,width:Math.abs(rt-Zt),height:Math.abs(Ct-di)},Xt=A.current,Bi=F.current;A.current=new Set(RG(ne,Vt,ge,t===dA.Partial,!0).map(Ei=>Ei.id)),F.current=new Set;const $i=(dt==null?void 0:dt.selectable)??!0;for(const Ei of A.current){const Yn=De.get(Ei);if(Yn)for(const{edgeId:wr}of Yn.values()){const dn=pe.get(wr);dn&&(dn.selectable??$i)&&F.current.add(wr)}}if(!z_e(Xt,A.current)){const Ei=HE(ne,A.current,!0);Fe(Ei)}if(!z_e(Bi,F.current)){const Ei=HE(pe,F.current);nt(Ei)}b.setState({userSelectionRect:Vt,userSelectionActive:!0,nodesSelectionActive:!1})},se=ie=>{var re,ge;ie.button===0&&((ge=(re=ie.target)==null?void 0:re.releasePointerCapture)==null||ge.call(re,ie.pointerId),!w&&ie.target===D.current&&b.getState().userSelectionRect&&(Y==null||Y(ie)),b.setState({userSelectionActive:!1,userSelectionRect:null}),$.current&&(a==null||a(ie),b.setState({nodesSelectionActive:A.current.size>0})))},le=i===!0||Array.isArray(i)&&i.includes(0);return M.jsxs("div",{className:Ga(["react-flow__pane",{draggable:le,dragging:k,selection:s}]),onClick:L?void 0:JG(Y,D),onContextMenu:JG(q,D),onWheel:JG(j,D),onPointerEnter:L?void 0:u,onPointerMove:L?J:f,onPointerUp:L?se:void 0,onPointerDownCapture:L?V:void 0,onClickCapture:L?G:void 0,onPointerLeave:p,ref:D,style:GB,children:[m,M.jsx(Lje,{})]})}function eK({id:s,store:e,unselect:t=!1,nodeRef:i}){const{addSelectedNodes:n,unselectNodesAndEdges:r,multiSelectionActive:o,nodeLookup:a,onError:l}=e.getState(),c=a.get(s);if(!c){l==null||l("012",df.error012(s));return}e.setState({nodesSelectionActive:!1}),c.selected?(t||c.selected&&o)&&(r({nodes:[c],edges:[]}),requestAnimationFrame(()=>{var d;return(d=i==null?void 0:i.current)==null?void 0:d.blur()})):n([s])}function Xbe({nodeRef:s,disabled:e=!1,noDragClassName:t,handleSelector:i,nodeId:n,isSelectable:r,nodeClickDistance:o}){const a=ko(),[l,c]=ve.useState(!1),d=ve.useRef();return ve.useEffect(()=>{d.current=_Ue({getStoreItems:()=>a.getState(),onNodeMouseDown:u=>{eK({id:u,store:a,nodeRef:s})},onDragStart:()=>{c(!0)},onDragStop:()=>{c(!1)}})},[]),ve.useEffect(()=>{if(!(e||!s.current||!d.current))return d.current.update({noDragClassName:t,handleSelector:i,domNode:s.current,isSelectable:r,nodeId:n,nodeClickDistance:o}),()=>{var u;(u=d.current)==null||u.destroy()}},[t,i,e,r,s,n,o]),l}const Ije=s=>e=>e.selected&&(e.draggable||s&&typeof e.draggable>"u");function Ybe(){const s=ko();return ve.useCallback(t=>{const{nodeExtent:i,snapToGrid:n,snapGrid:r,nodesDraggable:o,onError:a,updateNodePositions:l,nodeLookup:c,nodeOrigin:d}=s.getState(),u=new Map,f=Ije(o),p=n?r[0]:5,m=n?r[1]:5,b=t.direction.x*p*t.factor,w=t.direction.y*m*t.factor;for(const[,S]of c){if(!f(S))continue;let k={x:S.internals.positionAbsolute.x+b,y:S.internals.positionAbsolute.y+w};n&&(k=gA(k,r));const{position:O,positionAbsolute:L}=M_e({nodeId:S.id,nextPosition:k,nodeLookup:c,nodeExtent:i,nodeOrigin:d,onError:a});S.position=O,S.internals.positionAbsolute=L,u.set(S.id,S)}l(u)},[])}const tK=ve.createContext(null),Rje=tK.Provider;tK.Consumer;const Jbe=()=>ve.useContext(tK),Nje=s=>({connectOnClick:s.connectOnClick,noPanClassName:s.noPanClassName,rfId:s.rfId}),Aje=(s,e,t)=>i=>{const{connectionClickStartHandle:n,connectionMode:r,connection:o}=i,{fromHandle:a,toHandle:l,isValid:c}=o,d=(l==null?void 0:l.nodeId)===s&&(l==null?void 0:l.id)===e&&(l==null?void 0:l.type)===t;return{connectingFrom:(a==null?void 0:a.nodeId)===s&&(a==null?void 0:a.id)===e&&(a==null?void 0:a.type)===t,connectingTo:d,clickConnecting:(n==null?void 0:n.nodeId)===s&&(n==null?void 0:n.id)===e&&(n==null?void 0:n.type)===t,isPossibleEndHandle:r===AE.Strict?(a==null?void 0:a.type)!==t:s!==(a==null?void 0:a.nodeId)||e!==(a==null?void 0:a.id),connectionInProcess:!!a,clickConnectionInProcess:!!n,valid:d&&c}};function Mje({type:s="source",position:e=on.Top,isValidConnection:t,isConnectable:i=!0,isConnectableStart:n=!0,isConnectableEnd:r=!0,id:o,onConnect:a,children:l,className:c,onMouseDown:d,onTouchStart:u,...f},p){var J,se;const m=o||null,b=s==="target",w=ko(),S=Jbe(),{connectOnClick:k,noPanClassName:O,rfId:L}=Fs(Nje,No),{connectingFrom:D,connectingTo:R,clickConnecting:A,isPossibleEndHandle:F,connectionInProcess:$,clickConnectionInProcess:Y,valid:q}=Fs(Aje(S,m,s),No);S||(se=(J=w.getState()).onError)==null||se.call(J,"010",df.error010());const j=le=>{const{defaultEdgeOptions:ie,onConnect:re,hasDefaultEdges:ge}=w.getState(),ne={...ie,...le};if(ge){const{edges:pe,setEdges:De}=w.getState();De(Y_e(ne,pe))}re==null||re(ne),a==null||a(ne)},G=le=>{if(!S)return;const ie=q_e(le.nativeEvent);if(n&&(ie&&le.button===0||!ie)){const re=w.getState();qG.onPointerDown(le.nativeEvent,{handleDomNode:le.currentTarget,autoPanOnConnect:re.autoPanOnConnect,connectionMode:re.connectionMode,connectionRadius:re.connectionRadius,domNode:re.domNode,nodeLookup:re.nodeLookup,lib:re.lib,isTarget:b,handleId:m,nodeId:S,flowId:re.rfId,panBy:re.panBy,cancelConnection:re.cancelConnection,onConnectStart:re.onConnectStart,onConnectEnd:(...ge)=>{var ne,pe;return(pe=(ne=w.getState()).onConnectEnd)==null?void 0:pe.call(ne,...ge)},updateConnection:re.updateConnection,onConnect:j,isValidConnection:t||((...ge)=>{var ne,pe;return((pe=(ne=w.getState()).isValidConnection)==null?void 0:pe.call(ne,...ge))??!0}),getTransform:()=>w.getState().transform,getFromHandle:()=>w.getState().connection.fromHandle,autoPanSpeed:re.autoPanSpeed,dragThreshold:re.connectionDragThreshold})}ie?d==null||d(le):u==null||u(le)},V=le=>{const{onClickConnectStart:ie,onClickConnectEnd:re,connectionClickStartHandle:ge,connectionMode:ne,isValidConnection:pe,lib:De,rfId:Fe,nodeLookup:nt,connection:dt}=w.getState();if(!S||!ge&&!n)return;if(!ge){ie==null||ie(le.nativeEvent,{nodeId:S,handleId:m,handleType:s}),w.setState({connectionClickStartHandle:{nodeId:S,type:s,id:m}});return}const bt=U_e(le.target),rt=t||pe,{connection:Ct,isValid:Zt}=qG.isValid(le.nativeEvent,{handle:{nodeId:S,id:m,type:s},connectionMode:ne,fromNodeId:ge.nodeId,fromHandleId:ge.id||null,fromType:ge.type,isValidConnection:rt,flowId:Fe,doc:bt,lib:De,nodeLookup:nt});Zt&&Ct&&j(Ct);const di=structuredClone(dt);delete di.inProgress,di.toPosition=di.toHandle?di.toHandle.position:null,re==null||re(le,di),w.setState({connectionClickStartHandle:null})};return M.jsx("div",{"data-handleid":m,"data-nodeid":S,"data-handlepos":e,"data-id":`${L}-${S}-${m}-${s}`,className:Ga(["react-flow__handle",`react-flow__handle-${e}`,"nodrag",O,c,{source:!b,target:b,connectable:i,connectablestart:n,connectableend:r,clickconnecting:A,connectingfrom:D,connectingto:R,valid:q,connectionindicator:i&&(!$||F)&&($||Y?r:n)}]),onMouseDown:G,onTouchStart:G,onClick:k?V:void 0,ref:p,...f,children:l})}const VE=ve.memo(Qbe(Mje));function Pje({data:s,isConnectable:e,sourcePosition:t=on.Bottom}){return M.jsxs(M.Fragment,{children:[s==null?void 0:s.label,M.jsx(VE,{type:"source",position:t,isConnectable:e})]})}function Fje({data:s,isConnectable:e,targetPosition:t=on.Top,sourcePosition:i=on.Bottom}){return M.jsxs(M.Fragment,{children:[M.jsx(VE,{type:"target",position:t,isConnectable:e}),s==null?void 0:s.label,M.jsx(VE,{type:"source",position:i,isConnectable:e})]})}function Bje(){return null}function $je({data:s,isConnectable:e,targetPosition:t=on.Top}){return M.jsxs(M.Fragment,{children:[M.jsx(VE,{type:"target",position:t,isConnectable:e}),s==null?void 0:s.label]})}const KB={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},eve={input:Pje,default:Fje,output:$je,group:Bje};function Wje(s){var e,t,i,n;return s.internals.handleBounds===void 0?{width:s.width??s.initialWidth??((e=s.style)==null?void 0:e.width),height:s.height??s.initialHeight??((t=s.style)==null?void 0:t.height)}:{width:s.width??((i=s.style)==null?void 0:i.width),height:s.height??((n=s.style)==null?void 0:n.height)}}const Hje=s=>{const{width:e,height:t,x:i,y:n}=hA(s.nodeLookup,{filter:r=>!!r.selected});return{width:_p(e)?e:null,height:_p(t)?t:null,userSelectionActive:s.userSelectionActive,transformString:`translate(${s.transform[0]}px,${s.transform[1]}px) scale(${s.transform[2]}) translate(${i}px,${n}px)`}};function Vje({onSelectionContextMenu:s,noPanClassName:e,disableKeyboardA11y:t}){const i=ko(),{width:n,height:r,transformString:o,userSelectionActive:a}=Fs(Hje,No),l=Ybe(),c=ve.useRef(null);ve.useEffect(()=>{var p;t||(p=c.current)==null||p.focus({preventScroll:!0})},[t]);const d=!a&&n!==null&&r!==null;if(Xbe({nodeRef:c,disabled:!d}),!d)return null;const u=s?p=>{const m=i.getState().nodes.filter(b=>b.selected);s(p,m)}:void 0,f=p=>{Object.prototype.hasOwnProperty.call(KB,p.key)&&(p.preventDefault(),l({direction:KB[p.key],factor:p.shiftKey?4:1}))};return M.jsx("div",{className:Ga(["react-flow__nodesselection","react-flow__container",e]),style:{transform:o},children:M.jsx("div",{ref:c,className:"react-flow__nodesselection-rect",onContextMenu:u,tabIndex:t?void 0:-1,onKeyDown:t?void 0:f,style:{width:n,height:r}})})}const tve=typeof window<"u"?window:void 0,zje=s=>({nodesSelectionActive:s.nodesSelectionActive,userSelectionActive:s.userSelectionActive});function ive({children:s,onPaneClick:e,onPaneMouseEnter:t,onPaneMouseMove:i,onPaneMouseLeave:n,onPaneContextMenu:r,onPaneScroll:o,paneClickDistance:a,deleteKeyCode:l,selectionKeyCode:c,selectionOnDrag:d,selectionMode:u,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:m,panActivationKeyCode:b,zoomActivationKeyCode:w,elementsSelectable:S,zoomOnScroll:k,zoomOnPinch:O,panOnScroll:L,panOnScrollSpeed:D,panOnScrollMode:R,zoomOnDoubleClick:A,panOnDrag:F,defaultViewport:$,translateExtent:Y,minZoom:q,maxZoom:j,preventScrolling:G,onSelectionContextMenu:V,noWheelClassName:J,noPanClassName:se,disableKeyboardA11y:le,onViewportChange:ie,isControlledViewport:re}){const{nodesSelectionActive:ge,userSelectionActive:ne}=Fs(zje,No),pe=bA(c,{target:tve}),De=bA(b,{target:tve}),Fe=De||F,nt=De||L,dt=d&&Fe!==!0,bt=pe||ne||dt;return Sje({deleteKeyCode:l,multiSelectionKeyCode:m}),M.jsx(Oje,{onPaneContextMenu:r,elementsSelectable:S,zoomOnScroll:k,zoomOnPinch:O,panOnScroll:nt,panOnScrollSpeed:D,panOnScrollMode:R,zoomOnDoubleClick:A,panOnDrag:!pe&&Fe,defaultViewport:$,translateExtent:Y,minZoom:q,maxZoom:j,zoomActivationKeyCode:w,preventScrolling:G,noWheelClassName:J,noPanClassName:se,onViewportChange:ie,isControlledViewport:re,paneClickDistance:a,selectionOnDrag:dt,children:M.jsxs(Dje,{onSelectionStart:f,onSelectionEnd:p,onPaneClick:e,onPaneMouseEnter:t,onPaneMouseMove:i,onPaneMouseLeave:n,onPaneContextMenu:r,onPaneScroll:o,panOnDrag:Fe,isSelecting:!!bt,selectionMode:u,selectionKeyPressed:pe,paneClickDistance:a,selectionOnDrag:dt,children:[s,ge&&M.jsx(Vje,{onSelectionContextMenu:V,noPanClassName:se,disableKeyboardA11y:le})]})})}ive.displayName="FlowRenderer";const Uje=ve.memo(ive),jje=s=>e=>s?RG(e.nodeLookup,{x:0,y:0,width:e.width,height:e.height},e.transform,!0).map(t=>t.id):Array.from(e.nodeLookup.keys());function qje(s){return Fs(ve.useCallback(jje(s),[s]),No)}const Qje=s=>s.updateNodeInternals;function Gje(){const s=Fs(Qje),[e]=ve.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(t=>{const i=new Map;t.forEach(n=>{const r=n.target.getAttribute("data-id");i.set(r,{id:r,nodeElement:n.target,force:!0})}),s(i)}));return ve.useEffect(()=>()=>{e==null||e.disconnect()},[e]),e}function Kje({node:s,nodeType:e,hasDimensions:t,resizeObserver:i}){const n=ko(),r=ve.useRef(null),o=ve.useRef(null),a=ve.useRef(s.sourcePosition),l=ve.useRef(s.targetPosition),c=ve.useRef(e),d=t&&!!s.internals.handleBounds;return ve.useEffect(()=>{r.current&&!s.hidden&&(!d||o.current!==r.current)&&(o.current&&(i==null||i.unobserve(o.current)),i==null||i.observe(r.current),o.current=r.current)},[d,s.hidden]),ve.useEffect(()=>()=>{o.current&&(i==null||i.unobserve(o.current),o.current=null)},[]),ve.useEffect(()=>{if(r.current){const u=c.current!==e,f=a.current!==s.sourcePosition,p=l.current!==s.targetPosition;(u||f||p)&&(c.current=e,a.current=s.sourcePosition,l.current=s.targetPosition,n.getState().updateNodeInternals(new Map([[s.id,{id:s.id,nodeElement:r.current,force:!0}]])))}},[s.id,e,s.sourcePosition,s.targetPosition]),r}function Zje({id:s,onClick:e,onMouseEnter:t,onMouseMove:i,onMouseLeave:n,onContextMenu:r,onDoubleClick:o,nodesDraggable:a,elementsSelectable:l,nodesConnectable:c,nodesFocusable:d,resizeObserver:u,noDragClassName:f,noPanClassName:p,disableKeyboardA11y:m,rfId:b,nodeTypes:w,nodeClickDistance:S,onError:k}){const{node:O,internals:L,isParent:D}=Fs(rt=>{const Ct=rt.nodeLookup.get(s),Zt=rt.parentLookup.has(s);return{node:Ct,internals:Ct.internals,isParent:Zt}},No);let R=O.type||"default",A=(w==null?void 0:w[R])||eve[R];A===void 0&&(k==null||k("003",df.error003(R)),R="default",A=(w==null?void 0:w.default)||eve.default);const F=!!(O.draggable||a&&typeof O.draggable>"u"),$=!!(O.selectable||l&&typeof O.selectable>"u"),Y=!!(O.connectable||c&&typeof O.connectable>"u"),q=!!(O.focusable||d&&typeof O.focusable>"u"),j=ko(),G=MG(O),V=Kje({node:O,nodeType:R,hasDimensions:G,resizeObserver:u}),J=Xbe({nodeRef:V,disabled:O.hidden||!F,noDragClassName:f,handleSelector:O.dragHandle,nodeId:s,isSelectable:$,nodeClickDistance:S}),se=Ybe();if(O.hidden)return null;const le=dv(O),ie=Wje(O),re=$||F||e||t||i||n,ge=t?rt=>t(rt,{...L.userNode}):void 0,ne=i?rt=>i(rt,{...L.userNode}):void 0,pe=n?rt=>n(rt,{...L.userNode}):void 0,De=r?rt=>r(rt,{...L.userNode}):void 0,Fe=o?rt=>o(rt,{...L.userNode}):void 0,nt=rt=>{const{selectNodesOnDrag:Ct,nodeDragThreshold:Zt}=j.getState();$&&(!Ct||!F||Zt>0)&&eK({id:s,store:j,nodeRef:V}),e&&e(rt,{...L.userNode})},dt=rt=>{if(!(j_e(rt.nativeEvent)||m)){if(T_e.includes(rt.key)&&$){const Ct=rt.key==="Escape";eK({id:s,store:j,unselect:Ct,nodeRef:V})}else if(F&&O.selected&&Object.prototype.hasOwnProperty.call(KB,rt.key)){rt.preventDefault();const{ariaLabelConfig:Ct}=j.getState();j.setState({ariaLiveMessage:Ct["node.a11yDescription.ariaLiveMessage"]({direction:rt.key.replace("Arrow","").toLowerCase(),x:~~L.positionAbsolute.x,y:~~L.positionAbsolute.y})}),se({direction:KB[rt.key],factor:rt.shiftKey?4:1})}}},bt=()=>{var Bi;if(m||!((Bi=V.current)!=null&&Bi.matches(":focus-visible")))return;const{transform:rt,width:Ct,height:Zt,autoPanOnNodeFocus:di,setCenter:Vt}=j.getState();if(!di)return;RG(new Map([[s,O]]),{x:0,y:0,width:Ct,height:Zt},rt,!0).length>0||Vt(O.position.x+le.width/2,O.position.y+le.height/2,{zoom:rt[2]})};return M.jsx("div",{className:Ga(["react-flow__node",`react-flow__node-${R}`,{[p]:F},O.className,{selected:O.selected,selectable:$,parent:D,draggable:F,dragging:J}]),ref:V,style:{zIndex:L.z,transform:`translate(${L.positionAbsolute.x}px,${L.positionAbsolute.y}px)`,pointerEvents:re?"all":"none",visibility:G?"visible":"hidden",...O.style,...ie},"data-id":s,"data-testid":`rf__node-${s}`,onMouseEnter:ge,onMouseMove:ne,onMouseLeave:pe,onContextMenu:De,onClick:nt,onDoubleClick:Fe,onKeyDown:q?dt:void 0,tabIndex:q?0:void 0,onFocus:q?bt:void 0,role:O.ariaRole??(q?"group":void 0),"aria-roledescription":"node","aria-describedby":m?void 0:`${Rbe}-${b}`,"aria-label":O.ariaLabel,...O.domAttributes,children:M.jsx(Rje,{value:s,children:M.jsx(A,{id:s,data:O.data,type:R,positionAbsoluteX:L.positionAbsolute.x,positionAbsoluteY:L.positionAbsolute.y,selected:O.selected??!1,selectable:$,draggable:F,deletable:O.deletable??!0,isConnectable:Y,sourcePosition:O.sourcePosition,targetPosition:O.targetPosition,dragging:J,dragHandle:O.dragHandle,zIndex:L.z,parentId:O.parentId,...le})})})}var Xje=ve.memo(Zje);const Yje=s=>({nodesDraggable:s.nodesDraggable,nodesConnectable:s.nodesConnectable,nodesFocusable:s.nodesFocusable,elementsSelectable:s.elementsSelectable,onError:s.onError});function nve(s){const{nodesDraggable:e,nodesConnectable:t,nodesFocusable:i,elementsSelectable:n,onError:r}=Fs(Yje,No),o=qje(s.onlyRenderVisibleElements),a=Gje();return M.jsx("div",{className:"react-flow__nodes",style:GB,children:o.map(l=>M.jsx(Xje,{id:l,nodeTypes:s.nodeTypes,nodeExtent:s.nodeExtent,onClick:s.onNodeClick,onMouseEnter:s.onNodeMouseEnter,onMouseMove:s.onNodeMouseMove,onMouseLeave:s.onNodeMouseLeave,onContextMenu:s.onNodeContextMenu,onDoubleClick:s.onNodeDoubleClick,noDragClassName:s.noDragClassName,noPanClassName:s.noPanClassName,rfId:s.rfId,disableKeyboardA11y:s.disableKeyboardA11y,resizeObserver:a,nodesDraggable:e,nodesConnectable:t,nodesFocusable:i,elementsSelectable:n,nodeClickDistance:s.nodeClickDistance,onError:r},l))})}nve.displayName="NodeRenderer";const Jje=ve.memo(nve);function eqe(s){return Fs(ve.useCallback(t=>{if(!s)return t.edges.map(n=>n.id);const i=[];if(t.width&&t.height)for(const n of t.edges){const r=t.nodeLookup.get(n.source),o=t.nodeLookup.get(n.target);r&&o&&Jze({sourceNode:r,targetNode:o,width:t.width,height:t.height,transform:t.transform})&&i.push(n.id)}return i},[s]),No)}const tqe=({color:s="none",strokeWidth:e=1})=>{const t={strokeWidth:e,...s&&{stroke:s}};return M.jsx("polyline",{className:"arrow",style:t,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},iqe=({color:s="none",strokeWidth:e=1})=>{const t={strokeWidth:e,...s&&{stroke:s,fill:s}};return M.jsx("polyline",{className:"arrowclosed",style:t,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},sve={[MB.Arrow]:tqe,[MB.ArrowClosed]:iqe};function nqe(s){const e=ko();return ve.useMemo(()=>{var n,r;return Object.prototype.hasOwnProperty.call(sve,s)?sve[s]:((r=(n=e.getState()).onError)==null||r.call(n,"009",df.error009(s)),null)},[s])}const sqe=({id:s,type:e,color:t,width:i=12.5,height:n=12.5,markerUnits:r="strokeWidth",strokeWidth:o,orient:a="auto-start-reverse"})=>{const l=nqe(e);return l?M.jsx("marker",{className:"react-flow__arrowhead",id:s,markerWidth:`${i}`,markerHeight:`${n}`,viewBox:"-10 -10 20 20",markerUnits:r,orient:a,refX:"0",refY:"0",children:M.jsx(l,{color:t,strokeWidth:o})}):null},rve=({defaultColor:s,rfId:e})=>{const t=Fs(r=>r.edges),i=Fs(r=>r.defaultEdgeOptions),n=ve.useMemo(()=>oUe(t,{id:e,defaultColor:s,defaultMarkerStart:i==null?void 0:i.markerStart,defaultMarkerEnd:i==null?void 0:i.markerEnd}),[t,i,e,s]);return n.length?M.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:M.jsx("defs",{children:n.map(r=>M.jsx(sqe,{id:r.id,type:r.type,color:r.color,width:r.width,height:r.height,markerUnits:r.markerUnits,strokeWidth:r.strokeWidth,orient:r.orient},r.id))})}):null};rve.displayName="MarkerDefinitions";var rqe=ve.memo(rve);function ove({x:s,y:e,label:t,labelStyle:i,labelShowBg:n=!0,labelBgStyle:r,labelBgPadding:o=[2,4],labelBgBorderRadius:a=2,children:l,className:c,...d}){const[u,f]=ve.useState({x:1,y:0,width:0,height:0}),p=Ga(["react-flow__edge-textwrapper",c]),m=ve.useRef(null);return ve.useEffect(()=>{if(m.current){const b=m.current.getBBox();f({x:b.x,y:b.y,width:b.width,height:b.height})}},[t]),t?M.jsxs("g",{transform:`translate(${s-u.width/2} ${e-u.height/2})`,className:p,visibility:u.width?"visible":"hidden",...d,children:[n&&M.jsx("rect",{width:u.width+2*o[0],x:-o[0],y:-o[1],height:u.height+2*o[1],className:"react-flow__edge-textbg",style:r,rx:a,ry:a}),M.jsx("text",{className:"react-flow__edge-text",y:u.height/2,dy:"0.3em",ref:m,style:i,children:t}),l]}):null}ove.displayName="EdgeText";const oqe=ve.memo(ove);function ZB({path:s,labelX:e,labelY:t,label:i,labelStyle:n,labelShowBg:r,labelBgStyle:o,labelBgPadding:a,labelBgBorderRadius:l,interactionWidth:c=20,...d}){return M.jsxs(M.Fragment,{children:[M.jsx("path",{...d,d:s,fill:"none",className:Ga(["react-flow__edge-path",d.className])}),c?M.jsx("path",{d:s,fill:"none",strokeOpacity:0,strokeWidth:c,className:"react-flow__edge-interaction"}):null,i&&_p(e)&&_p(t)?M.jsx(oqe,{x:e,y:t,label:i,labelStyle:n,labelShowBg:r,labelBgStyle:o,labelBgPadding:a,labelBgBorderRadius:l}):null]})}function ave({pos:s,x1:e,y1:t,x2:i,y2:n}){return s===on.Left||s===on.Right?[.5*(e+i),t]:[e,.5*(t+n)]}function lve({sourceX:s,sourceY:e,sourcePosition:t=on.Bottom,targetX:i,targetY:n,targetPosition:r=on.Top}){const[o,a]=ave({pos:t,x1:s,y1:e,x2:i,y2:n}),[l,c]=ave({pos:r,x1:i,y1:n,x2:s,y2:e}),[d,u,f,p]=G_e({sourceX:s,sourceY:e,targetX:i,targetY:n,sourceControlX:o,sourceControlY:a,targetControlX:l,targetControlY:c});return[`M${s},${e} C${o},${a} ${l},${c} ${i},${n}`,d,u,f,p]}function cve(s){return ve.memo(({id:e,sourceX:t,sourceY:i,targetX:n,targetY:r,sourcePosition:o,targetPosition:a,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:b,markerStart:w,interactionWidth:S})=>{const[k,O,L]=lve({sourceX:t,sourceY:i,sourcePosition:o,targetX:n,targetY:r,targetPosition:a}),D=s.isInternal?void 0:e;return M.jsx(ZB,{id:D,path:k,labelX:O,labelY:L,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:b,markerStart:w,interactionWidth:S})})}const aqe=cve({isInternal:!1}),dve=cve({isInternal:!0});aqe.displayName="SimpleBezierEdge",dve.displayName="SimpleBezierEdgeInternal";function uve(s){return ve.memo(({id:e,sourceX:t,sourceY:i,targetX:n,targetY:r,label:o,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,sourcePosition:p=on.Bottom,targetPosition:m=on.Top,markerEnd:b,markerStart:w,pathOptions:S,interactionWidth:k})=>{const[O,L,D]=FG({sourceX:t,sourceY:i,sourcePosition:p,targetX:n,targetY:r,targetPosition:m,borderRadius:S==null?void 0:S.borderRadius,offset:S==null?void 0:S.offset,stepPosition:S==null?void 0:S.stepPosition}),R=s.isInternal?void 0:e;return M.jsx(ZB,{id:R,path:O,labelX:L,labelY:D,label:o,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,markerEnd:b,markerStart:w,interactionWidth:k})})}const hve=uve({isInternal:!1}),fve=uve({isInternal:!0});hve.displayName="SmoothStepEdge",fve.displayName="SmoothStepEdgeInternal";function gve(s){return ve.memo(({id:e,...t})=>{var n;const i=s.isInternal?void 0:e;return M.jsx(hve,{...t,id:i,pathOptions:ve.useMemo(()=>{var r;return{borderRadius:0,offset:(r=t.pathOptions)==null?void 0:r.offset}},[(n=t.pathOptions)==null?void 0:n.offset])})})}const lqe=gve({isInternal:!1}),pve=gve({isInternal:!0});lqe.displayName="StepEdge",pve.displayName="StepEdgeInternal";function mve(s){return ve.memo(({id:e,sourceX:t,sourceY:i,targetX:n,targetY:r,label:o,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,markerEnd:p,markerStart:m,interactionWidth:b})=>{const[w,S,k]=J_e({sourceX:t,sourceY:i,targetX:n,targetY:r}),O=s.isInternal?void 0:e;return M.jsx(ZB,{id:O,path:w,labelX:S,labelY:k,label:o,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,markerEnd:p,markerStart:m,interactionWidth:b})})}const cqe=mve({isInternal:!1}),_ve=mve({isInternal:!0});cqe.displayName="StraightEdge",_ve.displayName="StraightEdgeInternal";function bve(s){return ve.memo(({id:e,sourceX:t,sourceY:i,targetX:n,targetY:r,sourcePosition:o=on.Bottom,targetPosition:a=on.Top,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:b,markerStart:w,pathOptions:S,interactionWidth:k})=>{const[O,L,D]=Z_e({sourceX:t,sourceY:i,sourcePosition:o,targetX:n,targetY:r,targetPosition:a,curvature:S==null?void 0:S.curvature}),R=s.isInternal?void 0:e;return M.jsx(ZB,{id:R,path:O,labelX:L,labelY:D,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:m,markerEnd:b,markerStart:w,interactionWidth:k})})}const dqe=bve({isInternal:!1}),vve=bve({isInternal:!0});dqe.displayName="BezierEdge",vve.displayName="BezierEdgeInternal";const yve={default:vve,straight:_ve,step:pve,smoothstep:fve,simplebezier:dve},wve={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},uqe=(s,e,t)=>t===on.Left?s-e:t===on.Right?s+e:s,hqe=(s,e,t)=>t===on.Top?s-e:t===on.Bottom?s+e:s,Cve="react-flow__edgeupdater";function Sve({position:s,centerX:e,centerY:t,radius:i=10,onMouseDown:n,onMouseEnter:r,onMouseOut:o,type:a}){return M.jsx("circle",{onMouseDown:n,onMouseEnter:r,onMouseOut:o,className:Ga([Cve,`${Cve}-${a}`]),cx:uqe(e,i,s),cy:hqe(t,i,s),r:i,stroke:"transparent",fill:"transparent"})}function fqe({isReconnectable:s,reconnectRadius:e,edge:t,sourceX:i,sourceY:n,targetX:r,targetY:o,sourcePosition:a,targetPosition:l,onReconnect:c,onReconnectStart:d,onReconnectEnd:u,setReconnecting:f,setUpdateHover:p}){const m=ko(),b=(L,D)=>{if(L.button!==0)return;const{autoPanOnConnect:R,domNode:A,connectionMode:F,connectionRadius:$,lib:Y,onConnectStart:q,cancelConnection:j,nodeLookup:G,rfId:V,panBy:J,updateConnection:se}=m.getState(),le=D.type==="target",ie=(ne,pe)=>{f(!1),u==null||u(ne,t,D.type,pe)},re=ne=>c==null?void 0:c(t,ne),ge=(ne,pe)=>{f(!0),d==null||d(L,t,D.type),q==null||q(ne,pe)};qG.onPointerDown(L.nativeEvent,{autoPanOnConnect:R,connectionMode:F,connectionRadius:$,domNode:A,handleId:D.id,nodeId:D.nodeId,nodeLookup:G,isTarget:le,edgeUpdaterType:D.type,lib:Y,flowId:V,cancelConnection:j,panBy:J,isValidConnection:(...ne)=>{var pe,De;return((De=(pe=m.getState()).isValidConnection)==null?void 0:De.call(pe,...ne))??!0},onConnect:re,onConnectStart:ge,onConnectEnd:(...ne)=>{var pe,De;return(De=(pe=m.getState()).onConnectEnd)==null?void 0:De.call(pe,...ne)},onReconnectEnd:ie,updateConnection:se,getTransform:()=>m.getState().transform,getFromHandle:()=>m.getState().connection.fromHandle,dragThreshold:m.getState().connectionDragThreshold,handleDomNode:L.currentTarget})},w=L=>b(L,{nodeId:t.target,id:t.targetHandle??null,type:"target"}),S=L=>b(L,{nodeId:t.source,id:t.sourceHandle??null,type:"source"}),k=()=>p(!0),O=()=>p(!1);return M.jsxs(M.Fragment,{children:[(s===!0||s==="source")&&M.jsx(Sve,{position:a,centerX:i,centerY:n,radius:e,onMouseDown:w,onMouseEnter:k,onMouseOut:O,type:"source"}),(s===!0||s==="target")&&M.jsx(Sve,{position:l,centerX:r,centerY:o,radius:e,onMouseDown:S,onMouseEnter:k,onMouseOut:O,type:"target"})]})}function gqe({id:s,edgesFocusable:e,edgesReconnectable:t,elementsSelectable:i,onClick:n,onDoubleClick:r,onContextMenu:o,onMouseEnter:a,onMouseMove:l,onMouseLeave:c,reconnectRadius:d,onReconnect:u,onReconnectStart:f,onReconnectEnd:p,rfId:m,edgeTypes:b,noPanClassName:w,onError:S,disableKeyboardA11y:k}){let O=Fs(Vt=>Vt.edgeLookup.get(s));const L=Fs(Vt=>Vt.defaultEdgeOptions);O=L?{...L,...O}:O;let D=O.type||"default",R=(b==null?void 0:b[D])||yve[D];R===void 0&&(S==null||S("011",df.error011(D)),D="default",R=(b==null?void 0:b.default)||yve.default);const A=!!(O.focusable||e&&typeof O.focusable>"u"),F=typeof u<"u"&&(O.reconnectable||t&&typeof O.reconnectable>"u"),$=!!(O.selectable||i&&typeof O.selectable>"u"),Y=ve.useRef(null),[q,j]=ve.useState(!1),[G,V]=ve.useState(!1),J=ko(),{zIndex:se,sourceX:le,sourceY:ie,targetX:re,targetY:ge,sourcePosition:ne,targetPosition:pe}=Fs(ve.useCallback(Vt=>{const Xt=Vt.nodeLookup.get(O.source),Bi=Vt.nodeLookup.get(O.target);if(!Xt||!Bi)return{zIndex:O.zIndex,...wve};const $i=rUe({id:s,sourceNode:Xt,targetNode:Bi,sourceHandle:O.sourceHandle||null,targetHandle:O.targetHandle||null,connectionMode:Vt.connectionMode,onError:S});return{zIndex:Yze({selected:O.selected,zIndex:O.zIndex,sourceNode:Xt,targetNode:Bi,elevateOnSelect:Vt.elevateEdgesOnSelect,zIndexMode:Vt.zIndexMode}),...$i||wve}},[O.source,O.target,O.sourceHandle,O.targetHandle,O.selected,O.zIndex]),No),De=ve.useMemo(()=>O.markerStart?`url('#${BG(O.markerStart,m)}')`:void 0,[O.markerStart,m]),Fe=ve.useMemo(()=>O.markerEnd?`url('#${BG(O.markerEnd,m)}')`:void 0,[O.markerEnd,m]);if(O.hidden||le===null||ie===null||re===null||ge===null)return null;const nt=Vt=>{var Ei;const{addSelectedEdges:Xt,unselectNodesAndEdges:Bi,multiSelectionActive:$i}=J.getState();$&&(J.setState({nodesSelectionActive:!1}),O.selected&&$i?(Bi({nodes:[],edges:[O]}),(Ei=Y.current)==null||Ei.blur()):Xt([s])),n&&n(Vt,O)},dt=r?Vt=>{r(Vt,{...O})}:void 0,bt=o?Vt=>{o(Vt,{...O})}:void 0,rt=a?Vt=>{a(Vt,{...O})}:void 0,Ct=l?Vt=>{l(Vt,{...O})}:void 0,Zt=c?Vt=>{c(Vt,{...O})}:void 0,di=Vt=>{var Xt;if(!k&&T_e.includes(Vt.key)&&$){const{unselectNodesAndEdges:Bi,addSelectedEdges:$i}=J.getState();Vt.key==="Escape"?((Xt=Y.current)==null||Xt.blur(),Bi({edges:[O]})):$i([s])}};return M.jsx("svg",{style:{zIndex:se},children:M.jsxs("g",{className:Ga(["react-flow__edge",`react-flow__edge-${D}`,O.className,w,{selected:O.selected,animated:O.animated,inactive:!$&&!n,updating:q,selectable:$}]),onClick:nt,onDoubleClick:dt,onContextMenu:bt,onMouseEnter:rt,onMouseMove:Ct,onMouseLeave:Zt,onKeyDown:A?di:void 0,tabIndex:A?0:void 0,role:O.ariaRole??(A?"group":"img"),"aria-roledescription":"edge","data-id":s,"data-testid":`rf__edge-${s}`,"aria-label":O.ariaLabel===null?void 0:O.ariaLabel||`Edge from ${O.source} to ${O.target}`,"aria-describedby":A?`${Nbe}-${m}`:void 0,ref:Y,...O.domAttributes,children:[!G&&M.jsx(R,{id:s,source:O.source,target:O.target,type:O.type,selected:O.selected,animated:O.animated,selectable:$,deletable:O.deletable??!0,label:O.label,labelStyle:O.labelStyle,labelShowBg:O.labelShowBg,labelBgStyle:O.labelBgStyle,labelBgPadding:O.labelBgPadding,labelBgBorderRadius:O.labelBgBorderRadius,sourceX:le,sourceY:ie,targetX:re,targetY:ge,sourcePosition:ne,targetPosition:pe,data:O.data,style:O.style,sourceHandleId:O.sourceHandle,targetHandleId:O.targetHandle,markerStart:De,markerEnd:Fe,pathOptions:"pathOptions"in O?O.pathOptions:void 0,interactionWidth:O.interactionWidth}),F&&M.jsx(fqe,{edge:O,isReconnectable:F,reconnectRadius:d,onReconnect:u,onReconnectStart:f,onReconnectEnd:p,sourceX:le,sourceY:ie,targetX:re,targetY:ge,sourcePosition:ne,targetPosition:pe,setUpdateHover:j,setReconnecting:V})]})})}var pqe=ve.memo(gqe);const mqe=s=>({edgesFocusable:s.edgesFocusable,edgesReconnectable:s.edgesReconnectable,elementsSelectable:s.elementsSelectable,connectionMode:s.connectionMode,onError:s.onError});function xve({defaultMarkerColor:s,onlyRenderVisibleElements:e,rfId:t,edgeTypes:i,noPanClassName:n,onReconnect:r,onEdgeContextMenu:o,onEdgeMouseEnter:a,onEdgeMouseMove:l,onEdgeMouseLeave:c,onEdgeClick:d,reconnectRadius:u,onEdgeDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,disableKeyboardA11y:b}){const{edgesFocusable:w,edgesReconnectable:S,elementsSelectable:k,onError:O}=Fs(mqe,No),L=eqe(e);return M.jsxs("div",{className:"react-flow__edges",children:[M.jsx(rqe,{defaultColor:s,rfId:t}),L.map(D=>M.jsx(pqe,{id:D,edgesFocusable:w,edgesReconnectable:S,elementsSelectable:k,noPanClassName:n,onReconnect:r,onContextMenu:o,onMouseEnter:a,onMouseMove:l,onMouseLeave:c,onClick:d,reconnectRadius:u,onDoubleClick:f,onReconnectStart:p,onReconnectEnd:m,rfId:t,onError:O,edgeTypes:i,disableKeyboardA11y:b},D))]})}xve.displayName="EdgeRenderer";const _qe=ve.memo(xve),bqe=s=>`translate(${s.transform[0]}px,${s.transform[1]}px) scale(${s.transform[2]})`;function vqe({children:s}){const e=Fs(bqe);return M.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:e},children:s})}function yqe(s){const e=vA(),t=ve.useRef(!1);ve.useEffect(()=>{!t.current&&e.viewportInitialized&&s&&(setTimeout(()=>s(e),1),t.current=!0)},[s,e.viewportInitialized])}const wqe=s=>{var e;return(e=s.panZoom)==null?void 0:e.syncViewport};function Cqe(s){const e=Fs(wqe),t=ko();return ve.useEffect(()=>{s&&(e==null||e(s),t.setState({transform:[s.x,s.y,s.zoom]}))},[s,e]),null}function Sqe(s){return s.connection.inProgress?{...s.connection,to:pA(s.connection.to,s.transform)}:{...s.connection}}function xqe(s){return Sqe}function kqe(s){const e=xqe();return Fs(e,No)}const Oqe=s=>({nodesConnectable:s.nodesConnectable,isValid:s.connection.isValid,inProgress:s.connection.inProgress,width:s.width,height:s.height});function Eqe({containerStyle:s,style:e,type:t,component:i}){const{nodesConnectable:n,width:r,height:o,isValid:a,inProgress:l}=Fs(Oqe,No);return!(r&&n&&l)?null:M.jsx("svg",{style:s,width:r,height:o,className:"react-flow__connectionline react-flow__container",children:M.jsx("g",{className:Ga(["react-flow__connection",N_e(a)]),children:M.jsx(kve,{style:e,type:t,CustomComponent:i,isValid:a})})})}const kve=({style:s,type:e=Ow.Bezier,CustomComponent:t,isValid:i})=>{const{inProgress:n,from:r,fromNode:o,fromHandle:a,fromPosition:l,to:c,toNode:d,toHandle:u,toPosition:f,pointer:p}=kqe();if(!n)return;if(t)return M.jsx(t,{connectionLineType:e,connectionLineStyle:s,fromNode:o,fromHandle:a,fromX:r.x,fromY:r.y,toX:c.x,toY:c.y,fromPosition:l,toPosition:f,connectionStatus:N_e(i),toNode:d,toHandle:u,pointer:p});let m="";const b={sourceX:r.x,sourceY:r.y,sourcePosition:l,targetX:c.x,targetY:c.y,targetPosition:f};switch(e){case Ow.Bezier:[m]=Z_e(b);break;case Ow.SimpleBezier:[m]=lve(b);break;case Ow.Step:[m]=FG({...b,borderRadius:0});break;case Ow.SmoothStep:[m]=FG(b);break;default:[m]=J_e(b)}return M.jsx("path",{d:m,fill:"none",className:"react-flow__connection-path",style:s})};kve.displayName="ConnectionLine";const Lqe={};function Ove(s=Lqe){const e=ve.useRef(s),t=ko();ve.useEffect(()=>{var i,n;if(process.env.NODE_ENV==="development"){const r=new Set([...Object.keys(e.current),...Object.keys(s)]);for(const o of r)if(e.current[o]!==s[o]){(n=(i=t.getState()).onError)==null||n.call(i,"002",df.error002());break}e.current=s}},[s])}function Tqe(){const s=ko(),e=ve.useRef(!1);ve.useEffect(()=>{var t,i;if(process.env.NODE_ENV==="development"&&!e.current){const n=document.querySelector(".react-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&((i=(t=s.getState()).onError)==null||i.call(t,"013",df.error013("react"))),e.current=!0}},[])}function Eve({nodeTypes:s,edgeTypes:e,onInit:t,onNodeClick:i,onEdgeClick:n,onNodeDoubleClick:r,onEdgeDoubleClick:o,onNodeMouseEnter:a,onNodeMouseMove:l,onNodeMouseLeave:c,onNodeContextMenu:d,onSelectionContextMenu:u,onSelectionStart:f,onSelectionEnd:p,connectionLineType:m,connectionLineStyle:b,connectionLineComponent:w,connectionLineContainerStyle:S,selectionKeyCode:k,selectionOnDrag:O,selectionMode:L,multiSelectionKeyCode:D,panActivationKeyCode:R,zoomActivationKeyCode:A,deleteKeyCode:F,onlyRenderVisibleElements:$,elementsSelectable:Y,defaultViewport:q,translateExtent:j,minZoom:G,maxZoom:V,preventScrolling:J,defaultMarkerColor:se,zoomOnScroll:le,zoomOnPinch:ie,panOnScroll:re,panOnScrollSpeed:ge,panOnScrollMode:ne,zoomOnDoubleClick:pe,panOnDrag:De,onPaneClick:Fe,onPaneMouseEnter:nt,onPaneMouseMove:dt,onPaneMouseLeave:bt,onPaneScroll:rt,onPaneContextMenu:Ct,paneClickDistance:Zt,nodeClickDistance:di,onEdgeContextMenu:Vt,onEdgeMouseEnter:Xt,onEdgeMouseMove:Bi,onEdgeMouseLeave:$i,reconnectRadius:Ei,onReconnect:Yn,onReconnectStart:wr,onReconnectEnd:dn,noDragClassName:wn,noWheelClassName:Wn,noPanClassName:Cn,disableKeyboardA11y:js,nodeExtent:Ur,rfId:An,viewport:ys,onViewportChange:qs}){return Ove(s),Ove(e),Tqe(),yqe(t),Cqe(ys),M.jsx(Uje,{onPaneClick:Fe,onPaneMouseEnter:nt,onPaneMouseMove:dt,onPaneMouseLeave:bt,onPaneContextMenu:Ct,onPaneScroll:rt,paneClickDistance:Zt,deleteKeyCode:F,selectionKeyCode:k,selectionOnDrag:O,selectionMode:L,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:D,panActivationKeyCode:R,zoomActivationKeyCode:A,elementsSelectable:Y,zoomOnScroll:le,zoomOnPinch:ie,zoomOnDoubleClick:pe,panOnScroll:re,panOnScrollSpeed:ge,panOnScrollMode:ne,panOnDrag:De,defaultViewport:q,translateExtent:j,minZoom:G,maxZoom:V,onSelectionContextMenu:u,preventScrolling:J,noDragClassName:wn,noWheelClassName:Wn,noPanClassName:Cn,disableKeyboardA11y:js,onViewportChange:qs,isControlledViewport:!!ys,children:M.jsxs(vqe,{children:[M.jsx(_qe,{edgeTypes:e,onEdgeClick:n,onEdgeDoubleClick:o,onReconnect:Yn,onReconnectStart:wr,onReconnectEnd:dn,onlyRenderVisibleElements:$,onEdgeContextMenu:Vt,onEdgeMouseEnter:Xt,onEdgeMouseMove:Bi,onEdgeMouseLeave:$i,reconnectRadius:Ei,defaultMarkerColor:se,noPanClassName:Cn,disableKeyboardA11y:js,rfId:An}),M.jsx(Eqe,{style:b,type:m,component:w,containerStyle:S}),M.jsx("div",{className:"react-flow__edgelabel-renderer"}),M.jsx(Jje,{nodeTypes:s,onNodeClick:i,onNodeDoubleClick:r,onNodeMouseEnter:a,onNodeMouseMove:l,onNodeMouseLeave:c,onNodeContextMenu:d,nodeClickDistance:di,onlyRenderVisibleElements:$,noPanClassName:Cn,noDragClassName:wn,disableKeyboardA11y:js,nodeExtent:Ur,rfId:An}),M.jsx("div",{className:"react-flow__viewport-portal"})]})})}Eve.displayName="GraphView";const Dqe=ve.memo(Eve),Lve=({nodes:s,edges:e,defaultNodes:t,defaultEdges:i,width:n,height:r,fitView:o,fitViewOptions:a,minZoom:l=.5,maxZoom:c=2,nodeOrigin:d,nodeExtent:u,zIndexMode:f="basic"}={})=>{const p=new Map,m=new Map,b=new Map,w=new Map,S=i??e??[],k=t??s??[],O=d??[0,0],L=u??cA;lbe(b,w,S);const D=VG(k,p,m,{nodeOrigin:O,nodeExtent:L,zIndexMode:f});let R=[0,0,1];if(o&&n&&r){const A=hA(p,{filter:q=>!!((q.width||q.initialWidth)&&(q.height||q.initialHeight))}),{x:F,y:$,zoom:Y}=AG(A,n,r,l,c,(a==null?void 0:a.padding)??.1);R=[F,$,Y]}return{rfId:"1",width:n??0,height:r??0,transform:R,nodes:k,nodesInitialized:D,nodeLookup:p,parentLookup:m,edges:S,edgeLookup:w,connectionLookup:b,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:t!==void 0,hasDefaultEdges:i!==void 0,panZoom:null,minZoom:l,maxZoom:c,translateExtent:cA,nodeExtent:L,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:AE.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:O,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:o??!1,fitViewOptions:a,fitViewResolver:null,connection:{...I_e},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:H_e,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:D_e,zIndexMode:f,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},Iqe=({nodes:s,edges:e,defaultNodes:t,defaultEdges:i,width:n,height:r,fitView:o,fitViewOptions:a,minZoom:l,maxZoom:c,nodeOrigin:d,nodeExtent:u,zIndexMode:f})=>ZUe((p,m)=>{async function b(){const{nodeLookup:w,panZoom:S,fitViewOptions:k,fitViewResolver:O,width:L,height:D,minZoom:R,maxZoom:A}=m();S&&(await jze({nodes:w,width:L,height:D,panZoom:S,minZoom:R,maxZoom:A},k),O==null||O.resolve(!0),p({fitViewResolver:null}))}return{...Lve({nodes:s,edges:e,width:n,height:r,fitView:o,fitViewOptions:a,minZoom:l,maxZoom:c,nodeOrigin:d,nodeExtent:u,defaultNodes:t,defaultEdges:i,zIndexMode:f}),setNodes:w=>{const{nodeLookup:S,parentLookup:k,nodeOrigin:O,elevateNodesOnSelect:L,fitViewQueued:D,zIndexMode:R}=m(),A=VG(w,S,k,{nodeOrigin:O,nodeExtent:u,elevateNodesOnSelect:L,checkEquality:!0,zIndexMode:R});D&&A?(b(),p({nodes:w,nodesInitialized:A,fitViewQueued:!1,fitViewOptions:void 0})):p({nodes:w,nodesInitialized:A})},setEdges:w=>{const{connectionLookup:S,edgeLookup:k}=m();lbe(S,k,w),p({edges:w})},setDefaultNodesAndEdges:(w,S)=>{if(w){const{setNodes:k}=m();k(w),p({hasDefaultNodes:!0})}if(S){const{setEdges:k}=m();k(S),p({hasDefaultEdges:!0})}},updateNodeInternals:w=>{const{triggerNodeChanges:S,nodeLookup:k,parentLookup:O,domNode:L,nodeOrigin:D,nodeExtent:R,debug:A,fitViewQueued:F,zIndexMode:$}=m(),{changes:Y,updatedInternals:q}=fUe(w,k,O,L,D,R,$);q&&(cUe(k,O,{nodeOrigin:D,nodeExtent:R,zIndexMode:$}),F?(b(),p({fitViewQueued:!1,fitViewOptions:void 0})):p({}),(Y==null?void 0:Y.length)>0&&(A&&console.log("React Flow: trigger node changes",Y),S==null||S(Y)))},updateNodePositions:(w,S=!1)=>{const k=[];let O=[];const{nodeLookup:L,triggerNodeChanges:D,connection:R,updateConnection:A,onNodesChangeMiddlewareMap:F}=m();for(const[$,Y]of w){const q=L.get($),j=!!(q!=null&&q.expandParent&&(q!=null&&q.parentId)&&(Y!=null&&Y.position)),G={id:$,type:"position",position:j?{x:Math.max(0,Y.position.x),y:Math.max(0,Y.position.y)}:Y.position,dragging:S};if(q&&R.inProgress&&R.fromNode.id===q.id){const V=BC(q,R.fromHandle,on.Left,!0);A({...R,from:V})}j&&q.parentId&&k.push({id:$,parentId:q.parentId,rect:{...Y.internals.positionAbsolute,width:Y.measured.width??0,height:Y.measured.height??0}}),O.push(G)}if(k.length>0){const{parentLookup:$,nodeOrigin:Y}=m(),q=UG(k,L,$,Y);O.push(...q)}for(const $ of F.values())O=$(O);D(O)},triggerNodeChanges:w=>{const{onNodesChange:S,setNodes:k,nodes:O,hasDefaultNodes:L,debug:D}=m();if(w!=null&&w.length){if(L){const R=Vbe(w,O);k(R)}D&&console.log("React Flow: trigger node changes",w),S==null||S(w)}},triggerEdgeChanges:w=>{const{onEdgesChange:S,setEdges:k,edges:O,hasDefaultEdges:L,debug:D}=m();if(w!=null&&w.length){if(L){const R=zbe(w,O);k(R)}D&&console.log("React Flow: trigger edge changes",w),S==null||S(w)}},addSelectedNodes:w=>{const{multiSelectionActive:S,edgeLookup:k,nodeLookup:O,triggerNodeChanges:L,triggerEdgeChanges:D}=m();if(S){const R=w.map(A=>$C(A,!0));L(R);return}L(HE(O,new Set([...w]),!0)),D(HE(k))},addSelectedEdges:w=>{const{multiSelectionActive:S,edgeLookup:k,nodeLookup:O,triggerNodeChanges:L,triggerEdgeChanges:D}=m();if(S){const R=w.map(A=>$C(A,!0));D(R);return}D(HE(k,new Set([...w]))),L(HE(O,new Set,!0))},unselectNodesAndEdges:({nodes:w,edges:S}={})=>{const{edges:k,nodes:O,nodeLookup:L,triggerNodeChanges:D,triggerEdgeChanges:R}=m(),A=w||O,F=S||k,$=[];for(const q of A){if(!q.selected)continue;const j=L.get(q.id);j&&(j.selected=!1),$.push($C(q.id,!1))}const Y=[];for(const q of F)q.selected&&Y.push($C(q.id,!1));D($),R(Y)},setMinZoom:w=>{const{panZoom:S,maxZoom:k}=m();S==null||S.setScaleExtent([w,k]),p({minZoom:w})},setMaxZoom:w=>{const{panZoom:S,minZoom:k}=m();S==null||S.setScaleExtent([k,w]),p({maxZoom:w})},setTranslateExtent:w=>{var S;(S=m().panZoom)==null||S.setTranslateExtent(w),p({translateExtent:w})},resetSelectedElements:()=>{const{edges:w,nodes:S,triggerNodeChanges:k,triggerEdgeChanges:O,elementsSelectable:L}=m();if(!L)return;const D=S.reduce((A,F)=>F.selected?[...A,$C(F.id,!1)]:A,[]),R=w.reduce((A,F)=>F.selected?[...A,$C(F.id,!1)]:A,[]);k(D),O(R)},setNodeExtent:w=>{const{nodes:S,nodeLookup:k,parentLookup:O,nodeOrigin:L,elevateNodesOnSelect:D,nodeExtent:R,zIndexMode:A}=m();w[0][0]===R[0][0]&&w[0][1]===R[0][1]&&w[1][0]===R[1][0]&&w[1][1]===R[1][1]||(VG(S,k,O,{nodeOrigin:L,nodeExtent:w,elevateNodesOnSelect:D,checkEquality:!1,zIndexMode:A}),p({nodeExtent:w}))},panBy:w=>{const{transform:S,width:k,height:O,panZoom:L,translateExtent:D}=m();return gUe({delta:w,panZoom:L,transform:S,translateExtent:D,width:k,height:O})},setCenter:async(w,S,k)=>{const{width:O,height:L,maxZoom:D,panZoom:R}=m();if(!R)return Promise.resolve(!1);const A=typeof(k==null?void 0:k.zoom)<"u"?k.zoom:D;return await R.setViewport({x:O/2-w*A,y:L/2-S*A,zoom:A},{duration:k==null?void 0:k.duration,ease:k==null?void 0:k.ease,interpolate:k==null?void 0:k.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{p({connection:{...I_e}})},updateConnection:w=>{p({connection:w})},reset:()=>p({...Lve()})}},Object.is);function Tve({initialNodes:s,initialEdges:e,defaultNodes:t,defaultEdges:i,initialWidth:n,initialHeight:r,initialMinZoom:o,initialMaxZoom:a,initialFitViewOptions:l,fitView:c,nodeOrigin:d,nodeExtent:u,zIndexMode:f,children:p}){const[m]=ve.useState(()=>Iqe({nodes:s,edges:e,defaultNodes:t,defaultEdges:i,width:n,height:r,fitView:c,minZoom:o,maxZoom:a,fitViewOptions:l,nodeOrigin:d,nodeExtent:u,zIndexMode:f}));return M.jsx(XUe,{value:m,children:M.jsx(vje,{children:p})})}function Rqe({children:s,nodes:e,edges:t,defaultNodes:i,defaultEdges:n,width:r,height:o,fitView:a,fitViewOptions:l,minZoom:c,maxZoom:d,nodeOrigin:u,nodeExtent:f,zIndexMode:p}){return ve.useContext(jB)?M.jsx(M.Fragment,{children:s}):M.jsx(Tve,{initialNodes:e,initialEdges:t,defaultNodes:i,defaultEdges:n,initialWidth:r,initialHeight:o,fitView:a,initialFitViewOptions:l,initialMinZoom:c,initialMaxZoom:d,nodeOrigin:u,nodeExtent:f,zIndexMode:p,children:s})}const Nqe={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function Aqe({nodes:s,edges:e,defaultNodes:t,defaultEdges:i,className:n,nodeTypes:r,edgeTypes:o,onNodeClick:a,onEdgeClick:l,onInit:c,onMove:d,onMoveStart:u,onMoveEnd:f,onConnect:p,onConnectStart:m,onConnectEnd:b,onClickConnectStart:w,onClickConnectEnd:S,onNodeMouseEnter:k,onNodeMouseMove:O,onNodeMouseLeave:L,onNodeContextMenu:D,onNodeDoubleClick:R,onNodeDragStart:A,onNodeDrag:F,onNodeDragStop:$,onNodesDelete:Y,onEdgesDelete:q,onDelete:j,onSelectionChange:G,onSelectionDragStart:V,onSelectionDrag:J,onSelectionDragStop:se,onSelectionContextMenu:le,onSelectionStart:ie,onSelectionEnd:re,onBeforeDelete:ge,connectionMode:ne,connectionLineType:pe=Ow.Bezier,connectionLineStyle:De,connectionLineComponent:Fe,connectionLineContainerStyle:nt,deleteKeyCode:dt="Backspace",selectionKeyCode:bt="Shift",selectionOnDrag:rt=!1,selectionMode:Ct=dA.Full,panActivationKeyCode:Zt="Space",multiSelectionKeyCode:di=mA()?"Meta":"Control",zoomActivationKeyCode:Vt=mA()?"Meta":"Control",snapToGrid:Xt,snapGrid:Bi,onlyRenderVisibleElements:$i=!1,selectNodesOnDrag:Ei,nodesDraggable:Yn,autoPanOnNodeFocus:wr,nodesConnectable:dn,nodesFocusable:wn,nodeOrigin:Wn=Abe,edgesFocusable:Cn,edgesReconnectable:js,elementsSelectable:Ur=!0,defaultViewport:An=dje,minZoom:ys=.5,maxZoom:qs=2,translateExtent:Bo=cA,preventScrolling:vo=!0,nodeExtent:Ot,defaultMarkerColor:ni="#b1b1b7",zoomOnScroll:zi=!0,zoomOnPinch:Fn=!0,panOnScroll:pn=!1,panOnScrollSpeed:as=.5,panOnScrollMode:gs=PC.Free,zoomOnDoubleClick:ws=!0,panOnDrag:Pi=!0,onPaneClick:jn,onPaneMouseEnter:ss,onPaneMouseMove:Jo,onPaneMouseLeave:mn,onPaneScroll:uo,onPaneContextMenu:ea,paneClickDistance:fc=1,nodeClickDistance:Ml=0,children:mi,onReconnect:ae,onReconnectStart:de,onReconnectEnd:ue,onEdgeContextMenu:Ce,onEdgeDoubleClick:ke,onEdgeMouseEnter:Me,onEdgeMouseMove:Qe,onEdgeMouseLeave:St,reconnectRadius:zt=10,onNodesChange:fe,onEdgesChange:Ye,noDragClassName:vt="nodrag",noWheelClassName:It="nowheel",noPanClassName:ri="nopan",fitView:xi,fitViewOptions:Di,connectOnClick:Yi,attributionPosition:Mt,proOptions:xe,defaultEdgeOptions:pt,elevateNodesOnSelect:Qt=!0,elevateEdgesOnSelect:Hn=!1,disableKeyboardA11y:ls=!1,autoPanOnConnect:Ci,autoPanOnNodeDrag:$t,autoPanSpeed:Mr,connectionRadius:Pl,isValidConnection:dr,onError:Lo,style:Bu,id:$d,nodeDragThreshold:Ha,connectionDragThreshold:Gc,viewport:ba,onViewportChange:Wf,width:Kc,height:yo,colorMode:$u="light",debug:ur,onScroll:Va,ariaLabelConfig:gc,zIndexMode:Hf="basic",...Wd},Wu){const Vh=$d||"1",Vf=fje($u),Zc=ve.useCallback(wm=>{wm.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Va==null||Va(wm)},[Va]);return M.jsx("div",{"data-testid":"rf__wrapper",...Wd,onScroll:Zc,style:{...Bu,...Nqe},ref:Wu,className:Ga(["react-flow",n,Vf]),id:$d,role:"application",children:M.jsxs(Rqe,{nodes:s,edges:e,width:Kc,height:yo,fitView:xi,fitViewOptions:Di,minZoom:ys,maxZoom:qs,nodeOrigin:Wn,nodeExtent:Ot,zIndexMode:Hf,children:[M.jsx(Dqe,{onInit:c,onNodeClick:a,onEdgeClick:l,onNodeMouseEnter:k,onNodeMouseMove:O,onNodeMouseLeave:L,onNodeContextMenu:D,onNodeDoubleClick:R,nodeTypes:r,edgeTypes:o,connectionLineType:pe,connectionLineStyle:De,connectionLineComponent:Fe,connectionLineContainerStyle:nt,selectionKeyCode:bt,selectionOnDrag:rt,selectionMode:Ct,deleteKeyCode:dt,multiSelectionKeyCode:di,panActivationKeyCode:Zt,zoomActivationKeyCode:Vt,onlyRenderVisibleElements:$i,defaultViewport:An,translateExtent:Bo,minZoom:ys,maxZoom:qs,preventScrolling:vo,zoomOnScroll:zi,zoomOnPinch:Fn,zoomOnDoubleClick:ws,panOnScroll:pn,panOnScrollSpeed:as,panOnScrollMode:gs,panOnDrag:Pi,onPaneClick:jn,onPaneMouseEnter:ss,onPaneMouseMove:Jo,onPaneMouseLeave:mn,onPaneScroll:uo,onPaneContextMenu:ea,paneClickDistance:fc,nodeClickDistance:Ml,onSelectionContextMenu:le,onSelectionStart:ie,onSelectionEnd:re,onReconnect:ae,onReconnectStart:de,onReconnectEnd:ue,onEdgeContextMenu:Ce,onEdgeDoubleClick:ke,onEdgeMouseEnter:Me,onEdgeMouseMove:Qe,onEdgeMouseLeave:St,reconnectRadius:zt,defaultMarkerColor:ni,noDragClassName:vt,noWheelClassName:It,noPanClassName:ri,rfId:Vh,disableKeyboardA11y:ls,nodeExtent:Ot,viewport:ba,onViewportChange:Wf}),M.jsx(hje,{nodes:s,edges:e,defaultNodes:t,defaultEdges:i,onConnect:p,onConnectStart:m,onConnectEnd:b,onClickConnectStart:w,onClickConnectEnd:S,nodesDraggable:Yn,autoPanOnNodeFocus:wr,nodesConnectable:dn,nodesFocusable:wn,edgesFocusable:Cn,edgesReconnectable:js,elementsSelectable:Ur,elevateNodesOnSelect:Qt,elevateEdgesOnSelect:Hn,minZoom:ys,maxZoom:qs,nodeExtent:Ot,onNodesChange:fe,onEdgesChange:Ye,snapToGrid:Xt,snapGrid:Bi,connectionMode:ne,translateExtent:Bo,connectOnClick:Yi,defaultEdgeOptions:pt,fitView:xi,fitViewOptions:Di,onNodesDelete:Y,onEdgesDelete:q,onDelete:j,onNodeDragStart:A,onNodeDrag:F,onNodeDragStop:$,onSelectionDrag:J,onSelectionDragStart:V,onSelectionDragStop:se,onMove:d,onMoveStart:u,onMoveEnd:f,noPanClassName:ri,nodeOrigin:Wn,rfId:Vh,autoPanOnConnect:Ci,autoPanOnNodeDrag:$t,autoPanSpeed:Mr,onError:Lo,connectionRadius:Pl,isValidConnection:dr,selectNodesOnDrag:Ei,nodeDragThreshold:Ha,connectionDragThreshold:Gc,onBeforeDelete:ge,debug:ur,ariaLabelConfig:gc,zIndexMode:Hf}),M.jsx(cje,{onSelectionChange:G}),mi,M.jsx(sje,{proOptions:xe,position:Mt}),M.jsx(nje,{rfId:Vh,disableKeyboardA11y:ls})]})})}var Mqe=Qbe(Aqe);function Pqe(){const s=ko();return ve.useCallback(e=>{const{domNode:t,updateNodeInternals:i}=s.getState(),n=Array.isArray(e)?e:[e],r=new Map;n.forEach(o=>{const a=t==null?void 0:t.querySelector(`.react-flow__node[data-id="${o}"]`);a&&r.set(o,{id:o,nodeElement:a,force:!0})}),requestAnimationFrame(()=>i(r,{triggerFitView:!1}))},[])}const Fqe=s=>e=>{if(!s.includeHiddenNodes)return e.nodesInitialized;if(e.nodeLookup.size===0)return!1;for(const[,{internals:t}]of e.nodeLookup)if(t.handleBounds===void 0||!MG(t.userNode))return!1;return!0};function Bqe(s={includeHiddenNodes:!1}){return Fs(Fqe(s))}function $qe({dimensions:s,lineWidth:e,variant:t,className:i}){return M.jsx("path",{strokeWidth:e,d:`M${s[0]/2} 0 V${s[1]} M0 ${s[1]/2} H${s[0]}`,className:Ga(["react-flow__background-pattern",t,i])})}function Wqe({radius:s,className:e}){return M.jsx("circle",{cx:s,cy:s,r:s,className:Ga(["react-flow__background-pattern","dots",e])})}var Tw;(function(s){s.Lines="lines",s.Dots="dots",s.Cross="cross"})(Tw||(Tw={}));const Hqe={[Tw.Dots]:1,[Tw.Lines]:1,[Tw.Cross]:6},Vqe=s=>({transform:s.transform,patternId:`pattern-${s.rfId}`});function Dve({id:s,variant:e=Tw.Dots,gap:t=20,size:i,lineWidth:n=1,offset:r=0,color:o,bgColor:a,style:l,className:c,patternClassName:d}){const u=ve.useRef(null),{transform:f,patternId:p}=Fs(Vqe,No),m=i||Hqe[e],b=e===Tw.Dots,w=e===Tw.Cross,S=Array.isArray(t)?t:[t,t],k=[S[0]*f[2]||1,S[1]*f[2]||1],O=m*f[2],L=Array.isArray(r)?r:[r,r],D=w?[O,O]:k,R=[L[0]*f[2]||1+D[0]/2,L[1]*f[2]||1+D[1]/2],A=`${p}${s||""}`;return M.jsxs("svg",{className:Ga(["react-flow__background",c]),style:{...l,...GB,"--xy-background-color-props":a,"--xy-background-pattern-color-props":o},ref:u,"data-testid":"rf__background",children:[M.jsx("pattern",{id:A,x:f[0]%k[0],y:f[1]%k[1],width:k[0],height:k[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${R[0]},-${R[1]})`,children:b?M.jsx(Wqe,{radius:O/2,className:d}):M.jsx($qe,{dimensions:D,lineWidth:n,variant:e,className:d})}),M.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${A})`})]})}Dve.displayName="Background";const zqe=ve.memo(Dve);function Uqe(){return M.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:M.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function jqe(){return M.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:M.jsx("path",{d:"M0 0h32v4.2H0z"})})}function qqe(){return M.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:M.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 Qqe(){return M.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:M.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 Gqe(){return M.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:M.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"})})}function XB({children:s,className:e,...t}){return M.jsx("button",{type:"button",className:Ga(["react-flow__controls-button",e]),...t,children:s})}const Kqe=s=>({isInteractive:s.nodesDraggable||s.nodesConnectable||s.elementsSelectable,minZoomReached:s.transform[2]<=s.minZoom,maxZoomReached:s.transform[2]>=s.maxZoom,ariaLabelConfig:s.ariaLabelConfig});function Ive({style:s,showZoom:e=!0,showFitView:t=!0,showInteractive:i=!0,fitViewOptions:n,onZoomIn:r,onZoomOut:o,onFitView:a,onInteractiveChange:l,className:c,children:d,position:u="bottom-left",orientation:f="vertical","aria-label":p}){const m=ko(),{isInteractive:b,minZoomReached:w,maxZoomReached:S,ariaLabelConfig:k}=Fs(Kqe,No),{zoomIn:O,zoomOut:L,fitView:D}=vA(),R=()=>{O(),r==null||r()},A=()=>{L(),o==null||o()},F=()=>{D(n),a==null||a()},$=()=>{m.setState({nodesDraggable:!b,nodesConnectable:!b,elementsSelectable:!b}),l==null||l(!b)},Y=f==="horizontal"?"horizontal":"vertical";return M.jsxs(qB,{className:Ga(["react-flow__controls",Y,c]),position:u,style:s,"data-testid":"rf__controls","aria-label":p??k["controls.ariaLabel"],children:[e&&M.jsxs(M.Fragment,{children:[M.jsx(XB,{onClick:R,className:"react-flow__controls-zoomin",title:k["controls.zoomIn.ariaLabel"],"aria-label":k["controls.zoomIn.ariaLabel"],disabled:S,children:M.jsx(Uqe,{})}),M.jsx(XB,{onClick:A,className:"react-flow__controls-zoomout",title:k["controls.zoomOut.ariaLabel"],"aria-label":k["controls.zoomOut.ariaLabel"],disabled:w,children:M.jsx(jqe,{})})]}),t&&M.jsx(XB,{className:"react-flow__controls-fitview",onClick:F,title:k["controls.fitView.ariaLabel"],"aria-label":k["controls.fitView.ariaLabel"],children:M.jsx(qqe,{})}),i&&M.jsx(XB,{className:"react-flow__controls-interactive",onClick:$,title:k["controls.interactive.ariaLabel"],"aria-label":k["controls.interactive.ariaLabel"],children:b?M.jsx(Gqe,{}):M.jsx(Qqe,{})}),d]})}Ive.displayName="Controls";const Zqe=ve.memo(Ive);function Xqe({id:s,x:e,y:t,width:i,height:n,style:r,color:o,strokeColor:a,strokeWidth:l,className:c,borderRadius:d,shapeRendering:u,selected:f,onClick:p}){const{background:m,backgroundColor:b}=r||{},w=o||m||b;return M.jsx("rect",{className:Ga(["react-flow__minimap-node",{selected:f},c]),x:e,y:t,rx:d,ry:d,width:i,height:n,style:{fill:w,stroke:a,strokeWidth:l},shapeRendering:u,onClick:p?S=>p(S,s):void 0})}const Yqe=ve.memo(Xqe),Jqe=s=>s.nodes.map(e=>e.id),iK=s=>s instanceof Function?s:()=>s;function eQe({nodeStrokeColor:s,nodeColor:e,nodeClassName:t="",nodeBorderRadius:i=5,nodeStrokeWidth:n,nodeComponent:r=Yqe,onClick:o}){const a=Fs(Jqe,No),l=iK(e),c=iK(s),d=iK(t),u=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return M.jsx(M.Fragment,{children:a.map(f=>M.jsx(iQe,{id:f,nodeColorFunc:l,nodeStrokeColorFunc:c,nodeClassNameFunc:d,nodeBorderRadius:i,nodeStrokeWidth:n,NodeComponent:r,onClick:o,shapeRendering:u},f))})}function tQe({id:s,nodeColorFunc:e,nodeStrokeColorFunc:t,nodeClassNameFunc:i,nodeBorderRadius:n,nodeStrokeWidth:r,shapeRendering:o,NodeComponent:a,onClick:l}){const{node:c,x:d,y:u,width:f,height:p}=Fs(m=>{const b=m.nodeLookup.get(s);if(!b)return{node:void 0,x:0,y:0,width:0,height:0};const w=b.internals.userNode,{x:S,y:k}=b.internals.positionAbsolute,{width:O,height:L}=dv(w);return{node:w,x:S,y:k,width:O,height:L}},No);return!c||c.hidden||!MG(c)?null:M.jsx(a,{x:d,y:u,width:f,height:p,style:c.style,selected:!!c.selected,className:i(c),color:e(c),borderRadius:n,strokeColor:t(c),strokeWidth:r,shapeRendering:o,onClick:l,id:c.id})}const iQe=ve.memo(tQe);var nQe=ve.memo(eQe);const sQe=200,rQe=150,oQe=s=>!s.hidden,aQe=s=>{const e={x:-s.transform[0]/s.transform[2],y:-s.transform[1]/s.transform[2],width:s.width/s.transform[2],height:s.height/s.transform[2]};return{viewBB:e,boundingRect:s.nodeLookup.size>0?$_e(hA(s.nodeLookup,{filter:oQe}),e):e,rfId:s.rfId,panZoom:s.panZoom,translateExtent:s.translateExtent,flowWidth:s.width,flowHeight:s.height,ariaLabelConfig:s.ariaLabelConfig}},lQe="react-flow__minimap-desc";function Rve({style:s,className:e,nodeStrokeColor:t,nodeColor:i,nodeClassName:n="",nodeBorderRadius:r=5,nodeStrokeWidth:o,nodeComponent:a,bgColor:l,maskColor:c,maskStrokeColor:d,maskStrokeWidth:u,position:f="bottom-right",onClick:p,onNodeClick:m,pannable:b=!1,zoomable:w=!1,ariaLabel:S,inversePan:k,zoomStep:O=1,offsetScale:L=5}){const D=ko(),R=ve.useRef(null),{boundingRect:A,viewBB:F,rfId:$,panZoom:Y,translateExtent:q,flowWidth:j,flowHeight:G,ariaLabelConfig:V}=Fs(aQe,No),J=(s==null?void 0:s.width)??sQe,se=(s==null?void 0:s.height)??rQe,le=A.width/J,ie=A.height/se,re=Math.max(le,ie),ge=re*J,ne=re*se,pe=L*re,De=A.x-(ge-A.width)/2-pe,Fe=A.y-(ne-A.height)/2-pe,nt=ge+pe*2,dt=ne+pe*2,bt=`${lQe}-${$}`,rt=ve.useRef(0),Ct=ve.useRef();rt.current=re,ve.useEffect(()=>{if(R.current&&Y)return Ct.current=SUe({domNode:R.current,panZoom:Y,getTransform:()=>D.getState().transform,getViewScale:()=>rt.current}),()=>{var Xt;(Xt=Ct.current)==null||Xt.destroy()}},[Y]),ve.useEffect(()=>{var Xt;(Xt=Ct.current)==null||Xt.update({translateExtent:q,width:j,height:G,inversePan:k,pannable:b,zoomStep:O,zoomable:w})},[b,w,k,O,q,j,G]);const Zt=p?Xt=>{var Ei;const[Bi,$i]=((Ei=Ct.current)==null?void 0:Ei.pointer(Xt))||[0,0];p(Xt,{x:Bi,y:$i})}:void 0,di=m?ve.useCallback((Xt,Bi)=>{const $i=D.getState().nodeLookup.get(Bi).internals.userNode;m(Xt,$i)},[]):void 0,Vt=S??V["minimap.ariaLabel"];return M.jsx(qB,{position:f,style:{...s,"--xy-minimap-background-color-props":typeof l=="string"?l:void 0,"--xy-minimap-mask-background-color-props":typeof c=="string"?c:void 0,"--xy-minimap-mask-stroke-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-width-props":typeof u=="number"?u*re:void 0,"--xy-minimap-node-background-color-props":typeof i=="string"?i:void 0,"--xy-minimap-node-stroke-color-props":typeof t=="string"?t:void 0,"--xy-minimap-node-stroke-width-props":typeof o=="number"?o:void 0},className:Ga(["react-flow__minimap",e]),"data-testid":"rf__minimap",children:M.jsxs("svg",{width:J,height:se,viewBox:`${De} ${Fe} ${nt} ${dt}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":bt,ref:R,onClick:Zt,children:[Vt&&M.jsx("title",{id:bt,children:Vt}),M.jsx(nQe,{onClick:di,nodeColor:i,nodeStrokeColor:t,nodeBorderRadius:r,nodeClassName:n,nodeStrokeWidth:o,nodeComponent:a}),M.jsx("path",{className:"react-flow__minimap-mask",d:`M${De-pe},${Fe-pe}h${nt+pe*2}v${dt+pe*2}h${-nt-pe*2}z
701
- M${F.x},${F.y}h${F.width}v${F.height}h${-F.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Rve.displayName="MiniMap";const cQe=ve.memo(Rve),dQe=s=>e=>s?`${Math.max(1/e.transform[2],1)}`:void 0,uQe={[WE.Line]:"right",[WE.Handle]:"bottom-right"};function hQe({nodeId:s,position:e,variant:t=WE.Handle,className:i,style:n=void 0,children:r,color:o,minWidth:a=10,minHeight:l=10,maxWidth:c=Number.MAX_VALUE,maxHeight:d=Number.MAX_VALUE,keepAspectRatio:u=!1,resizeDirection:f,autoScale:p=!0,shouldResize:m,onResizeStart:b,onResize:w,onResizeEnd:S}){const k=Jbe(),O=typeof s=="string"?s:k,L=ko(),D=ve.useRef(null),R=t===WE.Handle,A=Fs(ve.useCallback(dQe(R&&p),[R,p]),No),F=ve.useRef(null),$=e??uQe[t];ve.useEffect(()=>{if(!(!D.current||!O))return F.current||(F.current=FUe({domNode:D.current,nodeId:O,getStoreItems:()=>{const{nodeLookup:q,transform:j,snapGrid:G,snapToGrid:V,nodeOrigin:J,domNode:se}=L.getState();return{nodeLookup:q,transform:j,snapGrid:G,snapToGrid:V,nodeOrigin:J,paneDomNode:se}},onChange:(q,j)=>{const{triggerNodeChanges:G,nodeLookup:V,parentLookup:J,nodeOrigin:se}=L.getState(),le=[],ie={x:q.x,y:q.y},re=V.get(O);if(re&&re.expandParent&&re.parentId){const ge=re.origin??se,ne=q.width??re.measured.width??0,pe=q.height??re.measured.height??0,De={id:re.id,parentId:re.parentId,rect:{width:ne,height:pe,...V_e({x:q.x??re.position.x,y:q.y??re.position.y},{width:ne,height:pe},re.parentId,V,ge)}},Fe=UG([De],V,J,se);le.push(...Fe),ie.x=q.x?Math.max(ge[0]*ne,q.x):void 0,ie.y=q.y?Math.max(ge[1]*pe,q.y):void 0}if(ie.x!==void 0&&ie.y!==void 0){const ge={id:O,type:"position",position:{...ie}};le.push(ge)}if(q.width!==void 0&&q.height!==void 0){const ne={id:O,type:"dimensions",resizing:!0,setAttributes:f?f==="horizontal"?"width":"height":!0,dimensions:{width:q.width,height:q.height}};le.push(ne)}for(const ge of j){const ne={...ge,type:"position"};le.push(ne)}G(le)},onEnd:({width:q,height:j})=>{const G={id:O,type:"dimensions",resizing:!1,dimensions:{width:q,height:j}};L.getState().triggerNodeChanges([G])}})),F.current.update({controlPosition:$,boundaries:{minWidth:a,minHeight:l,maxWidth:c,maxHeight:d},keepAspectRatio:u,resizeDirection:f,onResizeStart:b,onResize:w,onResizeEnd:S,shouldResize:m}),()=>{var q;(q=F.current)==null||q.destroy()}},[$,a,l,c,d,u,b,w,S,m]);const Y=$.split("-");return M.jsx("div",{className:Ga(["react-flow__resize-control","nodrag",...Y,t,i]),ref:D,style:{...n,scale:A,...o&&{[R?"backgroundColor":"borderColor"]:o}},children:r})}ve.memo(hQe);class Nve{constructor(e){var i;const t=(e.fetchImpl??globalThis.fetch).bind(globalThis);this.mBaseUrl=e.baseUrl.replace(/\/$/,""),this.mFetch=(n,r)=>t(n,r),this.mTenantId=((i=e.tenantId)==null?void 0:i.trim())??""}async MGetByReference(e){const t=e.sourceType.trim(),i=e.sourceCode.trim();if(!t||!i)throw new Error("Contract reference requires sourceType and sourceCode.");const n=await this.mFetch(`${this.mBaseUrl}/rule-contracts/${encodeURIComponent(t)}/${encodeURIComponent(i)}`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!n.ok)throw new Error(`Rule-flow contract request failed: ${n.status}`);return await n.json()}async MGetFlowContract(e){const t=e.trim();if(!t)throw new Error("Flow code is required.");const i=await this.mFetch(`${this.mBaseUrl}/flow-contracts/${encodeURIComponent(t)}`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!i.ok)throw new Error(`Flow contract request failed: ${i.status}`);return await i.json()}async MGetNodeAuthoringContract(e,t){const i=e.trim(),n=t.trim();if(!i||!n)throw new Error("Flow code and node id are required.");const r=await this.mFetch(`${this.mBaseUrl}/rule-flow/${encodeURIComponent(i)}/nodes/${encodeURIComponent(n)}/authoring-contract`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!r.ok)throw new Error(`Node authoring contract request failed: ${r.status}`);return await r.json()}async MListFlows(){const e=await this.mFetch(`${this.mBaseUrl}/rulesets`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!e.ok)throw new Error(`Ruleset list request failed: ${e.status}`);return await e.json()}}class Ave{constructor(e){var i;const t=(e.fetchImpl??globalThis.fetch).bind(globalThis);this.mBaseUrl=e.baseUrl.replace(/\/$/,""),this.mFetch=(n,r)=>t(n,r),this.mTenantId=((i=e.tenantId)==null?void 0:i.trim())??""}async MListCatalog(e){var r,o;const t=new URLSearchParams;(r=e==null?void 0:e.category)!=null&&r.trim()&&t.set("category",e.category.trim()),(o=e==null?void 0:e.search)!=null&&o.trim()&&t.set("search",e.search.trim()),e!=null&&e.includeHidden&&t.set("includeHidden","true");const i=t.size>0?`${this.mBaseUrl}?${t.toString()}`:this.mBaseUrl,n=await this.mFetch(i,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!n.ok)throw new Error(`Rule catalog request failed: ${n.status}`);return await n.json()}async MGetItem(e,t=!1){const i=e.trim();if(!i)throw new Error("Rule catalog item code is required.");const n=t?"?includeHidden=true":"",r=await this.mFetch(`${this.mBaseUrl}/${encodeURIComponent(i)}${n}`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!r.ok)throw new Error(`Rule catalog item request failed: ${r.status}`);return await r.json()}}class Mve{constructor(e){var i;this.mBaseUrl=fQe(e.baseUrl);const t=(e.fetchImpl??globalThis.fetch).bind(globalThis);this.mFetch=(n,r)=>t(n,r),this.mGetAccessToken=e.getAccessToken,this.mTenantId=((i=e.tenantId)==null?void 0:i.trim())??""}async MListDecisionTables(){return(await this.MRequest("/decision-tables")).items??[]}async MGetDecisionTable(e){return await this.MRequest(`/decision-tables/${e}`)}async MSaveDecisionTable(e,t){return await this.MRequest(`/decision-tables/${e}`,{method:"PUT",body:JSON.stringify(t)})}async MValidateDecisionTable(e){return await this.MRequest(`/decision-tables/${e}/validate`,{method:"POST"})}async MExportDecisionTable(e,t){return await this.MRequestBlob(`/decision-tables/${e}/export/${t}`)}async MListDecisionTableVersions(e){return await this.MRequest(`/decision-tables/${e}/versions`)}async MGetDecisionTableVersion(e,t){return await this.MRequest(`/decision-tables/${e}/versions/${t}`)}async MListNRules(){return await this.MRequest("/rule-engine/nrules")}async MSaveNRules(e,t){return await this.MRequest(`/rule-engine/nrules/${e}`,{method:"PUT",body:JSON.stringify(t)})}async MTestNRules(e,t){return await this.MRequest("/rule-engine/test",{method:"POST",body:JSON.stringify({ruleId:e,facts:t})})}async MListCepConfigs(){return await this.MRequest("/rule-engine/cep")}async MSaveCepConfig(e,t){return await this.MRequest(`/rule-engine/cep/${e}`,{method:"PUT",body:JSON.stringify(t)})}async MSimulateCep(e,t){return await this.MRequest(`/rule-engine/cep/${e}/simulate`,{method:"POST",body:JSON.stringify({events:t})})}async MRequest(e,t={}){const i=await this.mFetch(`${this.mBaseUrl}${e}`,this.MBuildInit(t));if(!i.ok)throw new Error(`RuleEngine API error: ${i.status} ${i.statusText}`);return await i.json()}async MRequestBlob(e,t={}){const i=await this.mFetch(`${this.mBaseUrl}${e}`,this.MBuildInit(t));if(!i.ok)throw new Error(`RuleEngine API error: ${i.status} ${i.statusText}`);return await i.blob()}MBuildInit(e){var n;const t=hd(e.headers,{tenantId:this.mTenantId}),i=(n=this.mGetAccessToken)==null?void 0:n.call(this);return i&&t.set("Authorization",`Bearer ${i}`),!t.has("Content-Type")&&e.body&&t.set("Content-Type","application/json"),{...e,headers:t}}}function fQe(s){const e=s.replace(/\/$/,"");return e.endsWith("/api/v1/control-plane")?e.slice(0,-14):e}class WC{static async MListConnectors(e,t){const i=`${e.replace(/\/$/,"")}/connectors`,n=await fetch(i,{method:"GET",headers:t});if(!n.ok)throw new Error(`Failed to list connectors: ${n.status}`);return await n.json()}static async MGetConnector(e,t,i){const n=t.trim();if(!n)throw new Error("Connector ID is required.");const r=`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(n)}`,o=await fetch(r,{method:"GET",headers:i});if(!o.ok)throw new Error(`Failed to get connector ${n}: ${o.status}`);return await o.json()}static async MSaveConnector(e,t,i){const n=t.id?`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(t.id)}`:`${e.replace(/\/$/,"")}/connectors`,r=t.id?"PUT":"POST",o=await fetch(n,{method:r,headers:{...Pve(i),"Content-Type":"application/json"},body:JSON.stringify(t)});if(!o.ok)throw new Error(`Failed to save connector: ${o.status}`);return await o.json()}static async MTestConnector(e,t,i){const n=t.trim();if(!n)throw new Error("Connector ID is required for testing.");const r=`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(n)}/test`,o=await fetch(r,{method:"POST",headers:i});if(!o.ok)throw new Error(`Failed to test connector ${n}: ${o.status}`);return await o.json()}static async MGetCatalog(e,t){const i=`${e.replace(/\/$/,"")}/connectors/catalog`,n=await fetch(i,{method:"GET",headers:t});if(!n.ok)throw new Error(`Failed to load connector catalog: ${n.status}`);return(await n.json()).map(o=>({connectorType:String(o.type??o.connectorType??""),displayName:String(o.displayName??""),description:typeof o.description=="string"?o.description:void 0,icon:typeof o.iconSvg=="string"?o.iconSvg:typeof o.icon=="string"?o.icon:void 0,category:typeof o.category=="string"?o.category:void 0,requiresCredentials:!!o.requiresCredentials,credentialFields:Array.isArray(o.credentialFields)?o.credentialFields:void 0}))}static async MSaveCredentials(e,t,i,n){const r=t.trim();if(!r)throw new Error("Connector ID is required for saving credentials.");const o=`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(r)}/credentials`,a=await fetch(o,{method:"PUT",headers:{...Pve(n),"Content-Type":"application/json"},body:JSON.stringify(i)});if(!a.ok)throw new Error(`Failed to save credentials for connector ${r}: ${a.status}`)}}function Pve(s){if(s instanceof Headers){const e={};return s.forEach((t,i)=>{e[i]=t}),e}if(Array.isArray(s)){const e={};for(const[t,i]of s)e[t]=i;return e}return s}function gQe(s){try{return new Date(s).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}catch{return s}}function Fve(s,e){if(e)return{background:"color-mix(in oklch, var(--mu-color-success-text) 15%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-success-text) 30%, transparent)",color:"var(--mu-color-success-text)"};const t=s.toLowerCase();return t==="approved"?{background:"color-mix(in oklch, var(--mu-color-interactive) 12%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-interactive) 25%, transparent)",color:"var(--mu-color-interactive)"}:t==="pendingapproval"?{background:"color-mix(in oklch, var(--mu-color-warning) 15%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-warning) 30%, transparent)",color:"var(--mu-color-warning-text)"}:t==="rejected"?{background:"color-mix(in oklch, var(--mu-color-error) 12%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-error) 25%, transparent)",color:"var(--mu-color-error-text)"}:t==="superseded"?{background:"color-mix(in oklch, var(--mu-text-muted) 12%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-text-muted) 20%, transparent)",color:"var(--mu-text-muted)"}:t==="rolledback"?{background:"color-mix(in oklch, var(--mu-color-error) 8%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-error) 15%, transparent)",color:"var(--mu-text-muted)"}:{background:"color-mix(in oklch, var(--mu-border-subtle) 50%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-border-default) 50%, transparent)",color:"var(--mu-text-muted)"}}function pQe(s){const e=s.toLowerCase();return e==="pendingapproval"?"Pending":e==="rolledback"?"Rolled Back":s}function mQe({versions:s,activeVersion:e,selectedVersion:t,onSelect:i,onLoadMore:n,hasMore:r,loadingMore:o,tokens:a}){const[l,c]=ve.useState(!1),d=ve.useRef(null);ve.useEffect(()=>{if(!l)return;const b=w=>{d.current&&!d.current.contains(w.target)&&c(!1)};return document.addEventListener("mousedown",b),()=>document.removeEventListener("mousedown",b)},[l]);const u=ve.useCallback(b=>{i(b),c(!1)},[i]),f=t!=null?s.find(b=>b.version===t):null,p=f?`v${f.version} (${f.isActive?"Active":f.status})`:e?`Active (v${e.version})`:"Active",m={display:"inline-flex",alignItems:"center",padding:"1px 6px",borderRadius:6,fontSize:10,fontWeight:600,letterSpacing:"0.01em"};return M.jsxs("div",{ref:d,style:{position:"relative",display:"inline-block"},children:[M.jsxs("button",{type:"button",onClick:()=>c(b=>!b),style:{display:"inline-flex",alignItems:"center",gap:4,padding:"2px 10px",borderRadius:8,fontSize:11,fontWeight:600,letterSpacing:"0.02em",cursor:"pointer",background:(f==null?void 0:f.isActive)===!1?"color-mix(in oklch, var(--mu-color-warning) 12%, transparent)":a.actionPrimaryBg,border:(f==null?void 0:f.isActive)===!1?"1px solid color-mix(in oklch, var(--mu-color-warning) 30%, transparent)":a.actionPrimaryBorder,color:(f==null?void 0:f.isActive)===!1?a.warningText:a.textPrimary,outline:"none"},children:[p,M.jsx("span",{style:{fontSize:8,marginLeft:2},children:l?"▴":"▾"})]}),l?M.jsxs("div",{style:{position:"absolute",top:"calc(100% + 4px)",left:0,zIndex:50,minWidth:260,maxHeight:340,overflowY:"auto",background:a.overlayBg,border:a.overlayBorder,borderRadius:10,boxShadow:a.overlayShadow,padding:"4px 0"},children:[M.jsxs("button",{type:"button",onClick:()=>u(null),style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"8px 12px",minHeight:44,background:t==null?a.overlayItemSelectedBg:"transparent",border:"none",borderBottom:"1px solid rgba(148,163,184,0.12)",cursor:"pointer",textAlign:"left",color:a.textPrimary,fontSize:12},children:[M.jsx("span",{style:{color:"var(--mu-color-success-text)",fontSize:13},children:"★"}),M.jsxs("span",{style:{fontWeight:600},children:["Active",e?` (v${e.version})`:""]}),e?M.jsx("span",{style:{...m,...Fve("Active",!0)},children:"Active"}):null]}),s.map(b=>{const w=t===b.version,S=b.isActive;return M.jsxs("button",{type:"button",onClick:()=>u(b.version),style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"7px 12px",minHeight:44,background:S?"var(--mu-color-interactive-subtle)":w?a.overlayItemSelectedBg:"transparent",borderTop:"none",borderRight:"none",borderBottom:"1px solid rgba(148,163,184,0.06)",borderLeft:S?"3px solid var(--mu-color-interactive)":"3px solid transparent",cursor:"pointer",textAlign:"left",color:a.textPrimary,fontSize:12},children:[S?M.jsx("span",{style:{color:"var(--mu-color-interactive)",fontSize:13,flexShrink:0},children:"★"}):M.jsx("span",{style:{width:13,display:"inline-block",flexShrink:0}}),M.jsxs("span",{style:{fontWeight:S?700:600,minWidth:36,color:S?"var(--mu-color-interactive)":a.textPrimary},children:["v",b.version]}),M.jsx("span",{style:{...m,...Fve(b.status,S)},children:S?"Active":pQe(b.status)}),M.jsx("span",{style:{fontSize:10,color:a.textMuted,marginLeft:"auto"},children:gQe(b.createdAt)})]},b.version)}),r?M.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),n==null||n()},disabled:o,style:{display:"block",width:"100%",padding:"8px 12px",background:"transparent",border:"none",borderTop:"1px solid rgba(148,163,184,0.12)",cursor:o?"default":"pointer",textAlign:"center",color:a.textSecondary,fontSize:11,fontWeight:600,opacity:o?.6:1},children:o?"Loading...":"Load more"}):null]}):null]})}const _Qe={added:"rgba(22,163,74,0.12)",removed:"rgba(239,68,68,0.12)",modified:"rgba(245,158,11,0.12)",unchanged:"transparent"};function bQe(s,e){const t=s.split(`
701
+ M${F.x},${F.y}h${F.width}v${F.height}h${-F.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Rve.displayName="MiniMap";const cQe=ve.memo(Rve),dQe=s=>e=>s?`${Math.max(1/e.transform[2],1)}`:void 0,uQe={[WE.Line]:"right",[WE.Handle]:"bottom-right"};function hQe({nodeId:s,position:e,variant:t=WE.Handle,className:i,style:n=void 0,children:r,color:o,minWidth:a=10,minHeight:l=10,maxWidth:c=Number.MAX_VALUE,maxHeight:d=Number.MAX_VALUE,keepAspectRatio:u=!1,resizeDirection:f,autoScale:p=!0,shouldResize:m,onResizeStart:b,onResize:w,onResizeEnd:S}){const k=Jbe(),O=typeof s=="string"?s:k,L=ko(),D=ve.useRef(null),R=t===WE.Handle,A=Fs(ve.useCallback(dQe(R&&p),[R,p]),No),F=ve.useRef(null),$=e??uQe[t];ve.useEffect(()=>{if(!(!D.current||!O))return F.current||(F.current=FUe({domNode:D.current,nodeId:O,getStoreItems:()=>{const{nodeLookup:q,transform:j,snapGrid:G,snapToGrid:V,nodeOrigin:J,domNode:se}=L.getState();return{nodeLookup:q,transform:j,snapGrid:G,snapToGrid:V,nodeOrigin:J,paneDomNode:se}},onChange:(q,j)=>{const{triggerNodeChanges:G,nodeLookup:V,parentLookup:J,nodeOrigin:se}=L.getState(),le=[],ie={x:q.x,y:q.y},re=V.get(O);if(re&&re.expandParent&&re.parentId){const ge=re.origin??se,ne=q.width??re.measured.width??0,pe=q.height??re.measured.height??0,De={id:re.id,parentId:re.parentId,rect:{width:ne,height:pe,...V_e({x:q.x??re.position.x,y:q.y??re.position.y},{width:ne,height:pe},re.parentId,V,ge)}},Fe=UG([De],V,J,se);le.push(...Fe),ie.x=q.x?Math.max(ge[0]*ne,q.x):void 0,ie.y=q.y?Math.max(ge[1]*pe,q.y):void 0}if(ie.x!==void 0&&ie.y!==void 0){const ge={id:O,type:"position",position:{...ie}};le.push(ge)}if(q.width!==void 0&&q.height!==void 0){const ne={id:O,type:"dimensions",resizing:!0,setAttributes:f?f==="horizontal"?"width":"height":!0,dimensions:{width:q.width,height:q.height}};le.push(ne)}for(const ge of j){const ne={...ge,type:"position"};le.push(ne)}G(le)},onEnd:({width:q,height:j})=>{const G={id:O,type:"dimensions",resizing:!1,dimensions:{width:q,height:j}};L.getState().triggerNodeChanges([G])}})),F.current.update({controlPosition:$,boundaries:{minWidth:a,minHeight:l,maxWidth:c,maxHeight:d},keepAspectRatio:u,resizeDirection:f,onResizeStart:b,onResize:w,onResizeEnd:S,shouldResize:m}),()=>{var q;(q=F.current)==null||q.destroy()}},[$,a,l,c,d,u,b,w,S,m]);const Y=$.split("-");return M.jsx("div",{className:Ga(["react-flow__resize-control","nodrag",...Y,t,i]),ref:D,style:{...n,scale:A,...o&&{[R?"backgroundColor":"borderColor"]:o}},children:r})}ve.memo(hQe);class Nve{constructor(e){var i;const t=(e.fetchImpl??globalThis.fetch).bind(globalThis);this.mBaseUrl=e.baseUrl.replace(/\/$/,""),this.mFetch=(n,r)=>t(n,r),this.mTenantId=((i=e.tenantId)==null?void 0:i.trim())??""}async MGetByReference(e){const t=e.sourceType.trim(),i=e.sourceCode.trim();if(!t||!i)throw new Error("Contract reference requires sourceType and sourceCode.");const n=await this.mFetch(`${this.mBaseUrl}/rule-contracts/${encodeURIComponent(t)}/${encodeURIComponent(i)}`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!n.ok)throw new Error(`Rule-flow contract request failed: ${n.status}`);return await n.json()}async MGetFlowContract(e){const t=e.trim();if(!t)throw new Error("Flow code is required.");const i=await this.mFetch(`${this.mBaseUrl}/flow-contracts/${encodeURIComponent(t)}`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!i.ok)throw new Error(`Flow contract request failed: ${i.status}`);return await i.json()}async MGetNodeAuthoringContract(e,t){const i=e.trim(),n=t.trim();if(!i||!n)throw new Error("Flow code and node id are required.");const r=await this.mFetch(`${this.mBaseUrl}/rule-flow/${encodeURIComponent(i)}/nodes/${encodeURIComponent(n)}/authoring-contract`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!r.ok)throw new Error(`Node authoring contract request failed: ${r.status}`);return await r.json()}async MListFlows(){const e=await this.mFetch(`${this.mBaseUrl}/rulesets`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!e.ok)throw new Error(`Ruleset list request failed: ${e.status}`);return await e.json()}}class Ave{constructor(e){var i;const t=(e.fetchImpl??globalThis.fetch).bind(globalThis);this.mBaseUrl=e.baseUrl.replace(/\/$/,""),this.mFetch=(n,r)=>t(n,r),this.mTenantId=((i=e.tenantId)==null?void 0:i.trim())??""}async MListCatalog(e){var r,o;const t=new URLSearchParams;(r=e==null?void 0:e.category)!=null&&r.trim()&&t.set("category",e.category.trim()),(o=e==null?void 0:e.search)!=null&&o.trim()&&t.set("search",e.search.trim()),e!=null&&e.includeHidden&&t.set("includeHidden","true");const i=t.size>0?`${this.mBaseUrl}?${t.toString()}`:this.mBaseUrl,n=await this.mFetch(i,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!n.ok)throw new Error(`Rule catalog request failed: ${n.status}`);return await n.json()}async MGetItem(e,t=!1){const i=e.trim();if(!i)throw new Error("Rule catalog item code is required.");const n=t?"?includeHidden=true":"",r=await this.mFetch(`${this.mBaseUrl}/${encodeURIComponent(i)}${n}`,{headers:hd(void 0,{tenantId:this.mTenantId})});if(!r.ok)throw new Error(`Rule catalog item request failed: ${r.status}`);return await r.json()}}class Mve{constructor(e){var i;this.mBaseUrl=fQe(e.baseUrl);const t=(e.fetchImpl??globalThis.fetch).bind(globalThis);this.mFetch=(n,r)=>t(n,r),this.mGetAccessToken=e.getAccessToken,this.mTenantId=((i=e.tenantId)==null?void 0:i.trim())??""}async MListDecisionTables(){return(await this.MRequest("/decision-tables")).items??[]}async MGetDecisionTable(e){return await this.MRequest(`/decision-tables/${e}`)}async MSaveDecisionTable(e,t){return await this.MRequest(`/decision-tables/${e}`,{method:"PUT",body:JSON.stringify(t)})}async MValidateDecisionTable(e){return await this.MRequest(`/decision-tables/${e}/validate`,{method:"POST"})}async MExportDecisionTable(e,t){return await this.MRequestBlob(`/decision-tables/${e}/export/${t}`)}async MListDecisionTableVersions(e){return await this.MRequest(`/decision-tables/${e}/versions`)}async MGetDecisionTableVersion(e,t){return await this.MRequest(`/decision-tables/${e}/versions/${t}`)}async MListNRules(){return await this.MRequest("/rule-engine/nrules")}async MSaveNRules(e,t){return await this.MRequest(`/rule-engine/nrules/${e}`,{method:"PUT",body:JSON.stringify(t)})}async MTestNRules(e,t){return await this.MRequest("/rule-engine/test",{method:"POST",body:JSON.stringify({ruleId:e,facts:t})})}async MListCepConfigs(){return await this.MRequest("/rule-engine/cep")}async MSaveCepConfig(e,t){return await this.MRequest(`/rule-engine/cep/${e}`,{method:"PUT",body:JSON.stringify(t)})}async MSimulateCep(e,t){return await this.MRequest(`/rule-engine/cep/${e}/simulate`,{method:"POST",body:JSON.stringify({events:t})})}async MRequest(e,t={}){const i=await this.mFetch(`${this.mBaseUrl}${e}`,this.MBuildInit(t));if(!i.ok)throw new Error(`RuleEngine API error: ${i.status} ${i.statusText}`);return await i.json()}async MRequestBlob(e,t={}){const i=await this.mFetch(`${this.mBaseUrl}${e}`,this.MBuildInit(t));if(!i.ok)throw new Error(`RuleEngine API error: ${i.status} ${i.statusText}`);return await i.blob()}MBuildInit(e){var n;const t=hd(e.headers,{tenantId:this.mTenantId}),i=(n=this.mGetAccessToken)==null?void 0:n.call(this);return i&&t.set("Authorization",`Bearer ${i}`),!t.has("Content-Type")&&e.body&&t.set("Content-Type","application/json"),{...e,headers:t}}}function fQe(s){const e=s.replace(/\/$/,"");return e.endsWith("/api/v1/control-plane")?e.slice(0,-14):e}class WC{static async MListConnectors(e,t){const i=`${e.replace(/\/$/,"")}/connectors`,n=await fetch(i,{method:"GET",headers:t});if(!n.ok)throw new Error(`Failed to list connectors: ${n.status}`);return await n.json()}static async MGetConnector(e,t,i){const n=t.trim();if(!n)throw new Error("Connector ID is required.");const r=`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(n)}`,o=await fetch(r,{method:"GET",headers:i});if(!o.ok)throw new Error(`Failed to get connector ${n}: ${o.status}`);return await o.json()}static async MSaveConnector(e,t,i){const n=t.id?`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(t.id)}`:`${e.replace(/\/$/,"")}/connectors`,r=t.id?"PUT":"POST",o=await fetch(n,{method:r,headers:{...Pve(i),"Content-Type":"application/json"},body:JSON.stringify(t)});if(!o.ok)throw new Error(`Failed to save connector: ${o.status}`);return await o.json()}static async MTestConnector(e,t,i){const n=t.trim();if(!n)throw new Error("Connector ID is required for testing.");const r=`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(n)}/test`,o=await fetch(r,{method:"POST",headers:i});if(!o.ok)throw new Error(`Failed to test connector ${n}: ${o.status}`);return await o.json()}static async MGetCatalog(e,t){const i=`${e.replace(/\/$/,"")}/connectors/catalog`,n=await fetch(i,{method:"GET",headers:t});if(!n.ok)throw new Error(`Failed to load connector catalog: ${n.status}`);return(await n.json()).map(o=>({connectorType:String(o.type??o.connectorType??""),displayName:String(o.displayName??""),description:typeof o.description=="string"?o.description:void 0,icon:typeof o.iconSvg=="string"?o.iconSvg:typeof o.icon=="string"?o.icon:void 0,category:typeof o.category=="string"?o.category:void 0,requiresCredentials:!!o.requiresCredentials,credentialFields:Array.isArray(o.credentialFields)?o.credentialFields:void 0}))}static async MSaveCredentials(e,t,i,n){const r=t.trim();if(!r)throw new Error("Connector ID is required for saving credentials.");const o=`${e.replace(/\/$/,"")}/connectors/${encodeURIComponent(r)}/credentials`,a=await fetch(o,{method:"PUT",headers:{...Pve(n),"Content-Type":"application/json"},body:JSON.stringify(i)});if(!a.ok)throw new Error(`Failed to save credentials for connector ${r}: ${a.status}`)}}function Pve(s){if(s instanceof Headers){const e={};return s.forEach((t,i)=>{e[i]=t}),e}if(Array.isArray(s)){const e={};for(const[t,i]of s)e[t]=i;return e}return s}function gQe(s){try{return new Date(s).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}catch{return s}}function Fve(s,e){if(e)return{background:"color-mix(in oklch, var(--mu-color-success-text) 15%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-success-text) 30%, transparent)",color:"var(--mu-color-success-text)"};const t=s.toLowerCase();return t==="approved"?{background:"color-mix(in oklch, var(--mu-color-interactive) 12%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-interactive) 25%, transparent)",color:"var(--mu-color-interactive)"}:t==="pendingapproval"?{background:"color-mix(in oklch, var(--mu-color-warning) 15%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-warning) 30%, transparent)",color:"var(--mu-color-warning-text)"}:t==="rejected"?{background:"color-mix(in oklch, var(--mu-color-error) 12%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-error) 25%, transparent)",color:"var(--mu-color-error-text)"}:t==="superseded"?{background:"color-mix(in oklch, var(--mu-text-muted) 12%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-text-muted) 20%, transparent)",color:"var(--mu-text-muted)"}:t==="rolledback"?{background:"color-mix(in oklch, var(--mu-color-error) 8%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-color-error) 15%, transparent)",color:"var(--mu-text-muted)"}:{background:"color-mix(in oklch, var(--mu-border-subtle) 50%, transparent)",border:"1px solid color-mix(in oklch, var(--mu-border-default) 50%, transparent)",color:"var(--mu-text-muted)"}}function pQe(s){const e=s.toLowerCase();return e==="pendingapproval"?"Pending":e==="rolledback"?"Rolled Back":s}function mQe({versions:s,activeVersion:e,selectedVersion:t,onSelect:i,onLoadMore:n,hasMore:r,loadingMore:o,tokens:a}){const[l,c]=ve.useState(!1),d=ve.useRef(null);ve.useEffect(()=>{if(!l)return;const b=w=>{if(!d.current)return;w.composedPath().includes(d.current)||c(!1)};return document.addEventListener("mousedown",b),()=>document.removeEventListener("mousedown",b)},[l]);const u=ve.useCallback(b=>{i(b),c(!1)},[i]),f=t!=null?s.find(b=>b.version===t):null,p=f?`v${f.version} (${f.isActive?"Active":f.status})`:e?`Active (v${e.version})`:"Active",m={display:"inline-flex",alignItems:"center",padding:"1px 6px",borderRadius:6,fontSize:10,fontWeight:600,letterSpacing:"0.01em"};return M.jsxs("div",{ref:d,style:{position:"relative",display:"inline-block"},children:[M.jsxs("button",{type:"button",onClick:()=>c(b=>!b),style:{display:"inline-flex",alignItems:"center",gap:4,padding:"2px 10px",borderRadius:8,fontSize:11,fontWeight:600,letterSpacing:"0.02em",cursor:"pointer",background:(f==null?void 0:f.isActive)===!1?"color-mix(in oklch, var(--mu-color-warning) 12%, transparent)":a.actionPrimaryBg,border:(f==null?void 0:f.isActive)===!1?"1px solid color-mix(in oklch, var(--mu-color-warning) 30%, transparent)":a.actionPrimaryBorder,color:(f==null?void 0:f.isActive)===!1?a.warningText:a.textPrimary,outline:"none"},children:[p,M.jsx("span",{style:{fontSize:8,marginLeft:2},children:l?"▴":"▾"})]}),l?M.jsxs("div",{style:{position:"absolute",top:"calc(100% + 4px)",left:0,zIndex:50,minWidth:260,maxHeight:340,overflowY:"auto",background:a.overlayBg,border:a.overlayBorder,borderRadius:10,boxShadow:a.overlayShadow,padding:"4px 0"},children:[M.jsxs("button",{type:"button",onClick:()=>u(null),style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"8px 12px",minHeight:44,background:t==null?a.overlayItemSelectedBg:"transparent",border:"none",borderBottom:"1px solid rgba(148,163,184,0.12)",cursor:"pointer",textAlign:"left",color:a.textPrimary,fontSize:12},children:[M.jsx("span",{style:{color:"var(--mu-color-success-text)",fontSize:13},children:"★"}),M.jsxs("span",{style:{fontWeight:600},children:["Active",e?` (v${e.version})`:""]}),e?M.jsx("span",{style:{...m,...Fve("Active",!0)},children:"Active"}):null]}),s.map(b=>{const w=t===b.version,S=b.isActive;return M.jsxs("button",{type:"button",onClick:()=>u(b.version),style:{display:"flex",alignItems:"center",gap:8,width:"100%",padding:"7px 12px",minHeight:44,background:S?"var(--mu-color-interactive-subtle)":w?a.overlayItemSelectedBg:"transparent",borderTop:"none",borderRight:"none",borderBottom:"1px solid rgba(148,163,184,0.06)",borderLeft:S?"3px solid var(--mu-color-interactive)":"3px solid transparent",cursor:"pointer",textAlign:"left",color:a.textPrimary,fontSize:12},children:[S?M.jsx("span",{style:{color:"var(--mu-color-interactive)",fontSize:13,flexShrink:0},children:"★"}):M.jsx("span",{style:{width:13,display:"inline-block",flexShrink:0}}),M.jsxs("span",{style:{fontWeight:S?700:600,minWidth:36,color:S?"var(--mu-color-interactive)":a.textPrimary},children:["v",b.version]}),M.jsx("span",{style:{...m,...Fve(b.status,S)},children:S?"Active":pQe(b.status)}),M.jsx("span",{style:{fontSize:10,color:a.textMuted,marginLeft:"auto"},children:gQe(b.createdAt)})]},b.version)}),r?M.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),n==null||n()},disabled:o,style:{display:"block",width:"100%",padding:"8px 12px",background:"transparent",border:"none",borderTop:"1px solid rgba(148,163,184,0.12)",cursor:o?"default":"pointer",textAlign:"center",color:a.textSecondary,fontSize:11,fontWeight:600,opacity:o?.6:1},children:o?"Loading...":"Load more"}):null]}):null]})}const _Qe={added:"rgba(22,163,74,0.12)",removed:"rgba(239,68,68,0.12)",modified:"rgba(245,158,11,0.12)",unchanged:"transparent"};function bQe(s,e){const t=s.split(`
702
702
  `),i=e.split(`
703
- `),n=Math.max(t.length,i.length),r=[],o=[];for(let a=0;a<n;a++){const l=a<t.length?t[a]:void 0,c=a<i.length?i[a]:void 0;l===void 0?(r.push({text:"",type:"unchanged"}),o.push({text:c,type:"added"})):c===void 0?(r.push({text:l,type:"removed"}),o.push({text:"",type:"unchanged"})):l===c?(r.push({text:l,type:"unchanged"}),o.push({text:c,type:"unchanged"})):(r.push({text:l,type:"modified"}),o.push({text:c,type:"modified"}))}return{left:r,right:o}}function vQe({open:s,onClose:e,versions:t,activeVersion:i,initialLeftVersion:n,initialRightVersion:r,apiBaseUrl:o,workflowCode:a,tenantId:l,tokens:c}){const[d,u]=ve.useState(n),[f,p]=ve.useState(r),[m,b]=ve.useState(null),[w,S]=ve.useState(null),[k,O]=ve.useState(null),[L,D]=ve.useState(null),[R,A]=ve.useState(!1);ve.useEffect(()=>{s&&(u(n),p(r))},[s,n,r]);const F=ve.useCallback(async j=>{const G=o.replace(/\/$/,""),V=hd(void 0,{tenantId:l}),J=await fetch(`${G}/rulesets/${encodeURIComponent(a)}/versions/${j}`,{headers:V});if(!J.ok)throw new Error(`Version ${j} not available (HTTP ${J.status})`);const se=await J.json();return JSON.stringify(se,null,2)},[o,a,l]);ve.useEffect(()=>{if(!s||d==null||f==null)return;let j=!1;return A(!0),O(null),D(null),b(null),S(null),Promise.allSettled([F(d),F(f)]).then(([G,V])=>{var J,se;j||(G.status==="fulfilled"?b(G.value):O(((J=G.reason)==null?void 0:J.message)??"Failed to load"),V.status==="fulfilled"?S(V.value):D(((se=V.reason)==null?void 0:se.message)??"Failed to load"),A(!1))}),()=>{j=!0}},[s,d,f,F]),ve.useEffect(()=>{if(!s)return;const j=G=>{G.key==="Escape"&&e()};return document.addEventListener("keydown",j),()=>document.removeEventListener("keydown",j)},[s,e]);const $=ve.useMemo(()=>!m||!w?null:bQe(m,w),[m,w]);if(!s)return null;const Y=[...t].sort((j,G)=>G.version-j.version),q=(j,G,V,J)=>R?M.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",color:c.textMuted,fontSize:13},children:"Loading..."}):V?M.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",color:c.errorText,fontSize:13},children:V}):j?M.jsx("div",{style:{overflow:"auto",height:"100%",fontFamily:"monospace",fontSize:12,lineHeight:"20px"},children:j.map((se,le)=>M.jsxs("div",{style:{display:"flex",background:_Qe[se.type],minHeight:20},children:[M.jsx("span",{style:{width:44,minWidth:44,textAlign:"right",paddingRight:8,color:c.textMuted,userSelect:"none",borderRight:`1px solid ${c.inspectorBorder.replace("1px solid ","")}`,fontSize:11},children:se.text!==""?le+1:""}),M.jsx("pre",{style:{margin:0,padding:"0 8px",whiteSpace:"pre-wrap",wordBreak:"break-all",color:c.textPrimary},children:se.text})]},`${J}-${le}`))}):M.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",color:c.textMuted,fontSize:13},children:"Select versions to compare"});return M.jsx("div",{style:{position:"fixed",inset:0,zIndex:100,background:"rgba(0,0,0,0.5)",display:"flex",alignItems:"center",justifyContent:"center"},onClick:j=>{j.target===j.currentTarget&&e()},children:M.jsxs("div",{style:{width:"90vw",height:"85vh",background:c.dialogBg,border:c.dialogBorder,borderRadius:12,boxShadow:c.dialogShadow,overflow:"hidden",display:"flex",flexDirection:"column"},children:[M.jsxs("div",{style:{height:48,minHeight:48,display:"flex",alignItems:"center",gap:12,padding:"0 16px",borderBottom:c.inspectorBorder,background:c.sidebarBg},children:[M.jsx("strong",{style:{fontSize:14,color:c.textPrimary},children:"Compare Versions"}),M.jsx("select",{value:d??"",onChange:j=>u(j.target.value?Number(j.target.value):null),style:{padding:"4px 8px",fontSize:12,borderRadius:6,border:c.inputBorder,background:c.inputBg,color:c.inputText,cursor:"pointer"},children:Y.map(j=>M.jsxs("option",{value:j.version,children:["v",j.version,j.isActive?" (active)":""," — ",j.status]},j.version))}),M.jsx("span",{style:{fontSize:12,color:c.textMuted,fontWeight:600},children:"vs"}),M.jsx("select",{value:f??"",onChange:j=>p(j.target.value?Number(j.target.value):null),style:{padding:"4px 8px",fontSize:12,borderRadius:6,border:c.inputBorder,background:c.inputBg,color:c.inputText,cursor:"pointer"},children:Y.map(j=>M.jsxs("option",{value:j.version,children:["v",j.version,j.isActive?" (active)":""," — ",j.status]},j.version))}),M.jsx("button",{type:"button",onClick:e,style:{marginLeft:"auto",background:"transparent",border:"none",cursor:"pointer",padding:4,color:c.textMuted,fontSize:18,lineHeight:1},title:"Close",children:M.jsx("svg",{width:16,height:16,viewBox:"0 0 16 16",fill:"currentColor",children:M.jsx("path",{d:"M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"})})})]}),M.jsxs("div",{style:{flex:1,display:"flex",overflow:"hidden"},children:[M.jsx("div",{style:{flex:1,overflow:"hidden",borderRight:`1px solid ${c.inspectorBorder.replace("1px solid ","")}`},children:q(($==null?void 0:$.left)??null,m,k,"left")}),M.jsx("div",{style:{flex:1,overflow:"hidden"},children:q(($==null?void 0:$.right)??null,w,L,"right")})]})]})})}let nK=[],Bve=[];(()=>{let s="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,t=0;e<s.length;e++)(e%2?Bve:nK).push(t=t+s[e])})();function yQe(s){if(s<768)return!1;for(let e=0,t=nK.length;;){let i=e+t>>1;if(s<nK[i])t=i;else if(s>=Bve[i])e=i+1;else return!0;if(e==t)return!1}}function $ve(s){return s>=127462&&s<=127487}const Wve=8205;function wQe(s,e,t=!0,i=!0){return(t?Hve:CQe)(s,e,i)}function Hve(s,e,t){if(e==s.length)return e;e&&Vve(s.charCodeAt(e))&&zve(s.charCodeAt(e-1))&&e--;let i=sK(s,e);for(e+=Uve(i);e<s.length;){let n=sK(s,e);if(i==Wve||n==Wve||t&&yQe(n))e+=Uve(n),i=n;else if($ve(n)){let r=0,o=e-2;for(;o>=0&&$ve(sK(s,o));)r++,o-=2;if(r%2==0)break;e+=2}else break}return e}function CQe(s,e,t){for(;e>0;){let i=Hve(s,e-2,t);if(i<e)return i;e--}return 0}function sK(s,e){let t=s.charCodeAt(e);if(!zve(t)||e+1==s.length)return t;let i=s.charCodeAt(e+1);return Vve(i)?(t-55296<<10)+(i-56320)+65536:t}function Vve(s){return s>=56320&&s<57344}function zve(s){return s>=55296&&s<56320}function Uve(s){return s<65536?1:2}let hr=class E6e{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=zE(this,e,t);let n=[];return this.decompose(0,e,n,2),i.length&&i.decompose(0,i.length,n,3),this.decompose(t,this.length,n,1),r_.from(n,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=zE(this,e,t);let i=[];return this.decompose(e,t,i,0),r_.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),n=new yA(this),r=new yA(e);for(let o=t,a=t;;){if(n.next(o),r.next(o),o=0,n.lineBreak!=r.lineBreak||n.done!=r.done||n.value!=r.value)return!1;if(a+=n.value.length,n.done||a>=i)return!0}}iter(e=1){return new yA(this,e)}iterRange(e,t=this.length){return new qve(this,e,t)}iterLines(e,t){let i;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);let n=this.line(e).from;i=this.iterRange(n,Math.max(n,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Qve(i)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?E6e.empty:e.length<=32?new Ta(e):r_.from(Ta.split(e,[]))}};class Ta extends hr{constructor(e,t=SQe(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,n){for(let r=0;;r++){let o=this.text[r],a=n+o.length;if((t?i:a)>=e)return new xQe(n,a,i,o);n=a+1,i++}}decompose(e,t,i,n){let r=e<=0&&t>=this.length?this:new Ta(jve(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(n&1){let o=i.pop(),a=YB(r.text,o.text.slice(),0,r.length);if(a.length<=32)i.push(new Ta(a,o.length+r.length));else{let l=a.length>>1;i.push(new Ta(a.slice(0,l)),new Ta(a.slice(l)))}}else i.push(r)}replace(e,t,i){if(!(i instanceof Ta))return super.replace(e,t,i);[e,t]=zE(this,e,t);let n=YB(this.text,YB(i.text,jve(this.text,0,e)),t),r=this.length+i.length-(t-e);return n.length<=32?new Ta(n,r):r_.from(Ta.split(n,[]),r)}sliceString(e,t=this.length,i=`
703
+ `),n=Math.max(t.length,i.length),r=[],o=[];for(let a=0;a<n;a++){const l=a<t.length?t[a]:void 0,c=a<i.length?i[a]:void 0;l===void 0?(r.push({text:"",type:"unchanged"}),o.push({text:c,type:"added"})):c===void 0?(r.push({text:l,type:"removed"}),o.push({text:"",type:"unchanged"})):l===c?(r.push({text:l,type:"unchanged"}),o.push({text:c,type:"unchanged"})):(r.push({text:l,type:"modified"}),o.push({text:c,type:"modified"}))}return{left:r,right:o}}function vQe({open:s,onClose:e,versions:t,activeVersion:i,initialLeftVersion:n,initialRightVersion:r,apiBaseUrl:o,workflowCode:a,tenantId:l,tokens:c}){const[d,u]=ve.useState(n),[f,p]=ve.useState(r),[m,b]=ve.useState(null),[w,S]=ve.useState(null),[k,O]=ve.useState(null),[L,D]=ve.useState(null),[R,A]=ve.useState(!1);ve.useEffect(()=>{s&&(u(n),p(r))},[s,n,r]);const F=ve.useCallback(async j=>{const G=o.replace(/\/$/,""),V=hd(void 0,{tenantId:l}),J=await fetch(`${G}/rulesets/${encodeURIComponent(a)}/export?version=${j}`,{headers:V});if(!J.ok)throw new Error(`Version ${j} not available (HTTP ${J.status})`);const se=await J.json(),le=typeof se.ruleSetJson=="string"?JSON.parse(se.ruleSetJson):se;return JSON.stringify(le,null,2)},[o,a,l]);ve.useEffect(()=>{if(!s||d==null||f==null)return;let j=!1;return A(!0),O(null),D(null),b(null),S(null),Promise.allSettled([F(d),F(f)]).then(([G,V])=>{var J,se;j||(G.status==="fulfilled"?b(G.value):O(((J=G.reason)==null?void 0:J.message)??"Failed to load"),V.status==="fulfilled"?S(V.value):D(((se=V.reason)==null?void 0:se.message)??"Failed to load"),A(!1))}),()=>{j=!0}},[s,d,f,F]),ve.useEffect(()=>{if(!s)return;const j=G=>{G.key==="Escape"&&e()};return document.addEventListener("keydown",j),()=>document.removeEventListener("keydown",j)},[s,e]);const $=ve.useMemo(()=>!m||!w?null:bQe(m,w),[m,w]);if(!s)return null;const Y=[...t].sort((j,G)=>G.version-j.version),q=(j,G,V,J)=>R?M.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",color:c.textMuted,fontSize:13},children:"Loading..."}):V?M.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",color:c.errorText,fontSize:13},children:V}):j?M.jsx("div",{style:{overflow:"auto",height:"100%",fontFamily:"monospace",fontSize:12,lineHeight:"20px"},children:j.map((se,le)=>M.jsxs("div",{style:{display:"flex",background:_Qe[se.type],minHeight:20},children:[M.jsx("span",{style:{width:44,minWidth:44,textAlign:"right",paddingRight:8,color:c.textMuted,userSelect:"none",borderRight:`1px solid ${c.inspectorBorder.replace("1px solid ","")}`,fontSize:11},children:se.text!==""?le+1:""}),M.jsx("pre",{style:{margin:0,padding:"0 8px",whiteSpace:"pre-wrap",wordBreak:"break-all",color:c.textPrimary},children:se.text})]},`${J}-${le}`))}):M.jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",color:c.textMuted,fontSize:13},children:"Select versions to compare"});return M.jsx("div",{style:{position:"fixed",inset:0,zIndex:100,background:"rgba(0,0,0,0.5)",display:"flex",alignItems:"center",justifyContent:"center"},onClick:j=>{j.target===j.currentTarget&&e()},children:M.jsxs("div",{style:{width:"90vw",height:"85vh",background:c.dialogBg,border:c.dialogBorder,borderRadius:12,boxShadow:c.dialogShadow,overflow:"hidden",display:"flex",flexDirection:"column"},children:[M.jsxs("div",{style:{height:48,minHeight:48,display:"flex",alignItems:"center",gap:12,padding:"0 16px",borderBottom:c.inspectorBorder,background:c.sidebarBg},children:[M.jsx("strong",{style:{fontSize:14,color:c.textPrimary},children:"Compare Versions"}),M.jsx("select",{value:d??"",onChange:j=>u(j.target.value?Number(j.target.value):null),style:{padding:"4px 8px",fontSize:12,borderRadius:6,border:c.inputBorder,background:c.inputBg,color:c.inputText,cursor:"pointer"},children:Y.map(j=>M.jsxs("option",{value:j.version,children:["v",j.version,j.isActive?" (active)":""," — ",j.status]},j.version))}),M.jsx("span",{style:{fontSize:12,color:c.textMuted,fontWeight:600},children:"vs"}),M.jsx("select",{value:f??"",onChange:j=>p(j.target.value?Number(j.target.value):null),style:{padding:"4px 8px",fontSize:12,borderRadius:6,border:c.inputBorder,background:c.inputBg,color:c.inputText,cursor:"pointer"},children:Y.map(j=>M.jsxs("option",{value:j.version,children:["v",j.version,j.isActive?" (active)":""," — ",j.status]},j.version))}),M.jsx("button",{type:"button",onClick:e,style:{marginLeft:"auto",background:"transparent",border:"none",cursor:"pointer",padding:4,color:c.textMuted,fontSize:18,lineHeight:1},title:"Close",children:M.jsx("svg",{width:16,height:16,viewBox:"0 0 16 16",fill:"currentColor",children:M.jsx("path",{d:"M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"})})})]}),M.jsxs("div",{style:{flex:1,display:"flex",overflow:"hidden"},children:[M.jsx("div",{style:{flex:1,overflow:"hidden",borderRight:`1px solid ${c.inspectorBorder.replace("1px solid ","")}`},children:q(($==null?void 0:$.left)??null,m,k,"left")}),M.jsx("div",{style:{flex:1,overflow:"hidden"},children:q(($==null?void 0:$.right)??null,w,L,"right")})]})]})})}let nK=[],Bve=[];(()=>{let s="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,t=0;e<s.length;e++)(e%2?Bve:nK).push(t=t+s[e])})();function yQe(s){if(s<768)return!1;for(let e=0,t=nK.length;;){let i=e+t>>1;if(s<nK[i])t=i;else if(s>=Bve[i])e=i+1;else return!0;if(e==t)return!1}}function $ve(s){return s>=127462&&s<=127487}const Wve=8205;function wQe(s,e,t=!0,i=!0){return(t?Hve:CQe)(s,e,i)}function Hve(s,e,t){if(e==s.length)return e;e&&Vve(s.charCodeAt(e))&&zve(s.charCodeAt(e-1))&&e--;let i=sK(s,e);for(e+=Uve(i);e<s.length;){let n=sK(s,e);if(i==Wve||n==Wve||t&&yQe(n))e+=Uve(n),i=n;else if($ve(n)){let r=0,o=e-2;for(;o>=0&&$ve(sK(s,o));)r++,o-=2;if(r%2==0)break;e+=2}else break}return e}function CQe(s,e,t){for(;e>0;){let i=Hve(s,e-2,t);if(i<e)return i;e--}return 0}function sK(s,e){let t=s.charCodeAt(e);if(!zve(t)||e+1==s.length)return t;let i=s.charCodeAt(e+1);return Vve(i)?(t-55296<<10)+(i-56320)+65536:t}function Vve(s){return s>=56320&&s<57344}function zve(s){return s>=55296&&s<56320}function Uve(s){return s<65536?1:2}let hr=class E6e{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,i){[e,t]=zE(this,e,t);let n=[];return this.decompose(0,e,n,2),i.length&&i.decompose(0,i.length,n,3),this.decompose(t,this.length,n,1),r_.from(n,this.length-(t-e)+i.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=zE(this,e,t);let i=[];return this.decompose(e,t,i,0),r_.from(i,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),i=this.length-this.scanIdentical(e,-1),n=new yA(this),r=new yA(e);for(let o=t,a=t;;){if(n.next(o),r.next(o),o=0,n.lineBreak!=r.lineBreak||n.done!=r.done||n.value!=r.value)return!1;if(a+=n.value.length,n.done||a>=i)return!0}}iter(e=1){return new yA(this,e)}iterRange(e,t=this.length){return new qve(this,e,t)}iterLines(e,t){let i;if(e==null)i=this.iter();else{t==null&&(t=this.lines+1);let n=this.line(e).from;i=this.iterRange(n,Math.max(n,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Qve(i)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?E6e.empty:e.length<=32?new Ta(e):r_.from(Ta.split(e,[]))}};class Ta extends hr{constructor(e,t=SQe(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,i,n){for(let r=0;;r++){let o=this.text[r],a=n+o.length;if((t?i:a)>=e)return new xQe(n,a,i,o);n=a+1,i++}}decompose(e,t,i,n){let r=e<=0&&t>=this.length?this:new Ta(jve(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(n&1){let o=i.pop(),a=YB(r.text,o.text.slice(),0,r.length);if(a.length<=32)i.push(new Ta(a,o.length+r.length));else{let l=a.length>>1;i.push(new Ta(a.slice(0,l)),new Ta(a.slice(l)))}}else i.push(r)}replace(e,t,i){if(!(i instanceof Ta))return super.replace(e,t,i);[e,t]=zE(this,e,t);let n=YB(this.text,YB(i.text,jve(this.text,0,e)),t),r=this.length+i.length-(t-e);return n.length<=32?new Ta(n,r):r_.from(Ta.split(n,[]),r)}sliceString(e,t=this.length,i=`
704
704
  `){[e,t]=zE(this,e,t);let n="";for(let r=0,o=0;r<=t&&o<this.text.length;o++){let a=this.text[o],l=r+a.length;r>e&&o&&(n+=i),e<l&&t>r&&(n+=a.slice(Math.max(0,e-r),t-r)),r=l+1}return n}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let i=[],n=-1;for(let r of e)i.push(r),n+=r.length+1,i.length==32&&(t.push(new Ta(i,n)),i=[],n=-1);return n>-1&&t.push(new Ta(i,n)),t}}class r_ extends hr{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let i of e)this.lines+=i.lines}lineInner(e,t,i,n){for(let r=0;;r++){let o=this.children[r],a=n+o.length,l=i+o.lines-1;if((t?l:a)>=e)return o.lineInner(e,t,i,n);n=a+1,i=l+1}}decompose(e,t,i,n){for(let r=0,o=0;o<=t&&r<this.children.length;r++){let a=this.children[r],l=o+a.length;if(e<=l&&t>=o){let c=n&((o<=e?1:0)|(l>=t?2:0));o>=e&&l<=t&&!c?i.push(a):a.decompose(e-o,t-o,i,c)}o=l+1}}replace(e,t,i){if([e,t]=zE(this,e,t),i.lines<this.lines)for(let n=0,r=0;n<this.children.length;n++){let o=this.children[n],a=r+o.length;if(e>=r&&t<=a){let l=o.replace(e-r,t-r,i),c=this.lines-o.lines+l.lines;if(l.lines<c>>4&&l.lines>c>>6){let d=this.children.slice();return d[n]=l,new r_(d,this.length-(t-e)+i.length)}return super.replace(r,a,l)}r=a+1}return super.replace(e,t,i)}sliceString(e,t=this.length,i=`
705
705
  `){[e,t]=zE(this,e,t);let n="";for(let r=0,o=0;r<this.children.length&&o<=t;r++){let a=this.children[r],l=o+a.length;o>e&&r&&(n+=i),e<l&&t>o&&(n+=a.sliceString(e-o,t-o,i)),o=l+1}return n}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof r_))return 0;let i=0,[n,r,o,a]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;n+=t,r+=t){if(n==o||r==a)return i;let l=this.children[n],c=e.children[r];if(l!=c)return i+l.scanIdentical(c,t);i+=l.length+1}}static from(e,t=e.reduce((i,n)=>i+n.length+1,-1)){let i=0;for(let p of e)i+=p.lines;if(i<32){let p=[];for(let m of e)m.flatten(p);return new Ta(p,t)}let n=Math.max(32,i>>5),r=n<<1,o=n>>1,a=[],l=0,c=-1,d=[];function u(p){let m;if(p.lines>r&&p instanceof r_)for(let b of p.children)u(b);else p.lines>o&&(l>o||!l)?(f(),a.push(p)):p instanceof Ta&&l&&(m=d[d.length-1])instanceof Ta&&p.lines+m.lines<=32?(l+=p.lines,c+=p.length+1,d[d.length-1]=new Ta(m.text.concat(p.text),m.length+1+p.length)):(l+p.lines>n&&f(),l+=p.lines,c+=p.length+1,d.push(p))}function f(){l!=0&&(a.push(d.length==1?d[0]:r_.from(d,c)),c=-1,l=d.length=0)}for(let p of e)u(p);return f(),a.length==1?a[0]:new r_(a,t)}}hr.empty=new Ta([""],0);function SQe(s){let e=-1;for(let t of s)e+=t.length+1;return e}function YB(s,e,t=0,i=1e9){for(let n=0,r=0,o=!0;r<s.length&&n<=i;r++){let a=s[r],l=n+a.length;l>=t&&(l>i&&(a=a.slice(0,i-n)),n<t&&(a=a.slice(t-n)),o?(e[e.length-1]+=a,o=!1):e.push(a)),n=l+1}return e}function jve(s,e,t){return YB(s,[""],e,t)}class yA{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof Ta?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,n=this.nodes[i],r=this.offsets[i],o=r>>1,a=n instanceof Ta?n.text.length:n.children.length;if(o==(t>0?a:0)){if(i==0)return this.done=!0,this.value="",this;t>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((r&1)==(t>0?0:1)){if(this.offsets[i]+=t,e==0)return this.lineBreak=!0,this.value=`
706
706
  `,this;e--}else if(n instanceof Ta){let l=n.text[o+(t<0?-1:0)];if(this.offsets[i]+=t,l.length>Math.max(0,e))return this.value=e==0?l:t>0?l.slice(e):l.slice(0,l.length-e),this;e-=l.length}else{let l=n.children[o+(t<0?-1:0)];e>l.length?(e-=l.length,this.offsets[i]+=t):(t<0&&this.offsets[i]--,this.nodes.push(l),this.offsets.push(t>0?1:(l instanceof Ta?l.text.length:l.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class qve{constructor(e,t,i){this.value="",this.done=!1,this.cursor=new yA(e,t>i?-1:1),this.pos=t>i?e.length:0,this.from=Math.min(t,i),this.to=Math.max(t,i)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let i=t<0?this.pos-this.from:this.to-this.pos;e>i&&(e=i),i-=e;let{value:n}=this.cursor.next(e);return this.pos+=(n.length+e)*t,this.value=n.length<=i?n:t<0?n.slice(n.length-i):n.slice(0,i),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class Qve{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:i,value:n}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=n,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(hr.prototype[Symbol.iterator]=function(){return this.iter()},yA.prototype[Symbol.iterator]=qve.prototype[Symbol.iterator]=Qve.prototype[Symbol.iterator]=function(){return this});class xQe{constructor(e,t,i,n){this.from=e,this.to=t,this.number=i,this.text=n}get length(){return this.to-this.from}}function zE(s,e,t){return e=Math.max(0,Math.min(s.length,e)),[e,Math.max(e,Math.min(s.length,t))]}function fd(s,e,t=!0,i=!0){return wQe(s,e,t,i)}function kQe(s){return s>=56320&&s<57344}function OQe(s){return s>=55296&&s<56320}function ng(s,e){let t=s.charCodeAt(e);if(!OQe(t)||e+1==s.length)return t;let i=s.charCodeAt(e+1);return kQe(i)?(t-55296<<10)+(i-56320)+65536:t}function Gve(s){return s<=65535?String.fromCharCode(s):(s-=65536,String.fromCharCode((s>>10)+55296,(s&1023)+56320))}function uv(s){return s<65536?1:2}const rK=/\r\n?|\n/;var wc=(function(s){return s[s.Simple=0]="Simple",s[s.TrackDel=1]="TrackDel",s[s.TrackBefore=2]="TrackBefore",s[s.TrackAfter=3]="TrackAfter",s})(wc||(wc={}));class o_{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let i=this.sections[t+1];e+=i<0?this.sections[t]:i}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,i=0,n=0;t<this.sections.length;){let r=this.sections[t++],o=this.sections[t++];o<0?(e(i,n,r),n+=r):n+=o,i+=r}}iterChangedRanges(e,t=!1){oK(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let i=this.sections[t++],n=this.sections[t++];n<0?e.push(i,n):e.push(n,i)}return new o_(e)}composeDesc(e){return this.empty?e:e.empty?this:Kve(this,e)}mapDesc(e,t=!1){return e.empty?this:aK(this,e,t)}mapPos(e,t=-1,i=wc.Simple){let n=0,r=0;for(let o=0;o<this.sections.length;){let a=this.sections[o++],l=this.sections[o++],c=n+a;if(l<0){if(c>e)return r+(e-n);r+=a}else{if(i!=wc.Simple&&c>=e&&(i==wc.TrackDel&&n<e&&c>e||i==wc.TrackBefore&&n<e||i==wc.TrackAfter&&c>e))return null;if(c>e||c==e&&t<0&&!a)return e==n||t<0?r:r+l;r+=l}n=c}if(e>n)throw new RangeError(`Position ${e} is out of range for changeset of length ${n}`);return r}touchesRange(e,t=e){for(let i=0,n=0;i<this.sections.length&&n<=t;){let r=this.sections[i++],o=this.sections[i++],a=n+r;if(o>=0&&n<=t&&a>=e)return n<e&&a>t?"cover":!0;n=a}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let i=this.sections[t++],n=this.sections[t++];e+=(e?" ":"")+i+(n>=0?":"+n:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new o_(e)}static create(e){return new o_(e)}}class wl extends o_{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return oK(this,(t,i,n,r,o)=>e=e.replace(n,n+(i-t),o),!1),e}mapDesc(e,t=!1){return aK(this,e,t,!0)}invert(e){let t=this.sections.slice(),i=[];for(let n=0,r=0;n<t.length;n+=2){let o=t[n],a=t[n+1];if(a>=0){t[n]=a,t[n+1]=o;let l=n>>1;for(;i.length<l;)i.push(hr.empty);i.push(o?e.slice(r,r+o):hr.empty)}r+=o}return new wl(t,i)}compose(e){return this.empty?e:e.empty?this:Kve(this,e,!0)}map(e,t=!1){return e.empty?this:aK(this,e,t,!0)}iterChanges(e,t=!1){oK(this,e,t)}get desc(){return o_.create(this.sections)}filter(e){let t=[],i=[],n=[],r=new wA(this);e:for(let o=0,a=0;;){let l=o==e.length?1e9:e[o++];for(;a<l||a==l&&r.len==0;){if(r.done)break e;let d=Math.min(r.len,l-a);gd(n,d,-1);let u=r.ins==-1?-1:r.off==0?r.ins:0;gd(t,d,u),u>0&&Dw(i,t,r.text),r.forward(d),a+=d}let c=e[o++];for(;a<c;){if(r.done)break e;let d=Math.min(r.len,c-a);gd(t,d,-1),gd(n,d,r.ins==-1?-1:r.off==0?r.ins:0),r.forward(d),a+=d}}return{changes:new wl(t,i),filtered:o_.create(n)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let i=this.sections[t],n=this.sections[t+1];n<0?e.push(i):n==0?e.push([i]):e.push([i].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,i){let n=[],r=[],o=0,a=null;function l(d=!1){if(!d&&!n.length)return;o<t&&gd(n,t-o,-1);let u=new wl(n,r);a=a?a.compose(u.map(a)):u,n=[],r=[],o=0}function c(d){if(Array.isArray(d))for(let u of d)c(u);else if(d instanceof wl){if(d.length!=t)throw new RangeError(`Mismatched change set length (got ${d.length}, expected ${t})`);l(),a=a?a.compose(d.map(a)):d}else{let{from:u,to:f=u,insert:p}=d;if(u>f||u<0||f>t)throw new RangeError(`Invalid change range ${u} to ${f} (in doc of length ${t})`);let m=p?typeof p=="string"?hr.of(p.split(i||rK)):p:hr.empty,b=m.length;if(u==f&&b==0)return;u<o&&l(),u>o&&gd(n,u-o,-1),gd(n,f-u,b),Dw(r,n,m),o=f}}return c(e),l(!a),a}static empty(e){return new wl(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],i=[];for(let n=0;n<e.length;n++){let r=e[n];if(typeof r=="number")t.push(r,-1);else{if(!Array.isArray(r)||typeof r[0]!="number"||r.some((o,a)=>a&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(r.length==1)t.push(r[0],0);else{for(;i.length<n;)i.push(hr.empty);i[n]=hr.of(r.slice(1)),t.push(r[0],i[n].length)}}}return new wl(t,i)}static createSet(e,t){return new wl(e,t)}}function gd(s,e,t,i=!1){if(e==0&&t<=0)return;let n=s.length-2;n>=0&&t<=0&&t==s[n+1]?s[n]+=e:n>=0&&e==0&&s[n]==0?s[n+1]+=t:i?(s[n]+=e,s[n+1]+=t):s.push(e,t)}function Dw(s,e,t){if(t.length==0)return;let i=e.length-2>>1;if(i<s.length)s[s.length-1]=s[s.length-1].append(t);else{for(;s.length<i;)s.push(hr.empty);s.push(t)}}function oK(s,e,t){let i=s.inserted;for(let n=0,r=0,o=0;o<s.sections.length;){let a=s.sections[o++],l=s.sections[o++];if(l<0)n+=a,r+=a;else{let c=n,d=r,u=hr.empty;for(;c+=a,d+=l,l&&i&&(u=u.append(i[o-2>>1])),!(t||o==s.sections.length||s.sections[o+1]<0);)a=s.sections[o++],l=s.sections[o++];e(n,c,r,d,u),n=c,r=d}}}function aK(s,e,t,i=!1){let n=[],r=i?[]:null,o=new wA(s),a=new wA(e);for(let l=-1;;){if(o.done&&a.len||a.done&&o.len)throw new Error("Mismatched change set lengths");if(o.ins==-1&&a.ins==-1){let c=Math.min(o.len,a.len);gd(n,c,-1),o.forward(c),a.forward(c)}else if(a.ins>=0&&(o.ins<0||l==o.i||o.off==0&&(a.len<o.len||a.len==o.len&&!t))){let c=a.len;for(gd(n,a.ins,-1);c;){let d=Math.min(o.len,c);o.ins>=0&&l<o.i&&o.len<=d&&(gd(n,0,o.ins),r&&Dw(r,n,o.text),l=o.i),o.forward(d),c-=d}a.next()}else if(o.ins>=0){let c=0,d=o.len;for(;d;)if(a.ins==-1){let u=Math.min(d,a.len);c+=u,d-=u,a.forward(u)}else if(a.ins==0&&a.len<d)d-=a.len,a.next();else break;gd(n,c,l<o.i?o.ins:0),r&&l<o.i&&Dw(r,n,o.text),l=o.i,o.forward(o.len-d)}else{if(o.done&&a.done)return r?wl.createSet(n,r):o_.create(n);throw new Error("Mismatched change set lengths")}}}function Kve(s,e,t=!1){let i=[],n=t?[]:null,r=new wA(s),o=new wA(e);for(let a=!1;;){if(r.done&&o.done)return n?wl.createSet(i,n):o_.create(i);if(r.ins==0)gd(i,r.len,0,a),r.next();else if(o.len==0&&!o.done)gd(i,0,o.ins,a),n&&Dw(n,i,o.text),o.next();else{if(r.done||o.done)throw new Error("Mismatched change set lengths");{let l=Math.min(r.len2,o.len),c=i.length;if(r.ins==-1){let d=o.ins==-1?-1:o.off?0:o.ins;gd(i,l,d,a),n&&d&&Dw(n,i,o.text)}else o.ins==-1?(gd(i,r.off?0:r.len,l,a),n&&Dw(n,i,r.textBit(l))):(gd(i,r.off?0:r.len,o.off?0:o.ins,a),n&&!o.off&&Dw(n,i,o.text));a=(r.ins>l||o.ins>=0&&o.len>l)&&(a||i.length>c),r.forward2(l),o.forward(l)}}}}class wA{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,t=this.i-2>>1;return t>=e.length?hr.empty:e[t]}textBit(e){let{inserted:t}=this.set,i=this.i-2>>1;return i>=t.length&&!e?hr.empty:t[i].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}let JB=class $pe{constructor(e,t,i){this.from=e,this.to=t,this.flags=i}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,t=-1){let i,n;return this.empty?i=n=e.mapPos(this.from,t):(i=e.mapPos(this.from,1),n=e.mapPos(this.to,-1)),i==this.from&&n==this.to?this:new $pe(i,n,this.flags)}extend(e,t=e,i=0){if(e<=this.anchor&&t>=this.anchor)return wt.range(e,t,void 0,void 0,i);let n=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return wt.range(this.anchor,n,void 0,void 0,i)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!t||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return wt.range(e.anchor,e.head)}static create(e,t,i){return new $pe(e,t,i)}};class wt{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:wt.create(this.ranges.map(i=>i.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let i=0;i<this.ranges.length;i++)if(!this.ranges[i].eq(e.ranges[i],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new wt([this.main],0)}addRange(e,t=!0){return wt.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let i=this.ranges.slice();return i[t]=e,wt.create(i,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new wt(e.ranges.map(t=>JB.fromJSON(t)),e.main)}static single(e,t=e){return new wt([wt.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let i=0,n=0;n<e.length;n++){let r=e[n];if(r.empty?r.from<=i:r.from<i)return wt.normalized(e.slice(),t);i=r.to}return new wt(e,t)}static cursor(e,t=0,i,n){return JB.create(e,e,(t==0?0:t<0?8:16)|(i==null?7:Math.min(6,i))|(n??16777215)<<6)}static range(e,t,i,n,r){let o=(i??16777215)<<6|(n==null?7:Math.min(6,n));return!r&&e!=t&&(r=t<e?1:-1),t<e?JB.create(t,e,48|o):JB.create(e,t,(r?r<0?8:16:0)|o)}static normalized(e,t=0){let i=e[t];e.sort((n,r)=>n.from-r.from),t=e.indexOf(i);for(let n=1;n<e.length;n++){let r=e[n],o=e[n-1];if(r.empty?r.from<=o.to:r.from<o.to){let a=o.from,l=Math.max(r.to,o.to);n<=t&&t--,e.splice(--n,2,r.anchor>r.head?wt.range(l,a):wt.range(a,l))}}return new wt(e,t)}}function Zve(s,e){for(let t of s.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let lK=0;class Li{constructor(e,t,i,n,r){this.combine=e,this.compareInput=t,this.compare=i,this.isStatic=n,this.id=lK++,this.default=e([]),this.extensions=typeof r=="function"?r(this):r}get reader(){return this}static define(e={}){return new Li(e.combine||(t=>t),e.compareInput||((t,i)=>t===i),e.compare||(e.combine?(t,i)=>t===i:cK),!!e.static,e.enables)}of(e){return new e$([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new e$(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new e$(e,this,2,t)}from(e,t){return t||(t=i=>i),this.compute([e],i=>t(i.field(e)))}}function cK(s,e){return s==e||s.length==e.length&&s.every((t,i)=>t===e[i])}class e${constructor(e,t,i,n){this.dependencies=e,this.facet=t,this.type=i,this.value=n,this.id=lK++}dynamicSlot(e){var t;let i=this.value,n=this.facet.compareInput,r=this.id,o=e[r]>>1,a=this.type==2,l=!1,c=!1,d=[];for(let u of this.dependencies)u=="doc"?l=!0:u=="selection"?c=!0:(((t=e[u.id])!==null&&t!==void 0?t:1)&1)==0&&d.push(e[u.id]);return{create(u){return u.values[o]=i(u),1},update(u,f){if(l&&f.docChanged||c&&(f.docChanged||f.selection)||dK(u,d)){let p=i(u);if(a?!Xve(p,u.values[o],n):!n(p,u.values[o]))return u.values[o]=p,1}return 0},reconfigure:(u,f)=>{let p,m=f.config.address[r];if(m!=null){let b=i$(f,m);if(this.dependencies.every(w=>w instanceof Li?f.facet(w)===u.facet(w):w instanceof su?f.field(w,!1)==u.field(w,!1):!0)||(a?Xve(p=i(u),b,n):n(p=i(u),b)))return u.values[o]=b,0}else p=i(u);return u.values[o]=p,1}}}}function Xve(s,e,t){if(s.length!=e.length)return!1;for(let i=0;i<s.length;i++)if(!t(s[i],e[i]))return!1;return!0}function dK(s,e){let t=!1;for(let i of e)SA(s,i)&1&&(t=!0);return t}function EQe(s,e,t){let i=t.map(l=>s[l.id]),n=t.map(l=>l.type),r=i.filter(l=>!(l&1)),o=s[e.id]>>1;function a(l){let c=[];for(let d=0;d<i.length;d++){let u=i$(l,i[d]);if(n[d]==2)for(let f of u)c.push(f);else c.push(u)}return e.combine(c)}return{create(l){for(let c of i)SA(l,c);return l.values[o]=a(l),1},update(l,c){if(!dK(l,r))return 0;let d=a(l);return e.compare(d,l.values[o])?0:(l.values[o]=d,1)},reconfigure(l,c){let d=dK(l,i),u=c.config.facets[e.id],f=c.facet(e);if(u&&!d&&cK(t,u))return l.values[o]=f,0;let p=a(l);return e.compare(p,f)?(l.values[o]=f,0):(l.values[o]=p,1)}}}const t$=Li.define({static:!0});class su{constructor(e,t,i,n,r){this.id=e,this.createF=t,this.updateF=i,this.compareF=n,this.spec=r,this.provides=void 0}static define(e){let t=new su(lK++,e.create,e.update,e.compare||((i,n)=>i===n),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(t$).find(i=>i.field==this);return((t==null?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:i=>(i.values[t]=this.create(i),1),update:(i,n)=>{let r=i.values[t],o=this.updateF(r,n);return this.compareF(r,o)?0:(i.values[t]=o,1)},reconfigure:(i,n)=>{let r=i.facet(t$),o=n.facet(t$),a;return(a=r.find(l=>l.field==this))&&a!=o.find(l=>l.field==this)?(i.values[t]=a.create(i),1):n.config.address[this.id]!=null?(i.values[t]=n.field(this),0):(i.values[t]=this.create(i),1)}}}init(e){return[this,t$.of({field:this,create:e})]}get extension(){return this}}const HC={lowest:4,low:3,default:2,high:1,highest:0};function CA(s){return e=>new Yve(e,s)}const VC={highest:CA(HC.highest),high:CA(HC.high),default:CA(HC.default),low:CA(HC.low),lowest:CA(HC.lowest)};class Yve{constructor(e,t){this.inner=e,this.prec=t}}class Iw{of(e){return new uK(this,e)}reconfigure(e){return Iw.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class uK{constructor(e,t){this.compartment=e,this.inner=t}}let Jve=class L6e{constructor(e,t,i,n,r,o){for(this.base=e,this.compartments=t,this.dynamicSlots=i,this.address=n,this.staticValues=r,this.facets=o,this.statusTemplate=[];this.statusTemplate.length<i.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return t==null?e.default:this.staticValues[t>>1]}static resolve(e,t,i){let n=[],r=Object.create(null),o=new Map;for(let f of LQe(e,t,o))f instanceof su?n.push(f):(r[f.facet.id]||(r[f.facet.id]=[])).push(f);let a=Object.create(null),l=[],c=[];for(let f of n)a[f.id]=c.length<<1,c.push(p=>f.slot(p));let d=i==null?void 0:i.config.facets;for(let f in r){let p=r[f],m=p[0].facet,b=d&&d[f]||[];if(p.every(w=>w.type==0))if(a[m.id]=l.length<<1|1,cK(b,p))l.push(i.facet(m));else{let w=m.combine(p.map(S=>S.value));l.push(i&&m.compare(w,i.facet(m))?i.facet(m):w)}else{for(let w of p)w.type==0?(a[w.id]=l.length<<1|1,l.push(w.value)):(a[w.id]=c.length<<1,c.push(S=>w.dynamicSlot(S)));a[m.id]=c.length<<1,c.push(w=>EQe(w,m,p))}}let u=c.map(f=>f(a));return new L6e(e,o,u,a,l,r)}};function LQe(s,e,t){let i=[[],[],[],[],[]],n=new Map;function r(o,a){let l=n.get(o);if(l!=null){if(l<=a)return;let c=i[l].indexOf(o);c>-1&&i[l].splice(c,1),o instanceof uK&&t.delete(o.compartment)}if(n.set(o,a),Array.isArray(o))for(let c of o)r(c,a);else if(o instanceof uK){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let c=e.get(o.compartment)||o.inner;t.set(o.compartment,c),r(c,a)}else if(o instanceof Yve)r(o.inner,o.prec);else if(o instanceof su)i[a].push(o),o.provides&&r(o.provides,a);else if(o instanceof e$)i[a].push(o),o.facet.extensions&&r(o.facet.extensions,HC.default);else{let c=o.extension;if(!c)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);r(c,a)}}return r(s,HC.default),i.reduce((o,a)=>o.concat(a))}function SA(s,e){if(e&1)return 2;let t=e>>1,i=s.status[t];if(i==4)throw new Error("Cyclic dependency between fields and/or facets");if(i&2)return i;s.status[t]=4;let n=s.computeSlot(s,s.config.dynamicSlots[t]);return s.status[t]=2|n}function i$(s,e){return e&1?s.config.staticValues[e>>1]:s.values[e>>1]}const eye=Li.define(),hK=Li.define({combine:s=>s.some(e=>e),static:!0}),tye=Li.define({combine:s=>s.length?s[0]:void 0,static:!0}),iye=Li.define(),nye=Li.define(),sye=Li.define(),rye=Li.define({combine:s=>s.length?s[0]:!1});class hv{constructor(e,t){this.type=e,this.value=t}static define(){return new TQe}}class TQe{of(e){return new hv(this,e)}}class DQe{constructor(e){this.map=e}of(e){return new As(this,e)}}class As{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new As(this.type,t)}is(e){return this.type==e}static define(e={}){return new DQe(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let i=[];for(let n of e){let r=n.map(t);r&&i.push(r)}return i}}As.reconfigure=As.define(),As.appendConfig=As.define();class Ka{constructor(e,t,i,n,r,o){this.startState=e,this.changes=t,this.selection=i,this.effects=n,this.annotations=r,this.scrollIntoView=o,this._doc=null,this._state=null,i&&Zve(i,t.newLength),r.some(a=>a.type==Ka.time)||(this.annotations=r.concat(Ka.time.of(Date.now())))}static create(e,t,i,n,r,o){return new Ka(e,t,i,n,r,o)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(Ka.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}Ka.time=hv.define(),Ka.userEvent=hv.define(),Ka.addToHistory=hv.define(),Ka.remote=hv.define();function IQe(s,e){let t=[];for(let i=0,n=0;;){let r,o;if(i<s.length&&(n==e.length||e[n]>=s[i]))r=s[i++],o=s[i++];else if(n<e.length)r=e[n++],o=e[n++];else return t;!t.length||t[t.length-1]<r?t.push(r,o):t[t.length-1]<o&&(t[t.length-1]=o)}}function oye(s,e,t){var i;let n,r,o;return t?(n=e.changes,r=wl.empty(e.changes.length),o=s.changes.compose(e.changes)):(n=e.changes.map(s.changes),r=s.changes.mapDesc(e.changes,!0),o=s.changes.compose(n)),{changes:o,selection:e.selection?e.selection.map(r):(i=s.selection)===null||i===void 0?void 0:i.map(n),effects:As.mapEffects(s.effects,n).concat(As.mapEffects(e.effects,r)),annotations:s.annotations.length?s.annotations.concat(e.annotations):e.annotations,scrollIntoView:s.scrollIntoView||e.scrollIntoView}}function fK(s,e,t){let i=e.selection,n=UE(e.annotations);return e.userEvent&&(n=n.concat(Ka.userEvent.of(e.userEvent))),{changes:e.changes instanceof wl?e.changes:wl.of(e.changes||[],t,s.facet(tye)),selection:i&&(i instanceof wt?i:wt.single(i.anchor,i.head)),effects:UE(e.effects),annotations:n,scrollIntoView:!!e.scrollIntoView}}function aye(s,e,t){let i=fK(s,e.length?e[0]:{},s.doc.length);e.length&&e[0].filter===!1&&(t=!1);for(let r=1;r<e.length;r++){e[r].filter===!1&&(t=!1);let o=!!e[r].sequential;i=oye(i,fK(s,e[r],o?i.changes.newLength:s.doc.length),o)}let n=Ka.create(s,i.changes,i.selection,i.effects,i.annotations,i.scrollIntoView);return NQe(t?RQe(n):n)}function RQe(s){let e=s.startState,t=!0;for(let n of e.facet(iye)){let r=n(s);if(r===!1){t=!1;break}Array.isArray(r)&&(t=t===!0?r:IQe(t,r))}if(t!==!0){let n,r;if(t===!1)r=s.changes.invertedDesc,n=wl.empty(e.doc.length);else{let o=s.changes.filter(t);n=o.changes,r=o.filtered.mapDesc(o.changes).invertedDesc}s=Ka.create(e,n,s.selection&&s.selection.map(r),As.mapEffects(s.effects,r),s.annotations,s.scrollIntoView)}let i=e.facet(nye);for(let n=i.length-1;n>=0;n--){let r=i[n](s);r instanceof Ka?s=r:Array.isArray(r)&&r.length==1&&r[0]instanceof Ka?s=r[0]:s=aye(e,UE(r),!1)}return s}function NQe(s){let e=s.startState,t=e.facet(sye),i=s;for(let n=t.length-1;n>=0;n--){let r=t[n](s);r&&Object.keys(r).length&&(i=oye(i,fK(e,r,s.changes.newLength),!0))}return i==s?s:Ka.create(e,s.changes,s.selection,i.effects,i.annotations,i.scrollIntoView)}const AQe=[];function UE(s){return s==null?AQe:Array.isArray(s)?s:[s]}var sg=(function(s){return s[s.Word=0]="Word",s[s.Space=1]="Space",s[s.Other=2]="Other",s})(sg||(sg={}));const MQe=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let gK;try{gK=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function PQe(s){if(gK)return gK.test(s);for(let e=0;e<s.length;e++){let t=s[e];if(/\w/.test(t)||t>"€"&&(t.toUpperCase()!=t.toLowerCase()||MQe.test(t)))return!0}return!1}function FQe(s){return e=>{if(!/\S/.test(e))return sg.Space;if(PQe(e))return sg.Word;for(let t=0;t<s.length;t++)if(e.indexOf(s[t])>-1)return sg.Word;return sg.Other}}let aa=class Ym{constructor(e,t,i,n,r,o){this.config=e,this.doc=t,this.selection=i,this.values=n,this.status=e.statusTemplate.slice(),this.computeSlot=r,o&&(o._state=this);for(let a=0;a<this.config.dynamicSlots.length;a++)SA(this,a<<1);this.computeSlot=null}field(e,t=!0){let i=this.config.address[e.id];if(i==null){if(t)throw new RangeError("Field is not present in this state");return}return SA(this,i),i$(this,i)}update(...e){return aye(this,e,!0)}applyTransaction(e){let t=this.config,{base:i,compartments:n}=t;for(let a of e.effects)a.is(Iw.reconfigure)?(t&&(n=new Map,t.compartments.forEach((l,c)=>n.set(c,l)),t=null),n.set(a.value.compartment,a.value.extension)):a.is(As.reconfigure)?(t=null,i=a.value):a.is(As.appendConfig)&&(t=null,i=UE(i).concat(a.value));let r;t?r=e.startState.values.slice():(t=Jve.resolve(i,n,this),r=new Ym(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(l,c)=>c.reconfigure(l,this),null).values);let o=e.startState.facet(hK)?e.newSelection:e.newSelection.asSingle();new Ym(t,e.newDoc,o,r,(a,l)=>l.update(a,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:wt.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,i=e(t.ranges[0]),n=this.changes(i.changes),r=[i.range],o=UE(i.effects);for(let a=1;a<t.ranges.length;a++){let l=e(t.ranges[a]),c=this.changes(l.changes),d=c.map(n);for(let f=0;f<a;f++)r[f]=r[f].map(d);let u=n.mapDesc(c,!0);r.push(l.range.map(u)),n=n.compose(d),o=As.mapEffects(o,d).concat(As.mapEffects(UE(l.effects),u))}return{changes:n,selection:wt.create(r,t.mainIndex),effects:o}}changes(e=[]){return e instanceof wl?e:wl.of(e,this.doc.length,this.facet(Ym.lineSeparator))}toText(e){return hr.of(e.split(this.facet(Ym.lineSeparator)||rK))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return t==null?e.default:(SA(this,t),i$(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let i in e){let n=e[i];n instanceof su&&this.config.address[n.id]!=null&&(t[i]=n.spec.toJSON(this.field(e[i]),this))}return t}static fromJSON(e,t={},i){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let n=[];if(i){for(let r in i)if(Object.prototype.hasOwnProperty.call(e,r)){let o=i[r],a=e[r];n.push(o.init(l=>o.spec.fromJSON(a,l)))}}return Ym.create({doc:e.doc,selection:wt.fromJSON(e.selection),extensions:t.extensions?n.concat([t.extensions]):n})}static create(e={}){let t=Jve.resolve(e.extensions||[],new Map),i=e.doc instanceof hr?e.doc:hr.of((e.doc||"").split(t.staticFacet(Ym.lineSeparator)||rK)),n=e.selection?e.selection instanceof wt?e.selection:wt.single(e.selection.anchor,e.selection.head):wt.single(0);return Zve(n,i.length),t.staticFacet(hK)||(n=n.asSingle()),new Ym(t,i,n,t.dynamicSlots.map(()=>null),(r,o)=>o.create(r),null)}get tabSize(){return this.facet(Ym.tabSize)}get lineBreak(){return this.facet(Ym.lineSeparator)||`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@muonroi/ui-engine-rule-components",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "description": "Muonroi rule engine web components",
5
5
  "type": "module",
6
6
  "main": "dist/muonroi-rule-components.esm.js",