rails_visualizer 0.1.0
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.
- checksums.yaml +7 -0
- data/CHANGELOG.md +36 -0
- data/LICENSE.txt +21 -0
- data/README.md +509 -0
- data/lib/rails_visualizer/assets/dist/index.html +76 -0
- data/lib/rails_visualizer/configuration.rb +35 -0
- data/lib/rails_visualizer/controllers_inspector.rb +200 -0
- data/lib/rails_visualizer/gems_inspector.rb +105 -0
- data/lib/rails_visualizer/introspector.rb +191 -0
- data/lib/rails_visualizer/jobs_inspector.rb +120 -0
- data/lib/rails_visualizer/mailers_inspector.rb +126 -0
- data/lib/rails_visualizer/migrations_inspector.rb +68 -0
- data/lib/rails_visualizer/path_helper.rb +29 -0
- data/lib/rails_visualizer/railtie.rb +9 -0
- data/lib/rails_visualizer/renderer.rb +31 -0
- data/lib/rails_visualizer/routes_inspector.rb +124 -0
- data/lib/rails_visualizer/schema/cache.rb +234 -0
- data/lib/rails_visualizer/schema/index_inspector.rb +43 -0
- data/lib/rails_visualizer/schema/model_inspector.rb +245 -0
- data/lib/rails_visualizer/serializer.rb +124 -0
- data/lib/rails_visualizer/version.rb +5 -0
- data/lib/rails_visualizer.rb +22 -0
- data/lib/tasks/rails_visualizer.rake +59 -0
- metadata +76 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>RailsVisualizer — Schema Visualizer</title>
|
|
7
|
+
<script id="rails-visualizer-data"></script>
|
|
8
|
+
<script type="module" crossorigin>var I2=Object.defineProperty;var P2=(e,t,n)=>t in e?I2(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var ke=(e,t,n)=>P2(e,typeof t!="symbol"?t+"":t,n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(s){if(s.ep)return;s.ep=!0;const i=n(s);fetch(s.href,i)}})();function Mu(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var X0={exports:{}},Bo={},q0={exports:{}},ne={};/**
|
|
9
|
+
* @license React
|
|
10
|
+
* react.production.min.js
|
|
11
|
+
*
|
|
12
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
13
|
+
*
|
|
14
|
+
* This source code is licensed under the MIT license found in the
|
|
15
|
+
* LICENSE file in the root directory of this source tree.
|
|
16
|
+
*/var qs=Symbol.for("react.element"),T2=Symbol.for("react.portal"),$2=Symbol.for("react.fragment"),A2=Symbol.for("react.strict_mode"),R2=Symbol.for("react.profiler"),O2=Symbol.for("react.provider"),z2=Symbol.for("react.context"),D2=Symbol.for("react.forward_ref"),F2=Symbol.for("react.suspense"),V2=Symbol.for("react.memo"),H2=Symbol.for("react.lazy"),rd=Symbol.iterator;function B2(e){return e===null||typeof e!="object"?null:(e=rd&&e[rd]||e["@@iterator"],typeof e=="function"?e:null)}var Q0={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},K0=Object.assign,Z0={};function Fr(e,t,n){this.props=e,this.context=t,this.refs=Z0,this.updater=n||Q0}Fr.prototype.isReactComponent={};Fr.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Fr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function J0(){}J0.prototype=Fr.prototype;function Lu(e,t,n){this.props=e,this.context=t,this.refs=Z0,this.updater=n||Q0}var Iu=Lu.prototype=new J0;Iu.constructor=Lu;K0(Iu,Fr.prototype);Iu.isPureReactComponent=!0;var sd=Array.isArray,eh=Object.prototype.hasOwnProperty,Pu={current:null},th={key:!0,ref:!0,__self:!0,__source:!0};function nh(e,t,n){var r,s={},i=null,o=null;if(t!=null)for(r in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(i=""+t.key),t)eh.call(t,r)&&!th.hasOwnProperty(r)&&(s[r]=t[r]);var l=arguments.length-2;if(l===1)s.children=n;else if(1<l){for(var u=Array(l),c=0;c<l;c++)u[c]=arguments[c+2];s.children=u}if(e&&e.defaultProps)for(r in l=e.defaultProps,l)s[r]===void 0&&(s[r]=l[r]);return{$$typeof:qs,type:e,key:i,ref:o,props:s,_owner:Pu.current}}function W2(e,t){return{$$typeof:qs,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function Tu(e){return typeof e=="object"&&e!==null&&e.$$typeof===qs}function U2(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var id=/\/+/g;function Cl(e,t){return typeof e=="object"&&e!==null&&e.key!=null?U2(""+e.key):t.toString(36)}function Fi(e,t,n,r,s){var i=typeof e;(i==="undefined"||i==="boolean")&&(e=null);var o=!1;if(e===null)o=!0;else switch(i){case"string":case"number":o=!0;break;case"object":switch(e.$$typeof){case qs:case T2:o=!0}}if(o)return o=e,s=s(o),e=r===""?"."+Cl(o,0):r,sd(s)?(n="",e!=null&&(n=e.replace(id,"$&/")+"/"),Fi(s,t,n,"",function(c){return c})):s!=null&&(Tu(s)&&(s=W2(s,n+(!s.key||o&&o.key===s.key?"":(""+s.key).replace(id,"$&/")+"/")+e)),t.push(s)),1;if(o=0,r=r===""?".":r+":",sd(e))for(var l=0;l<e.length;l++){i=e[l];var u=r+Cl(i,l);o+=Fi(i,t,n,u,s)}else if(u=B2(e),typeof u=="function")for(e=u.call(e),l=0;!(i=e.next()).done;)i=i.value,u=r+Cl(i,l++),o+=Fi(i,t,n,u,s);else if(i==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return o}function hi(e,t,n){if(e==null)return e;var r=[],s=0;return Fi(e,r,"","",function(i){return t.call(n,i,s++)}),r}function G2(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var Ve={current:null},Vi={transition:null},Y2={ReactCurrentDispatcher:Ve,ReactCurrentBatchConfig:Vi,ReactCurrentOwner:Pu};function rh(){throw Error("act(...) is not supported in production builds of React.")}ne.Children={map:hi,forEach:function(e,t,n){hi(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return hi(e,function(){t++}),t},toArray:function(e){return hi(e,function(t){return t})||[]},only:function(e){if(!Tu(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};ne.Component=Fr;ne.Fragment=$2;ne.Profiler=R2;ne.PureComponent=Lu;ne.StrictMode=A2;ne.Suspense=F2;ne.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Y2;ne.act=rh;ne.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=K0({},e.props),s=e.key,i=e.ref,o=e._owner;if(t!=null){if(t.ref!==void 0&&(i=t.ref,o=Pu.current),t.key!==void 0&&(s=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(u in t)eh.call(t,u)&&!th.hasOwnProperty(u)&&(r[u]=t[u]===void 0&&l!==void 0?l[u]:t[u])}var u=arguments.length-2;if(u===1)r.children=n;else if(1<u){l=Array(u);for(var c=0;c<u;c++)l[c]=arguments[c+2];r.children=l}return{$$typeof:qs,type:e.type,key:s,ref:i,props:r,_owner:o}};ne.createContext=function(e){return e={$$typeof:z2,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:O2,_context:e},e.Consumer=e};ne.createElement=nh;ne.createFactory=function(e){var t=nh.bind(null,e);return t.type=e,t};ne.createRef=function(){return{current:null}};ne.forwardRef=function(e){return{$$typeof:D2,render:e}};ne.isValidElement=Tu;ne.lazy=function(e){return{$$typeof:H2,_payload:{_status:-1,_result:e},_init:G2}};ne.memo=function(e,t){return{$$typeof:V2,type:e,compare:t===void 0?null:t}};ne.startTransition=function(e){var t=Vi.transition;Vi.transition={};try{e()}finally{Vi.transition=t}};ne.unstable_act=rh;ne.useCallback=function(e,t){return Ve.current.useCallback(e,t)};ne.useContext=function(e){return Ve.current.useContext(e)};ne.useDebugValue=function(){};ne.useDeferredValue=function(e){return Ve.current.useDeferredValue(e)};ne.useEffect=function(e,t){return Ve.current.useEffect(e,t)};ne.useId=function(){return Ve.current.useId()};ne.useImperativeHandle=function(e,t,n){return Ve.current.useImperativeHandle(e,t,n)};ne.useInsertionEffect=function(e,t){return Ve.current.useInsertionEffect(e,t)};ne.useLayoutEffect=function(e,t){return Ve.current.useLayoutEffect(e,t)};ne.useMemo=function(e,t){return Ve.current.useMemo(e,t)};ne.useReducer=function(e,t,n){return Ve.current.useReducer(e,t,n)};ne.useRef=function(e){return Ve.current.useRef(e)};ne.useState=function(e){return Ve.current.useState(e)};ne.useSyncExternalStore=function(e,t,n){return Ve.current.useSyncExternalStore(e,t,n)};ne.useTransition=function(){return Ve.current.useTransition()};ne.version="18.3.1";q0.exports=ne;var j=q0.exports;const $u=Mu(j);/**
|
|
17
|
+
* @license React
|
|
18
|
+
* react-jsx-runtime.production.min.js
|
|
19
|
+
*
|
|
20
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
21
|
+
*
|
|
22
|
+
* This source code is licensed under the MIT license found in the
|
|
23
|
+
* LICENSE file in the root directory of this source tree.
|
|
24
|
+
*/var X2=j,q2=Symbol.for("react.element"),Q2=Symbol.for("react.fragment"),K2=Object.prototype.hasOwnProperty,Z2=X2.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,J2={key:!0,ref:!0,__self:!0,__source:!0};function sh(e,t,n){var r,s={},i=null,o=null;n!==void 0&&(i=""+n),t.key!==void 0&&(i=""+t.key),t.ref!==void 0&&(o=t.ref);for(r in t)K2.call(t,r)&&!J2.hasOwnProperty(r)&&(s[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)s[r]===void 0&&(s[r]=t[r]);return{$$typeof:q2,type:e,key:i,ref:o,props:s,_owner:Z2.current}}Bo.Fragment=Q2;Bo.jsx=sh;Bo.jsxs=sh;X0.exports=Bo;var a=X0.exports,ma={},ih={exports:{}},rt={},oh={exports:{}},lh={};/**
|
|
25
|
+
* @license React
|
|
26
|
+
* scheduler.production.min.js
|
|
27
|
+
*
|
|
28
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
29
|
+
*
|
|
30
|
+
* This source code is licensed under the MIT license found in the
|
|
31
|
+
* LICENSE file in the root directory of this source tree.
|
|
32
|
+
*/(function(e){function t(_,L){var E=_.length;_.push(L);e:for(;0<E;){var R=E-1>>>1,D=_[R];if(0<s(D,L))_[R]=L,_[E]=D,E=R;else break e}}function n(_){return _.length===0?null:_[0]}function r(_){if(_.length===0)return null;var L=_[0],E=_.pop();if(E!==L){_[0]=E;e:for(var R=0,D=_.length,W=D>>>1;R<W;){var B=2*(R+1)-1,G=_[B],Y=B+1,q=_[Y];if(0>s(G,E))Y<D&&0>s(q,G)?(_[R]=q,_[Y]=E,R=Y):(_[R]=G,_[B]=E,R=B);else if(Y<D&&0>s(q,E))_[R]=q,_[Y]=E,R=Y;else break e}}return L}function s(_,L){var E=_.sortIndex-L.sortIndex;return E!==0?E:_.id-L.id}if(typeof performance=="object"&&typeof performance.now=="function"){var i=performance;e.unstable_now=function(){return i.now()}}else{var o=Date,l=o.now();e.unstable_now=function(){return o.now()-l}}var u=[],c=[],d=1,f=null,h=3,m=!1,p=!1,v=!1,b=typeof setTimeout=="function"?setTimeout:null,x=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function g(_){for(var L=n(c);L!==null;){if(L.callback===null)r(c);else if(L.startTime<=_)r(c),L.sortIndex=L.expirationTime,t(u,L);else break;L=n(c)}}function w(_){if(v=!1,g(_),!p)if(n(u)!==null)p=!0,T(k);else{var L=n(c);L!==null&&O(w,L.startTime-_)}}function k(_,L){p=!1,v&&(v=!1,x(I),I=-1),m=!0;var E=h;try{for(g(L),f=n(u);f!==null&&(!(f.expirationTime>L)||_&&!S());){var R=f.callback;if(typeof R=="function"){f.callback=null,h=f.priorityLevel;var D=R(f.expirationTime<=L);L=e.unstable_now(),typeof D=="function"?f.callback=D:f===n(u)&&r(u),g(L)}else r(u);f=n(u)}if(f!==null)var W=!0;else{var B=n(c);B!==null&&O(w,B.startTime-L),W=!1}return W}finally{f=null,h=E,m=!1}}var N=!1,M=null,I=-1,P=5,z=-1;function S(){return!(e.unstable_now()-z<P)}function $(){if(M!==null){var _=e.unstable_now();z=_;var L=!0;try{L=M(!0,_)}finally{L?F():(N=!1,M=null)}}else N=!1}var F;if(typeof y=="function")F=function(){y($)};else if(typeof MessageChannel<"u"){var C=new MessageChannel,A=C.port2;C.port1.onmessage=$,F=function(){A.postMessage(null)}}else F=function(){b($,0)};function T(_){M=_,N||(N=!0,F())}function O(_,L){I=b(function(){_(e.unstable_now())},L)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(_){_.callback=null},e.unstable_continueExecution=function(){p||m||(p=!0,T(k))},e.unstable_forceFrameRate=function(_){0>_||125<_?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):P=0<_?Math.floor(1e3/_):5},e.unstable_getCurrentPriorityLevel=function(){return h},e.unstable_getFirstCallbackNode=function(){return n(u)},e.unstable_next=function(_){switch(h){case 1:case 2:case 3:var L=3;break;default:L=h}var E=h;h=L;try{return _()}finally{h=E}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(_,L){switch(_){case 1:case 2:case 3:case 4:case 5:break;default:_=3}var E=h;h=_;try{return L()}finally{h=E}},e.unstable_scheduleCallback=function(_,L,E){var R=e.unstable_now();switch(typeof E=="object"&&E!==null?(E=E.delay,E=typeof E=="number"&&0<E?R+E:R):E=R,_){case 1:var D=-1;break;case 2:D=250;break;case 5:D=1073741823;break;case 4:D=1e4;break;default:D=5e3}return D=E+D,_={id:d++,callback:L,priorityLevel:_,startTime:E,expirationTime:D,sortIndex:-1},E>R?(_.sortIndex=E,t(c,_),n(u)===null&&_===n(c)&&(v?(x(I),I=-1):v=!0,O(w,E-R))):(_.sortIndex=D,t(u,_),p||m||(p=!0,T(k))),_},e.unstable_shouldYield=S,e.unstable_wrapCallback=function(_){var L=h;return function(){var E=h;h=L;try{return _.apply(this,arguments)}finally{h=E}}}})(lh);oh.exports=lh;var ex=oh.exports;/**
|
|
33
|
+
* @license React
|
|
34
|
+
* react-dom.production.min.js
|
|
35
|
+
*
|
|
36
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
37
|
+
*
|
|
38
|
+
* This source code is licensed under the MIT license found in the
|
|
39
|
+
* LICENSE file in the root directory of this source tree.
|
|
40
|
+
*/var tx=j,tt=ex;function V(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var ah=new Set,bs={};function qn(e,t){Cr(e,t),Cr(e+"Capture",t)}function Cr(e,t){for(bs[e]=t,e=0;e<t.length;e++)ah.add(t[e])}var Wt=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ga=Object.prototype.hasOwnProperty,nx=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,od={},ld={};function rx(e){return ga.call(ld,e)?!0:ga.call(od,e)?!1:nx.test(e)?ld[e]=!0:(od[e]=!0,!1)}function sx(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function ix(e,t,n,r){if(t===null||typeof t>"u"||sx(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function He(e,t,n,r,s,i,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=s,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=o}var Te={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Te[e]=new He(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Te[t]=new He(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Te[e]=new He(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Te[e]=new He(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Te[e]=new He(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Te[e]=new He(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Te[e]=new He(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Te[e]=new He(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Te[e]=new He(e,5,!1,e.toLowerCase(),null,!1,!1)});var Au=/[\-:]([a-z])/g;function Ru(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Au,Ru);Te[t]=new He(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Au,Ru);Te[t]=new He(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Au,Ru);Te[t]=new He(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Te[e]=new He(e,1,!1,e.toLowerCase(),null,!1,!1)});Te.xlinkHref=new He("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Te[e]=new He(e,1,!1,e.toLowerCase(),null,!0,!0)});function Ou(e,t,n,r){var s=Te.hasOwnProperty(t)?Te[t]:null;(s!==null?s.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(ix(t,n,s,r)&&(n=null),r||s===null?rx(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):s.mustUseProperty?e[s.propertyName]=n===null?s.type===3?!1:"":n:(t=s.attributeName,r=s.attributeNamespace,n===null?e.removeAttribute(t):(s=s.type,n=s===3||s===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var qt=tx.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,pi=Symbol.for("react.element"),nr=Symbol.for("react.portal"),rr=Symbol.for("react.fragment"),zu=Symbol.for("react.strict_mode"),xa=Symbol.for("react.profiler"),uh=Symbol.for("react.provider"),ch=Symbol.for("react.context"),Du=Symbol.for("react.forward_ref"),ya=Symbol.for("react.suspense"),va=Symbol.for("react.suspense_list"),Fu=Symbol.for("react.memo"),tn=Symbol.for("react.lazy"),dh=Symbol.for("react.offscreen"),ad=Symbol.iterator;function Yr(e){return e===null||typeof e!="object"?null:(e=ad&&e[ad]||e["@@iterator"],typeof e=="function"?e:null)}var xe=Object.assign,El;function rs(e){if(El===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);El=t&&t[1]||""}return`
|
|
41
|
+
`+El+e}var jl=!1;function _l(e,t){if(!e||jl)return"";jl=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}catch(c){if(c&&r&&typeof c.stack=="string"){for(var s=c.stack.split(`
|
|
42
|
+
`),i=r.stack.split(`
|
|
43
|
+
`),o=s.length-1,l=i.length-1;1<=o&&0<=l&&s[o]!==i[l];)l--;for(;1<=o&&0<=l;o--,l--)if(s[o]!==i[l]){if(o!==1||l!==1)do if(o--,l--,0>l||s[o]!==i[l]){var u=`
|
|
44
|
+
`+s[o].replace(" at new "," at ");return e.displayName&&u.includes("<anonymous>")&&(u=u.replace("<anonymous>",e.displayName)),u}while(1<=o&&0<=l);break}}}finally{jl=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?rs(e):""}function ox(e){switch(e.tag){case 5:return rs(e.type);case 16:return rs("Lazy");case 13:return rs("Suspense");case 19:return rs("SuspenseList");case 0:case 2:case 15:return e=_l(e.type,!1),e;case 11:return e=_l(e.type.render,!1),e;case 1:return e=_l(e.type,!0),e;default:return""}}function wa(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case rr:return"Fragment";case nr:return"Portal";case xa:return"Profiler";case zu:return"StrictMode";case ya:return"Suspense";case va:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case ch:return(e.displayName||"Context")+".Consumer";case uh:return(e._context.displayName||"Context")+".Provider";case Du:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Fu:return t=e.displayName||null,t!==null?t:wa(e.type)||"Memo";case tn:t=e._payload,e=e._init;try{return wa(e(t))}catch{}}return null}function lx(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return wa(t);case 8:return t===zu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function yn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function fh(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function ax(e){var t=fh(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var s=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return s.call(this)},set:function(o){r=""+o,i.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function mi(e){e._valueTracker||(e._valueTracker=ax(e))}function hh(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=fh(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function so(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ba(e,t){var n=t.checked;return xe({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function ud(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=yn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function ph(e,t){t=t.checked,t!=null&&Ou(e,"checked",t,!1)}function ka(e,t){ph(e,t);var n=yn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Na(e,t.type,n):t.hasOwnProperty("defaultValue")&&Na(e,t.type,yn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function cd(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Na(e,t,n){(t!=="number"||so(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var ss=Array.isArray;function gr(e,t,n,r){if(e=e.options,t){t={};for(var s=0;s<n.length;s++)t["$"+n[s]]=!0;for(n=0;n<e.length;n++)s=t.hasOwnProperty("$"+e[n].value),e[n].selected!==s&&(e[n].selected=s),s&&r&&(e[n].defaultSelected=!0)}else{for(n=""+yn(n),t=null,s=0;s<e.length;s++){if(e[s].value===n){e[s].selected=!0,r&&(e[s].defaultSelected=!0);return}t!==null||e[s].disabled||(t=e[s])}t!==null&&(t.selected=!0)}}function Ca(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(V(91));return xe({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function dd(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(V(92));if(ss(n)){if(1<n.length)throw Error(V(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:yn(n)}}function mh(e,t){var n=yn(t.value),r=yn(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function fd(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function gh(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Ea(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?gh(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var gi,xh=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,s){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,s)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(gi=gi||document.createElement("div"),gi.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=gi.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function ks(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var cs={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ux=["Webkit","ms","Moz","O"];Object.keys(cs).forEach(function(e){ux.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),cs[t]=cs[e]})});function yh(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||cs.hasOwnProperty(e)&&cs[e]?(""+t).trim():t+"px"}function vh(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,s=yh(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,s):e[n]=s}}var cx=xe({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ja(e,t){if(t){if(cx[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(V(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(V(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(V(61))}if(t.style!=null&&typeof t.style!="object")throw Error(V(62))}}function _a(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Sa=null;function Vu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ma=null,xr=null,yr=null;function hd(e){if(e=Zs(e)){if(typeof Ma!="function")throw Error(V(280));var t=e.stateNode;t&&(t=Xo(t),Ma(e.stateNode,e.type,t))}}function wh(e){xr?yr?yr.push(e):yr=[e]:xr=e}function bh(){if(xr){var e=xr,t=yr;if(yr=xr=null,hd(e),t)for(e=0;e<t.length;e++)hd(t[e])}}function kh(e,t){return e(t)}function Nh(){}var Sl=!1;function Ch(e,t,n){if(Sl)return e(t,n);Sl=!0;try{return kh(e,t,n)}finally{Sl=!1,(xr!==null||yr!==null)&&(Nh(),bh())}}function Ns(e,t){var n=e.stateNode;if(n===null)return null;var r=Xo(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(V(231,t,typeof n));return n}var La=!1;if(Wt)try{var Xr={};Object.defineProperty(Xr,"passive",{get:function(){La=!0}}),window.addEventListener("test",Xr,Xr),window.removeEventListener("test",Xr,Xr)}catch{La=!1}function dx(e,t,n,r,s,i,o,l,u){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(d){this.onError(d)}}var ds=!1,io=null,oo=!1,Ia=null,fx={onError:function(e){ds=!0,io=e}};function hx(e,t,n,r,s,i,o,l,u){ds=!1,io=null,dx.apply(fx,arguments)}function px(e,t,n,r,s,i,o,l,u){if(hx.apply(this,arguments),ds){if(ds){var c=io;ds=!1,io=null}else throw Error(V(198));oo||(oo=!0,Ia=c)}}function Qn(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function Eh(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function pd(e){if(Qn(e)!==e)throw Error(V(188))}function mx(e){var t=e.alternate;if(!t){if(t=Qn(e),t===null)throw Error(V(188));return t!==e?null:e}for(var n=e,r=t;;){var s=n.return;if(s===null)break;var i=s.alternate;if(i===null){if(r=s.return,r!==null){n=r;continue}break}if(s.child===i.child){for(i=s.child;i;){if(i===n)return pd(s),e;if(i===r)return pd(s),t;i=i.sibling}throw Error(V(188))}if(n.return!==r.return)n=s,r=i;else{for(var o=!1,l=s.child;l;){if(l===n){o=!0,n=s,r=i;break}if(l===r){o=!0,r=s,n=i;break}l=l.sibling}if(!o){for(l=i.child;l;){if(l===n){o=!0,n=i,r=s;break}if(l===r){o=!0,r=i,n=s;break}l=l.sibling}if(!o)throw Error(V(189))}}if(n.alternate!==r)throw Error(V(190))}if(n.tag!==3)throw Error(V(188));return n.stateNode.current===n?e:t}function jh(e){return e=mx(e),e!==null?_h(e):null}function _h(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=_h(e);if(t!==null)return t;e=e.sibling}return null}var Sh=tt.unstable_scheduleCallback,md=tt.unstable_cancelCallback,gx=tt.unstable_shouldYield,xx=tt.unstable_requestPaint,we=tt.unstable_now,yx=tt.unstable_getCurrentPriorityLevel,Hu=tt.unstable_ImmediatePriority,Mh=tt.unstable_UserBlockingPriority,lo=tt.unstable_NormalPriority,vx=tt.unstable_LowPriority,Lh=tt.unstable_IdlePriority,Wo=null,Mt=null;function wx(e){if(Mt&&typeof Mt.onCommitFiberRoot=="function")try{Mt.onCommitFiberRoot(Wo,e,void 0,(e.current.flags&128)===128)}catch{}}var wt=Math.clz32?Math.clz32:Nx,bx=Math.log,kx=Math.LN2;function Nx(e){return e>>>=0,e===0?32:31-(bx(e)/kx|0)|0}var xi=64,yi=4194304;function is(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ao(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,s=e.suspendedLanes,i=e.pingedLanes,o=n&268435455;if(o!==0){var l=o&~s;l!==0?r=is(l):(i&=o,i!==0&&(r=is(i)))}else o=n&~s,o!==0?r=is(o):i!==0&&(r=is(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&s)&&(s=r&-r,i=t&-t,s>=i||s===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-wt(t),s=1<<n,r|=e[n],t&=~s;return r}function Cx(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ex(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,s=e.expirationTimes,i=e.pendingLanes;0<i;){var o=31-wt(i),l=1<<o,u=s[o];u===-1?(!(l&n)||l&r)&&(s[o]=Cx(l,t)):u<=t&&(e.expiredLanes|=l),i&=~l}}function Pa(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Ih(){var e=xi;return xi<<=1,!(xi&4194240)&&(xi=64),e}function Ml(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Qs(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-wt(t),e[t]=n}function jx(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var s=31-wt(n),i=1<<s;t[s]=0,r[s]=-1,e[s]=-1,n&=~i}}function Bu(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-wt(n),s=1<<r;s&t|e[r]&t&&(e[r]|=t),n&=~s}}var le=0;function Ph(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var Th,Wu,$h,Ah,Rh,Ta=!1,vi=[],un=null,cn=null,dn=null,Cs=new Map,Es=new Map,rn=[],_x="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function gd(e,t){switch(e){case"focusin":case"focusout":un=null;break;case"dragenter":case"dragleave":cn=null;break;case"mouseover":case"mouseout":dn=null;break;case"pointerover":case"pointerout":Cs.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Es.delete(t.pointerId)}}function qr(e,t,n,r,s,i){return e===null||e.nativeEvent!==i?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:i,targetContainers:[s]},t!==null&&(t=Zs(t),t!==null&&Wu(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,s!==null&&t.indexOf(s)===-1&&t.push(s),e)}function Sx(e,t,n,r,s){switch(t){case"focusin":return un=qr(un,e,t,n,r,s),!0;case"dragenter":return cn=qr(cn,e,t,n,r,s),!0;case"mouseover":return dn=qr(dn,e,t,n,r,s),!0;case"pointerover":var i=s.pointerId;return Cs.set(i,qr(Cs.get(i)||null,e,t,n,r,s)),!0;case"gotpointercapture":return i=s.pointerId,Es.set(i,qr(Es.get(i)||null,e,t,n,r,s)),!0}return!1}function Oh(e){var t=Pn(e.target);if(t!==null){var n=Qn(t);if(n!==null){if(t=n.tag,t===13){if(t=Eh(n),t!==null){e.blockedOn=t,Rh(e.priority,function(){$h(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Hi(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=$a(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Sa=r,n.target.dispatchEvent(r),Sa=null}else return t=Zs(n),t!==null&&Wu(t),e.blockedOn=n,!1;t.shift()}return!0}function xd(e,t,n){Hi(e)&&n.delete(t)}function Mx(){Ta=!1,un!==null&&Hi(un)&&(un=null),cn!==null&&Hi(cn)&&(cn=null),dn!==null&&Hi(dn)&&(dn=null),Cs.forEach(xd),Es.forEach(xd)}function Qr(e,t){e.blockedOn===t&&(e.blockedOn=null,Ta||(Ta=!0,tt.unstable_scheduleCallback(tt.unstable_NormalPriority,Mx)))}function js(e){function t(s){return Qr(s,e)}if(0<vi.length){Qr(vi[0],e);for(var n=1;n<vi.length;n++){var r=vi[n];r.blockedOn===e&&(r.blockedOn=null)}}for(un!==null&&Qr(un,e),cn!==null&&Qr(cn,e),dn!==null&&Qr(dn,e),Cs.forEach(t),Es.forEach(t),n=0;n<rn.length;n++)r=rn[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<rn.length&&(n=rn[0],n.blockedOn===null);)Oh(n),n.blockedOn===null&&rn.shift()}var vr=qt.ReactCurrentBatchConfig,uo=!0;function Lx(e,t,n,r){var s=le,i=vr.transition;vr.transition=null;try{le=1,Uu(e,t,n,r)}finally{le=s,vr.transition=i}}function Ix(e,t,n,r){var s=le,i=vr.transition;vr.transition=null;try{le=4,Uu(e,t,n,r)}finally{le=s,vr.transition=i}}function Uu(e,t,n,r){if(uo){var s=$a(e,t,n,r);if(s===null)Dl(e,t,r,co,n),gd(e,r);else if(Sx(s,e,t,n,r))r.stopPropagation();else if(gd(e,r),t&4&&-1<_x.indexOf(e)){for(;s!==null;){var i=Zs(s);if(i!==null&&Th(i),i=$a(e,t,n,r),i===null&&Dl(e,t,r,co,n),i===s)break;s=i}s!==null&&r.stopPropagation()}else Dl(e,t,r,null,n)}}var co=null;function $a(e,t,n,r){if(co=null,e=Vu(r),e=Pn(e),e!==null)if(t=Qn(e),t===null)e=null;else if(n=t.tag,n===13){if(e=Eh(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return co=e,null}function zh(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(yx()){case Hu:return 1;case Mh:return 4;case lo:case vx:return 16;case Lh:return 536870912;default:return 16}default:return 16}}var ln=null,Gu=null,Bi=null;function Dh(){if(Bi)return Bi;var e,t=Gu,n=t.length,r,s="value"in ln?ln.value:ln.textContent,i=s.length;for(e=0;e<n&&t[e]===s[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===s[i-r];r++);return Bi=s.slice(e,1<r?1-r:void 0)}function Wi(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function wi(){return!0}function yd(){return!1}function st(e){function t(n,r,s,i,o){this._reactName=n,this._targetInst=s,this.type=r,this.nativeEvent=i,this.target=o,this.currentTarget=null;for(var l in e)e.hasOwnProperty(l)&&(n=e[l],this[l]=n?n(i):i[l]);return this.isDefaultPrevented=(i.defaultPrevented!=null?i.defaultPrevented:i.returnValue===!1)?wi:yd,this.isPropagationStopped=yd,this}return xe(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=wi)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=wi)},persist:function(){},isPersistent:wi}),t}var Vr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Yu=st(Vr),Ks=xe({},Vr,{view:0,detail:0}),Px=st(Ks),Ll,Il,Kr,Uo=xe({},Ks,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Xu,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==Kr&&(Kr&&e.type==="mousemove"?(Ll=e.screenX-Kr.screenX,Il=e.screenY-Kr.screenY):Il=Ll=0,Kr=e),Ll)},movementY:function(e){return"movementY"in e?e.movementY:Il}}),vd=st(Uo),Tx=xe({},Uo,{dataTransfer:0}),$x=st(Tx),Ax=xe({},Ks,{relatedTarget:0}),Pl=st(Ax),Rx=xe({},Vr,{animationName:0,elapsedTime:0,pseudoElement:0}),Ox=st(Rx),zx=xe({},Vr,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Dx=st(zx),Fx=xe({},Vr,{data:0}),wd=st(Fx),Vx={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Hx={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Bx={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Wx(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Bx[e])?!!t[e]:!1}function Xu(){return Wx}var Ux=xe({},Ks,{key:function(e){if(e.key){var t=Vx[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Wi(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Hx[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Xu,charCode:function(e){return e.type==="keypress"?Wi(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Wi(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Gx=st(Ux),Yx=xe({},Uo,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),bd=st(Yx),Xx=xe({},Ks,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Xu}),qx=st(Xx),Qx=xe({},Vr,{propertyName:0,elapsedTime:0,pseudoElement:0}),Kx=st(Qx),Zx=xe({},Uo,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Jx=st(Zx),ey=[9,13,27,32],qu=Wt&&"CompositionEvent"in window,fs=null;Wt&&"documentMode"in document&&(fs=document.documentMode);var ty=Wt&&"TextEvent"in window&&!fs,Fh=Wt&&(!qu||fs&&8<fs&&11>=fs),kd=" ",Nd=!1;function Vh(e,t){switch(e){case"keyup":return ey.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Hh(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var sr=!1;function ny(e,t){switch(e){case"compositionend":return Hh(t);case"keypress":return t.which!==32?null:(Nd=!0,kd);case"textInput":return e=t.data,e===kd&&Nd?null:e;default:return null}}function ry(e,t){if(sr)return e==="compositionend"||!qu&&Vh(e,t)?(e=Dh(),Bi=Gu=ln=null,sr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Fh&&t.locale!=="ko"?null:t.data;default:return null}}var sy={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Cd(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!sy[e.type]:t==="textarea"}function Bh(e,t,n,r){wh(r),t=fo(t,"onChange"),0<t.length&&(n=new Yu("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var hs=null,_s=null;function iy(e){ep(e,0)}function Go(e){var t=lr(e);if(hh(t))return e}function oy(e,t){if(e==="change")return t}var Wh=!1;if(Wt){var Tl;if(Wt){var $l="oninput"in document;if(!$l){var Ed=document.createElement("div");Ed.setAttribute("oninput","return;"),$l=typeof Ed.oninput=="function"}Tl=$l}else Tl=!1;Wh=Tl&&(!document.documentMode||9<document.documentMode)}function jd(){hs&&(hs.detachEvent("onpropertychange",Uh),_s=hs=null)}function Uh(e){if(e.propertyName==="value"&&Go(_s)){var t=[];Bh(t,_s,e,Vu(e)),Ch(iy,t)}}function ly(e,t,n){e==="focusin"?(jd(),hs=t,_s=n,hs.attachEvent("onpropertychange",Uh)):e==="focusout"&&jd()}function ay(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Go(_s)}function uy(e,t){if(e==="click")return Go(t)}function cy(e,t){if(e==="input"||e==="change")return Go(t)}function dy(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var kt=typeof Object.is=="function"?Object.is:dy;function Ss(e,t){if(kt(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var s=n[r];if(!ga.call(t,s)||!kt(e[s],t[s]))return!1}return!0}function _d(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Sd(e,t){var n=_d(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=_d(n)}}function Gh(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Gh(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Yh(){for(var e=window,t=so();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=so(e.document)}return t}function Qu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function fy(e){var t=Yh(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Gh(n.ownerDocument.documentElement,n)){if(r!==null&&Qu(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var s=n.textContent.length,i=Math.min(r.start,s);r=r.end===void 0?i:Math.min(r.end,s),!e.extend&&i>r&&(s=r,r=i,i=s),s=Sd(n,i);var o=Sd(n,r);s&&o&&(e.rangeCount!==1||e.anchorNode!==s.node||e.anchorOffset!==s.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(s.node,s.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var hy=Wt&&"documentMode"in document&&11>=document.documentMode,ir=null,Aa=null,ps=null,Ra=!1;function Md(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ra||ir==null||ir!==so(r)||(r=ir,"selectionStart"in r&&Qu(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),ps&&Ss(ps,r)||(ps=r,r=fo(Aa,"onSelect"),0<r.length&&(t=new Yu("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=ir)))}function bi(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var or={animationend:bi("Animation","AnimationEnd"),animationiteration:bi("Animation","AnimationIteration"),animationstart:bi("Animation","AnimationStart"),transitionend:bi("Transition","TransitionEnd")},Al={},Xh={};Wt&&(Xh=document.createElement("div").style,"AnimationEvent"in window||(delete or.animationend.animation,delete or.animationiteration.animation,delete or.animationstart.animation),"TransitionEvent"in window||delete or.transitionend.transition);function Yo(e){if(Al[e])return Al[e];if(!or[e])return e;var t=or[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Xh)return Al[e]=t[n];return e}var qh=Yo("animationend"),Qh=Yo("animationiteration"),Kh=Yo("animationstart"),Zh=Yo("transitionend"),Jh=new Map,Ld="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function wn(e,t){Jh.set(e,t),qn(t,[e])}for(var Rl=0;Rl<Ld.length;Rl++){var Ol=Ld[Rl],py=Ol.toLowerCase(),my=Ol[0].toUpperCase()+Ol.slice(1);wn(py,"on"+my)}wn(qh,"onAnimationEnd");wn(Qh,"onAnimationIteration");wn(Kh,"onAnimationStart");wn("dblclick","onDoubleClick");wn("focusin","onFocus");wn("focusout","onBlur");wn(Zh,"onTransitionEnd");Cr("onMouseEnter",["mouseout","mouseover"]);Cr("onMouseLeave",["mouseout","mouseover"]);Cr("onPointerEnter",["pointerout","pointerover"]);Cr("onPointerLeave",["pointerout","pointerover"]);qn("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));qn("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));qn("onBeforeInput",["compositionend","keypress","textInput","paste"]);qn("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));qn("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));qn("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var os="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),gy=new Set("cancel close invalid load scroll toggle".split(" ").concat(os));function Id(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,px(r,t,void 0,e),e.currentTarget=null}function ep(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],s=r.event;r=r.listeners;e:{var i=void 0;if(t)for(var o=r.length-1;0<=o;o--){var l=r[o],u=l.instance,c=l.currentTarget;if(l=l.listener,u!==i&&s.isPropagationStopped())break e;Id(s,l,c),i=u}else for(o=0;o<r.length;o++){if(l=r[o],u=l.instance,c=l.currentTarget,l=l.listener,u!==i&&s.isPropagationStopped())break e;Id(s,l,c),i=u}}}if(oo)throw e=Ia,oo=!1,Ia=null,e}function ce(e,t){var n=t[Va];n===void 0&&(n=t[Va]=new Set);var r=e+"__bubble";n.has(r)||(tp(t,e,2,!1),n.add(r))}function zl(e,t,n){var r=0;t&&(r|=4),tp(n,e,r,t)}var ki="_reactListening"+Math.random().toString(36).slice(2);function Ms(e){if(!e[ki]){e[ki]=!0,ah.forEach(function(n){n!=="selectionchange"&&(gy.has(n)||zl(n,!1,e),zl(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[ki]||(t[ki]=!0,zl("selectionchange",!1,t))}}function tp(e,t,n,r){switch(zh(t)){case 1:var s=Lx;break;case 4:s=Ix;break;default:s=Uu}n=s.bind(null,t,n,e),s=void 0,!La||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(s=!0),r?s!==void 0?e.addEventListener(t,n,{capture:!0,passive:s}):e.addEventListener(t,n,!0):s!==void 0?e.addEventListener(t,n,{passive:s}):e.addEventListener(t,n,!1)}function Dl(e,t,n,r,s){var i=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var l=r.stateNode.containerInfo;if(l===s||l.nodeType===8&&l.parentNode===s)break;if(o===4)for(o=r.return;o!==null;){var u=o.tag;if((u===3||u===4)&&(u=o.stateNode.containerInfo,u===s||u.nodeType===8&&u.parentNode===s))return;o=o.return}for(;l!==null;){if(o=Pn(l),o===null)return;if(u=o.tag,u===5||u===6){r=i=o;continue e}l=l.parentNode}}r=r.return}Ch(function(){var c=i,d=Vu(n),f=[];e:{var h=Jh.get(e);if(h!==void 0){var m=Yu,p=e;switch(e){case"keypress":if(Wi(n)===0)break e;case"keydown":case"keyup":m=Gx;break;case"focusin":p="focus",m=Pl;break;case"focusout":p="blur",m=Pl;break;case"beforeblur":case"afterblur":m=Pl;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":m=vd;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":m=$x;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":m=qx;break;case qh:case Qh:case Kh:m=Ox;break;case Zh:m=Kx;break;case"scroll":m=Px;break;case"wheel":m=Jx;break;case"copy":case"cut":case"paste":m=Dx;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":m=bd}var v=(t&4)!==0,b=!v&&e==="scroll",x=v?h!==null?h+"Capture":null:h;v=[];for(var y=c,g;y!==null;){g=y;var w=g.stateNode;if(g.tag===5&&w!==null&&(g=w,x!==null&&(w=Ns(y,x),w!=null&&v.push(Ls(y,w,g)))),b)break;y=y.return}0<v.length&&(h=new m(h,p,null,n,d),f.push({event:h,listeners:v}))}}if(!(t&7)){e:{if(h=e==="mouseover"||e==="pointerover",m=e==="mouseout"||e==="pointerout",h&&n!==Sa&&(p=n.relatedTarget||n.fromElement)&&(Pn(p)||p[Ut]))break e;if((m||h)&&(h=d.window===d?d:(h=d.ownerDocument)?h.defaultView||h.parentWindow:window,m?(p=n.relatedTarget||n.toElement,m=c,p=p?Pn(p):null,p!==null&&(b=Qn(p),p!==b||p.tag!==5&&p.tag!==6)&&(p=null)):(m=null,p=c),m!==p)){if(v=vd,w="onMouseLeave",x="onMouseEnter",y="mouse",(e==="pointerout"||e==="pointerover")&&(v=bd,w="onPointerLeave",x="onPointerEnter",y="pointer"),b=m==null?h:lr(m),g=p==null?h:lr(p),h=new v(w,y+"leave",m,n,d),h.target=b,h.relatedTarget=g,w=null,Pn(d)===c&&(v=new v(x,y+"enter",p,n,d),v.target=g,v.relatedTarget=b,w=v),b=w,m&&p)t:{for(v=m,x=p,y=0,g=v;g;g=er(g))y++;for(g=0,w=x;w;w=er(w))g++;for(;0<y-g;)v=er(v),y--;for(;0<g-y;)x=er(x),g--;for(;y--;){if(v===x||x!==null&&v===x.alternate)break t;v=er(v),x=er(x)}v=null}else v=null;m!==null&&Pd(f,h,m,v,!1),p!==null&&b!==null&&Pd(f,b,p,v,!0)}}e:{if(h=c?lr(c):window,m=h.nodeName&&h.nodeName.toLowerCase(),m==="select"||m==="input"&&h.type==="file")var k=oy;else if(Cd(h))if(Wh)k=cy;else{k=ay;var N=ly}else(m=h.nodeName)&&m.toLowerCase()==="input"&&(h.type==="checkbox"||h.type==="radio")&&(k=uy);if(k&&(k=k(e,c))){Bh(f,k,n,d);break e}N&&N(e,h,c),e==="focusout"&&(N=h._wrapperState)&&N.controlled&&h.type==="number"&&Na(h,"number",h.value)}switch(N=c?lr(c):window,e){case"focusin":(Cd(N)||N.contentEditable==="true")&&(ir=N,Aa=c,ps=null);break;case"focusout":ps=Aa=ir=null;break;case"mousedown":Ra=!0;break;case"contextmenu":case"mouseup":case"dragend":Ra=!1,Md(f,n,d);break;case"selectionchange":if(hy)break;case"keydown":case"keyup":Md(f,n,d)}var M;if(qu)e:{switch(e){case"compositionstart":var I="onCompositionStart";break e;case"compositionend":I="onCompositionEnd";break e;case"compositionupdate":I="onCompositionUpdate";break e}I=void 0}else sr?Vh(e,n)&&(I="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(I="onCompositionStart");I&&(Fh&&n.locale!=="ko"&&(sr||I!=="onCompositionStart"?I==="onCompositionEnd"&&sr&&(M=Dh()):(ln=d,Gu="value"in ln?ln.value:ln.textContent,sr=!0)),N=fo(c,I),0<N.length&&(I=new wd(I,e,null,n,d),f.push({event:I,listeners:N}),M?I.data=M:(M=Hh(n),M!==null&&(I.data=M)))),(M=ty?ny(e,n):ry(e,n))&&(c=fo(c,"onBeforeInput"),0<c.length&&(d=new wd("onBeforeInput","beforeinput",null,n,d),f.push({event:d,listeners:c}),d.data=M))}ep(f,t)})}function Ls(e,t,n){return{instance:e,listener:t,currentTarget:n}}function fo(e,t){for(var n=t+"Capture",r=[];e!==null;){var s=e,i=s.stateNode;s.tag===5&&i!==null&&(s=i,i=Ns(e,n),i!=null&&r.unshift(Ls(e,i,s)),i=Ns(e,t),i!=null&&r.push(Ls(e,i,s))),e=e.return}return r}function er(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Pd(e,t,n,r,s){for(var i=t._reactName,o=[];n!==null&&n!==r;){var l=n,u=l.alternate,c=l.stateNode;if(u!==null&&u===r)break;l.tag===5&&c!==null&&(l=c,s?(u=Ns(n,i),u!=null&&o.unshift(Ls(n,u,l))):s||(u=Ns(n,i),u!=null&&o.push(Ls(n,u,l)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var xy=/\r\n?/g,yy=/\u0000|\uFFFD/g;function Td(e){return(typeof e=="string"?e:""+e).replace(xy,`
|
|
45
|
+
`).replace(yy,"")}function Ni(e,t,n){if(t=Td(t),Td(e)!==t&&n)throw Error(V(425))}function ho(){}var Oa=null,za=null;function Da(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Fa=typeof setTimeout=="function"?setTimeout:void 0,vy=typeof clearTimeout=="function"?clearTimeout:void 0,$d=typeof Promise=="function"?Promise:void 0,wy=typeof queueMicrotask=="function"?queueMicrotask:typeof $d<"u"?function(e){return $d.resolve(null).then(e).catch(by)}:Fa;function by(e){setTimeout(function(){throw e})}function Fl(e,t){var n=t,r=0;do{var s=n.nextSibling;if(e.removeChild(n),s&&s.nodeType===8)if(n=s.data,n==="/$"){if(r===0){e.removeChild(s),js(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=s}while(n);js(t)}function fn(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function Ad(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var Hr=Math.random().toString(36).slice(2),St="__reactFiber$"+Hr,Is="__reactProps$"+Hr,Ut="__reactContainer$"+Hr,Va="__reactEvents$"+Hr,ky="__reactListeners$"+Hr,Ny="__reactHandles$"+Hr;function Pn(e){var t=e[St];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Ut]||n[St]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Ad(e);e!==null;){if(n=e[St])return n;e=Ad(e)}return t}e=n,n=e.parentNode}return null}function Zs(e){return e=e[St]||e[Ut],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function lr(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(V(33))}function Xo(e){return e[Is]||null}var Ha=[],ar=-1;function bn(e){return{current:e}}function de(e){0>ar||(e.current=Ha[ar],Ha[ar]=null,ar--)}function ae(e,t){ar++,Ha[ar]=e.current,e.current=t}var vn={},ze=bn(vn),Ge=bn(!1),Fn=vn;function Er(e,t){var n=e.type.contextTypes;if(!n)return vn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var s={},i;for(i in n)s[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=s),s}function Ye(e){return e=e.childContextTypes,e!=null}function po(){de(Ge),de(ze)}function Rd(e,t,n){if(ze.current!==vn)throw Error(V(168));ae(ze,t),ae(Ge,n)}function np(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var s in r)if(!(s in t))throw Error(V(108,lx(e)||"Unknown",s));return xe({},n,r)}function mo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||vn,Fn=ze.current,ae(ze,e),ae(Ge,Ge.current),!0}function Od(e,t,n){var r=e.stateNode;if(!r)throw Error(V(169));n?(e=np(e,t,Fn),r.__reactInternalMemoizedMergedChildContext=e,de(Ge),de(ze),ae(ze,e)):de(Ge),ae(Ge,n)}var Ot=null,qo=!1,Vl=!1;function rp(e){Ot===null?Ot=[e]:Ot.push(e)}function Cy(e){qo=!0,rp(e)}function kn(){if(!Vl&&Ot!==null){Vl=!0;var e=0,t=le;try{var n=Ot;for(le=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}Ot=null,qo=!1}catch(s){throw Ot!==null&&(Ot=Ot.slice(e+1)),Sh(Hu,kn),s}finally{le=t,Vl=!1}}return null}var ur=[],cr=0,go=null,xo=0,it=[],ot=0,Vn=null,Dt=1,Ft="";function Mn(e,t){ur[cr++]=xo,ur[cr++]=go,go=e,xo=t}function sp(e,t,n){it[ot++]=Dt,it[ot++]=Ft,it[ot++]=Vn,Vn=e;var r=Dt;e=Ft;var s=32-wt(r)-1;r&=~(1<<s),n+=1;var i=32-wt(t)+s;if(30<i){var o=s-s%5;i=(r&(1<<o)-1).toString(32),r>>=o,s-=o,Dt=1<<32-wt(t)+s|n<<s|r,Ft=i+e}else Dt=1<<i|n<<s|r,Ft=e}function Ku(e){e.return!==null&&(Mn(e,1),sp(e,1,0))}function Zu(e){for(;e===go;)go=ur[--cr],ur[cr]=null,xo=ur[--cr],ur[cr]=null;for(;e===Vn;)Vn=it[--ot],it[ot]=null,Ft=it[--ot],it[ot]=null,Dt=it[--ot],it[ot]=null}var et=null,Je=null,fe=!1,gt=null;function ip(e,t){var n=lt(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function zd(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,et=e,Je=fn(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,et=e,Je=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=Vn!==null?{id:Dt,overflow:Ft}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=lt(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,et=e,Je=null,!0):!1;default:return!1}}function Ba(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Wa(e){if(fe){var t=Je;if(t){var n=t;if(!zd(e,t)){if(Ba(e))throw Error(V(418));t=fn(n.nextSibling);var r=et;t&&zd(e,t)?ip(r,n):(e.flags=e.flags&-4097|2,fe=!1,et=e)}}else{if(Ba(e))throw Error(V(418));e.flags=e.flags&-4097|2,fe=!1,et=e}}}function Dd(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;et=e}function Ci(e){if(e!==et)return!1;if(!fe)return Dd(e),fe=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Da(e.type,e.memoizedProps)),t&&(t=Je)){if(Ba(e))throw op(),Error(V(418));for(;t;)ip(e,t),t=fn(t.nextSibling)}if(Dd(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(V(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Je=fn(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Je=null}}else Je=et?fn(e.stateNode.nextSibling):null;return!0}function op(){for(var e=Je;e;)e=fn(e.nextSibling)}function jr(){Je=et=null,fe=!1}function Ju(e){gt===null?gt=[e]:gt.push(e)}var Ey=qt.ReactCurrentBatchConfig;function Zr(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(V(309));var r=n.stateNode}if(!r)throw Error(V(147,e));var s=r,i=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===i?t.ref:(t=function(o){var l=s.refs;o===null?delete l[i]:l[i]=o},t._stringRef=i,t)}if(typeof e!="string")throw Error(V(284));if(!n._owner)throw Error(V(290,e))}return e}function Ei(e,t){throw e=Object.prototype.toString.call(t),Error(V(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Fd(e){var t=e._init;return t(e._payload)}function lp(e){function t(x,y){if(e){var g=x.deletions;g===null?(x.deletions=[y],x.flags|=16):g.push(y)}}function n(x,y){if(!e)return null;for(;y!==null;)t(x,y),y=y.sibling;return null}function r(x,y){for(x=new Map;y!==null;)y.key!==null?x.set(y.key,y):x.set(y.index,y),y=y.sibling;return x}function s(x,y){return x=gn(x,y),x.index=0,x.sibling=null,x}function i(x,y,g){return x.index=g,e?(g=x.alternate,g!==null?(g=g.index,g<y?(x.flags|=2,y):g):(x.flags|=2,y)):(x.flags|=1048576,y)}function o(x){return e&&x.alternate===null&&(x.flags|=2),x}function l(x,y,g,w){return y===null||y.tag!==6?(y=Xl(g,x.mode,w),y.return=x,y):(y=s(y,g),y.return=x,y)}function u(x,y,g,w){var k=g.type;return k===rr?d(x,y,g.props.children,w,g.key):y!==null&&(y.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===tn&&Fd(k)===y.type)?(w=s(y,g.props),w.ref=Zr(x,y,g),w.return=x,w):(w=Ki(g.type,g.key,g.props,null,x.mode,w),w.ref=Zr(x,y,g),w.return=x,w)}function c(x,y,g,w){return y===null||y.tag!==4||y.stateNode.containerInfo!==g.containerInfo||y.stateNode.implementation!==g.implementation?(y=ql(g,x.mode,w),y.return=x,y):(y=s(y,g.children||[]),y.return=x,y)}function d(x,y,g,w,k){return y===null||y.tag!==7?(y=On(g,x.mode,w,k),y.return=x,y):(y=s(y,g),y.return=x,y)}function f(x,y,g){if(typeof y=="string"&&y!==""||typeof y=="number")return y=Xl(""+y,x.mode,g),y.return=x,y;if(typeof y=="object"&&y!==null){switch(y.$$typeof){case pi:return g=Ki(y.type,y.key,y.props,null,x.mode,g),g.ref=Zr(x,null,y),g.return=x,g;case nr:return y=ql(y,x.mode,g),y.return=x,y;case tn:var w=y._init;return f(x,w(y._payload),g)}if(ss(y)||Yr(y))return y=On(y,x.mode,g,null),y.return=x,y;Ei(x,y)}return null}function h(x,y,g,w){var k=y!==null?y.key:null;if(typeof g=="string"&&g!==""||typeof g=="number")return k!==null?null:l(x,y,""+g,w);if(typeof g=="object"&&g!==null){switch(g.$$typeof){case pi:return g.key===k?u(x,y,g,w):null;case nr:return g.key===k?c(x,y,g,w):null;case tn:return k=g._init,h(x,y,k(g._payload),w)}if(ss(g)||Yr(g))return k!==null?null:d(x,y,g,w,null);Ei(x,g)}return null}function m(x,y,g,w,k){if(typeof w=="string"&&w!==""||typeof w=="number")return x=x.get(g)||null,l(y,x,""+w,k);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case pi:return x=x.get(w.key===null?g:w.key)||null,u(y,x,w,k);case nr:return x=x.get(w.key===null?g:w.key)||null,c(y,x,w,k);case tn:var N=w._init;return m(x,y,g,N(w._payload),k)}if(ss(w)||Yr(w))return x=x.get(g)||null,d(y,x,w,k,null);Ei(y,w)}return null}function p(x,y,g,w){for(var k=null,N=null,M=y,I=y=0,P=null;M!==null&&I<g.length;I++){M.index>I?(P=M,M=null):P=M.sibling;var z=h(x,M,g[I],w);if(z===null){M===null&&(M=P);break}e&&M&&z.alternate===null&&t(x,M),y=i(z,y,I),N===null?k=z:N.sibling=z,N=z,M=P}if(I===g.length)return n(x,M),fe&&Mn(x,I),k;if(M===null){for(;I<g.length;I++)M=f(x,g[I],w),M!==null&&(y=i(M,y,I),N===null?k=M:N.sibling=M,N=M);return fe&&Mn(x,I),k}for(M=r(x,M);I<g.length;I++)P=m(M,x,I,g[I],w),P!==null&&(e&&P.alternate!==null&&M.delete(P.key===null?I:P.key),y=i(P,y,I),N===null?k=P:N.sibling=P,N=P);return e&&M.forEach(function(S){return t(x,S)}),fe&&Mn(x,I),k}function v(x,y,g,w){var k=Yr(g);if(typeof k!="function")throw Error(V(150));if(g=k.call(g),g==null)throw Error(V(151));for(var N=k=null,M=y,I=y=0,P=null,z=g.next();M!==null&&!z.done;I++,z=g.next()){M.index>I?(P=M,M=null):P=M.sibling;var S=h(x,M,z.value,w);if(S===null){M===null&&(M=P);break}e&&M&&S.alternate===null&&t(x,M),y=i(S,y,I),N===null?k=S:N.sibling=S,N=S,M=P}if(z.done)return n(x,M),fe&&Mn(x,I),k;if(M===null){for(;!z.done;I++,z=g.next())z=f(x,z.value,w),z!==null&&(y=i(z,y,I),N===null?k=z:N.sibling=z,N=z);return fe&&Mn(x,I),k}for(M=r(x,M);!z.done;I++,z=g.next())z=m(M,x,I,z.value,w),z!==null&&(e&&z.alternate!==null&&M.delete(z.key===null?I:z.key),y=i(z,y,I),N===null?k=z:N.sibling=z,N=z);return e&&M.forEach(function($){return t(x,$)}),fe&&Mn(x,I),k}function b(x,y,g,w){if(typeof g=="object"&&g!==null&&g.type===rr&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case pi:e:{for(var k=g.key,N=y;N!==null;){if(N.key===k){if(k=g.type,k===rr){if(N.tag===7){n(x,N.sibling),y=s(N,g.props.children),y.return=x,x=y;break e}}else if(N.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===tn&&Fd(k)===N.type){n(x,N.sibling),y=s(N,g.props),y.ref=Zr(x,N,g),y.return=x,x=y;break e}n(x,N);break}else t(x,N);N=N.sibling}g.type===rr?(y=On(g.props.children,x.mode,w,g.key),y.return=x,x=y):(w=Ki(g.type,g.key,g.props,null,x.mode,w),w.ref=Zr(x,y,g),w.return=x,x=w)}return o(x);case nr:e:{for(N=g.key;y!==null;){if(y.key===N)if(y.tag===4&&y.stateNode.containerInfo===g.containerInfo&&y.stateNode.implementation===g.implementation){n(x,y.sibling),y=s(y,g.children||[]),y.return=x,x=y;break e}else{n(x,y);break}else t(x,y);y=y.sibling}y=ql(g,x.mode,w),y.return=x,x=y}return o(x);case tn:return N=g._init,b(x,y,N(g._payload),w)}if(ss(g))return p(x,y,g,w);if(Yr(g))return v(x,y,g,w);Ei(x,g)}return typeof g=="string"&&g!==""||typeof g=="number"?(g=""+g,y!==null&&y.tag===6?(n(x,y.sibling),y=s(y,g),y.return=x,x=y):(n(x,y),y=Xl(g,x.mode,w),y.return=x,x=y),o(x)):n(x,y)}return b}var _r=lp(!0),ap=lp(!1),yo=bn(null),vo=null,dr=null,ec=null;function tc(){ec=dr=vo=null}function nc(e){var t=yo.current;de(yo),e._currentValue=t}function Ua(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function wr(e,t){vo=e,ec=dr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(We=!0),e.firstContext=null)}function ut(e){var t=e._currentValue;if(ec!==e)if(e={context:e,memoizedValue:t,next:null},dr===null){if(vo===null)throw Error(V(308));dr=e,vo.dependencies={lanes:0,firstContext:e}}else dr=dr.next=e;return t}var Tn=null;function rc(e){Tn===null?Tn=[e]:Tn.push(e)}function up(e,t,n,r){var s=t.interleaved;return s===null?(n.next=n,rc(t)):(n.next=s.next,s.next=n),t.interleaved=n,Gt(e,r)}function Gt(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var nn=!1;function sc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function cp(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Bt(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function hn(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,se&2){var s=r.pending;return s===null?t.next=t:(t.next=s.next,s.next=t),r.pending=t,Gt(e,n)}return s=r.interleaved,s===null?(t.next=t,rc(r)):(t.next=s.next,s.next=t),r.interleaved=t,Gt(e,n)}function Ui(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Bu(e,n)}}function Vd(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var s=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?s=i=o:i=i.next=o,n=n.next}while(n!==null);i===null?s=i=t:i=i.next=t}else s=i=t;n={baseState:r.baseState,firstBaseUpdate:s,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function wo(e,t,n,r){var s=e.updateQueue;nn=!1;var i=s.firstBaseUpdate,o=s.lastBaseUpdate,l=s.shared.pending;if(l!==null){s.shared.pending=null;var u=l,c=u.next;u.next=null,o===null?i=c:o.next=c,o=u;var d=e.alternate;d!==null&&(d=d.updateQueue,l=d.lastBaseUpdate,l!==o&&(l===null?d.firstBaseUpdate=c:l.next=c,d.lastBaseUpdate=u))}if(i!==null){var f=s.baseState;o=0,d=c=u=null,l=i;do{var h=l.lane,m=l.eventTime;if((r&h)===h){d!==null&&(d=d.next={eventTime:m,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var p=e,v=l;switch(h=t,m=n,v.tag){case 1:if(p=v.payload,typeof p=="function"){f=p.call(m,f,h);break e}f=p;break e;case 3:p.flags=p.flags&-65537|128;case 0:if(p=v.payload,h=typeof p=="function"?p.call(m,f,h):p,h==null)break e;f=xe({},f,h);break e;case 2:nn=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,h=s.effects,h===null?s.effects=[l]:h.push(l))}else m={eventTime:m,lane:h,tag:l.tag,payload:l.payload,callback:l.callback,next:null},d===null?(c=d=m,u=f):d=d.next=m,o|=h;if(l=l.next,l===null){if(l=s.shared.pending,l===null)break;h=l,l=h.next,h.next=null,s.lastBaseUpdate=h,s.shared.pending=null}}while(!0);if(d===null&&(u=f),s.baseState=u,s.firstBaseUpdate=c,s.lastBaseUpdate=d,t=s.shared.interleaved,t!==null){s=t;do o|=s.lane,s=s.next;while(s!==t)}else i===null&&(s.shared.lanes=0);Bn|=o,e.lanes=o,e.memoizedState=f}}function Hd(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],s=r.callback;if(s!==null){if(r.callback=null,r=n,typeof s!="function")throw Error(V(191,s));s.call(r)}}}var Js={},Lt=bn(Js),Ps=bn(Js),Ts=bn(Js);function $n(e){if(e===Js)throw Error(V(174));return e}function ic(e,t){switch(ae(Ts,t),ae(Ps,e),ae(Lt,Js),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Ea(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Ea(t,e)}de(Lt),ae(Lt,t)}function Sr(){de(Lt),de(Ps),de(Ts)}function dp(e){$n(Ts.current);var t=$n(Lt.current),n=Ea(t,e.type);t!==n&&(ae(Ps,e),ae(Lt,n))}function oc(e){Ps.current===e&&(de(Lt),de(Ps))}var me=bn(0);function bo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Hl=[];function lc(){for(var e=0;e<Hl.length;e++)Hl[e]._workInProgressVersionPrimary=null;Hl.length=0}var Gi=qt.ReactCurrentDispatcher,Bl=qt.ReactCurrentBatchConfig,Hn=0,ge=null,je=null,Se=null,ko=!1,ms=!1,$s=0,jy=0;function Ae(){throw Error(V(321))}function ac(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!kt(e[n],t[n]))return!1;return!0}function uc(e,t,n,r,s,i){if(Hn=i,ge=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Gi.current=e===null||e.memoizedState===null?Ly:Iy,e=n(r,s),ms){i=0;do{if(ms=!1,$s=0,25<=i)throw Error(V(301));i+=1,Se=je=null,t.updateQueue=null,Gi.current=Py,e=n(r,s)}while(ms)}if(Gi.current=No,t=je!==null&&je.next!==null,Hn=0,Se=je=ge=null,ko=!1,t)throw Error(V(300));return e}function cc(){var e=$s!==0;return $s=0,e}function jt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Se===null?ge.memoizedState=Se=e:Se=Se.next=e,Se}function ct(){if(je===null){var e=ge.alternate;e=e!==null?e.memoizedState:null}else e=je.next;var t=Se===null?ge.memoizedState:Se.next;if(t!==null)Se=t,je=e;else{if(e===null)throw Error(V(310));je=e,e={memoizedState:je.memoizedState,baseState:je.baseState,baseQueue:je.baseQueue,queue:je.queue,next:null},Se===null?ge.memoizedState=Se=e:Se=Se.next=e}return Se}function As(e,t){return typeof t=="function"?t(e):t}function Wl(e){var t=ct(),n=t.queue;if(n===null)throw Error(V(311));n.lastRenderedReducer=e;var r=je,s=r.baseQueue,i=n.pending;if(i!==null){if(s!==null){var o=s.next;s.next=i.next,i.next=o}r.baseQueue=s=i,n.pending=null}if(s!==null){i=s.next,r=r.baseState;var l=o=null,u=null,c=i;do{var d=c.lane;if((Hn&d)===d)u!==null&&(u=u.next={lane:0,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null}),r=c.hasEagerState?c.eagerState:e(r,c.action);else{var f={lane:d,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null};u===null?(l=u=f,o=r):u=u.next=f,ge.lanes|=d,Bn|=d}c=c.next}while(c!==null&&c!==i);u===null?o=r:u.next=l,kt(r,t.memoizedState)||(We=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=u,n.lastRenderedState=r}if(e=n.interleaved,e!==null){s=e;do i=s.lane,ge.lanes|=i,Bn|=i,s=s.next;while(s!==e)}else s===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Ul(e){var t=ct(),n=t.queue;if(n===null)throw Error(V(311));n.lastRenderedReducer=e;var r=n.dispatch,s=n.pending,i=t.memoizedState;if(s!==null){n.pending=null;var o=s=s.next;do i=e(i,o.action),o=o.next;while(o!==s);kt(i,t.memoizedState)||(We=!0),t.memoizedState=i,t.baseQueue===null&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function fp(){}function hp(e,t){var n=ge,r=ct(),s=t(),i=!kt(r.memoizedState,s);if(i&&(r.memoizedState=s,We=!0),r=r.queue,dc(gp.bind(null,n,r,e),[e]),r.getSnapshot!==t||i||Se!==null&&Se.memoizedState.tag&1){if(n.flags|=2048,Rs(9,mp.bind(null,n,r,s,t),void 0,null),Me===null)throw Error(V(349));Hn&30||pp(n,t,s)}return s}function pp(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=ge.updateQueue,t===null?(t={lastEffect:null,stores:null},ge.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function mp(e,t,n,r){t.value=n,t.getSnapshot=r,xp(t)&&yp(e)}function gp(e,t,n){return n(function(){xp(t)&&yp(e)})}function xp(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!kt(e,n)}catch{return!0}}function yp(e){var t=Gt(e,1);t!==null&&bt(t,e,1,-1)}function Bd(e){var t=jt();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:As,lastRenderedState:e},t.queue=e,e=e.dispatch=My.bind(null,ge,e),[t.memoizedState,e]}function Rs(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=ge.updateQueue,t===null?(t={lastEffect:null,stores:null},ge.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function vp(){return ct().memoizedState}function Yi(e,t,n,r){var s=jt();ge.flags|=e,s.memoizedState=Rs(1|t,n,void 0,r===void 0?null:r)}function Qo(e,t,n,r){var s=ct();r=r===void 0?null:r;var i=void 0;if(je!==null){var o=je.memoizedState;if(i=o.destroy,r!==null&&ac(r,o.deps)){s.memoizedState=Rs(t,n,i,r);return}}ge.flags|=e,s.memoizedState=Rs(1|t,n,i,r)}function Wd(e,t){return Yi(8390656,8,e,t)}function dc(e,t){return Qo(2048,8,e,t)}function wp(e,t){return Qo(4,2,e,t)}function bp(e,t){return Qo(4,4,e,t)}function kp(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Np(e,t,n){return n=n!=null?n.concat([e]):null,Qo(4,4,kp.bind(null,t,e),n)}function fc(){}function Cp(e,t){var n=ct();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&ac(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Ep(e,t){var n=ct();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&ac(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function jp(e,t,n){return Hn&21?(kt(n,t)||(n=Ih(),ge.lanes|=n,Bn|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,We=!0),e.memoizedState=n)}function _y(e,t){var n=le;le=n!==0&&4>n?n:4,e(!0);var r=Bl.transition;Bl.transition={};try{e(!1),t()}finally{le=n,Bl.transition=r}}function _p(){return ct().memoizedState}function Sy(e,t,n){var r=mn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Sp(e))Mp(t,n);else if(n=up(e,t,n,r),n!==null){var s=Fe();bt(n,e,r,s),Lp(n,t,r)}}function My(e,t,n){var r=mn(e),s={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Sp(e))Mp(t,s);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var o=t.lastRenderedState,l=i(o,n);if(s.hasEagerState=!0,s.eagerState=l,kt(l,o)){var u=t.interleaved;u===null?(s.next=s,rc(t)):(s.next=u.next,u.next=s),t.interleaved=s;return}}catch{}finally{}n=up(e,t,s,r),n!==null&&(s=Fe(),bt(n,e,r,s),Lp(n,t,r))}}function Sp(e){var t=e.alternate;return e===ge||t!==null&&t===ge}function Mp(e,t){ms=ko=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Lp(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Bu(e,n)}}var No={readContext:ut,useCallback:Ae,useContext:Ae,useEffect:Ae,useImperativeHandle:Ae,useInsertionEffect:Ae,useLayoutEffect:Ae,useMemo:Ae,useReducer:Ae,useRef:Ae,useState:Ae,useDebugValue:Ae,useDeferredValue:Ae,useTransition:Ae,useMutableSource:Ae,useSyncExternalStore:Ae,useId:Ae,unstable_isNewReconciler:!1},Ly={readContext:ut,useCallback:function(e,t){return jt().memoizedState=[e,t===void 0?null:t],e},useContext:ut,useEffect:Wd,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Yi(4194308,4,kp.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Yi(4194308,4,e,t)},useInsertionEffect:function(e,t){return Yi(4,2,e,t)},useMemo:function(e,t){var n=jt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=jt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Sy.bind(null,ge,e),[r.memoizedState,e]},useRef:function(e){var t=jt();return e={current:e},t.memoizedState=e},useState:Bd,useDebugValue:fc,useDeferredValue:function(e){return jt().memoizedState=e},useTransition:function(){var e=Bd(!1),t=e[0];return e=_y.bind(null,e[1]),jt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=ge,s=jt();if(fe){if(n===void 0)throw Error(V(407));n=n()}else{if(n=t(),Me===null)throw Error(V(349));Hn&30||pp(r,t,n)}s.memoizedState=n;var i={value:n,getSnapshot:t};return s.queue=i,Wd(gp.bind(null,r,i,e),[e]),r.flags|=2048,Rs(9,mp.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=jt(),t=Me.identifierPrefix;if(fe){var n=Ft,r=Dt;n=(r&~(1<<32-wt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=$s++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=jy++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},Iy={readContext:ut,useCallback:Cp,useContext:ut,useEffect:dc,useImperativeHandle:Np,useInsertionEffect:wp,useLayoutEffect:bp,useMemo:Ep,useReducer:Wl,useRef:vp,useState:function(){return Wl(As)},useDebugValue:fc,useDeferredValue:function(e){var t=ct();return jp(t,je.memoizedState,e)},useTransition:function(){var e=Wl(As)[0],t=ct().memoizedState;return[e,t]},useMutableSource:fp,useSyncExternalStore:hp,useId:_p,unstable_isNewReconciler:!1},Py={readContext:ut,useCallback:Cp,useContext:ut,useEffect:dc,useImperativeHandle:Np,useInsertionEffect:wp,useLayoutEffect:bp,useMemo:Ep,useReducer:Ul,useRef:vp,useState:function(){return Ul(As)},useDebugValue:fc,useDeferredValue:function(e){var t=ct();return je===null?t.memoizedState=e:jp(t,je.memoizedState,e)},useTransition:function(){var e=Ul(As)[0],t=ct().memoizedState;return[e,t]},useMutableSource:fp,useSyncExternalStore:hp,useId:_p,unstable_isNewReconciler:!1};function ht(e,t){if(e&&e.defaultProps){t=xe({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function Ga(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:xe({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Ko={isMounted:function(e){return(e=e._reactInternals)?Qn(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Fe(),s=mn(e),i=Bt(r,s);i.payload=t,n!=null&&(i.callback=n),t=hn(e,i,s),t!==null&&(bt(t,e,s,r),Ui(t,e,s))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Fe(),s=mn(e),i=Bt(r,s);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=hn(e,i,s),t!==null&&(bt(t,e,s,r),Ui(t,e,s))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Fe(),r=mn(e),s=Bt(n,r);s.tag=2,t!=null&&(s.callback=t),t=hn(e,s,r),t!==null&&(bt(t,e,r,n),Ui(t,e,r))}};function Ud(e,t,n,r,s,i,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,i,o):t.prototype&&t.prototype.isPureReactComponent?!Ss(n,r)||!Ss(s,i):!0}function Ip(e,t,n){var r=!1,s=vn,i=t.contextType;return typeof i=="object"&&i!==null?i=ut(i):(s=Ye(t)?Fn:ze.current,r=t.contextTypes,i=(r=r!=null)?Er(e,s):vn),t=new t(n,i),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Ko,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=s,e.__reactInternalMemoizedMaskedChildContext=i),t}function Gd(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Ko.enqueueReplaceState(t,t.state,null)}function Ya(e,t,n,r){var s=e.stateNode;s.props=n,s.state=e.memoizedState,s.refs={},sc(e);var i=t.contextType;typeof i=="object"&&i!==null?s.context=ut(i):(i=Ye(t)?Fn:ze.current,s.context=Er(e,i)),s.state=e.memoizedState,i=t.getDerivedStateFromProps,typeof i=="function"&&(Ga(e,t,i,n),s.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof s.getSnapshotBeforeUpdate=="function"||typeof s.UNSAFE_componentWillMount!="function"&&typeof s.componentWillMount!="function"||(t=s.state,typeof s.componentWillMount=="function"&&s.componentWillMount(),typeof s.UNSAFE_componentWillMount=="function"&&s.UNSAFE_componentWillMount(),t!==s.state&&Ko.enqueueReplaceState(s,s.state,null),wo(e,n,s,r),s.state=e.memoizedState),typeof s.componentDidMount=="function"&&(e.flags|=4194308)}function Mr(e,t){try{var n="",r=t;do n+=ox(r),r=r.return;while(r);var s=n}catch(i){s=`
|
|
46
|
+
Error generating stack: `+i.message+`
|
|
47
|
+
`+i.stack}return{value:e,source:t,stack:s,digest:null}}function Gl(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Xa(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var Ty=typeof WeakMap=="function"?WeakMap:Map;function Pp(e,t,n){n=Bt(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Eo||(Eo=!0,su=r),Xa(e,t)},n}function Tp(e,t,n){n=Bt(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var s=t.value;n.payload=function(){return r(s)},n.callback=function(){Xa(e,t)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){Xa(e,t),typeof r!="function"&&(pn===null?pn=new Set([this]):pn.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}function Yd(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ty;var s=new Set;r.set(t,s)}else s=r.get(t),s===void 0&&(s=new Set,r.set(t,s));s.has(n)||(s.add(n),e=Yy.bind(null,e,t,n),t.then(e,e))}function Xd(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function qd(e,t,n,r,s){return e.mode&1?(e.flags|=65536,e.lanes=s,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Bt(-1,1),t.tag=2,hn(n,t,1))),n.lanes|=1),e)}var $y=qt.ReactCurrentOwner,We=!1;function De(e,t,n,r){t.child=e===null?ap(t,null,n,r):_r(t,e.child,n,r)}function Qd(e,t,n,r,s){n=n.render;var i=t.ref;return wr(t,s),r=uc(e,t,n,r,i,s),n=cc(),e!==null&&!We?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~s,Yt(e,t,s)):(fe&&n&&Ku(t),t.flags|=1,De(e,t,r,s),t.child)}function Kd(e,t,n,r,s){if(e===null){var i=n.type;return typeof i=="function"&&!wc(i)&&i.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=i,$p(e,t,i,r,s)):(e=Ki(n.type,null,r,t,t.mode,s),e.ref=t.ref,e.return=t,t.child=e)}if(i=e.child,!(e.lanes&s)){var o=i.memoizedProps;if(n=n.compare,n=n!==null?n:Ss,n(o,r)&&e.ref===t.ref)return Yt(e,t,s)}return t.flags|=1,e=gn(i,r),e.ref=t.ref,e.return=t,t.child=e}function $p(e,t,n,r,s){if(e!==null){var i=e.memoizedProps;if(Ss(i,r)&&e.ref===t.ref)if(We=!1,t.pendingProps=r=i,(e.lanes&s)!==0)e.flags&131072&&(We=!0);else return t.lanes=e.lanes,Yt(e,t,s)}return qa(e,t,n,r,s)}function Ap(e,t,n){var r=t.pendingProps,s=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},ae(hr,Ke),Ke|=n;else{if(!(n&1073741824))return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,ae(hr,Ke),Ke|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=i!==null?i.baseLanes:n,ae(hr,Ke),Ke|=r}else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,ae(hr,Ke),Ke|=r;return De(e,t,s,n),t.child}function Rp(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function qa(e,t,n,r,s){var i=Ye(n)?Fn:ze.current;return i=Er(t,i),wr(t,s),n=uc(e,t,n,r,i,s),r=cc(),e!==null&&!We?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~s,Yt(e,t,s)):(fe&&r&&Ku(t),t.flags|=1,De(e,t,n,s),t.child)}function Zd(e,t,n,r,s){if(Ye(n)){var i=!0;mo(t)}else i=!1;if(wr(t,s),t.stateNode===null)Xi(e,t),Ip(t,n,r),Ya(t,n,r,s),r=!0;else if(e===null){var o=t.stateNode,l=t.memoizedProps;o.props=l;var u=o.context,c=n.contextType;typeof c=="object"&&c!==null?c=ut(c):(c=Ye(n)?Fn:ze.current,c=Er(t,c));var d=n.getDerivedStateFromProps,f=typeof d=="function"||typeof o.getSnapshotBeforeUpdate=="function";f||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==r||u!==c)&&Gd(t,o,r,c),nn=!1;var h=t.memoizedState;o.state=h,wo(t,r,o,s),u=t.memoizedState,l!==r||h!==u||Ge.current||nn?(typeof d=="function"&&(Ga(t,n,d,r),u=t.memoizedState),(l=nn||Ud(t,n,l,r,h,u,c))?(f||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=u),o.props=r,o.state=u,o.context=c,r=l):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,cp(e,t),l=t.memoizedProps,c=t.type===t.elementType?l:ht(t.type,l),o.props=c,f=t.pendingProps,h=o.context,u=n.contextType,typeof u=="object"&&u!==null?u=ut(u):(u=Ye(n)?Fn:ze.current,u=Er(t,u));var m=n.getDerivedStateFromProps;(d=typeof m=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==f||h!==u)&&Gd(t,o,r,u),nn=!1,h=t.memoizedState,o.state=h,wo(t,r,o,s);var p=t.memoizedState;l!==f||h!==p||Ge.current||nn?(typeof m=="function"&&(Ga(t,n,m,r),p=t.memoizedState),(c=nn||Ud(t,n,c,r,h,p,u)||!1)?(d||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,p,u),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,p,u)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),o.props=r,o.state=p,o.context=u,r=c):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),r=!1)}return Qa(e,t,n,r,i,s)}function Qa(e,t,n,r,s,i){Rp(e,t);var o=(t.flags&128)!==0;if(!r&&!o)return s&&Od(t,n,!1),Yt(e,t,i);r=t.stateNode,$y.current=t;var l=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=_r(t,e.child,null,i),t.child=_r(t,null,l,i)):De(e,t,l,i),t.memoizedState=r.state,s&&Od(t,n,!0),t.child}function Op(e){var t=e.stateNode;t.pendingContext?Rd(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Rd(e,t.context,!1),ic(e,t.containerInfo)}function Jd(e,t,n,r,s){return jr(),Ju(s),t.flags|=256,De(e,t,n,r),t.child}var Ka={dehydrated:null,treeContext:null,retryLane:0};function Za(e){return{baseLanes:e,cachePool:null,transitions:null}}function zp(e,t,n){var r=t.pendingProps,s=me.current,i=!1,o=(t.flags&128)!==0,l;if((l=o)||(l=e!==null&&e.memoizedState===null?!1:(s&2)!==0),l?(i=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(s|=1),ae(me,s&1),e===null)return Wa(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,i?(r=t.mode,i=t.child,o={mode:"hidden",children:o},!(r&1)&&i!==null?(i.childLanes=0,i.pendingProps=o):i=el(o,r,0,null),e=On(e,r,n,null),i.return=t,e.return=t,i.sibling=e,t.child=i,t.child.memoizedState=Za(n),t.memoizedState=Ka,e):hc(t,o));if(s=e.memoizedState,s!==null&&(l=s.dehydrated,l!==null))return Ay(e,t,o,r,l,s,n);if(i){i=r.fallback,o=t.mode,s=e.child,l=s.sibling;var u={mode:"hidden",children:r.children};return!(o&1)&&t.child!==s?(r=t.child,r.childLanes=0,r.pendingProps=u,t.deletions=null):(r=gn(s,u),r.subtreeFlags=s.subtreeFlags&14680064),l!==null?i=gn(l,i):(i=On(i,o,n,null),i.flags|=2),i.return=t,r.return=t,r.sibling=i,t.child=r,r=i,i=t.child,o=e.child.memoizedState,o=o===null?Za(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},i.memoizedState=o,i.childLanes=e.childLanes&~n,t.memoizedState=Ka,r}return i=e.child,e=i.sibling,r=gn(i,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function hc(e,t){return t=el({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function ji(e,t,n,r){return r!==null&&Ju(r),_r(t,e.child,null,n),e=hc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Ay(e,t,n,r,s,i,o){if(n)return t.flags&256?(t.flags&=-257,r=Gl(Error(V(422))),ji(e,t,o,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(i=r.fallback,s=t.mode,r=el({mode:"visible",children:r.children},s,0,null),i=On(i,s,o,null),i.flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,t.mode&1&&_r(t,e.child,null,o),t.child.memoizedState=Za(o),t.memoizedState=Ka,i);if(!(t.mode&1))return ji(e,t,o,null);if(s.data==="$!"){if(r=s.nextSibling&&s.nextSibling.dataset,r)var l=r.dgst;return r=l,i=Error(V(419)),r=Gl(i,r,void 0),ji(e,t,o,r)}if(l=(o&e.childLanes)!==0,We||l){if(r=Me,r!==null){switch(o&-o){case 4:s=2;break;case 16:s=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:s=32;break;case 536870912:s=268435456;break;default:s=0}s=s&(r.suspendedLanes|o)?0:s,s!==0&&s!==i.retryLane&&(i.retryLane=s,Gt(e,s),bt(r,e,s,-1))}return vc(),r=Gl(Error(V(421))),ji(e,t,o,r)}return s.data==="$?"?(t.flags|=128,t.child=e.child,t=Xy.bind(null,e),s._reactRetry=t,null):(e=i.treeContext,Je=fn(s.nextSibling),et=t,fe=!0,gt=null,e!==null&&(it[ot++]=Dt,it[ot++]=Ft,it[ot++]=Vn,Dt=e.id,Ft=e.overflow,Vn=t),t=hc(t,r.children),t.flags|=4096,t)}function ef(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ua(e.return,t,n)}function Yl(e,t,n,r,s){var i=e.memoizedState;i===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:s}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=s)}function Dp(e,t,n){var r=t.pendingProps,s=r.revealOrder,i=r.tail;if(De(e,t,r.children,n),r=me.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&ef(e,n,t);else if(e.tag===19)ef(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(ae(me,r),!(t.mode&1))t.memoizedState=null;else switch(s){case"forwards":for(n=t.child,s=null;n!==null;)e=n.alternate,e!==null&&bo(e)===null&&(s=n),n=n.sibling;n=s,n===null?(s=t.child,t.child=null):(s=n.sibling,n.sibling=null),Yl(t,!1,s,n,i);break;case"backwards":for(n=null,s=t.child,t.child=null;s!==null;){if(e=s.alternate,e!==null&&bo(e)===null){t.child=s;break}e=s.sibling,s.sibling=n,n=s,s=e}Yl(t,!0,n,null,i);break;case"together":Yl(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Xi(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Yt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Bn|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(V(153));if(t.child!==null){for(e=t.child,n=gn(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=gn(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Ry(e,t,n){switch(t.tag){case 3:Op(t),jr();break;case 5:dp(t);break;case 1:Ye(t.type)&&mo(t);break;case 4:ic(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,s=t.memoizedProps.value;ae(yo,r._currentValue),r._currentValue=s;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(ae(me,me.current&1),t.flags|=128,null):n&t.child.childLanes?zp(e,t,n):(ae(me,me.current&1),e=Yt(e,t,n),e!==null?e.sibling:null);ae(me,me.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return Dp(e,t,n);t.flags|=128}if(s=t.memoizedState,s!==null&&(s.rendering=null,s.tail=null,s.lastEffect=null),ae(me,me.current),r)break;return null;case 22:case 23:return t.lanes=0,Ap(e,t,n)}return Yt(e,t,n)}var Fp,Ja,Vp,Hp;Fp=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Ja=function(){};Vp=function(e,t,n,r){var s=e.memoizedProps;if(s!==r){e=t.stateNode,$n(Lt.current);var i=null;switch(n){case"input":s=ba(e,s),r=ba(e,r),i=[];break;case"select":s=xe({},s,{value:void 0}),r=xe({},r,{value:void 0}),i=[];break;case"textarea":s=Ca(e,s),r=Ca(e,r),i=[];break;default:typeof s.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=ho)}ja(n,r);var o;n=null;for(c in s)if(!r.hasOwnProperty(c)&&s.hasOwnProperty(c)&&s[c]!=null)if(c==="style"){var l=s[c];for(o in l)l.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else c!=="dangerouslySetInnerHTML"&&c!=="children"&&c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&c!=="autoFocus"&&(bs.hasOwnProperty(c)?i||(i=[]):(i=i||[]).push(c,null));for(c in r){var u=r[c];if(l=s!=null?s[c]:void 0,r.hasOwnProperty(c)&&u!==l&&(u!=null||l!=null))if(c==="style")if(l){for(o in l)!l.hasOwnProperty(o)||u&&u.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in u)u.hasOwnProperty(o)&&l[o]!==u[o]&&(n||(n={}),n[o]=u[o])}else n||(i||(i=[]),i.push(c,n)),n=u;else c==="dangerouslySetInnerHTML"?(u=u?u.__html:void 0,l=l?l.__html:void 0,u!=null&&l!==u&&(i=i||[]).push(c,u)):c==="children"?typeof u!="string"&&typeof u!="number"||(i=i||[]).push(c,""+u):c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&(bs.hasOwnProperty(c)?(u!=null&&c==="onScroll"&&ce("scroll",e),i||l===u||(i=[])):(i=i||[]).push(c,u))}n&&(i=i||[]).push("style",n);var c=i;(t.updateQueue=c)&&(t.flags|=4)}};Hp=function(e,t,n,r){n!==r&&(t.flags|=4)};function Jr(e,t){if(!fe)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Re(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var s=e.child;s!==null;)n|=s.lanes|s.childLanes,r|=s.subtreeFlags&14680064,r|=s.flags&14680064,s.return=e,s=s.sibling;else for(s=e.child;s!==null;)n|=s.lanes|s.childLanes,r|=s.subtreeFlags,r|=s.flags,s.return=e,s=s.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Oy(e,t,n){var r=t.pendingProps;switch(Zu(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Re(t),null;case 1:return Ye(t.type)&&po(),Re(t),null;case 3:return r=t.stateNode,Sr(),de(Ge),de(ze),lc(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Ci(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,gt!==null&&(lu(gt),gt=null))),Ja(e,t),Re(t),null;case 5:oc(t);var s=$n(Ts.current);if(n=t.type,e!==null&&t.stateNode!=null)Vp(e,t,n,r,s),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(V(166));return Re(t),null}if(e=$n(Lt.current),Ci(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[St]=t,r[Is]=i,e=(t.mode&1)!==0,n){case"dialog":ce("cancel",r),ce("close",r);break;case"iframe":case"object":case"embed":ce("load",r);break;case"video":case"audio":for(s=0;s<os.length;s++)ce(os[s],r);break;case"source":ce("error",r);break;case"img":case"image":case"link":ce("error",r),ce("load",r);break;case"details":ce("toggle",r);break;case"input":ud(r,i),ce("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},ce("invalid",r);break;case"textarea":dd(r,i),ce("invalid",r)}ja(n,i),s=null;for(var o in i)if(i.hasOwnProperty(o)){var l=i[o];o==="children"?typeof l=="string"?r.textContent!==l&&(i.suppressHydrationWarning!==!0&&Ni(r.textContent,l,e),s=["children",l]):typeof l=="number"&&r.textContent!==""+l&&(i.suppressHydrationWarning!==!0&&Ni(r.textContent,l,e),s=["children",""+l]):bs.hasOwnProperty(o)&&l!=null&&o==="onScroll"&&ce("scroll",r)}switch(n){case"input":mi(r),cd(r,i,!0);break;case"textarea":mi(r),fd(r);break;case"select":case"option":break;default:typeof i.onClick=="function"&&(r.onclick=ho)}r=s,t.updateQueue=r,r!==null&&(t.flags|=4)}else{o=s.nodeType===9?s:s.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=gh(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[St]=t,e[Is]=r,Fp(e,t,!1,!1),t.stateNode=e;e:{switch(o=_a(n,r),n){case"dialog":ce("cancel",e),ce("close",e),s=r;break;case"iframe":case"object":case"embed":ce("load",e),s=r;break;case"video":case"audio":for(s=0;s<os.length;s++)ce(os[s],e);s=r;break;case"source":ce("error",e),s=r;break;case"img":case"image":case"link":ce("error",e),ce("load",e),s=r;break;case"details":ce("toggle",e),s=r;break;case"input":ud(e,r),s=ba(e,r),ce("invalid",e);break;case"option":s=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},s=xe({},r,{value:void 0}),ce("invalid",e);break;case"textarea":dd(e,r),s=Ca(e,r),ce("invalid",e);break;default:s=r}ja(n,s),l=s;for(i in l)if(l.hasOwnProperty(i)){var u=l[i];i==="style"?vh(e,u):i==="dangerouslySetInnerHTML"?(u=u?u.__html:void 0,u!=null&&xh(e,u)):i==="children"?typeof u=="string"?(n!=="textarea"||u!=="")&&ks(e,u):typeof u=="number"&&ks(e,""+u):i!=="suppressContentEditableWarning"&&i!=="suppressHydrationWarning"&&i!=="autoFocus"&&(bs.hasOwnProperty(i)?u!=null&&i==="onScroll"&&ce("scroll",e):u!=null&&Ou(e,i,u,o))}switch(n){case"input":mi(e),cd(e,r,!1);break;case"textarea":mi(e),fd(e);break;case"option":r.value!=null&&e.setAttribute("value",""+yn(r.value));break;case"select":e.multiple=!!r.multiple,i=r.value,i!=null?gr(e,!!r.multiple,i,!1):r.defaultValue!=null&&gr(e,!!r.multiple,r.defaultValue,!0);break;default:typeof s.onClick=="function"&&(e.onclick=ho)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return Re(t),null;case 6:if(e&&t.stateNode!=null)Hp(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(V(166));if(n=$n(Ts.current),$n(Lt.current),Ci(t)){if(r=t.stateNode,n=t.memoizedProps,r[St]=t,(i=r.nodeValue!==n)&&(e=et,e!==null))switch(e.tag){case 3:Ni(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Ni(r.nodeValue,n,(e.mode&1)!==0)}i&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[St]=t,t.stateNode=r}return Re(t),null;case 13:if(de(me),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(fe&&Je!==null&&t.mode&1&&!(t.flags&128))op(),jr(),t.flags|=98560,i=!1;else if(i=Ci(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(V(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(V(317));i[St]=t}else jr(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Re(t),i=!1}else gt!==null&&(lu(gt),gt=null),i=!0;if(!i)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||me.current&1?_e===0&&(_e=3):vc())),t.updateQueue!==null&&(t.flags|=4),Re(t),null);case 4:return Sr(),Ja(e,t),e===null&&Ms(t.stateNode.containerInfo),Re(t),null;case 10:return nc(t.type._context),Re(t),null;case 17:return Ye(t.type)&&po(),Re(t),null;case 19:if(de(me),i=t.memoizedState,i===null)return Re(t),null;if(r=(t.flags&128)!==0,o=i.rendering,o===null)if(r)Jr(i,!1);else{if(_e!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=bo(e),o!==null){for(t.flags|=128,Jr(i,!1),r=o.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)i=n,e=r,i.flags&=14680066,o=i.alternate,o===null?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=o.childLanes,i.lanes=o.lanes,i.child=o.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=o.memoizedProps,i.memoizedState=o.memoizedState,i.updateQueue=o.updateQueue,i.type=o.type,e=o.dependencies,i.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return ae(me,me.current&1|2),t.child}e=e.sibling}i.tail!==null&&we()>Lr&&(t.flags|=128,r=!0,Jr(i,!1),t.lanes=4194304)}else{if(!r)if(e=bo(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Jr(i,!0),i.tail===null&&i.tailMode==="hidden"&&!o.alternate&&!fe)return Re(t),null}else 2*we()-i.renderingStartTime>Lr&&n!==1073741824&&(t.flags|=128,r=!0,Jr(i,!1),t.lanes=4194304);i.isBackwards?(o.sibling=t.child,t.child=o):(n=i.last,n!==null?n.sibling=o:t.child=o,i.last=o)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=we(),t.sibling=null,n=me.current,ae(me,r?n&1|2:n&1),t):(Re(t),null);case 22:case 23:return yc(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Ke&1073741824&&(Re(t),t.subtreeFlags&6&&(t.flags|=8192)):Re(t),null;case 24:return null;case 25:return null}throw Error(V(156,t.tag))}function zy(e,t){switch(Zu(t),t.tag){case 1:return Ye(t.type)&&po(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Sr(),de(Ge),de(ze),lc(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return oc(t),null;case 13:if(de(me),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(V(340));jr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return de(me),null;case 4:return Sr(),null;case 10:return nc(t.type._context),null;case 22:case 23:return yc(),null;case 24:return null;default:return null}}var _i=!1,Oe=!1,Dy=typeof WeakSet=="function"?WeakSet:Set,U=null;function fr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){ye(e,t,r)}else n.current=null}function eu(e,t,n){try{n()}catch(r){ye(e,t,r)}}var tf=!1;function Fy(e,t){if(Oa=uo,e=Yh(),Qu(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var s=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var o=0,l=-1,u=-1,c=0,d=0,f=e,h=null;t:for(;;){for(var m;f!==n||s!==0&&f.nodeType!==3||(l=o+s),f!==i||r!==0&&f.nodeType!==3||(u=o+r),f.nodeType===3&&(o+=f.nodeValue.length),(m=f.firstChild)!==null;)h=f,f=m;for(;;){if(f===e)break t;if(h===n&&++c===s&&(l=o),h===i&&++d===r&&(u=o),(m=f.nextSibling)!==null)break;f=h,h=f.parentNode}f=m}n=l===-1||u===-1?null:{start:l,end:u}}else n=null}n=n||{start:0,end:0}}else n=null;for(za={focusedElem:e,selectionRange:n},uo=!1,U=t;U!==null;)if(t=U,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,U=e;else for(;U!==null;){t=U;try{var p=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(p!==null){var v=p.memoizedProps,b=p.memoizedState,x=t.stateNode,y=x.getSnapshotBeforeUpdate(t.elementType===t.type?v:ht(t.type,v),b);x.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var g=t.stateNode.containerInfo;g.nodeType===1?g.textContent="":g.nodeType===9&&g.documentElement&&g.removeChild(g.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(V(163))}}catch(w){ye(t,t.return,w)}if(e=t.sibling,e!==null){e.return=t.return,U=e;break}U=t.return}return p=tf,tf=!1,p}function gs(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var s=r=r.next;do{if((s.tag&e)===e){var i=s.destroy;s.destroy=void 0,i!==void 0&&eu(t,n,i)}s=s.next}while(s!==r)}}function Zo(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function tu(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Bp(e){var t=e.alternate;t!==null&&(e.alternate=null,Bp(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[St],delete t[Is],delete t[Va],delete t[ky],delete t[Ny])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Wp(e){return e.tag===5||e.tag===3||e.tag===4}function nf(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Wp(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function nu(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=ho));else if(r!==4&&(e=e.child,e!==null))for(nu(e,t,n),e=e.sibling;e!==null;)nu(e,t,n),e=e.sibling}function ru(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(ru(e,t,n),e=e.sibling;e!==null;)ru(e,t,n),e=e.sibling}var Le=null,pt=!1;function Zt(e,t,n){for(n=n.child;n!==null;)Up(e,t,n),n=n.sibling}function Up(e,t,n){if(Mt&&typeof Mt.onCommitFiberUnmount=="function")try{Mt.onCommitFiberUnmount(Wo,n)}catch{}switch(n.tag){case 5:Oe||fr(n,t);case 6:var r=Le,s=pt;Le=null,Zt(e,t,n),Le=r,pt=s,Le!==null&&(pt?(e=Le,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Le.removeChild(n.stateNode));break;case 18:Le!==null&&(pt?(e=Le,n=n.stateNode,e.nodeType===8?Fl(e.parentNode,n):e.nodeType===1&&Fl(e,n),js(e)):Fl(Le,n.stateNode));break;case 4:r=Le,s=pt,Le=n.stateNode.containerInfo,pt=!0,Zt(e,t,n),Le=r,pt=s;break;case 0:case 11:case 14:case 15:if(!Oe&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){s=r=r.next;do{var i=s,o=i.destroy;i=i.tag,o!==void 0&&(i&2||i&4)&&eu(n,t,o),s=s.next}while(s!==r)}Zt(e,t,n);break;case 1:if(!Oe&&(fr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){ye(n,t,l)}Zt(e,t,n);break;case 21:Zt(e,t,n);break;case 22:n.mode&1?(Oe=(r=Oe)||n.memoizedState!==null,Zt(e,t,n),Oe=r):Zt(e,t,n);break;default:Zt(e,t,n)}}function rf(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Dy),t.forEach(function(r){var s=qy.bind(null,e,r);n.has(r)||(n.add(r),r.then(s,s))})}}function ft(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var s=n[r];try{var i=e,o=t,l=o;e:for(;l!==null;){switch(l.tag){case 5:Le=l.stateNode,pt=!1;break e;case 3:Le=l.stateNode.containerInfo,pt=!0;break e;case 4:Le=l.stateNode.containerInfo,pt=!0;break e}l=l.return}if(Le===null)throw Error(V(160));Up(i,o,s),Le=null,pt=!1;var u=s.alternate;u!==null&&(u.return=null),s.return=null}catch(c){ye(s,t,c)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Gp(t,e),t=t.sibling}function Gp(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(ft(t,e),Et(e),r&4){try{gs(3,e,e.return),Zo(3,e)}catch(v){ye(e,e.return,v)}try{gs(5,e,e.return)}catch(v){ye(e,e.return,v)}}break;case 1:ft(t,e),Et(e),r&512&&n!==null&&fr(n,n.return);break;case 5:if(ft(t,e),Et(e),r&512&&n!==null&&fr(n,n.return),e.flags&32){var s=e.stateNode;try{ks(s,"")}catch(v){ye(e,e.return,v)}}if(r&4&&(s=e.stateNode,s!=null)){var i=e.memoizedProps,o=n!==null?n.memoizedProps:i,l=e.type,u=e.updateQueue;if(e.updateQueue=null,u!==null)try{l==="input"&&i.type==="radio"&&i.name!=null&&ph(s,i),_a(l,o);var c=_a(l,i);for(o=0;o<u.length;o+=2){var d=u[o],f=u[o+1];d==="style"?vh(s,f):d==="dangerouslySetInnerHTML"?xh(s,f):d==="children"?ks(s,f):Ou(s,d,f,c)}switch(l){case"input":ka(s,i);break;case"textarea":mh(s,i);break;case"select":var h=s._wrapperState.wasMultiple;s._wrapperState.wasMultiple=!!i.multiple;var m=i.value;m!=null?gr(s,!!i.multiple,m,!1):h!==!!i.multiple&&(i.defaultValue!=null?gr(s,!!i.multiple,i.defaultValue,!0):gr(s,!!i.multiple,i.multiple?[]:"",!1))}s[Is]=i}catch(v){ye(e,e.return,v)}}break;case 6:if(ft(t,e),Et(e),r&4){if(e.stateNode===null)throw Error(V(162));s=e.stateNode,i=e.memoizedProps;try{s.nodeValue=i}catch(v){ye(e,e.return,v)}}break;case 3:if(ft(t,e),Et(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{js(t.containerInfo)}catch(v){ye(e,e.return,v)}break;case 4:ft(t,e),Et(e);break;case 13:ft(t,e),Et(e),s=e.child,s.flags&8192&&(i=s.memoizedState!==null,s.stateNode.isHidden=i,!i||s.alternate!==null&&s.alternate.memoizedState!==null||(gc=we())),r&4&&rf(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(Oe=(c=Oe)||d,ft(t,e),Oe=c):ft(t,e),Et(e),r&8192){if(c=e.memoizedState!==null,(e.stateNode.isHidden=c)&&!d&&e.mode&1)for(U=e,d=e.child;d!==null;){for(f=U=d;U!==null;){switch(h=U,m=h.child,h.tag){case 0:case 11:case 14:case 15:gs(4,h,h.return);break;case 1:fr(h,h.return);var p=h.stateNode;if(typeof p.componentWillUnmount=="function"){r=h,n=h.return;try{t=r,p.props=t.memoizedProps,p.state=t.memoizedState,p.componentWillUnmount()}catch(v){ye(r,n,v)}}break;case 5:fr(h,h.return);break;case 22:if(h.memoizedState!==null){of(f);continue}}m!==null?(m.return=h,U=m):of(f)}d=d.sibling}e:for(d=null,f=e;;){if(f.tag===5){if(d===null){d=f;try{s=f.stateNode,c?(i=s.style,typeof i.setProperty=="function"?i.setProperty("display","none","important"):i.display="none"):(l=f.stateNode,u=f.memoizedProps.style,o=u!=null&&u.hasOwnProperty("display")?u.display:null,l.style.display=yh("display",o))}catch(v){ye(e,e.return,v)}}}else if(f.tag===6){if(d===null)try{f.stateNode.nodeValue=c?"":f.memoizedProps}catch(v){ye(e,e.return,v)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;f.sibling===null;){if(f.return===null||f.return===e)break e;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:ft(t,e),Et(e),r&4&&rf(e);break;case 21:break;default:ft(t,e),Et(e)}}function Et(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(Wp(n)){var r=n;break e}n=n.return}throw Error(V(160))}switch(r.tag){case 5:var s=r.stateNode;r.flags&32&&(ks(s,""),r.flags&=-33);var i=nf(e);ru(e,i,s);break;case 3:case 4:var o=r.stateNode.containerInfo,l=nf(e);nu(e,l,o);break;default:throw Error(V(161))}}catch(u){ye(e,e.return,u)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Vy(e,t,n){U=e,Yp(e)}function Yp(e,t,n){for(var r=(e.mode&1)!==0;U!==null;){var s=U,i=s.child;if(s.tag===22&&r){var o=s.memoizedState!==null||_i;if(!o){var l=s.alternate,u=l!==null&&l.memoizedState!==null||Oe;l=_i;var c=Oe;if(_i=o,(Oe=u)&&!c)for(U=s;U!==null;)o=U,u=o.child,o.tag===22&&o.memoizedState!==null?lf(s):u!==null?(u.return=o,U=u):lf(s);for(;i!==null;)U=i,Yp(i),i=i.sibling;U=s,_i=l,Oe=c}sf(e)}else s.subtreeFlags&8772&&i!==null?(i.return=s,U=i):sf(e)}}function sf(e){for(;U!==null;){var t=U;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:Oe||Zo(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!Oe)if(n===null)r.componentDidMount();else{var s=t.elementType===t.type?n.memoizedProps:ht(t.type,n.memoizedProps);r.componentDidUpdate(s,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;i!==null&&Hd(t,i,r);break;case 3:var o=t.updateQueue;if(o!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}Hd(t,o,n)}break;case 5:var l=t.stateNode;if(n===null&&t.flags&4){n=l;var u=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":u.autoFocus&&n.focus();break;case"img":u.src&&(n.src=u.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var c=t.alternate;if(c!==null){var d=c.memoizedState;if(d!==null){var f=d.dehydrated;f!==null&&js(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(V(163))}Oe||t.flags&512&&tu(t)}catch(h){ye(t,t.return,h)}}if(t===e){U=null;break}if(n=t.sibling,n!==null){n.return=t.return,U=n;break}U=t.return}}function of(e){for(;U!==null;){var t=U;if(t===e){U=null;break}var n=t.sibling;if(n!==null){n.return=t.return,U=n;break}U=t.return}}function lf(e){for(;U!==null;){var t=U;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Zo(4,t)}catch(u){ye(t,n,u)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var s=t.return;try{r.componentDidMount()}catch(u){ye(t,s,u)}}var i=t.return;try{tu(t)}catch(u){ye(t,i,u)}break;case 5:var o=t.return;try{tu(t)}catch(u){ye(t,o,u)}}}catch(u){ye(t,t.return,u)}if(t===e){U=null;break}var l=t.sibling;if(l!==null){l.return=t.return,U=l;break}U=t.return}}var Hy=Math.ceil,Co=qt.ReactCurrentDispatcher,pc=qt.ReactCurrentOwner,at=qt.ReactCurrentBatchConfig,se=0,Me=null,Ne=null,Pe=0,Ke=0,hr=bn(0),_e=0,Os=null,Bn=0,Jo=0,mc=0,xs=null,Be=null,gc=0,Lr=1/0,Rt=null,Eo=!1,su=null,pn=null,Si=!1,an=null,jo=0,ys=0,iu=null,qi=-1,Qi=0;function Fe(){return se&6?we():qi!==-1?qi:qi=we()}function mn(e){return e.mode&1?se&2&&Pe!==0?Pe&-Pe:Ey.transition!==null?(Qi===0&&(Qi=Ih()),Qi):(e=le,e!==0||(e=window.event,e=e===void 0?16:zh(e.type)),e):1}function bt(e,t,n,r){if(50<ys)throw ys=0,iu=null,Error(V(185));Qs(e,n,r),(!(se&2)||e!==Me)&&(e===Me&&(!(se&2)&&(Jo|=n),_e===4&&sn(e,Pe)),Xe(e,r),n===1&&se===0&&!(t.mode&1)&&(Lr=we()+500,qo&&kn()))}function Xe(e,t){var n=e.callbackNode;Ex(e,t);var r=ao(e,e===Me?Pe:0);if(r===0)n!==null&&md(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&md(n),t===1)e.tag===0?Cy(af.bind(null,e)):rp(af.bind(null,e)),wy(function(){!(se&6)&&kn()}),n=null;else{switch(Ph(r)){case 1:n=Hu;break;case 4:n=Mh;break;case 16:n=lo;break;case 536870912:n=Lh;break;default:n=lo}n=t1(n,Xp.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function Xp(e,t){if(qi=-1,Qi=0,se&6)throw Error(V(327));var n=e.callbackNode;if(br()&&e.callbackNode!==n)return null;var r=ao(e,e===Me?Pe:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=_o(e,r);else{t=r;var s=se;se|=2;var i=Qp();(Me!==e||Pe!==t)&&(Rt=null,Lr=we()+500,Rn(e,t));do try{Uy();break}catch(l){qp(e,l)}while(!0);tc(),Co.current=i,se=s,Ne!==null?t=0:(Me=null,Pe=0,t=_e)}if(t!==0){if(t===2&&(s=Pa(e),s!==0&&(r=s,t=ou(e,s))),t===1)throw n=Os,Rn(e,0),sn(e,r),Xe(e,we()),n;if(t===6)sn(e,r);else{if(s=e.current.alternate,!(r&30)&&!By(s)&&(t=_o(e,r),t===2&&(i=Pa(e),i!==0&&(r=i,t=ou(e,i))),t===1))throw n=Os,Rn(e,0),sn(e,r),Xe(e,we()),n;switch(e.finishedWork=s,e.finishedLanes=r,t){case 0:case 1:throw Error(V(345));case 2:Ln(e,Be,Rt);break;case 3:if(sn(e,r),(r&130023424)===r&&(t=gc+500-we(),10<t)){if(ao(e,0)!==0)break;if(s=e.suspendedLanes,(s&r)!==r){Fe(),e.pingedLanes|=e.suspendedLanes&s;break}e.timeoutHandle=Fa(Ln.bind(null,e,Be,Rt),t);break}Ln(e,Be,Rt);break;case 4:if(sn(e,r),(r&4194240)===r)break;for(t=e.eventTimes,s=-1;0<r;){var o=31-wt(r);i=1<<o,o=t[o],o>s&&(s=o),r&=~i}if(r=s,r=we()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Hy(r/1960))-r,10<r){e.timeoutHandle=Fa(Ln.bind(null,e,Be,Rt),r);break}Ln(e,Be,Rt);break;case 5:Ln(e,Be,Rt);break;default:throw Error(V(329))}}}return Xe(e,we()),e.callbackNode===n?Xp.bind(null,e):null}function ou(e,t){var n=xs;return e.current.memoizedState.isDehydrated&&(Rn(e,t).flags|=256),e=_o(e,t),e!==2&&(t=Be,Be=n,t!==null&&lu(t)),e}function lu(e){Be===null?Be=e:Be.push.apply(Be,e)}function By(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var s=n[r],i=s.getSnapshot;s=s.value;try{if(!kt(i(),s))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function sn(e,t){for(t&=~mc,t&=~Jo,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-wt(t),r=1<<n;e[n]=-1,t&=~r}}function af(e){if(se&6)throw Error(V(327));br();var t=ao(e,0);if(!(t&1))return Xe(e,we()),null;var n=_o(e,t);if(e.tag!==0&&n===2){var r=Pa(e);r!==0&&(t=r,n=ou(e,r))}if(n===1)throw n=Os,Rn(e,0),sn(e,t),Xe(e,we()),n;if(n===6)throw Error(V(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Ln(e,Be,Rt),Xe(e,we()),null}function xc(e,t){var n=se;se|=1;try{return e(t)}finally{se=n,se===0&&(Lr=we()+500,qo&&kn())}}function Wn(e){an!==null&&an.tag===0&&!(se&6)&&br();var t=se;se|=1;var n=at.transition,r=le;try{if(at.transition=null,le=1,e)return e()}finally{le=r,at.transition=n,se=t,!(se&6)&&kn()}}function yc(){Ke=hr.current,de(hr)}function Rn(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,vy(n)),Ne!==null)for(n=Ne.return;n!==null;){var r=n;switch(Zu(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&po();break;case 3:Sr(),de(Ge),de(ze),lc();break;case 5:oc(r);break;case 4:Sr();break;case 13:de(me);break;case 19:de(me);break;case 10:nc(r.type._context);break;case 22:case 23:yc()}n=n.return}if(Me=e,Ne=e=gn(e.current,null),Pe=Ke=t,_e=0,Os=null,mc=Jo=Bn=0,Be=xs=null,Tn!==null){for(t=0;t<Tn.length;t++)if(n=Tn[t],r=n.interleaved,r!==null){n.interleaved=null;var s=r.next,i=n.pending;if(i!==null){var o=i.next;i.next=s,r.next=o}n.pending=r}Tn=null}return e}function qp(e,t){do{var n=Ne;try{if(tc(),Gi.current=No,ko){for(var r=ge.memoizedState;r!==null;){var s=r.queue;s!==null&&(s.pending=null),r=r.next}ko=!1}if(Hn=0,Se=je=ge=null,ms=!1,$s=0,pc.current=null,n===null||n.return===null){_e=1,Os=t,Ne=null;break}e:{var i=e,o=n.return,l=n,u=t;if(t=Pe,l.flags|=32768,u!==null&&typeof u=="object"&&typeof u.then=="function"){var c=u,d=l,f=d.tag;if(!(d.mode&1)&&(f===0||f===11||f===15)){var h=d.alternate;h?(d.updateQueue=h.updateQueue,d.memoizedState=h.memoizedState,d.lanes=h.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=Xd(o);if(m!==null){m.flags&=-257,qd(m,o,l,i,t),m.mode&1&&Yd(i,c,t),t=m,u=c;var p=t.updateQueue;if(p===null){var v=new Set;v.add(u),t.updateQueue=v}else p.add(u);break e}else{if(!(t&1)){Yd(i,c,t),vc();break e}u=Error(V(426))}}else if(fe&&l.mode&1){var b=Xd(o);if(b!==null){!(b.flags&65536)&&(b.flags|=256),qd(b,o,l,i,t),Ju(Mr(u,l));break e}}i=u=Mr(u,l),_e!==4&&(_e=2),xs===null?xs=[i]:xs.push(i),i=o;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t;var x=Pp(i,u,t);Vd(i,x);break e;case 1:l=u;var y=i.type,g=i.stateNode;if(!(i.flags&128)&&(typeof y.getDerivedStateFromError=="function"||g!==null&&typeof g.componentDidCatch=="function"&&(pn===null||!pn.has(g)))){i.flags|=65536,t&=-t,i.lanes|=t;var w=Tp(i,l,t);Vd(i,w);break e}}i=i.return}while(i!==null)}Zp(n)}catch(k){t=k,Ne===n&&n!==null&&(Ne=n=n.return);continue}break}while(!0)}function Qp(){var e=Co.current;return Co.current=No,e===null?No:e}function vc(){(_e===0||_e===3||_e===2)&&(_e=4),Me===null||!(Bn&268435455)&&!(Jo&268435455)||sn(Me,Pe)}function _o(e,t){var n=se;se|=2;var r=Qp();(Me!==e||Pe!==t)&&(Rt=null,Rn(e,t));do try{Wy();break}catch(s){qp(e,s)}while(!0);if(tc(),se=n,Co.current=r,Ne!==null)throw Error(V(261));return Me=null,Pe=0,_e}function Wy(){for(;Ne!==null;)Kp(Ne)}function Uy(){for(;Ne!==null&&!gx();)Kp(Ne)}function Kp(e){var t=e1(e.alternate,e,Ke);e.memoizedProps=e.pendingProps,t===null?Zp(e):Ne=t,pc.current=null}function Zp(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=zy(n,t),n!==null){n.flags&=32767,Ne=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{_e=6,Ne=null;return}}else if(n=Oy(n,t,Ke),n!==null){Ne=n;return}if(t=t.sibling,t!==null){Ne=t;return}Ne=t=e}while(t!==null);_e===0&&(_e=5)}function Ln(e,t,n){var r=le,s=at.transition;try{at.transition=null,le=1,Gy(e,t,n,r)}finally{at.transition=s,le=r}return null}function Gy(e,t,n,r){do br();while(an!==null);if(se&6)throw Error(V(327));n=e.finishedWork;var s=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(V(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(jx(e,i),e===Me&&(Ne=Me=null,Pe=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Si||(Si=!0,t1(lo,function(){return br(),null})),i=(n.flags&15990)!==0,n.subtreeFlags&15990||i){i=at.transition,at.transition=null;var o=le;le=1;var l=se;se|=4,pc.current=null,Fy(e,n),Gp(n,e),fy(za),uo=!!Oa,za=Oa=null,e.current=n,Vy(n),xx(),se=l,le=o,at.transition=i}else e.current=n;if(Si&&(Si=!1,an=e,jo=s),i=e.pendingLanes,i===0&&(pn=null),wx(n.stateNode),Xe(e,we()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)s=t[n],r(s.value,{componentStack:s.stack,digest:s.digest});if(Eo)throw Eo=!1,e=su,su=null,e;return jo&1&&e.tag!==0&&br(),i=e.pendingLanes,i&1?e===iu?ys++:(ys=0,iu=e):ys=0,kn(),null}function br(){if(an!==null){var e=Ph(jo),t=at.transition,n=le;try{if(at.transition=null,le=16>e?16:e,an===null)var r=!1;else{if(e=an,an=null,jo=0,se&6)throw Error(V(331));var s=se;for(se|=4,U=e.current;U!==null;){var i=U,o=i.child;if(U.flags&16){var l=i.deletions;if(l!==null){for(var u=0;u<l.length;u++){var c=l[u];for(U=c;U!==null;){var d=U;switch(d.tag){case 0:case 11:case 15:gs(8,d,i)}var f=d.child;if(f!==null)f.return=d,U=f;else for(;U!==null;){d=U;var h=d.sibling,m=d.return;if(Bp(d),d===c){U=null;break}if(h!==null){h.return=m,U=h;break}U=m}}}var p=i.alternate;if(p!==null){var v=p.child;if(v!==null){p.child=null;do{var b=v.sibling;v.sibling=null,v=b}while(v!==null)}}U=i}}if(i.subtreeFlags&2064&&o!==null)o.return=i,U=o;else e:for(;U!==null;){if(i=U,i.flags&2048)switch(i.tag){case 0:case 11:case 15:gs(9,i,i.return)}var x=i.sibling;if(x!==null){x.return=i.return,U=x;break e}U=i.return}}var y=e.current;for(U=y;U!==null;){o=U;var g=o.child;if(o.subtreeFlags&2064&&g!==null)g.return=o,U=g;else e:for(o=y;U!==null;){if(l=U,l.flags&2048)try{switch(l.tag){case 0:case 11:case 15:Zo(9,l)}}catch(k){ye(l,l.return,k)}if(l===o){U=null;break e}var w=l.sibling;if(w!==null){w.return=l.return,U=w;break e}U=l.return}}if(se=s,kn(),Mt&&typeof Mt.onPostCommitFiberRoot=="function")try{Mt.onPostCommitFiberRoot(Wo,e)}catch{}r=!0}return r}finally{le=n,at.transition=t}}return!1}function uf(e,t,n){t=Mr(n,t),t=Pp(e,t,1),e=hn(e,t,1),t=Fe(),e!==null&&(Qs(e,1,t),Xe(e,t))}function ye(e,t,n){if(e.tag===3)uf(e,e,n);else for(;t!==null;){if(t.tag===3){uf(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(pn===null||!pn.has(r))){e=Mr(n,e),e=Tp(t,e,1),t=hn(t,e,1),e=Fe(),t!==null&&(Qs(t,1,e),Xe(t,e));break}}t=t.return}}function Yy(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=Fe(),e.pingedLanes|=e.suspendedLanes&n,Me===e&&(Pe&n)===n&&(_e===4||_e===3&&(Pe&130023424)===Pe&&500>we()-gc?Rn(e,0):mc|=n),Xe(e,t)}function Jp(e,t){t===0&&(e.mode&1?(t=yi,yi<<=1,!(yi&130023424)&&(yi=4194304)):t=1);var n=Fe();e=Gt(e,t),e!==null&&(Qs(e,t,n),Xe(e,n))}function Xy(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Jp(e,n)}function qy(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,s=e.memoizedState;s!==null&&(n=s.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(V(314))}r!==null&&r.delete(t),Jp(e,n)}var e1;e1=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ge.current)We=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return We=!1,Ry(e,t,n);We=!!(e.flags&131072)}else We=!1,fe&&t.flags&1048576&&sp(t,xo,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Xi(e,t),e=t.pendingProps;var s=Er(t,ze.current);wr(t,n),s=uc(null,t,r,e,s,n);var i=cc();return t.flags|=1,typeof s=="object"&&s!==null&&typeof s.render=="function"&&s.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ye(r)?(i=!0,mo(t)):i=!1,t.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,sc(t),s.updater=Ko,t.stateNode=s,s._reactInternals=t,Ya(t,r,e,n),t=Qa(null,t,r,!0,i,n)):(t.tag=0,fe&&i&&Ku(t),De(null,t,s,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Xi(e,t),e=t.pendingProps,s=r._init,r=s(r._payload),t.type=r,s=t.tag=Ky(r),e=ht(r,e),s){case 0:t=qa(null,t,r,e,n);break e;case 1:t=Zd(null,t,r,e,n);break e;case 11:t=Qd(null,t,r,e,n);break e;case 14:t=Kd(null,t,r,ht(r.type,e),n);break e}throw Error(V(306,r,""))}return t;case 0:return r=t.type,s=t.pendingProps,s=t.elementType===r?s:ht(r,s),qa(e,t,r,s,n);case 1:return r=t.type,s=t.pendingProps,s=t.elementType===r?s:ht(r,s),Zd(e,t,r,s,n);case 3:e:{if(Op(t),e===null)throw Error(V(387));r=t.pendingProps,i=t.memoizedState,s=i.element,cp(e,t),wo(t,r,null,n);var o=t.memoizedState;if(r=o.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){s=Mr(Error(V(423)),t),t=Jd(e,t,r,n,s);break e}else if(r!==s){s=Mr(Error(V(424)),t),t=Jd(e,t,r,n,s);break e}else for(Je=fn(t.stateNode.containerInfo.firstChild),et=t,fe=!0,gt=null,n=ap(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(jr(),r===s){t=Yt(e,t,n);break e}De(e,t,r,n)}t=t.child}return t;case 5:return dp(t),e===null&&Wa(t),r=t.type,s=t.pendingProps,i=e!==null?e.memoizedProps:null,o=s.children,Da(r,s)?o=null:i!==null&&Da(r,i)&&(t.flags|=32),Rp(e,t),De(e,t,o,n),t.child;case 6:return e===null&&Wa(t),null;case 13:return zp(e,t,n);case 4:return ic(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=_r(t,null,r,n):De(e,t,r,n),t.child;case 11:return r=t.type,s=t.pendingProps,s=t.elementType===r?s:ht(r,s),Qd(e,t,r,s,n);case 7:return De(e,t,t.pendingProps,n),t.child;case 8:return De(e,t,t.pendingProps.children,n),t.child;case 12:return De(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,s=t.pendingProps,i=t.memoizedProps,o=s.value,ae(yo,r._currentValue),r._currentValue=o,i!==null)if(kt(i.value,o)){if(i.children===s.children&&!Ge.current){t=Yt(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var l=i.dependencies;if(l!==null){o=i.child;for(var u=l.firstContext;u!==null;){if(u.context===r){if(i.tag===1){u=Bt(-1,n&-n),u.tag=2;var c=i.updateQueue;if(c!==null){c=c.shared;var d=c.pending;d===null?u.next=u:(u.next=d.next,d.next=u),c.pending=u}}i.lanes|=n,u=i.alternate,u!==null&&(u.lanes|=n),Ua(i.return,n,t),l.lanes|=n;break}u=u.next}}else if(i.tag===10)o=i.type===t.type?null:i.child;else if(i.tag===18){if(o=i.return,o===null)throw Error(V(341));o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),Ua(o,n,t),o=i.sibling}else o=i.child;if(o!==null)o.return=i;else for(o=i;o!==null;){if(o===t){o=null;break}if(i=o.sibling,i!==null){i.return=o.return,o=i;break}o=o.return}i=o}De(e,t,s.children,n),t=t.child}return t;case 9:return s=t.type,r=t.pendingProps.children,wr(t,n),s=ut(s),r=r(s),t.flags|=1,De(e,t,r,n),t.child;case 14:return r=t.type,s=ht(r,t.pendingProps),s=ht(r.type,s),Kd(e,t,r,s,n);case 15:return $p(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,s=t.pendingProps,s=t.elementType===r?s:ht(r,s),Xi(e,t),t.tag=1,Ye(r)?(e=!0,mo(t)):e=!1,wr(t,n),Ip(t,r,s),Ya(t,r,s,n),Qa(null,t,r,!0,e,n);case 19:return Dp(e,t,n);case 22:return Ap(e,t,n)}throw Error(V(156,t.tag))};function t1(e,t){return Sh(e,t)}function Qy(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function lt(e,t,n,r){return new Qy(e,t,n,r)}function wc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Ky(e){if(typeof e=="function")return wc(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Du)return 11;if(e===Fu)return 14}return 2}function gn(e,t){var n=e.alternate;return n===null?(n=lt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Ki(e,t,n,r,s,i){var o=2;if(r=e,typeof e=="function")wc(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case rr:return On(n.children,s,i,t);case zu:o=8,s|=8;break;case xa:return e=lt(12,n,t,s|2),e.elementType=xa,e.lanes=i,e;case ya:return e=lt(13,n,t,s),e.elementType=ya,e.lanes=i,e;case va:return e=lt(19,n,t,s),e.elementType=va,e.lanes=i,e;case dh:return el(n,s,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case uh:o=10;break e;case ch:o=9;break e;case Du:o=11;break e;case Fu:o=14;break e;case tn:o=16,r=null;break e}throw Error(V(130,e==null?e:typeof e,""))}return t=lt(o,n,t,s),t.elementType=e,t.type=r,t.lanes=i,t}function On(e,t,n,r){return e=lt(7,e,r,t),e.lanes=n,e}function el(e,t,n,r){return e=lt(22,e,r,t),e.elementType=dh,e.lanes=n,e.stateNode={isHidden:!1},e}function Xl(e,t,n){return e=lt(6,e,null,t),e.lanes=n,e}function ql(e,t,n){return t=lt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Zy(e,t,n,r,s){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Ml(0),this.expirationTimes=Ml(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ml(0),this.identifierPrefix=r,this.onRecoverableError=s,this.mutableSourceEagerHydrationData=null}function bc(e,t,n,r,s,i,o,l,u){return e=new Zy(e,t,n,l,u),t===1?(t=1,i===!0&&(t|=8)):t=0,i=lt(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},sc(i),e}function Jy(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:nr,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function n1(e){if(!e)return vn;e=e._reactInternals;e:{if(Qn(e)!==e||e.tag!==1)throw Error(V(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ye(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(V(171))}if(e.tag===1){var n=e.type;if(Ye(n))return np(e,n,t)}return t}function r1(e,t,n,r,s,i,o,l,u){return e=bc(n,r,!0,e,s,i,o,l,u),e.context=n1(null),n=e.current,r=Fe(),s=mn(n),i=Bt(r,s),i.callback=t??null,hn(n,i,s),e.current.lanes=s,Qs(e,s,r),Xe(e,r),e}function tl(e,t,n,r){var s=t.current,i=Fe(),o=mn(s);return n=n1(n),t.context===null?t.context=n:t.pendingContext=n,t=Bt(i,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=hn(s,t,o),e!==null&&(bt(e,s,o,i),Ui(e,s,o)),o}function So(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function cf(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function kc(e,t){cf(e,t),(e=e.alternate)&&cf(e,t)}function e5(){return null}var s1=typeof reportError=="function"?reportError:function(e){console.error(e)};function Nc(e){this._internalRoot=e}nl.prototype.render=Nc.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(V(409));tl(e,t,null,null)};nl.prototype.unmount=Nc.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Wn(function(){tl(null,e,null,null)}),t[Ut]=null}};function nl(e){this._internalRoot=e}nl.prototype.unstable_scheduleHydration=function(e){if(e){var t=Ah();e={blockedOn:null,target:e,priority:t};for(var n=0;n<rn.length&&t!==0&&t<rn[n].priority;n++);rn.splice(n,0,e),n===0&&Oh(e)}};function Cc(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function rl(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function df(){}function t5(e,t,n,r,s){if(s){if(typeof r=="function"){var i=r;r=function(){var c=So(o);i.call(c)}}var o=r1(t,r,e,0,null,!1,!1,"",df);return e._reactRootContainer=o,e[Ut]=o.current,Ms(e.nodeType===8?e.parentNode:e),Wn(),o}for(;s=e.lastChild;)e.removeChild(s);if(typeof r=="function"){var l=r;r=function(){var c=So(u);l.call(c)}}var u=bc(e,0,!1,null,null,!1,!1,"",df);return e._reactRootContainer=u,e[Ut]=u.current,Ms(e.nodeType===8?e.parentNode:e),Wn(function(){tl(t,u,n,r)}),u}function sl(e,t,n,r,s){var i=n._reactRootContainer;if(i){var o=i;if(typeof s=="function"){var l=s;s=function(){var u=So(o);l.call(u)}}tl(t,o,e,s)}else o=t5(n,t,e,s,r);return So(o)}Th=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=is(t.pendingLanes);n!==0&&(Bu(t,n|1),Xe(t,we()),!(se&6)&&(Lr=we()+500,kn()))}break;case 13:Wn(function(){var r=Gt(e,1);if(r!==null){var s=Fe();bt(r,e,1,s)}}),kc(e,1)}};Wu=function(e){if(e.tag===13){var t=Gt(e,134217728);if(t!==null){var n=Fe();bt(t,e,134217728,n)}kc(e,134217728)}};$h=function(e){if(e.tag===13){var t=mn(e),n=Gt(e,t);if(n!==null){var r=Fe();bt(n,e,t,r)}kc(e,t)}};Ah=function(){return le};Rh=function(e,t){var n=le;try{return le=e,t()}finally{le=n}};Ma=function(e,t,n){switch(t){case"input":if(ka(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var s=Xo(r);if(!s)throw Error(V(90));hh(r),ka(r,s)}}}break;case"textarea":mh(e,n);break;case"select":t=n.value,t!=null&&gr(e,!!n.multiple,t,!1)}};kh=xc;Nh=Wn;var n5={usingClientEntryPoint:!1,Events:[Zs,lr,Xo,wh,bh,xc]},es={findFiberByHostInstance:Pn,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},r5={bundleType:es.bundleType,version:es.version,rendererPackageName:es.rendererPackageName,rendererConfig:es.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:qt.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=jh(e),e===null?null:e.stateNode},findFiberByHostInstance:es.findFiberByHostInstance||e5,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Mi=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Mi.isDisabled&&Mi.supportsFiber)try{Wo=Mi.inject(r5),Mt=Mi}catch{}}rt.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=n5;rt.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Cc(t))throw Error(V(200));return Jy(e,t,null,n)};rt.createRoot=function(e,t){if(!Cc(e))throw Error(V(299));var n=!1,r="",s=s1;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(s=t.onRecoverableError)),t=bc(e,1,!1,null,null,n,!1,r,s),e[Ut]=t.current,Ms(e.nodeType===8?e.parentNode:e),new Nc(t)};rt.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(V(188)):(e=Object.keys(e).join(","),Error(V(268,e)));return e=jh(t),e=e===null?null:e.stateNode,e};rt.flushSync=function(e){return Wn(e)};rt.hydrate=function(e,t,n){if(!rl(t))throw Error(V(200));return sl(null,e,t,!0,n)};rt.hydrateRoot=function(e,t,n){if(!Cc(e))throw Error(V(405));var r=n!=null&&n.hydratedSources||null,s=!1,i="",o=s1;if(n!=null&&(n.unstable_strictMode===!0&&(s=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),t=r1(t,null,e,1,n??null,s,!1,i,o),e[Ut]=t.current,Ms(e),r)for(e=0;e<r.length;e++)n=r[e],s=n._getVersion,s=s(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,s]:t.mutableSourceEagerHydrationData.push(n,s);return new nl(t)};rt.render=function(e,t,n){if(!rl(t))throw Error(V(200));return sl(null,e,t,!1,n)};rt.unmountComponentAtNode=function(e){if(!rl(e))throw Error(V(40));return e._reactRootContainer?(Wn(function(){sl(null,null,e,!1,function(){e._reactRootContainer=null,e[Ut]=null})}),!0):!1};rt.unstable_batchedUpdates=xc;rt.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!rl(n))throw Error(V(200));if(e==null||e._reactInternals===void 0)throw Error(V(38));return sl(e,t,n,!1,r)};rt.version="18.3.1-next-f1338f8080-20240426";function i1(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(i1)}catch(e){console.error(e)}}i1(),ih.exports=rt;var il=ih.exports,ff=il;ma.createRoot=ff.createRoot,ma.hydrateRoot=ff.hydrateRoot;const hf="rails-visualizer-theme",s5=["light","dark","system"];function i5(e){return e==="dark"?!0:e==="light"?!1:window.matchMedia("(prefers-color-scheme: dark)").matches}function o5(){const[e,t]=j.useState(()=>{try{const r=localStorage.getItem(hf);if(r&&s5.includes(r))return r}catch{}return"system"});return j.useEffect(()=>{const r=()=>{document.documentElement.classList.toggle("dark",i5(e))};r();try{localStorage.setItem(hf,e)}catch{}if(e==="system"){const s=window.matchMedia("(prefers-color-scheme: dark)");return s.addEventListener("change",r),()=>s.removeEventListener("change",r)}},[e]),{theme:e,setTheme:r=>t(r)}}function Ee(e){if(typeof e=="string"||typeof e=="number")return""+e;let t="";if(Array.isArray(e))for(let n=0,r;n<e.length;n++)(r=Ee(e[n]))!==""&&(t+=(t&&" ")+r);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var l5={value:()=>{}};function ol(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new Zi(n)}function Zi(e){this._=e}function a5(e,t){return e.trim().split(/^|\s+/).map(function(n){var r="",s=n.indexOf(".");if(s>=0&&(r=n.slice(s+1),n=n.slice(0,s)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}Zi.prototype=ol.prototype={constructor:Zi,on:function(e,t){var n=this._,r=a5(e+"",n),s,i=-1,o=r.length;if(arguments.length<2){for(;++i<o;)if((s=(e=r[i]).type)&&(s=u5(n[s],e.name)))return s;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++i<o;)if(s=(e=r[i]).type)n[s]=pf(n[s],e.name,t);else if(t==null)for(s in n)n[s]=pf(n[s],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new Zi(e)},call:function(e,t){if((s=arguments.length-2)>0)for(var n=new Array(s),r=0,s,i;r<s;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(i=this._[e],r=0,s=i.length;r<s;++r)i[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],s=0,i=r.length;s<i;++s)r[s].value.apply(t,n)}};function u5(e,t){for(var n=0,r=e.length,s;n<r;++n)if((s=e[n]).name===t)return s.value}function pf(e,t,n){for(var r=0,s=e.length;r<s;++r)if(e[r].name===t){e[r]=l5,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var au="http://www.w3.org/1999/xhtml";const mf={svg:"http://www.w3.org/2000/svg",xhtml:au,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ll(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),mf.hasOwnProperty(t)?{space:mf[t],local:e}:e}function c5(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===au&&t.documentElement.namespaceURI===au?t.createElement(e):t.createElementNS(n,e)}}function d5(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function o1(e){var t=ll(e);return(t.local?d5:c5)(t)}function f5(){}function Ec(e){return e==null?f5:function(){return this.querySelector(e)}}function h5(e){typeof e!="function"&&(e=Ec(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var i=t[s],o=i.length,l=r[s]=new Array(o),u,c,d=0;d<o;++d)(u=i[d])&&(c=e.call(u,u.__data__,d,i))&&("__data__"in u&&(c.__data__=u.__data__),l[d]=c);return new nt(r,this._parents)}function p5(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function m5(){return[]}function l1(e){return e==null?m5:function(){return this.querySelectorAll(e)}}function g5(e){return function(){return p5(e.apply(this,arguments))}}function x5(e){typeof e=="function"?e=g5(e):e=l1(e);for(var t=this._groups,n=t.length,r=[],s=[],i=0;i<n;++i)for(var o=t[i],l=o.length,u,c=0;c<l;++c)(u=o[c])&&(r.push(e.call(u,u.__data__,c,o)),s.push(u));return new nt(r,s)}function a1(e){return function(){return this.matches(e)}}function u1(e){return function(t){return t.matches(e)}}var y5=Array.prototype.find;function v5(e){return function(){return y5.call(this.children,e)}}function w5(){return this.firstElementChild}function b5(e){return this.select(e==null?w5:v5(typeof e=="function"?e:u1(e)))}var k5=Array.prototype.filter;function N5(){return Array.from(this.children)}function C5(e){return function(){return k5.call(this.children,e)}}function E5(e){return this.selectAll(e==null?N5:C5(typeof e=="function"?e:u1(e)))}function j5(e){typeof e!="function"&&(e=a1(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var i=t[s],o=i.length,l=r[s]=[],u,c=0;c<o;++c)(u=i[c])&&e.call(u,u.__data__,c,i)&&l.push(u);return new nt(r,this._parents)}function c1(e){return new Array(e.length)}function _5(){return new nt(this._enter||this._groups.map(c1),this._parents)}function Mo(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Mo.prototype={constructor:Mo,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function S5(e){return function(){return e}}function M5(e,t,n,r,s,i){for(var o=0,l,u=t.length,c=i.length;o<c;++o)(l=t[o])?(l.__data__=i[o],r[o]=l):n[o]=new Mo(e,i[o]);for(;o<u;++o)(l=t[o])&&(s[o]=l)}function L5(e,t,n,r,s,i,o){var l,u,c=new Map,d=t.length,f=i.length,h=new Array(d),m;for(l=0;l<d;++l)(u=t[l])&&(h[l]=m=o.call(u,u.__data__,l,t)+"",c.has(m)?s[l]=u:c.set(m,u));for(l=0;l<f;++l)m=o.call(e,i[l],l,i)+"",(u=c.get(m))?(r[l]=u,u.__data__=i[l],c.delete(m)):n[l]=new Mo(e,i[l]);for(l=0;l<d;++l)(u=t[l])&&c.get(h[l])===u&&(s[l]=u)}function I5(e){return e.__data__}function P5(e,t){if(!arguments.length)return Array.from(this,I5);var n=t?L5:M5,r=this._parents,s=this._groups;typeof e!="function"&&(e=S5(e));for(var i=s.length,o=new Array(i),l=new Array(i),u=new Array(i),c=0;c<i;++c){var d=r[c],f=s[c],h=f.length,m=T5(e.call(d,d&&d.__data__,c,r)),p=m.length,v=l[c]=new Array(p),b=o[c]=new Array(p),x=u[c]=new Array(h);n(d,f,v,b,x,m,t);for(var y=0,g=0,w,k;y<p;++y)if(w=v[y]){for(y>=g&&(g=y+1);!(k=b[g])&&++g<p;);w._next=k||null}}return o=new nt(o,r),o._enter=l,o._exit=u,o}function T5(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function $5(){return new nt(this._exit||this._groups.map(c1),this._parents)}function A5(e,t,n){var r=this.enter(),s=this,i=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(s=t(s),s&&(s=s.selection())),n==null?i.remove():n(i),r&&s?r.merge(s).order():s}function R5(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,s=n.length,i=r.length,o=Math.min(s,i),l=new Array(s),u=0;u<o;++u)for(var c=n[u],d=r[u],f=c.length,h=l[u]=new Array(f),m,p=0;p<f;++p)(m=c[p]||d[p])&&(h[p]=m);for(;u<s;++u)l[u]=n[u];return new nt(l,this._parents)}function O5(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],s=r.length-1,i=r[s],o;--s>=0;)(o=r[s])&&(i&&o.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(o,i),i=o);return this}function z5(e){e||(e=D5);function t(f,h){return f&&h?e(f.__data__,h.__data__):!f-!h}for(var n=this._groups,r=n.length,s=new Array(r),i=0;i<r;++i){for(var o=n[i],l=o.length,u=s[i]=new Array(l),c,d=0;d<l;++d)(c=o[d])&&(u[d]=c);u.sort(t)}return new nt(s,this._parents).order()}function D5(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function F5(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function V5(){return Array.from(this)}function H5(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],s=0,i=r.length;s<i;++s){var o=r[s];if(o)return o}return null}function B5(){let e=0;for(const t of this)++e;return e}function W5(){return!this.node()}function U5(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var s=t[n],i=0,o=s.length,l;i<o;++i)(l=s[i])&&e.call(l,l.__data__,i,s);return this}function G5(e){return function(){this.removeAttribute(e)}}function Y5(e){return function(){this.removeAttributeNS(e.space,e.local)}}function X5(e,t){return function(){this.setAttribute(e,t)}}function q5(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function Q5(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function K5(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function Z5(e,t){var n=ll(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?Y5:G5:typeof t=="function"?n.local?K5:Q5:n.local?q5:X5)(n,t))}function d1(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function J5(e){return function(){this.style.removeProperty(e)}}function e3(e,t,n){return function(){this.style.setProperty(e,t,n)}}function t3(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function n3(e,t,n){return arguments.length>1?this.each((t==null?J5:typeof t=="function"?t3:e3)(e,t,n??"")):Ir(this.node(),e)}function Ir(e,t){return e.style.getPropertyValue(t)||d1(e).getComputedStyle(e,null).getPropertyValue(t)}function r3(e){return function(){delete this[e]}}function s3(e,t){return function(){this[e]=t}}function i3(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function o3(e,t){return arguments.length>1?this.each((t==null?r3:typeof t=="function"?i3:s3)(e,t)):this.node()[e]}function f1(e){return e.trim().split(/^|\s+/)}function jc(e){return e.classList||new h1(e)}function h1(e){this._node=e,this._names=f1(e.getAttribute("class")||"")}h1.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function p1(e,t){for(var n=jc(e),r=-1,s=t.length;++r<s;)n.add(t[r])}function m1(e,t){for(var n=jc(e),r=-1,s=t.length;++r<s;)n.remove(t[r])}function l3(e){return function(){p1(this,e)}}function a3(e){return function(){m1(this,e)}}function u3(e,t){return function(){(t.apply(this,arguments)?p1:m1)(this,e)}}function c3(e,t){var n=f1(e+"");if(arguments.length<2){for(var r=jc(this.node()),s=-1,i=n.length;++s<i;)if(!r.contains(n[s]))return!1;return!0}return this.each((typeof t=="function"?u3:t?l3:a3)(n,t))}function d3(){this.textContent=""}function f3(e){return function(){this.textContent=e}}function h3(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function p3(e){return arguments.length?this.each(e==null?d3:(typeof e=="function"?h3:f3)(e)):this.node().textContent}function m3(){this.innerHTML=""}function g3(e){return function(){this.innerHTML=e}}function x3(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function y3(e){return arguments.length?this.each(e==null?m3:(typeof e=="function"?x3:g3)(e)):this.node().innerHTML}function v3(){this.nextSibling&&this.parentNode.appendChild(this)}function w3(){return this.each(v3)}function b3(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function k3(){return this.each(b3)}function N3(e){var t=typeof e=="function"?e:o1(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function C3(){return null}function E3(e,t){var n=typeof e=="function"?e:o1(e),r=t==null?C3:typeof t=="function"?t:Ec(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function j3(){var e=this.parentNode;e&&e.removeChild(this)}function _3(){return this.each(j3)}function S3(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function M3(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function L3(e){return this.select(e?M3:S3)}function I3(e){return arguments.length?this.property("__data__",e):this.node().__data__}function P3(e){return function(t){e.call(this,t,this.__data__)}}function T3(e){return e.trim().split(/^|\s+/).map(function(t){var n="",r=t.indexOf(".");return r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function $3(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,s=t.length,i;n<s;++n)i=t[n],(!e.type||i.type===e.type)&&i.name===e.name?this.removeEventListener(i.type,i.listener,i.options):t[++r]=i;++r?t.length=r:delete this.__on}}}function A3(e,t,n){return function(){var r=this.__on,s,i=P3(t);if(r){for(var o=0,l=r.length;o<l;++o)if((s=r[o]).type===e.type&&s.name===e.name){this.removeEventListener(s.type,s.listener,s.options),this.addEventListener(s.type,s.listener=i,s.options=n),s.value=t;return}}this.addEventListener(e.type,i,n),s={type:e.type,name:e.name,value:t,listener:i,options:n},r?r.push(s):this.__on=[s]}}function R3(e,t,n){var r=T3(e+""),s,i=r.length,o;if(arguments.length<2){var l=this.node().__on;if(l){for(var u=0,c=l.length,d;u<c;++u)for(s=0,d=l[u];s<i;++s)if((o=r[s]).type===d.type&&o.name===d.name)return d.value}return}for(l=t?A3:$3,s=0;s<i;++s)this.each(l(r[s],t,n));return this}function g1(e,t,n){var r=d1(e),s=r.CustomEvent;typeof s=="function"?s=new s(t,n):(s=r.document.createEvent("Event"),n?(s.initEvent(t,n.bubbles,n.cancelable),s.detail=n.detail):s.initEvent(t,!1,!1)),e.dispatchEvent(s)}function O3(e,t){return function(){return g1(this,e,t)}}function z3(e,t){return function(){return g1(this,e,t.apply(this,arguments))}}function D3(e,t){return this.each((typeof t=="function"?z3:O3)(e,t))}function*F3(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],s=0,i=r.length,o;s<i;++s)(o=r[s])&&(yield o)}var x1=[null];function nt(e,t){this._groups=e,this._parents=t}function ei(){return new nt([[document.documentElement]],x1)}function V3(){return this}nt.prototype=ei.prototype={constructor:nt,select:h5,selectAll:x5,selectChild:b5,selectChildren:E5,filter:j5,data:P5,enter:_5,exit:$5,join:A5,merge:R5,selection:V3,order:O5,sort:z5,call:F5,nodes:V5,node:H5,size:B5,empty:W5,each:U5,attr:Z5,style:n3,property:o3,classed:c3,text:p3,html:y3,raise:w3,lower:k3,append:N3,insert:E3,remove:_3,clone:L3,datum:I3,on:R3,dispatch:D3,[Symbol.iterator]:F3};function Ze(e){return typeof e=="string"?new nt([[document.querySelector(e)]],[document.documentElement]):new nt([[e]],x1)}function H3(e){let t;for(;t=e.sourceEvent;)e=t;return e}function mt(e,t){if(e=H3(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var s=t.getBoundingClientRect();return[e.clientX-s.left-t.clientLeft,e.clientY-s.top-t.clientTop]}}return[e.pageX,e.pageY]}const B3={passive:!1},zs={capture:!0,passive:!1};function Ql(e){e.stopImmediatePropagation()}function kr(e){e.preventDefault(),e.stopImmediatePropagation()}function y1(e){var t=e.document.documentElement,n=Ze(e).on("dragstart.drag",kr,zs);"onselectstart"in t?n.on("selectstart.drag",kr,zs):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function v1(e,t){var n=e.document.documentElement,r=Ze(e).on("dragstart.drag",null);t&&(r.on("click.drag",kr,zs),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const Li=e=>()=>e;function uu(e,{sourceEvent:t,subject:n,target:r,identifier:s,active:i,x:o,y:l,dx:u,dy:c,dispatch:d}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:s,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:u,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:d}})}uu.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function W3(e){return!e.ctrlKey&&!e.button}function U3(){return this.parentNode}function G3(e,t){return t??{x:e.x,y:e.y}}function Y3(){return navigator.maxTouchPoints||"ontouchstart"in this}function w1(){var e=W3,t=U3,n=G3,r=Y3,s={},i=ol("start","drag","end"),o=0,l,u,c,d,f=0;function h(w){w.on("mousedown.drag",m).filter(r).on("touchstart.drag",b).on("touchmove.drag",x,B3).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(w,k){if(!(d||!e.call(this,w,k))){var N=g(this,t.call(this,w,k),w,k,"mouse");N&&(Ze(w.view).on("mousemove.drag",p,zs).on("mouseup.drag",v,zs),y1(w.view),Ql(w),c=!1,l=w.clientX,u=w.clientY,N("start",w))}}function p(w){if(kr(w),!c){var k=w.clientX-l,N=w.clientY-u;c=k*k+N*N>f}s.mouse("drag",w)}function v(w){Ze(w.view).on("mousemove.drag mouseup.drag",null),v1(w.view,c),kr(w),s.mouse("end",w)}function b(w,k){if(e.call(this,w,k)){var N=w.changedTouches,M=t.call(this,w,k),I=N.length,P,z;for(P=0;P<I;++P)(z=g(this,M,w,k,N[P].identifier,N[P]))&&(Ql(w),z("start",w,N[P]))}}function x(w){var k=w.changedTouches,N=k.length,M,I;for(M=0;M<N;++M)(I=s[k[M].identifier])&&(kr(w),I("drag",w,k[M]))}function y(w){var k=w.changedTouches,N=k.length,M,I;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),M=0;M<N;++M)(I=s[k[M].identifier])&&(Ql(w),I("end",w,k[M]))}function g(w,k,N,M,I,P){var z=i.copy(),S=mt(P||N,k),$,F,C;if((C=n.call(w,new uu("beforestart",{sourceEvent:N,target:h,identifier:I,active:o,x:S[0],y:S[1],dx:0,dy:0,dispatch:z}),M))!=null)return $=C.x-S[0]||0,F=C.y-S[1]||0,function A(T,O,_){var L=S,E;switch(T){case"start":s[I]=A,E=o++;break;case"end":delete s[I],--o;case"drag":S=mt(_||O,k),E=o;break}z.call(T,w,new uu(T,{sourceEvent:O,subject:C,target:h,identifier:I,active:E,x:S[0]+$,y:S[1]+F,dx:S[0]-L[0],dy:S[1]-L[1],dispatch:z}),M)}}return h.filter=function(w){return arguments.length?(e=typeof w=="function"?w:Li(!!w),h):e},h.container=function(w){return arguments.length?(t=typeof w=="function"?w:Li(w),h):t},h.subject=function(w){return arguments.length?(n=typeof w=="function"?w:Li(w),h):n},h.touchable=function(w){return arguments.length?(r=typeof w=="function"?w:Li(!!w),h):r},h.on=function(){var w=i.on.apply(i,arguments);return w===i?h:w},h.clickDistance=function(w){return arguments.length?(f=(w=+w)*w,h):Math.sqrt(f)},h}function _c(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function b1(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function ti(){}var Ds=.7,Lo=1/Ds,Nr="\\s*([+-]?\\d+)\\s*",Fs="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",It="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",X3=/^#([0-9a-f]{3,8})$/,q3=new RegExp(`^rgb\\(${Nr},${Nr},${Nr}\\)$`),Q3=new RegExp(`^rgb\\(${It},${It},${It}\\)$`),K3=new RegExp(`^rgba\\(${Nr},${Nr},${Nr},${Fs}\\)$`),Z3=new RegExp(`^rgba\\(${It},${It},${It},${Fs}\\)$`),J3=new RegExp(`^hsl\\(${Fs},${It},${It}\\)$`),e4=new RegExp(`^hsla\\(${Fs},${It},${It},${Fs}\\)$`),gf={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};_c(ti,Un,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:xf,formatHex:xf,formatHex8:t4,formatHsl:n4,formatRgb:yf,toString:yf});function xf(){return this.rgb().formatHex()}function t4(){return this.rgb().formatHex8()}function n4(){return k1(this).formatHsl()}function yf(){return this.rgb().formatRgb()}function Un(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=X3.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?vf(t):n===3?new Ue(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Ii(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Ii(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=q3.exec(e))?new Ue(t[1],t[2],t[3],1):(t=Q3.exec(e))?new Ue(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=K3.exec(e))?Ii(t[1],t[2],t[3],t[4]):(t=Z3.exec(e))?Ii(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=J3.exec(e))?kf(t[1],t[2]/100,t[3]/100,1):(t=e4.exec(e))?kf(t[1],t[2]/100,t[3]/100,t[4]):gf.hasOwnProperty(e)?vf(gf[e]):e==="transparent"?new Ue(NaN,NaN,NaN,0):null}function vf(e){return new Ue(e>>16&255,e>>8&255,e&255,1)}function Ii(e,t,n,r){return r<=0&&(e=t=n=NaN),new Ue(e,t,n,r)}function r4(e){return e instanceof ti||(e=Un(e)),e?(e=e.rgb(),new Ue(e.r,e.g,e.b,e.opacity)):new Ue}function cu(e,t,n,r){return arguments.length===1?r4(e):new Ue(e,t,n,r??1)}function Ue(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}_c(Ue,cu,b1(ti,{brighter(e){return e=e==null?Lo:Math.pow(Lo,e),new Ue(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Ds:Math.pow(Ds,e),new Ue(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Ue(zn(this.r),zn(this.g),zn(this.b),Io(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:wf,formatHex:wf,formatHex8:s4,formatRgb:bf,toString:bf}));function wf(){return`#${An(this.r)}${An(this.g)}${An(this.b)}`}function s4(){return`#${An(this.r)}${An(this.g)}${An(this.b)}${An((isNaN(this.opacity)?1:this.opacity)*255)}`}function bf(){const e=Io(this.opacity);return`${e===1?"rgb(":"rgba("}${zn(this.r)}, ${zn(this.g)}, ${zn(this.b)}${e===1?")":`, ${e})`}`}function Io(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function zn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function An(e){return e=zn(e),(e<16?"0":"")+e.toString(16)}function kf(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new xt(e,t,n,r)}function k1(e){if(e instanceof xt)return new xt(e.h,e.s,e.l,e.opacity);if(e instanceof ti||(e=Un(e)),!e)return new xt;if(e instanceof xt)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,s=Math.min(t,n,r),i=Math.max(t,n,r),o=NaN,l=i-s,u=(i+s)/2;return l?(t===i?o=(n-r)/l+(n<r)*6:n===i?o=(r-t)/l+2:o=(t-n)/l+4,l/=u<.5?i+s:2-i-s,o*=60):l=u>0&&u<1?0:o,new xt(o,l,u,e.opacity)}function i4(e,t,n,r){return arguments.length===1?k1(e):new xt(e,t,n,r??1)}function xt(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}_c(xt,i4,b1(ti,{brighter(e){return e=e==null?Lo:Math.pow(Lo,e),new xt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Ds:Math.pow(Ds,e),new xt(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,s=2*n-r;return new Ue(Kl(e>=240?e-240:e+120,s,r),Kl(e,s,r),Kl(e<120?e+240:e-120,s,r),this.opacity)},clamp(){return new xt(Nf(this.h),Pi(this.s),Pi(this.l),Io(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Io(this.opacity);return`${e===1?"hsl(":"hsla("}${Nf(this.h)}, ${Pi(this.s)*100}%, ${Pi(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Nf(e){return e=(e||0)%360,e<0?e+360:e}function Pi(e){return Math.max(0,Math.min(1,e||0))}function Kl(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Sc=e=>()=>e;function o4(e,t){return function(n){return e+n*t}}function l4(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function a4(e){return(e=+e)==1?N1:function(t,n){return n-t?l4(t,n,e):Sc(isNaN(t)?n:t)}}function N1(e,t){var n=t-e;return n?o4(e,n):Sc(isNaN(e)?t:e)}const Po=function e(t){var n=a4(t);function r(s,i){var o=n((s=cu(s)).r,(i=cu(i)).r),l=n(s.g,i.g),u=n(s.b,i.b),c=N1(s.opacity,i.opacity);return function(d){return s.r=o(d),s.g=l(d),s.b=u(d),s.opacity=c(d),s+""}}return r.gamma=e,r}(1);function u4(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),s;return function(i){for(s=0;s<n;++s)r[s]=e[s]*(1-i)+t[s]*i;return r}}function c4(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function d4(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,s=new Array(r),i=new Array(n),o;for(o=0;o<r;++o)s[o]=vs(e[o],t[o]);for(;o<n;++o)i[o]=t[o];return function(l){for(o=0;o<r;++o)i[o]=s[o](l);return i}}function f4(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function _t(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function h4(e,t){var n={},r={},s;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(s in t)s in e?n[s]=vs(e[s],t[s]):r[s]=t[s];return function(i){for(s in n)r[s]=n[s](i);return r}}var du=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Zl=new RegExp(du.source,"g");function p4(e){return function(){return e}}function m4(e){return function(t){return e(t)+""}}function C1(e,t){var n=du.lastIndex=Zl.lastIndex=0,r,s,i,o=-1,l=[],u=[];for(e=e+"",t=t+"";(r=du.exec(e))&&(s=Zl.exec(t));)(i=s.index)>n&&(i=t.slice(n,i),l[o]?l[o]+=i:l[++o]=i),(r=r[0])===(s=s[0])?l[o]?l[o]+=s:l[++o]=s:(l[++o]=null,u.push({i:o,x:_t(r,s)})),n=Zl.lastIndex;return n<t.length&&(i=t.slice(n),l[o]?l[o]+=i:l[++o]=i),l.length<2?u[0]?m4(u[0].x):p4(t):(t=u.length,function(c){for(var d=0,f;d<t;++d)l[(f=u[d]).i]=f.x(c);return l.join("")})}function vs(e,t){var n=typeof t,r;return t==null||n==="boolean"?Sc(t):(n==="number"?_t:n==="string"?(r=Un(t))?(t=r,Po):C1:t instanceof Un?Po:t instanceof Date?f4:c4(t)?u4:Array.isArray(t)?d4:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?h4:_t)(e,t)}var Cf=180/Math.PI,fu={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function E1(e,t,n,r,s,i){var o,l,u;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(u=e*n+t*r)&&(n-=e*u,r-=t*u),(l=Math.sqrt(n*n+r*r))&&(n/=l,r/=l,u/=l),e*r<t*n&&(e=-e,t=-t,u=-u,o=-o),{translateX:s,translateY:i,rotate:Math.atan2(t,e)*Cf,skewX:Math.atan(u)*Cf,scaleX:o,scaleY:l}}var Ti;function g4(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?fu:E1(t.a,t.b,t.c,t.d,t.e,t.f)}function x4(e){return e==null||(Ti||(Ti=document.createElementNS("http://www.w3.org/2000/svg","g")),Ti.setAttribute("transform",e),!(e=Ti.transform.baseVal.consolidate()))?fu:(e=e.matrix,E1(e.a,e.b,e.c,e.d,e.e,e.f))}function j1(e,t,n,r){function s(c){return c.length?c.pop()+" ":""}function i(c,d,f,h,m,p){if(c!==f||d!==h){var v=m.push("translate(",null,t,null,n);p.push({i:v-4,x:_t(c,f)},{i:v-2,x:_t(d,h)})}else(f||h)&&m.push("translate("+f+t+h+n)}function o(c,d,f,h){c!==d?(c-d>180?d+=360:d-c>180&&(c+=360),h.push({i:f.push(s(f)+"rotate(",null,r)-2,x:_t(c,d)})):d&&f.push(s(f)+"rotate("+d+r)}function l(c,d,f,h){c!==d?h.push({i:f.push(s(f)+"skewX(",null,r)-2,x:_t(c,d)}):d&&f.push(s(f)+"skewX("+d+r)}function u(c,d,f,h,m,p){if(c!==f||d!==h){var v=m.push(s(m)+"scale(",null,",",null,")");p.push({i:v-4,x:_t(c,f)},{i:v-2,x:_t(d,h)})}else(f!==1||h!==1)&&m.push(s(m)+"scale("+f+","+h+")")}return function(c,d){var f=[],h=[];return c=e(c),d=e(d),i(c.translateX,c.translateY,d.translateX,d.translateY,f,h),o(c.rotate,d.rotate,f,h),l(c.skewX,d.skewX,f,h),u(c.scaleX,c.scaleY,d.scaleX,d.scaleY,f,h),c=d=null,function(m){for(var p=-1,v=h.length,b;++p<v;)f[(b=h[p]).i]=b.x(m);return f.join("")}}}var y4=j1(g4,"px, ","px)","deg)"),v4=j1(x4,", ",")",")"),w4=1e-12;function Ef(e){return((e=Math.exp(e))+1/e)/2}function b4(e){return((e=Math.exp(e))-1/e)/2}function k4(e){return((e=Math.exp(2*e))-1)/(e+1)}const Ji=function e(t,n,r){function s(i,o){var l=i[0],u=i[1],c=i[2],d=o[0],f=o[1],h=o[2],m=d-l,p=f-u,v=m*m+p*p,b,x;if(v<w4)x=Math.log(h/c)/t,b=function(M){return[l+M*m,u+M*p,c*Math.exp(t*M*x)]};else{var y=Math.sqrt(v),g=(h*h-c*c+r*v)/(2*c*n*y),w=(h*h-c*c-r*v)/(2*h*n*y),k=Math.log(Math.sqrt(g*g+1)-g),N=Math.log(Math.sqrt(w*w+1)-w);x=(N-k)/t,b=function(M){var I=M*x,P=Ef(k),z=c/(n*y)*(P*k4(t*I+k)-b4(k));return[l+z*m,u+z*p,c*P/Ef(t*I+k)]}}return b.duration=x*1e3*t/Math.SQRT2,b}return s.rho=function(i){var o=Math.max(.001,+i),l=o*o,u=l*l;return e(o,l,u)},s}(Math.SQRT2,2,4);var Pr=0,ls=0,ts=0,_1=1e3,To,as,$o=0,Gn=0,al=0,Vs=typeof performance=="object"&&performance.now?performance:Date,S1=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Mc(){return Gn||(S1(N4),Gn=Vs.now()+al)}function N4(){Gn=0}function Ao(){this._call=this._time=this._next=null}Ao.prototype=M1.prototype={constructor:Ao,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?Mc():+n)+(t==null?0:+t),!this._next&&as!==this&&(as?as._next=this:To=this,as=this),this._call=e,this._time=n,hu()},stop:function(){this._call&&(this._call=null,this._time=1/0,hu())}};function M1(e,t,n){var r=new Ao;return r.restart(e,t,n),r}function C4(){Mc(),++Pr;for(var e=To,t;e;)(t=Gn-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Pr}function jf(){Gn=($o=Vs.now())+al,Pr=ls=0;try{C4()}finally{Pr=0,j4(),Gn=0}}function E4(){var e=Vs.now(),t=e-$o;t>_1&&(al-=t,$o=e)}function j4(){for(var e,t=To,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:To=n);as=e,hu(r)}function hu(e){if(!Pr){ls&&(ls=clearTimeout(ls));var t=e-Gn;t>24?(e<1/0&&(ls=setTimeout(jf,e-Vs.now()-al)),ts&&(ts=clearInterval(ts))):(ts||($o=Vs.now(),ts=setInterval(E4,_1)),Pr=1,S1(jf))}}function _f(e,t,n){var r=new Ao;return t=t==null?0:+t,r.restart(s=>{r.stop(),e(s+t)},t,n),r}var _4=ol("start","end","cancel","interrupt"),S4=[],L1=0,Sf=1,pu=2,eo=3,Mf=4,mu=5,to=6;function ul(e,t,n,r,s,i){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;M4(e,n,{name:t,index:r,group:s,on:_4,tween:S4,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:L1})}function Lc(e,t){var n=Nt(e,t);if(n.state>L1)throw new Error("too late; already scheduled");return n}function Tt(e,t){var n=Nt(e,t);if(n.state>eo)throw new Error("too late; already running");return n}function Nt(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function M4(e,t,n){var r=e.__transition,s;r[t]=n,n.timer=M1(i,0,n.time);function i(c){n.state=Sf,n.timer.restart(o,n.delay,n.time),n.delay<=c&&o(c-n.delay)}function o(c){var d,f,h,m;if(n.state!==Sf)return u();for(d in r)if(m=r[d],m.name===n.name){if(m.state===eo)return _f(o);m.state===Mf?(m.state=to,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[d]):+d<t&&(m.state=to,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[d])}if(_f(function(){n.state===eo&&(n.state=Mf,n.timer.restart(l,n.delay,n.time),l(c))}),n.state=pu,n.on.call("start",e,e.__data__,n.index,n.group),n.state===pu){for(n.state=eo,s=new Array(h=n.tween.length),d=0,f=-1;d<h;++d)(m=n.tween[d].value.call(e,e.__data__,n.index,n.group))&&(s[++f]=m);s.length=f+1}}function l(c){for(var d=c<n.duration?n.ease.call(null,c/n.duration):(n.timer.restart(u),n.state=mu,1),f=-1,h=s.length;++f<h;)s[f].call(e,d);n.state===mu&&(n.on.call("end",e,e.__data__,n.index,n.group),u())}function u(){n.state=to,n.timer.stop(),delete r[t];for(var c in r)return;delete e.__transition}}function no(e,t){var n=e.__transition,r,s,i=!0,o;if(n){t=t==null?null:t+"";for(o in n){if((r=n[o]).name!==t){i=!1;continue}s=r.state>pu&&r.state<mu,r.state=to,r.timer.stop(),r.on.call(s?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[o]}i&&delete e.__transition}}function L4(e){return this.each(function(){no(this,e)})}function I4(e,t){var n,r;return function(){var s=Tt(this,e),i=s.tween;if(i!==n){r=n=i;for(var o=0,l=r.length;o<l;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}s.tween=r}}function P4(e,t,n){var r,s;if(typeof n!="function")throw new Error;return function(){var i=Tt(this,e),o=i.tween;if(o!==r){s=(r=o).slice();for(var l={name:t,value:n},u=0,c=s.length;u<c;++u)if(s[u].name===t){s[u]=l;break}u===c&&s.push(l)}i.tween=s}}function T4(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r=Nt(this.node(),n).tween,s=0,i=r.length,o;s<i;++s)if((o=r[s]).name===e)return o.value;return null}return this.each((t==null?I4:P4)(n,e,t))}function Ic(e,t,n){var r=e._id;return e.each(function(){var s=Tt(this,r);(s.value||(s.value={}))[t]=n.apply(this,arguments)}),function(s){return Nt(s,r).value[t]}}function I1(e,t){var n;return(typeof t=="number"?_t:t instanceof Un?Po:(n=Un(t))?(t=n,Po):C1)(e,t)}function $4(e){return function(){this.removeAttribute(e)}}function A4(e){return function(){this.removeAttributeNS(e.space,e.local)}}function R4(e,t,n){var r,s=n+"",i;return function(){var o=this.getAttribute(e);return o===s?null:o===r?i:i=t(r=o,n)}}function O4(e,t,n){var r,s=n+"",i;return function(){var o=this.getAttributeNS(e.space,e.local);return o===s?null:o===r?i:i=t(r=o,n)}}function z4(e,t,n){var r,s,i;return function(){var o,l=n(this),u;return l==null?void this.removeAttribute(e):(o=this.getAttribute(e),u=l+"",o===u?null:o===r&&u===s?i:(s=u,i=t(r=o,l)))}}function D4(e,t,n){var r,s,i;return function(){var o,l=n(this),u;return l==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),u=l+"",o===u?null:o===r&&u===s?i:(s=u,i=t(r=o,l)))}}function F4(e,t){var n=ll(e),r=n==="transform"?v4:I1;return this.attrTween(e,typeof t=="function"?(n.local?D4:z4)(n,r,Ic(this,"attr."+e,t)):t==null?(n.local?A4:$4)(n):(n.local?O4:R4)(n,r,t))}function V4(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function H4(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function B4(e,t){var n,r;function s(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&H4(e,i)),n}return s._value=t,s}function W4(e,t){var n,r;function s(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&V4(e,i)),n}return s._value=t,s}function U4(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;var r=ll(e);return this.tween(n,(r.local?B4:W4)(r,t))}function G4(e,t){return function(){Lc(this,e).delay=+t.apply(this,arguments)}}function Y4(e,t){return t=+t,function(){Lc(this,e).delay=t}}function X4(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?G4:Y4)(t,e)):Nt(this.node(),t).delay}function q4(e,t){return function(){Tt(this,e).duration=+t.apply(this,arguments)}}function Q4(e,t){return t=+t,function(){Tt(this,e).duration=t}}function K4(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?q4:Q4)(t,e)):Nt(this.node(),t).duration}function Z4(e,t){if(typeof t!="function")throw new Error;return function(){Tt(this,e).ease=t}}function J4(e){var t=this._id;return arguments.length?this.each(Z4(t,e)):Nt(this.node(),t).ease}function ev(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;Tt(this,e).ease=n}}function tv(e){if(typeof e!="function")throw new Error;return this.each(ev(this._id,e))}function nv(e){typeof e!="function"&&(e=a1(e));for(var t=this._groups,n=t.length,r=new Array(n),s=0;s<n;++s)for(var i=t[s],o=i.length,l=r[s]=[],u,c=0;c<o;++c)(u=i[c])&&e.call(u,u.__data__,c,i)&&l.push(u);return new Xt(r,this._parents,this._name,this._id)}function rv(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,r=t.length,s=n.length,i=Math.min(r,s),o=new Array(r),l=0;l<i;++l)for(var u=t[l],c=n[l],d=u.length,f=o[l]=new Array(d),h,m=0;m<d;++m)(h=u[m]||c[m])&&(f[m]=h);for(;l<r;++l)o[l]=t[l];return new Xt(o,this._parents,this._name,this._id)}function sv(e){return(e+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||t==="start"})}function iv(e,t,n){var r,s,i=sv(t)?Lc:Tt;return function(){var o=i(this,e),l=o.on;l!==r&&(s=(r=l).copy()).on(t,n),o.on=s}}function ov(e,t){var n=this._id;return arguments.length<2?Nt(this.node(),n).on.on(e):this.each(iv(n,e,t))}function lv(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function av(){return this.on("end.remove",lv(this._id))}function uv(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Ec(e));for(var r=this._groups,s=r.length,i=new Array(s),o=0;o<s;++o)for(var l=r[o],u=l.length,c=i[o]=new Array(u),d,f,h=0;h<u;++h)(d=l[h])&&(f=e.call(d,d.__data__,h,l))&&("__data__"in d&&(f.__data__=d.__data__),c[h]=f,ul(c[h],t,n,h,c,Nt(d,n)));return new Xt(i,this._parents,t,n)}function cv(e){var t=this._name,n=this._id;typeof e!="function"&&(e=l1(e));for(var r=this._groups,s=r.length,i=[],o=[],l=0;l<s;++l)for(var u=r[l],c=u.length,d,f=0;f<c;++f)if(d=u[f]){for(var h=e.call(d,d.__data__,f,u),m,p=Nt(d,n),v=0,b=h.length;v<b;++v)(m=h[v])&&ul(m,t,n,v,h,p);i.push(h),o.push(d)}return new Xt(i,o,t,n)}var dv=ei.prototype.constructor;function fv(){return new dv(this._groups,this._parents)}function hv(e,t){var n,r,s;return function(){var i=Ir(this,e),o=(this.style.removeProperty(e),Ir(this,e));return i===o?null:i===n&&o===r?s:s=t(n=i,r=o)}}function P1(e){return function(){this.style.removeProperty(e)}}function pv(e,t,n){var r,s=n+"",i;return function(){var o=Ir(this,e);return o===s?null:o===r?i:i=t(r=o,n)}}function mv(e,t,n){var r,s,i;return function(){var o=Ir(this,e),l=n(this),u=l+"";return l==null&&(u=l=(this.style.removeProperty(e),Ir(this,e))),o===u?null:o===r&&u===s?i:(s=u,i=t(r=o,l))}}function gv(e,t){var n,r,s,i="style."+t,o="end."+i,l;return function(){var u=Tt(this,e),c=u.on,d=u.value[i]==null?l||(l=P1(t)):void 0;(c!==n||s!==d)&&(r=(n=c).copy()).on(o,s=d),u.on=r}}function xv(e,t,n){var r=(e+="")=="transform"?y4:I1;return t==null?this.styleTween(e,hv(e,r)).on("end.style."+e,P1(e)):typeof t=="function"?this.styleTween(e,mv(e,r,Ic(this,"style."+e,t))).each(gv(this._id,e)):this.styleTween(e,pv(e,r,t),n).on("end.style."+e,null)}function yv(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function vv(e,t,n){var r,s;function i(){var o=t.apply(this,arguments);return o!==s&&(r=(s=o)&&yv(e,o,n)),r}return i._value=t,i}function wv(e,t,n){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;return this.tween(r,vv(e,t,n??""))}function bv(e){return function(){this.textContent=e}}function kv(e){return function(){var t=e(this);this.textContent=t??""}}function Nv(e){return this.tween("text",typeof e=="function"?kv(Ic(this,"text",e)):bv(e==null?"":e+""))}function Cv(e){return function(t){this.textContent=e.call(this,t)}}function Ev(e){var t,n;function r(){var s=e.apply(this,arguments);return s!==n&&(t=(n=s)&&Cv(s)),t}return r._value=e,r}function jv(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,Ev(e))}function _v(){for(var e=this._name,t=this._id,n=T1(),r=this._groups,s=r.length,i=0;i<s;++i)for(var o=r[i],l=o.length,u,c=0;c<l;++c)if(u=o[c]){var d=Nt(u,t);ul(u,e,n,c,o,{time:d.time+d.delay+d.duration,delay:0,duration:d.duration,ease:d.ease})}return new Xt(r,this._parents,e,n)}function Sv(){var e,t,n=this,r=n._id,s=n.size();return new Promise(function(i,o){var l={value:o},u={value:function(){--s===0&&i()}};n.each(function(){var c=Tt(this,r),d=c.on;d!==e&&(t=(e=d).copy(),t._.cancel.push(l),t._.interrupt.push(l),t._.end.push(u)),c.on=t}),s===0&&i()})}var Mv=0;function Xt(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function T1(){return++Mv}var At=ei.prototype;Xt.prototype={constructor:Xt,select:uv,selectAll:cv,selectChild:At.selectChild,selectChildren:At.selectChildren,filter:nv,merge:rv,selection:fv,transition:_v,call:At.call,nodes:At.nodes,node:At.node,size:At.size,empty:At.empty,each:At.each,on:ov,attr:F4,attrTween:U4,style:xv,styleTween:wv,text:Nv,textTween:jv,remove:av,tween:T4,delay:X4,duration:K4,ease:J4,easeVarying:tv,end:Sv,[Symbol.iterator]:At[Symbol.iterator]};function Lv(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Iv={time:null,delay:0,duration:250,ease:Lv};function Pv(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function Tv(e){var t,n;e instanceof Xt?(t=e._id,e=e._name):(t=T1(),(n=Iv).time=Mc(),e=e==null?null:e+"");for(var r=this._groups,s=r.length,i=0;i<s;++i)for(var o=r[i],l=o.length,u,c=0;c<l;++c)(u=o[c])&&ul(u,e,t,c,o,n||Pv(u,t));return new Xt(r,this._parents,e,t)}ei.prototype.interrupt=L4;ei.prototype.transition=Tv;const $i=e=>()=>e;function $v(e,{sourceEvent:t,target:n,transform:r,dispatch:s}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:s}})}function Vt(e,t,n){this.k=e,this.x=t,this.y=n}Vt.prototype={constructor:Vt,scale:function(e){return e===1?this:new Vt(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Vt(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var cl=new Vt(1,0,0);$1.prototype=Vt.prototype;function $1(e){for(;!e.__zoom;)if(!(e=e.parentNode))return cl;return e.__zoom}function Jl(e){e.stopImmediatePropagation()}function ns(e){e.preventDefault(),e.stopImmediatePropagation()}function Av(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function Rv(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function Lf(){return this.__zoom||cl}function Ov(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function zv(){return navigator.maxTouchPoints||"ontouchstart"in this}function Dv(e,t,n){var r=e.invertX(t[0][0])-n[0][0],s=e.invertX(t[1][0])-n[1][0],i=e.invertY(t[0][1])-n[0][1],o=e.invertY(t[1][1])-n[1][1];return e.translate(s>r?(r+s)/2:Math.min(0,r)||Math.max(0,s),o>i?(i+o)/2:Math.min(0,i)||Math.max(0,o))}function A1(){var e=Av,t=Rv,n=Dv,r=Ov,s=zv,i=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],l=250,u=Ji,c=ol("start","zoom","end"),d,f,h,m=500,p=150,v=0,b=10;function x(C){C.property("__zoom",Lf).on("wheel.zoom",I,{passive:!1}).on("mousedown.zoom",P).on("dblclick.zoom",z).filter(s).on("touchstart.zoom",S).on("touchmove.zoom",$).on("touchend.zoom touchcancel.zoom",F).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}x.transform=function(C,A,T,O){var _=C.selection?C.selection():C;_.property("__zoom",Lf),C!==_?k(C,A,T,O):_.interrupt().each(function(){N(this,arguments).event(O).start().zoom(null,typeof A=="function"?A.apply(this,arguments):A).end()})},x.scaleBy=function(C,A,T,O){x.scaleTo(C,function(){var _=this.__zoom.k,L=typeof A=="function"?A.apply(this,arguments):A;return _*L},T,O)},x.scaleTo=function(C,A,T,O){x.transform(C,function(){var _=t.apply(this,arguments),L=this.__zoom,E=T==null?w(_):typeof T=="function"?T.apply(this,arguments):T,R=L.invert(E),D=typeof A=="function"?A.apply(this,arguments):A;return n(g(y(L,D),E,R),_,o)},T,O)},x.translateBy=function(C,A,T,O){x.transform(C,function(){return n(this.__zoom.translate(typeof A=="function"?A.apply(this,arguments):A,typeof T=="function"?T.apply(this,arguments):T),t.apply(this,arguments),o)},null,O)},x.translateTo=function(C,A,T,O,_){x.transform(C,function(){var L=t.apply(this,arguments),E=this.__zoom,R=O==null?w(L):typeof O=="function"?O.apply(this,arguments):O;return n(cl.translate(R[0],R[1]).scale(E.k).translate(typeof A=="function"?-A.apply(this,arguments):-A,typeof T=="function"?-T.apply(this,arguments):-T),L,o)},O,_)};function y(C,A){return A=Math.max(i[0],Math.min(i[1],A)),A===C.k?C:new Vt(A,C.x,C.y)}function g(C,A,T){var O=A[0]-T[0]*C.k,_=A[1]-T[1]*C.k;return O===C.x&&_===C.y?C:new Vt(C.k,O,_)}function w(C){return[(+C[0][0]+ +C[1][0])/2,(+C[0][1]+ +C[1][1])/2]}function k(C,A,T,O){C.on("start.zoom",function(){N(this,arguments).event(O).start()}).on("interrupt.zoom end.zoom",function(){N(this,arguments).event(O).end()}).tween("zoom",function(){var _=this,L=arguments,E=N(_,L).event(O),R=t.apply(_,L),D=T==null?w(R):typeof T=="function"?T.apply(_,L):T,W=Math.max(R[1][0]-R[0][0],R[1][1]-R[0][1]),B=_.__zoom,G=typeof A=="function"?A.apply(_,L):A,Y=u(B.invert(D).concat(W/B.k),G.invert(D).concat(W/G.k));return function(q){if(q===1)q=G;else{var H=Y(q),Q=W/H[2];q=new Vt(Q,D[0]-H[0]*Q,D[1]-H[1]*Q)}E.zoom(null,q)}})}function N(C,A,T){return!T&&C.__zooming||new M(C,A)}function M(C,A){this.that=C,this.args=A,this.active=0,this.sourceEvent=null,this.extent=t.apply(C,A),this.taps=0}M.prototype={event:function(C){return C&&(this.sourceEvent=C),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(C,A){return this.mouse&&C!=="mouse"&&(this.mouse[1]=A.invert(this.mouse[0])),this.touch0&&C!=="touch"&&(this.touch0[1]=A.invert(this.touch0[0])),this.touch1&&C!=="touch"&&(this.touch1[1]=A.invert(this.touch1[0])),this.that.__zoom=A,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(C){var A=Ze(this.that).datum();c.call(C,this.that,new $v(C,{sourceEvent:this.sourceEvent,target:x,transform:this.that.__zoom,dispatch:c}),A)}};function I(C,...A){if(!e.apply(this,arguments))return;var T=N(this,A).event(C),O=this.__zoom,_=Math.max(i[0],Math.min(i[1],O.k*Math.pow(2,r.apply(this,arguments)))),L=mt(C);if(T.wheel)(T.mouse[0][0]!==L[0]||T.mouse[0][1]!==L[1])&&(T.mouse[1]=O.invert(T.mouse[0]=L)),clearTimeout(T.wheel);else{if(O.k===_)return;T.mouse=[L,O.invert(L)],no(this),T.start()}ns(C),T.wheel=setTimeout(E,p),T.zoom("mouse",n(g(y(O,_),T.mouse[0],T.mouse[1]),T.extent,o));function E(){T.wheel=null,T.end()}}function P(C,...A){if(h||!e.apply(this,arguments))return;var T=C.currentTarget,O=N(this,A,!0).event(C),_=Ze(C.view).on("mousemove.zoom",D,!0).on("mouseup.zoom",W,!0),L=mt(C,T),E=C.clientX,R=C.clientY;y1(C.view),Jl(C),O.mouse=[L,this.__zoom.invert(L)],no(this),O.start();function D(B){if(ns(B),!O.moved){var G=B.clientX-E,Y=B.clientY-R;O.moved=G*G+Y*Y>v}O.event(B).zoom("mouse",n(g(O.that.__zoom,O.mouse[0]=mt(B,T),O.mouse[1]),O.extent,o))}function W(B){_.on("mousemove.zoom mouseup.zoom",null),v1(B.view,O.moved),ns(B),O.event(B).end()}}function z(C,...A){if(e.apply(this,arguments)){var T=this.__zoom,O=mt(C.changedTouches?C.changedTouches[0]:C,this),_=T.invert(O),L=T.k*(C.shiftKey?.5:2),E=n(g(y(T,L),O,_),t.apply(this,A),o);ns(C),l>0?Ze(this).transition().duration(l).call(k,E,O,C):Ze(this).call(x.transform,E,O,C)}}function S(C,...A){if(e.apply(this,arguments)){var T=C.touches,O=T.length,_=N(this,A,C.changedTouches.length===O).event(C),L,E,R,D;for(Jl(C),E=0;E<O;++E)R=T[E],D=mt(R,this),D=[D,this.__zoom.invert(D),R.identifier],_.touch0?!_.touch1&&_.touch0[2]!==D[2]&&(_.touch1=D,_.taps=0):(_.touch0=D,L=!0,_.taps=1+!!d);d&&(d=clearTimeout(d)),L&&(_.taps<2&&(f=D[0],d=setTimeout(function(){d=null},m)),no(this),_.start())}}function $(C,...A){if(this.__zooming){var T=N(this,A).event(C),O=C.changedTouches,_=O.length,L,E,R,D;for(ns(C),L=0;L<_;++L)E=O[L],R=mt(E,this),T.touch0&&T.touch0[2]===E.identifier?T.touch0[0]=R:T.touch1&&T.touch1[2]===E.identifier&&(T.touch1[0]=R);if(E=T.that.__zoom,T.touch1){var W=T.touch0[0],B=T.touch0[1],G=T.touch1[0],Y=T.touch1[1],q=(q=G[0]-W[0])*q+(q=G[1]-W[1])*q,H=(H=Y[0]-B[0])*H+(H=Y[1]-B[1])*H;E=y(E,Math.sqrt(q/H)),R=[(W[0]+G[0])/2,(W[1]+G[1])/2],D=[(B[0]+Y[0])/2,(B[1]+Y[1])/2]}else if(T.touch0)R=T.touch0[0],D=T.touch0[1];else return;T.zoom("touch",n(g(E,R,D),T.extent,o))}}function F(C,...A){if(this.__zooming){var T=N(this,A).event(C),O=C.changedTouches,_=O.length,L,E;for(Jl(C),h&&clearTimeout(h),h=setTimeout(function(){h=null},m),L=0;L<_;++L)E=O[L],T.touch0&&T.touch0[2]===E.identifier?delete T.touch0:T.touch1&&T.touch1[2]===E.identifier&&delete T.touch1;if(T.touch1&&!T.touch0&&(T.touch0=T.touch1,delete T.touch1),T.touch0)T.touch0[1]=this.__zoom.invert(T.touch0[0]);else if(T.end(),T.taps===2&&(E=mt(E,this),Math.hypot(f[0]-E[0],f[1]-E[1])<b)){var R=Ze(this).on("dblclick.zoom");R&&R.apply(this,arguments)}}}return x.wheelDelta=function(C){return arguments.length?(r=typeof C=="function"?C:$i(+C),x):r},x.filter=function(C){return arguments.length?(e=typeof C=="function"?C:$i(!!C),x):e},x.touchable=function(C){return arguments.length?(s=typeof C=="function"?C:$i(!!C),x):s},x.extent=function(C){return arguments.length?(t=typeof C=="function"?C:$i([[+C[0][0],+C[0][1]],[+C[1][0],+C[1][1]]]),x):t},x.scaleExtent=function(C){return arguments.length?(i[0]=+C[0],i[1]=+C[1],x):[i[0],i[1]]},x.translateExtent=function(C){return arguments.length?(o[0][0]=+C[0][0],o[1][0]=+C[1][0],o[0][1]=+C[0][1],o[1][1]=+C[1][1],x):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},x.constrain=function(C){return arguments.length?(n=C,x):n},x.duration=function(C){return arguments.length?(l=+C,x):l},x.interpolate=function(C){return arguments.length?(u=C,x):u},x.on=function(){var C=c.on.apply(c,arguments);return C===c?x:C},x.clickDistance=function(C){return arguments.length?(v=(C=+C)*C,x):Math.sqrt(v)},x.tapDistance=function(C){return arguments.length?(b=+C,x):b},x}const Pt={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:r}", edge id: ${t}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},Hs=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],R1=["Enter"," ","Escape"],O1={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var Tr;(function(e){e.Strict="strict",e.Loose="loose"})(Tr||(Tr={}));var Dn;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Dn||(Dn={}));var Bs;(function(e){e.Partial="partial",e.Full="full"})(Bs||(Bs={}));const z1={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var on;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(on||(on={}));var Ws;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Ws||(Ws={}));var X;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(X||(X={}));const If={[X.Left]:X.Right,[X.Right]:X.Left,[X.Top]:X.Bottom,[X.Bottom]:X.Top};function D1(e){return e===null?null:e?"valid":"invalid"}const F1=e=>"id"in e&&"source"in e&&"target"in e,Fv=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),Pc=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),ni=(e,t=[0,0])=>{const{width:n,height:r}=Qt(e),s=e.origin??t,i=n*s[0],o=r*s[1];return{x:e.position.x-i,y:e.position.y-o}},Vv=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((r,s)=>{const i=typeof s=="string";let o=!t.nodeLookup&&!i?s:void 0;t.nodeLookup&&(o=i?t.nodeLookup.get(s):Pc(s)?s:t.nodeLookup.get(s.id));const l=o?Ro(o,t.nodeOrigin):{x:0,y:0,x2:0,y2:0};return dl(r,l)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return fl(n)},ri=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(s=>{(t.filter===void 0||t.filter(s))&&(n=dl(n,Ro(s)),r=!0)}),r?fl(n):{x:0,y:0,width:0,height:0}},Tc=(e,t,[n,r,s]=[0,0,1],i=!1,o=!1)=>{const l={...ii(t,[n,r,s]),width:t.width/s,height:t.height/s},u=[];for(const c of e.values()){const{measured:d,selectable:f=!0,hidden:h=!1}=c;if(o&&!f||h)continue;const m=d.width??c.width??c.initialWidth??null,p=d.height??c.height??c.initialHeight??null,v=Us(l,Ar(c)),b=(m??0)*(p??0),x=i&&v>0;(!c.internals.handleBounds||x||v>=b||c.dragging)&&u.push(c)}return u},Hv=(e,t)=>{const n=new Set;return e.forEach(r=>{n.add(r.id)}),t.filter(r=>n.has(r.source)||n.has(r.target))};function Bv(e,t){const n=new Map,r=t!=null&&t.nodes?new Set(t.nodes.map(s=>s.id)):null;return e.forEach(s=>{s.measured.width&&s.measured.height&&((t==null?void 0:t.includeHiddenNodes)||!s.hidden)&&(!r||r.has(s.id))&&n.set(s.id,s)}),n}async function Wv({nodes:e,width:t,height:n,panZoom:r,minZoom:s,maxZoom:i},o){if(e.size===0)return Promise.resolve(!0);const l=Bv(e,o),u=ri(l),c=$c(u,t,n,(o==null?void 0:o.minZoom)??s,(o==null?void 0:o.maxZoom)??i,(o==null?void 0:o.padding)??.1);return await r.setViewport(c,{duration:o==null?void 0:o.duration,ease:o==null?void 0:o.ease,interpolate:o==null?void 0:o.interpolate}),Promise.resolve(!0)}function V1({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:s,onError:i}){const o=n.get(e),l=o.parentId?n.get(o.parentId):void 0,{x:u,y:c}=l?l.internals.positionAbsolute:{x:0,y:0},d=o.origin??r;let f=o.extent||s;if(o.extent==="parent"&&!o.expandParent)if(!l)i==null||i("005",Pt.error005());else{const m=l.measured.width,p=l.measured.height;m&&p&&(f=[[u,c],[u+m,c+p]])}else l&&Rr(o.extent)&&(f=[[o.extent[0][0]+u,o.extent[0][1]+c],[o.extent[1][0]+u,o.extent[1][1]+c]]);const h=Rr(f)?Yn(t,f,o.measured):t;return(o.measured.width===void 0||o.measured.height===void 0)&&(i==null||i("015",Pt.error015())),{position:{x:h.x-u+(o.measured.width??0)*d[0],y:h.y-c+(o.measured.height??0)*d[1]},positionAbsolute:h}}async function Uv({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:s}){const i=new Set(e.map(h=>h.id)),o=[];for(const h of n){if(h.deletable===!1)continue;const m=i.has(h.id),p=!m&&h.parentId&&o.find(v=>v.id===h.parentId);(m||p)&&o.push(h)}const l=new Set(t.map(h=>h.id)),u=r.filter(h=>h.deletable!==!1),d=Hv(o,u);for(const h of u)l.has(h.id)&&!d.find(p=>p.id===h.id)&&d.push(h);if(!s)return{edges:d,nodes:o};const f=await s({nodes:o,edges:d});return typeof f=="boolean"?f?{edges:d,nodes:o}:{edges:[],nodes:[]}:f}const $r=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),Yn=(e={x:0,y:0},t,n)=>({x:$r(e.x,t[0][0],t[1][0]-((n==null?void 0:n.width)??0)),y:$r(e.y,t[0][1],t[1][1]-((n==null?void 0:n.height)??0))});function H1(e,t,n){const{width:r,height:s}=Qt(n),{x:i,y:o}=n.internals.positionAbsolute;return Yn(e,[[i,o],[i+r,o+s]],t)}const Pf=(e,t,n)=>e<t?$r(Math.abs(e-t),1,t)/t:e>n?-$r(Math.abs(e-n),1,t)/t:0,B1=(e,t,n=15,r=40)=>{const s=Pf(e.x,r,t.width-r)*n,i=Pf(e.y,r,t.height-r)*n;return[s,i]},dl=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),gu=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),fl=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),Ar=(e,t=[0,0])=>{var s,i;const{x:n,y:r}=Pc(e)?e.internals.positionAbsolute:ni(e,t);return{x:n,y:r,width:((s=e.measured)==null?void 0:s.width)??e.width??e.initialWidth??0,height:((i=e.measured)==null?void 0:i.height)??e.height??e.initialHeight??0}},Ro=(e,t=[0,0])=>{var s,i;const{x:n,y:r}=Pc(e)?e.internals.positionAbsolute:ni(e,t);return{x:n,y:r,x2:n+(((s=e.measured)==null?void 0:s.width)??e.width??e.initialWidth??0),y2:r+(((i=e.measured)==null?void 0:i.height)??e.height??e.initialHeight??0)}},W1=(e,t)=>fl(dl(gu(e),gu(t))),Us=(e,t)=>{const n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)},Tf=e=>yt(e.width)&&yt(e.height)&&yt(e.x)&&yt(e.y),yt=e=>!isNaN(e)&&isFinite(e),Gv=(e,t)=>{},si=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),ii=({x:e,y:t},[n,r,s],i=!1,o=[1,1])=>{const l={x:(e-n)/s,y:(t-r)/s};return i?si(l,o):l},Oo=({x:e,y:t},[n,r,s])=>({x:e*s+n,y:t*s+r});function tr(e,t){if(typeof e=="number")return Math.floor((t-t/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function Yv(e,t,n){if(typeof e=="string"||typeof e=="number"){const r=tr(e,n),s=tr(e,t);return{top:r,right:s,bottom:r,left:s,x:s*2,y:r*2}}if(typeof e=="object"){const r=tr(e.top??e.y??0,n),s=tr(e.bottom??e.y??0,n),i=tr(e.left??e.x??0,t),o=tr(e.right??e.x??0,t);return{top:r,right:o,bottom:s,left:i,x:i+o,y:r+s}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function Xv(e,t,n,r,s,i){const{x:o,y:l}=Oo(e,[t,n,r]),{x:u,y:c}=Oo({x:e.x+e.width,y:e.y+e.height},[t,n,r]),d=s-u,f=i-c;return{left:Math.floor(o),top:Math.floor(l),right:Math.floor(d),bottom:Math.floor(f)}}const $c=(e,t,n,r,s,i)=>{const o=Yv(i,t,n),l=(t-o.x)/e.width,u=(n-o.y)/e.height,c=Math.min(l,u),d=$r(c,r,s),f=e.x+e.width/2,h=e.y+e.height/2,m=t/2-f*d,p=n/2-h*d,v=Xv(e,m,p,d,t,n),b={left:Math.min(v.left-o.left,0),top:Math.min(v.top-o.top,0),right:Math.min(v.right-o.right,0),bottom:Math.min(v.bottom-o.bottom,0)};return{x:m-b.left+b.right,y:p-b.top+b.bottom,zoom:d}},Gs=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function Rr(e){return e!=null&&e!=="parent"}function Qt(e){var t,n;return{width:((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth??0,height:((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight??0}}function U1(e){var t,n;return(((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth)!==void 0&&(((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight)!==void 0}function G1(e,t={width:0,height:0},n,r,s){const i={...e},o=r.get(n);if(o){const l=o.origin||s;i.x+=o.internals.positionAbsolute.x-(t.width??0)*l[0],i.y+=o.internals.positionAbsolute.y-(t.height??0)*l[1]}return i}function $f(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}function qv(){let e,t;return{promise:new Promise((r,s)=>{e=r,t=s}),resolve:e,reject:t}}function Qv(e){return{...O1,...e||{}}}function ws(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:s}){const{x:i,y:o}=vt(e),l=ii({x:i-((s==null?void 0:s.left)??0),y:o-((s==null?void 0:s.top)??0)},r),{x:u,y:c}=n?si(l,t):l;return{xSnapped:u,ySnapped:c,...l}}const Ac=e=>({width:e.offsetWidth,height:e.offsetHeight}),Y1=e=>{var t;return((t=e==null?void 0:e.getRootNode)==null?void 0:t.call(e))||(window==null?void 0:window.document)},Kv=["INPUT","SELECT","TEXTAREA"];function X1(e){var r,s;const t=((s=(r=e.composedPath)==null?void 0:r.call(e))==null?void 0:s[0])||e.target;return(t==null?void 0:t.nodeType)!==1?!1:Kv.includes(t.nodeName)||t.hasAttribute("contenteditable")||!!t.closest(".nokey")}const q1=e=>"clientX"in e,vt=(e,t)=>{var i,o;const n=q1(e),r=n?e.clientX:(i=e.touches)==null?void 0:i[0].clientX,s=n?e.clientY:(o=e.touches)==null?void 0:o[0].clientY;return{x:r-((t==null?void 0:t.left)??0),y:s-((t==null?void 0:t.top)??0)}},Af=(e,t,n,r,s)=>{const i=t.querySelectorAll(`.${e}`);return!i||!i.length?null:Array.from(i).map(o=>{const l=o.getBoundingClientRect();return{id:o.getAttribute("data-handleid"),type:e,nodeId:s,position:o.getAttribute("data-handlepos"),x:(l.left-n.left)/r,y:(l.top-n.top)/r,...Ac(o)}})};function Q1({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:s,sourceControlY:i,targetControlX:o,targetControlY:l}){const u=e*.125+s*.375+o*.375+n*.125,c=t*.125+i*.375+l*.375+r*.125,d=Math.abs(u-e),f=Math.abs(c-t);return[u,c,d,f]}function Ai(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function Rf({pos:e,x1:t,y1:n,x2:r,y2:s,c:i}){switch(e){case X.Left:return[t-Ai(t-r,i),n];case X.Right:return[t+Ai(r-t,i),n];case X.Top:return[t,n-Ai(n-s,i)];case X.Bottom:return[t,n+Ai(s-n,i)]}}function Rc({sourceX:e,sourceY:t,sourcePosition:n=X.Bottom,targetX:r,targetY:s,targetPosition:i=X.Top,curvature:o=.25}){const[l,u]=Rf({pos:n,x1:e,y1:t,x2:r,y2:s,c:o}),[c,d]=Rf({pos:i,x1:r,y1:s,x2:e,y2:t,c:o}),[f,h,m,p]=Q1({sourceX:e,sourceY:t,targetX:r,targetY:s,sourceControlX:l,sourceControlY:u,targetControlX:c,targetControlY:d});return[`M${e},${t} C${l},${u} ${c},${d} ${r},${s}`,f,h,m,p]}function K1({sourceX:e,sourceY:t,targetX:n,targetY:r}){const s=Math.abs(n-e)/2,i=n<e?n+s:n-s,o=Math.abs(r-t)/2,l=r<t?r+o:r-o;return[i,l,s,o]}function Zv({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:s=!1,zIndexMode:i="basic"}){if(i==="manual")return r;const o=s&&n?r+1e3:r,l=Math.max(e.parentId||s&&e.selected?e.internals.z:0,t.parentId||s&&t.selected?t.internals.z:0);return o+l}function Jv({sourceNode:e,targetNode:t,width:n,height:r,transform:s}){const i=dl(Ro(e),Ro(t));i.x===i.x2&&(i.x2+=1),i.y===i.y2&&(i.y2+=1);const o={x:-s[0]/s[2],y:-s[1]/s[2],width:n/s[2],height:r/s[2]};return Us(o,fl(i))>0}const e6=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||""}-${n}${r||""}`,t6=(e,t)=>t.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),n6=(e,t,n={})=>{if(!e.source||!e.target)return t;const r=n.getEdgeId||e6;let s;return F1(e)?s={...e}:s={...e,id:r(e)},t6(s,t)?t:(s.sourceHandle===null&&delete s.sourceHandle,s.targetHandle===null&&delete s.targetHandle,t.concat(s))};function Z1({sourceX:e,sourceY:t,targetX:n,targetY:r}){const[s,i,o,l]=K1({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,s,i,o,l]}const Of={[X.Left]:{x:-1,y:0},[X.Right]:{x:1,y:0},[X.Top]:{x:0,y:-1},[X.Bottom]:{x:0,y:1}},r6=({source:e,sourcePosition:t=X.Bottom,target:n})=>t===X.Left||t===X.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},zf=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function s6({source:e,sourcePosition:t=X.Bottom,target:n,targetPosition:r=X.Top,center:s,offset:i,stepPosition:o}){const l=Of[t],u=Of[r],c={x:e.x+l.x*i,y:e.y+l.y*i},d={x:n.x+u.x*i,y:n.y+u.y*i},f=r6({source:c,sourcePosition:t,target:d}),h=f.x!==0?"x":"y",m=f[h];let p=[],v,b;const x={x:0,y:0},y={x:0,y:0},[,,g,w]=K1({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(l[h]*u[h]===-1){h==="x"?(v=s.x??c.x+(d.x-c.x)*o,b=s.y??(c.y+d.y)/2):(v=s.x??(c.x+d.x)/2,b=s.y??c.y+(d.y-c.y)*o);const I=[{x:v,y:c.y},{x:v,y:d.y}],P=[{x:c.x,y:b},{x:d.x,y:b}];l[h]===m?p=h==="x"?I:P:p=h==="x"?P:I}else{const I=[{x:c.x,y:d.y}],P=[{x:d.x,y:c.y}];if(h==="x"?p=l.x===m?P:I:p=l.y===m?I:P,t===r){const C=Math.abs(e[h]-n[h]);if(C<=i){const A=Math.min(i-1,i-C);l[h]===m?x[h]=(c[h]>e[h]?-1:1)*A:y[h]=(d[h]>n[h]?-1:1)*A}}if(t!==r){const C=h==="x"?"y":"x",A=l[h]===u[C],T=c[C]>d[C],O=c[C]<d[C];(l[h]===1&&(!A&&T||A&&O)||l[h]!==1&&(!A&&O||A&&T))&&(p=h==="x"?I:P)}const z={x:c.x+x.x,y:c.y+x.y},S={x:d.x+y.x,y:d.y+y.y},$=Math.max(Math.abs(z.x-p[0].x),Math.abs(S.x-p[0].x)),F=Math.max(Math.abs(z.y-p[0].y),Math.abs(S.y-p[0].y));$>=F?(v=(z.x+S.x)/2,b=p[0].y):(v=p[0].x,b=(z.y+S.y)/2)}const k={x:c.x+x.x,y:c.y+x.y},N={x:d.x+y.x,y:d.y+y.y};return[[e,...k.x!==p[0].x||k.y!==p[0].y?[k]:[],...p,...N.x!==p[p.length-1].x||N.y!==p[p.length-1].y?[N]:[],n],v,b,g,w]}function i6(e,t,n,r){const s=Math.min(zf(e,t)/2,zf(t,n)/2,r),{x:i,y:o}=t;if(e.x===i&&i===n.x||e.y===o&&o===n.y)return`L${i} ${o}`;if(e.y===o){const c=e.x<n.x?-1:1,d=e.y<n.y?1:-1;return`L ${i+s*c},${o}Q ${i},${o} ${i},${o+s*d}`}const l=e.x<n.x?1:-1,u=e.y<n.y?-1:1;return`L ${i},${o+s*u}Q ${i},${o} ${i+s*l},${o}`}function xu({sourceX:e,sourceY:t,sourcePosition:n=X.Bottom,targetX:r,targetY:s,targetPosition:i=X.Top,borderRadius:o=5,centerX:l,centerY:u,offset:c=20,stepPosition:d=.5}){const[f,h,m,p,v]=s6({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:s},targetPosition:i,center:{x:l,y:u},offset:c,stepPosition:d});let b=`M${f[0].x} ${f[0].y}`;for(let x=1;x<f.length-1;x++)b+=i6(f[x-1],f[x],f[x+1],o);return b+=`L${f[f.length-1].x} ${f[f.length-1].y}`,[b,h,m,p,v]}function Df(e){var t;return e&&!!(e.internals.handleBounds||(t=e.handles)!=null&&t.length)&&!!(e.measured.width||e.width||e.initialWidth)}function o6(e){var f;const{sourceNode:t,targetNode:n}=e;if(!Df(t)||!Df(n))return null;const r=t.internals.handleBounds||Ff(t.handles),s=n.internals.handleBounds||Ff(n.handles),i=Vf((r==null?void 0:r.source)??[],e.sourceHandle),o=Vf(e.connectionMode===Tr.Strict?(s==null?void 0:s.target)??[]:((s==null?void 0:s.target)??[]).concat((s==null?void 0:s.source)??[]),e.targetHandle);if(!i||!o)return(f=e.onError)==null||f.call(e,"008",Pt.error008(i?"target":"source",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;const l=(i==null?void 0:i.position)||X.Bottom,u=(o==null?void 0:o.position)||X.Top,c=Xn(t,i,l),d=Xn(n,o,u);return{sourceX:c.x,sourceY:c.y,targetX:d.x,targetY:d.y,sourcePosition:l,targetPosition:u}}function Ff(e){if(!e)return null;const t=[],n=[];for(const r of e)r.width=r.width??1,r.height=r.height??1,r.type==="source"?t.push(r):r.type==="target"&&n.push(r);return{source:t,target:n}}function Xn(e,t,n=X.Left,r=!1){const s=((t==null?void 0:t.x)??0)+e.internals.positionAbsolute.x,i=((t==null?void 0:t.y)??0)+e.internals.positionAbsolute.y,{width:o,height:l}=t??Qt(e);if(r)return{x:s+o/2,y:i+l/2};switch((t==null?void 0:t.position)??n){case X.Top:return{x:s+o/2,y:i};case X.Right:return{x:s+o,y:i+l/2};case X.Bottom:return{x:s+o/2,y:i+l};case X.Left:return{x:s,y:i+l/2}}}function Vf(e,t){return e&&(t?e.find(n=>n.id===t):e[0])||null}function yu(e,t){return e?typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`:""}function l6(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:s}){const i=new Set;return e.reduce((o,l)=>([l.markerStart||r,l.markerEnd||s].forEach(u=>{if(u&&typeof u=="object"){const c=yu(u,t);i.has(c)||(o.push({id:c,color:u.color||n,...u}),i.add(c))}}),o),[]).sort((o,l)=>o.id.localeCompare(l.id))}const J1=1e3,a6=10,Oc={nodeOrigin:[0,0],nodeExtent:Hs,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},u6={...Oc,checkEquality:!0};function zc(e,t){const n={...e};for(const r in t)t[r]!==void 0&&(n[r]=t[r]);return n}function c6(e,t,n){const r=zc(Oc,n);for(const s of e.values())if(s.parentId)Fc(s,e,t,r);else{const i=ni(s,r.nodeOrigin),o=Rr(s.extent)?s.extent:r.nodeExtent,l=Yn(i,o,Qt(s));s.internals.positionAbsolute=l}}function d6(e,t){if(!e.handles)return e.measured?t==null?void 0:t.internals.handleBounds:void 0;const n=[],r=[];for(const s of e.handles){const i={id:s.id,width:s.width??1,height:s.height??1,nodeId:e.id,x:s.x,y:s.y,position:s.position,type:s.type};s.type==="source"?n.push(i):s.type==="target"&&r.push(i)}return{source:n,target:r}}function Dc(e){return e==="manual"}function vu(e,t,n,r={}){var d,f;const s=zc(u6,r),i={i:0},o=new Map(t),l=s!=null&&s.elevateNodesOnSelect&&!Dc(s.zIndexMode)?J1:0;let u=e.length>0,c=!1;t.clear(),n.clear();for(const h of e){let m=o.get(h.id);if(s.checkEquality&&h===(m==null?void 0:m.internals.userNode))t.set(h.id,m);else{const p=ni(h,s.nodeOrigin),v=Rr(h.extent)?h.extent:s.nodeExtent,b=Yn(p,v,Qt(h));m={...s.defaults,...h,measured:{width:(d=h.measured)==null?void 0:d.width,height:(f=h.measured)==null?void 0:f.height},internals:{positionAbsolute:b,handleBounds:d6(h,m),z:em(h,l,s.zIndexMode),userNode:h}},t.set(h.id,m)}(m.measured===void 0||m.measured.width===void 0||m.measured.height===void 0)&&!m.hidden&&(u=!1),h.parentId&&Fc(m,t,n,r,i),c||(c=h.selected??!1)}return{nodesInitialized:u,hasSelectedNodes:c}}function f6(e,t){if(!e.parentId)return;const n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function Fc(e,t,n,r,s){const{elevateNodesOnSelect:i,nodeOrigin:o,nodeExtent:l,zIndexMode:u}=zc(Oc,r),c=e.parentId,d=t.get(c);if(!d){console.warn(`Parent node ${c} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}f6(e,n),s&&!d.parentId&&d.internals.rootParentIndex===void 0&&u==="auto"&&(d.internals.rootParentIndex=++s.i,d.internals.z=d.internals.z+s.i*a6),s&&d.internals.rootParentIndex!==void 0&&(s.i=d.internals.rootParentIndex);const f=i&&!Dc(u)?J1:0,{x:h,y:m,z:p}=h6(e,d,o,l,f,u),{positionAbsolute:v}=e.internals,b=h!==v.x||m!==v.y;(b||p!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:b?{x:h,y:m}:v,z:p}})}function em(e,t,n){const r=yt(e.zIndex)?e.zIndex:0;return Dc(n)?r:r+(e.selected?t:0)}function h6(e,t,n,r,s,i){const{x:o,y:l}=t.internals.positionAbsolute,u=Qt(e),c=ni(e,n),d=Rr(e.extent)?Yn(c,e.extent,u):c;let f=Yn({x:o+d.x,y:l+d.y},r,u);e.extent==="parent"&&(f=H1(f,u,t));const h=em(e,s,i),m=t.internals.z??0;return{x:f.x,y:f.y,z:m>=h?m+1:h}}function Vc(e,t,n,r=[0,0]){var o;const s=[],i=new Map;for(const l of e){const u=t.get(l.parentId);if(!u)continue;const c=((o=i.get(l.parentId))==null?void 0:o.expandedRect)??Ar(u),d=W1(c,l.rect);i.set(l.parentId,{expandedRect:d,parent:u})}return i.size>0&&i.forEach(({expandedRect:l,parent:u},c)=>{var g;const d=u.internals.positionAbsolute,f=Qt(u),h=u.origin??r,m=l.x<d.x?Math.round(Math.abs(d.x-l.x)):0,p=l.y<d.y?Math.round(Math.abs(d.y-l.y)):0,v=Math.max(f.width,Math.round(l.width)),b=Math.max(f.height,Math.round(l.height)),x=(v-f.width)*h[0],y=(b-f.height)*h[1];(m>0||p>0||x||y)&&(s.push({id:c,type:"position",position:{x:u.position.x-m+x,y:u.position.y-p+y}}),(g=n.get(c))==null||g.forEach(w=>{e.some(k=>k.id===w.id)||s.push({id:w.id,type:"position",position:{x:w.position.x+m,y:w.position.y+p}})})),(f.width<l.width||f.height<l.height||m||p)&&s.push({id:c,type:"dimensions",setAttributes:!0,dimensions:{width:v+(m?h[0]*m-x:0),height:b+(p?h[1]*p-y:0)}})}),s}function p6(e,t,n,r,s,i,o){const l=r==null?void 0:r.querySelector(".xyflow__viewport");let u=!1;if(!l)return{changes:[],updatedInternals:u};const c=[],d=window.getComputedStyle(l),{m22:f}=new window.DOMMatrixReadOnly(d.transform),h=[];for(const m of e.values()){const p=t.get(m.id);if(!p)continue;if(p.hidden){t.set(p.id,{...p,internals:{...p.internals,handleBounds:void 0}}),u=!0;continue}const v=Ac(m.nodeElement),b=p.measured.width!==v.width||p.measured.height!==v.height;if(!!(v.width&&v.height&&(b||!p.internals.handleBounds||m.force))){const y=m.nodeElement.getBoundingClientRect(),g=Rr(p.extent)?p.extent:i;let{positionAbsolute:w}=p.internals;p.parentId&&p.extent==="parent"?w=H1(w,v,t.get(p.parentId)):g&&(w=Yn(w,g,v));const k={...p,measured:v,internals:{...p.internals,positionAbsolute:w,handleBounds:{source:Af("source",m.nodeElement,y,f,p.id),target:Af("target",m.nodeElement,y,f,p.id)}}};t.set(p.id,k),p.parentId&&Fc(k,t,n,{nodeOrigin:s,zIndexMode:o}),u=!0,b&&(c.push({id:p.id,type:"dimensions",dimensions:v}),p.expandParent&&p.parentId&&h.push({id:p.id,parentId:p.parentId,rect:Ar(k,s)}))}}if(h.length>0){const m=Vc(h,t,n,s);c.push(...m)}return{changes:c,updatedInternals:u}}async function m6({delta:e,panZoom:t,transform:n,translateExtent:r,width:s,height:i}){if(!t||!e.x&&!e.y)return Promise.resolve(!1);const o=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[s,i]],r),l=!!o&&(o.x!==n[0]||o.y!==n[1]||o.k!==n[2]);return Promise.resolve(l)}function Hf(e,t,n,r,s,i){let o=s;const l=r.get(o)||new Map;r.set(o,l.set(n,t)),o=`${s}-${e}`;const u=r.get(o)||new Map;if(r.set(o,u.set(n,t)),i){o=`${s}-${e}-${i}`;const c=r.get(o)||new Map;r.set(o,c.set(n,t))}}function tm(e,t,n){e.clear(),t.clear();for(const r of n){const{source:s,target:i,sourceHandle:o=null,targetHandle:l=null}=r,u={edgeId:r.id,source:s,target:i,sourceHandle:o,targetHandle:l},c=`${s}-${o}--${i}-${l}`,d=`${i}-${l}--${s}-${o}`;Hf("source",u,d,e,s,o),Hf("target",u,c,e,i,l),t.set(r.id,r)}}function nm(e,t){if(!e.parentId)return!1;const n=t.get(e.parentId);return n?n.selected?!0:nm(n,t):!1}function Bf(e,t,n){var s;let r=e;do{if((s=r==null?void 0:r.matches)!=null&&s.call(r,t))return!0;if(r===n)return!1;r=r==null?void 0:r.parentElement}while(r);return!1}function g6(e,t,n,r){const s=new Map;for(const[i,o]of e)if((o.selected||o.id===r)&&(!o.parentId||!nm(o,e))&&(o.draggable||t&&typeof o.draggable>"u")){const l=e.get(i);l&&s.set(i,{id:i,position:l.position||{x:0,y:0},distance:{x:n.x-l.internals.positionAbsolute.x,y:n.y-l.internals.positionAbsolute.y},extent:l.extent,parentId:l.parentId,origin:l.origin,expandParent:l.expandParent,internals:{positionAbsolute:l.internals.positionAbsolute||{x:0,y:0}},measured:{width:l.measured.width??0,height:l.measured.height??0}})}return s}function ea({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){var o,l,u;const s=[];for(const[c,d]of t){const f=(o=n.get(c))==null?void 0:o.internals.userNode;f&&s.push({...f,position:d.position,dragging:r})}if(!e)return[s[0],s];const i=(l=n.get(e))==null?void 0:l.internals.userNode;return[i?{...i,position:((u=t.get(e))==null?void 0:u.position)||i.position,dragging:r}:s[0],s]}function x6({dragItems:e,snapGrid:t,x:n,y:r}){const s=e.values().next().value;if(!s)return null;const i={x:n-s.distance.x,y:r-s.distance.y},o=si(i,t);return{x:o.x-i.x,y:o.y-i.y}}function y6({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:s}){let i={x:null,y:null},o=0,l=new Map,u=!1,c={x:0,y:0},d=null,f=!1,h=null,m=!1,p=!1,v=null;function b({noDragClassName:y,handleSelector:g,domNode:w,isSelectable:k,nodeId:N,nodeClickDistance:M=0}){h=Ze(w);function I({x:$,y:F}){const{nodeLookup:C,nodeExtent:A,snapGrid:T,snapToGrid:O,nodeOrigin:_,onNodeDrag:L,onSelectionDrag:E,onError:R,updateNodePositions:D}=t();i={x:$,y:F};let W=!1;const B=l.size>1,G=B&&A?gu(ri(l)):null,Y=B&&O?x6({dragItems:l,snapGrid:T,x:$,y:F}):null;for(const[q,H]of l){if(!C.has(q))continue;let Q={x:$-H.distance.x,y:F-H.distance.y};O&&(Q=Y?{x:Math.round(Q.x+Y.x),y:Math.round(Q.y+Y.y)}:si(Q,T));let te=null;if(B&&A&&!H.extent&&G){const{positionAbsolute:K}=H.internals,oe=K.x-G.x+A[0][0],ue=K.x+H.measured.width-G.x2+A[1][0],ie=K.y-G.y+A[0][1],$e=K.y+H.measured.height-G.y2+A[1][1];te=[[oe,ie],[ue,$e]]}const{position:J,positionAbsolute:Z}=V1({nodeId:q,nextPosition:Q,nodeLookup:C,nodeExtent:te||A,nodeOrigin:_,onError:R});W=W||H.position.x!==J.x||H.position.y!==J.y,H.position=J,H.internals.positionAbsolute=Z}if(p=p||W,!!W&&(D(l,!0),v&&(r||L||!N&&E))){const[q,H]=ea({nodeId:N,dragItems:l,nodeLookup:C});r==null||r(v,l,q,H),L==null||L(v,q,H),N||E==null||E(v,H)}}async function P(){if(!d)return;const{transform:$,panBy:F,autoPanSpeed:C,autoPanOnNodeDrag:A}=t();if(!A){u=!1,cancelAnimationFrame(o);return}const[T,O]=B1(c,d,C);(T!==0||O!==0)&&(i.x=(i.x??0)-T/$[2],i.y=(i.y??0)-O/$[2],await F({x:T,y:O})&&I(i)),o=requestAnimationFrame(P)}function z($){var B;const{nodeLookup:F,multiSelectionActive:C,nodesDraggable:A,transform:T,snapGrid:O,snapToGrid:_,selectNodesOnDrag:L,onNodeDragStart:E,onSelectionDragStart:R,unselectNodesAndEdges:D}=t();f=!0,(!L||!k)&&!C&&N&&((B=F.get(N))!=null&&B.selected||D()),k&&L&&N&&(e==null||e(N));const W=ws($.sourceEvent,{transform:T,snapGrid:O,snapToGrid:_,containerBounds:d});if(i=W,l=g6(F,A,W,N),l.size>0&&(n||E||!N&&R)){const[G,Y]=ea({nodeId:N,dragItems:l,nodeLookup:F});n==null||n($.sourceEvent,l,G,Y),E==null||E($.sourceEvent,G,Y),N||R==null||R($.sourceEvent,Y)}}const S=w1().clickDistance(M).on("start",$=>{const{domNode:F,nodeDragThreshold:C,transform:A,snapGrid:T,snapToGrid:O}=t();d=(F==null?void 0:F.getBoundingClientRect())||null,m=!1,p=!1,v=$.sourceEvent,C===0&&z($),i=ws($.sourceEvent,{transform:A,snapGrid:T,snapToGrid:O,containerBounds:d}),c=vt($.sourceEvent,d)}).on("drag",$=>{const{autoPanOnNodeDrag:F,transform:C,snapGrid:A,snapToGrid:T,nodeDragThreshold:O,nodeLookup:_}=t(),L=ws($.sourceEvent,{transform:C,snapGrid:A,snapToGrid:T,containerBounds:d});if(v=$.sourceEvent,($.sourceEvent.type==="touchmove"&&$.sourceEvent.touches.length>1||N&&!_.has(N))&&(m=!0),!m){if(!u&&F&&f&&(u=!0,P()),!f){const E=vt($.sourceEvent,d),R=E.x-c.x,D=E.y-c.y;Math.sqrt(R*R+D*D)>O&&z($)}(i.x!==L.xSnapped||i.y!==L.ySnapped)&&l&&f&&(c=vt($.sourceEvent,d),I(L))}}).on("end",$=>{if(!(!f||m)&&(u=!1,f=!1,cancelAnimationFrame(o),l.size>0)){const{nodeLookup:F,updateNodePositions:C,onNodeDragStop:A,onSelectionDragStop:T}=t();if(p&&(C(l,!1),p=!1),s||A||!N&&T){const[O,_]=ea({nodeId:N,dragItems:l,nodeLookup:F,dragging:!1});s==null||s($.sourceEvent,l,O,_),A==null||A($.sourceEvent,O,_),N||T==null||T($.sourceEvent,_)}}}).filter($=>{const F=$.target;return!$.button&&(!y||!Bf(F,`.${y}`,w))&&(!g||Bf(F,g,w))});h.call(S)}function x(){h==null||h.on(".drag",null)}return{update:b,destroy:x}}function v6(e,t,n){const r=[],s={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const i of t.values())Us(s,Ar(i))>0&&r.push(i);return r}const w6=250;function b6(e,t,n,r){var l,u;let s=[],i=1/0;const o=v6(e,n,t+w6);for(const c of o){const d=[...((l=c.internals.handleBounds)==null?void 0:l.source)??[],...((u=c.internals.handleBounds)==null?void 0:u.target)??[]];for(const f of d){if(r.nodeId===f.nodeId&&r.type===f.type&&r.id===f.id)continue;const{x:h,y:m}=Xn(c,f,f.position,!0),p=Math.sqrt(Math.pow(h-e.x,2)+Math.pow(m-e.y,2));p>t||(p<i?(s=[{...f,x:h,y:m}],i=p):p===i&&s.push({...f,x:h,y:m}))}}if(!s.length)return null;if(s.length>1){const c=r.type==="source"?"target":"source";return s.find(d=>d.type===c)??s[0]}return s[0]}function rm(e,t,n,r,s,i=!1){var c,d,f;const o=r.get(e);if(!o)return null;const l=s==="strict"?(c=o.internals.handleBounds)==null?void 0:c[t]:[...((d=o.internals.handleBounds)==null?void 0:d.source)??[],...((f=o.internals.handleBounds)==null?void 0:f.target)??[]],u=(n?l==null?void 0:l.find(h=>h.id===n):l==null?void 0:l[0])??null;return u&&i?{...u,...Xn(o,u,u.position,!0)}:u}function sm(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function k6(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}const im=()=>!0;function N6(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:s,edgeUpdaterType:i,isTarget:o,domNode:l,nodeLookup:u,lib:c,autoPanOnConnect:d,flowId:f,panBy:h,cancelConnection:m,onConnectStart:p,onConnect:v,onConnectEnd:b,isValidConnection:x=im,onReconnectEnd:y,updateConnection:g,getTransform:w,getFromHandle:k,autoPanSpeed:N,dragThreshold:M=1,handleDomNode:I}){const P=Y1(e.target);let z=0,S;const{x:$,y:F}=vt(e),C=sm(i,I),A=l==null?void 0:l.getBoundingClientRect();let T=!1;if(!A||!C)return;const O=rm(s,C,r,u,t);if(!O)return;let _=vt(e,A),L=!1,E=null,R=!1,D=null;function W(){if(!d||!A)return;const[J,Z]=B1(_,A,N);h({x:J,y:Z}),z=requestAnimationFrame(W)}const B={...O,nodeId:s,type:C,position:O.position},G=u.get(s);let q={inProgress:!0,isValid:null,from:Xn(G,B,X.Left,!0),fromHandle:B,fromPosition:B.position,fromNode:G,to:_,toHandle:null,toPosition:If[B.position],toNode:null,pointer:_};function H(){T=!0,g(q),p==null||p(e,{nodeId:s,handleId:r,handleType:C})}M===0&&H();function Q(J){if(!T){const{x:$e,y:Kt}=vt(J),$t=$e-$,jn=Kt-F;if(!($t*$t+jn*jn>M*M))return;H()}if(!k()||!B){te(J);return}const Z=w();_=vt(J,A),S=b6(ii(_,Z,!1,[1,1]),n,u,B),L||(W(),L=!0);const K=om(J,{handle:S,connectionMode:t,fromNodeId:s,fromHandleId:r,fromType:o?"target":"source",isValidConnection:x,doc:P,lib:c,flowId:f,nodeLookup:u});D=K.handleDomNode,E=K.connection,R=k6(!!S,K.isValid);const oe=u.get(s),ue=oe?Xn(oe,B,X.Left,!0):q.from,ie={...q,from:ue,isValid:R,to:K.toHandle&&R?Oo({x:K.toHandle.x,y:K.toHandle.y},Z):_,toHandle:K.toHandle,toPosition:R&&K.toHandle?K.toHandle.position:If[B.position],toNode:K.toHandle?u.get(K.toHandle.nodeId):null,pointer:_};g(ie),q=ie}function te(J){if(!("touches"in J&&J.touches.length>0)){if(T){(S||D)&&E&&R&&(v==null||v(E));const{inProgress:Z,...K}=q,oe={...K,toPosition:q.toHandle?q.toPosition:null};b==null||b(J,oe),i&&(y==null||y(J,oe))}m(),cancelAnimationFrame(z),L=!1,R=!1,E=null,D=null,P.removeEventListener("mousemove",Q),P.removeEventListener("mouseup",te),P.removeEventListener("touchmove",Q),P.removeEventListener("touchend",te)}}P.addEventListener("mousemove",Q),P.addEventListener("mouseup",te),P.addEventListener("touchmove",Q),P.addEventListener("touchend",te)}function om(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:s,fromType:i,doc:o,lib:l,flowId:u,isValidConnection:c=im,nodeLookup:d}){const f=i==="target",h=t?o.querySelector(`.${l}-flow__handle[data-id="${u}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:m,y:p}=vt(e),v=o.elementFromPoint(m,p),b=v!=null&&v.classList.contains(`${l}-flow__handle`)?v:h,x={handleDomNode:b,isValid:!1,connection:null,toHandle:null};if(b){const y=sm(void 0,b),g=b.getAttribute("data-nodeid"),w=b.getAttribute("data-handleid"),k=b.classList.contains("connectable"),N=b.classList.contains("connectableend");if(!g||!y)return x;const M={source:f?g:r,sourceHandle:f?w:s,target:f?r:g,targetHandle:f?s:w};x.connection=M;const P=k&&N&&(n===Tr.Strict?f&&y==="source"||!f&&y==="target":g!==r||w!==s);x.isValid=P&&c(M),x.toHandle=rm(g,y,w,d,n,!0)}return x}const wu={onPointerDown:N6,isValid:om};function C6({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){const s=Ze(e);function i({translateExtent:l,width:u,height:c,zoomStep:d=1,pannable:f=!0,zoomable:h=!0,inversePan:m=!1}){const p=g=>{if(g.sourceEvent.type!=="wheel"||!t)return;const w=n(),k=g.sourceEvent.ctrlKey&&Gs()?10:1,N=-g.sourceEvent.deltaY*(g.sourceEvent.deltaMode===1?.05:g.sourceEvent.deltaMode?1:.002)*d,M=w[2]*Math.pow(2,N*k);t.scaleTo(M)};let v=[0,0];const b=g=>{(g.sourceEvent.type==="mousedown"||g.sourceEvent.type==="touchstart")&&(v=[g.sourceEvent.clientX??g.sourceEvent.touches[0].clientX,g.sourceEvent.clientY??g.sourceEvent.touches[0].clientY])},x=g=>{const w=n();if(g.sourceEvent.type!=="mousemove"&&g.sourceEvent.type!=="touchmove"||!t)return;const k=[g.sourceEvent.clientX??g.sourceEvent.touches[0].clientX,g.sourceEvent.clientY??g.sourceEvent.touches[0].clientY],N=[k[0]-v[0],k[1]-v[1]];v=k;const M=r()*Math.max(w[2],Math.log(w[2]))*(m?-1:1),I={x:w[0]-N[0]*M,y:w[1]-N[1]*M},P=[[0,0],[u,c]];t.setViewportConstrained({x:I.x,y:I.y,zoom:w[2]},P,l)},y=A1().on("start",b).on("zoom",f?x:null).on("zoom.wheel",h?p:null);s.call(y,{})}function o(){s.on("zoom",null)}return{update:i,destroy:o,pointer:mt}}const hl=e=>({x:e.x,y:e.y,zoom:e.k}),ta=({x:e,y:t,zoom:n})=>cl.translate(e,t).scale(n),pr=(e,t)=>e.target.closest(`.${t}`),lm=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),E6=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,na=(e,t=0,n=E6,r=()=>{})=>{const s=typeof t=="number"&&t>0;return s||r(),s?e.transition().duration(t).ease(n).on("end",r):e},am=e=>{const t=e.ctrlKey&&Gs()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function j6({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:s,panOnScrollSpeed:i,zoomOnPinch:o,onPanZoomStart:l,onPanZoom:u,onPanZoomEnd:c}){return d=>{if(pr(d,t))return d.ctrlKey&&d.preventDefault(),!1;d.preventDefault(),d.stopImmediatePropagation();const f=n.property("__zoom").k||1;if(d.ctrlKey&&o){const b=mt(d),x=am(d),y=f*Math.pow(2,x);r.scaleTo(n,y,b,d);return}const h=d.deltaMode===1?20:1;let m=s===Dn.Vertical?0:d.deltaX*h,p=s===Dn.Horizontal?0:d.deltaY*h;!Gs()&&d.shiftKey&&s!==Dn.Vertical&&(m=d.deltaY*h,p=0),r.translateBy(n,-(m/f)*i,-(p/f)*i,{internal:!0});const v=hl(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(u==null||u(d,v),e.panScrollTimeout=setTimeout(()=>{c==null||c(d,v),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,l==null||l(d,v))}}function _6({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,s){const i=r.type==="wheel",o=!t&&i&&!r.ctrlKey,l=pr(r,e);if(r.ctrlKey&&i&&l&&r.preventDefault(),o||l)return null;r.preventDefault(),n.call(this,r,s)}}function S6({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{var i,o,l;if((i=r.sourceEvent)!=null&&i.internal)return;const s=hl(r.transform);e.mouseButton=((o=r.sourceEvent)==null?void 0:o.button)||0,e.isZoomingOrPanning=!0,e.prevViewport=s,((l=r.sourceEvent)==null?void 0:l.type)==="mousedown"&&t(!0),n&&(n==null||n(r.sourceEvent,s))}}function M6({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:s}){return i=>{var o,l;e.usedRightMouseButton=!!(n&&lm(t,e.mouseButton??0)),(o=i.sourceEvent)!=null&&o.sync||r([i.transform.x,i.transform.y,i.transform.k]),s&&!((l=i.sourceEvent)!=null&&l.internal)&&(s==null||s(i.sourceEvent,hl(i.transform)))}}function L6({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:s,onPaneContextMenu:i}){return o=>{var l;if(!((l=o.sourceEvent)!=null&&l.internal)&&(e.isZoomingOrPanning=!1,i&&lm(t,e.mouseButton??0)&&!e.usedRightMouseButton&&o.sourceEvent&&i(o.sourceEvent),e.usedRightMouseButton=!1,r(!1),s)){const u=hl(o.transform);e.prevViewport=u,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{s==null||s(o.sourceEvent,u)},n?150:0)}}}function I6({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:s,zoomOnDoubleClick:i,userSelectionActive:o,noWheelClassName:l,noPanClassName:u,lib:c,connectionInProgress:d}){return f=>{var b;const h=e||t,m=n&&f.ctrlKey,p=f.type==="wheel";if(f.button===1&&f.type==="mousedown"&&(pr(f,`${c}-flow__node`)||pr(f,`${c}-flow__edge`)))return!0;if(!r&&!h&&!s&&!i&&!n||o||d&&!p||pr(f,l)&&p||pr(f,u)&&(!p||s&&p&&!e)||!n&&f.ctrlKey&&p)return!1;if(!n&&f.type==="touchstart"&&((b=f.touches)==null?void 0:b.length)>1)return f.preventDefault(),!1;if(!h&&!s&&!m&&p||!r&&(f.type==="mousedown"||f.type==="touchstart")||Array.isArray(r)&&!r.includes(f.button)&&f.type==="mousedown")return!1;const v=Array.isArray(r)&&r.includes(f.button)||!f.button||f.button<=1;return(!f.ctrlKey||p)&&v}}function P6({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:s,onPanZoom:i,onPanZoomStart:o,onPanZoomEnd:l,onDraggingChange:u}){const c={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},d=e.getBoundingClientRect(),f=A1().scaleExtent([t,n]).translateExtent(r),h=Ze(e).call(f);y({x:s.x,y:s.y,zoom:$r(s.zoom,t,n)},[[0,0],[d.width,d.height]],r);const m=h.on("wheel.zoom"),p=h.on("dblclick.zoom");f.wheelDelta(am);function v(S,$){return h?new Promise(F=>{f==null||f.interpolate(($==null?void 0:$.interpolate)==="linear"?vs:Ji).transform(na(h,$==null?void 0:$.duration,$==null?void 0:$.ease,()=>F(!0)),S)}):Promise.resolve(!1)}function b({noWheelClassName:S,noPanClassName:$,onPaneContextMenu:F,userSelectionActive:C,panOnScroll:A,panOnDrag:T,panOnScrollMode:O,panOnScrollSpeed:_,preventScrolling:L,zoomOnPinch:E,zoomOnScroll:R,zoomOnDoubleClick:D,zoomActivationKeyPressed:W,lib:B,onTransformChange:G,connectionInProgress:Y,paneClickDistance:q,selectionOnDrag:H}){C&&!c.isZoomingOrPanning&&x();const Q=A&&!W&&!C;f.clickDistance(H?1/0:!yt(q)||q<0?0:q);const te=Q?j6({zoomPanValues:c,noWheelClassName:S,d3Selection:h,d3Zoom:f,panOnScrollMode:O,panOnScrollSpeed:_,zoomOnPinch:E,onPanZoomStart:o,onPanZoom:i,onPanZoomEnd:l}):_6({noWheelClassName:S,preventScrolling:L,d3ZoomHandler:m});if(h.on("wheel.zoom",te,{passive:!1}),!C){const Z=S6({zoomPanValues:c,onDraggingChange:u,onPanZoomStart:o});f.on("start",Z);const K=M6({zoomPanValues:c,panOnDrag:T,onPaneContextMenu:!!F,onPanZoom:i,onTransformChange:G});f.on("zoom",K);const oe=L6({zoomPanValues:c,panOnDrag:T,panOnScroll:A,onPaneContextMenu:F,onPanZoomEnd:l,onDraggingChange:u});f.on("end",oe)}const J=I6({zoomActivationKeyPressed:W,panOnDrag:T,zoomOnScroll:R,panOnScroll:A,zoomOnDoubleClick:D,zoomOnPinch:E,userSelectionActive:C,noPanClassName:$,noWheelClassName:S,lib:B,connectionInProgress:Y});f.filter(J),D?h.on("dblclick.zoom",p):h.on("dblclick.zoom",null)}function x(){f.on("zoom",null)}async function y(S,$,F){const C=ta(S),A=f==null?void 0:f.constrain()(C,$,F);return A&&await v(A),new Promise(T=>T(A))}async function g(S,$){const F=ta(S);return await v(F,$),new Promise(C=>C(F))}function w(S){if(h){const $=ta(S),F=h.property("__zoom");(F.k!==S.zoom||F.x!==S.x||F.y!==S.y)&&(f==null||f.transform(h,$,null,{sync:!0}))}}function k(){const S=h?$1(h.node()):{x:0,y:0,k:1};return{x:S.x,y:S.y,zoom:S.k}}function N(S,$){return h?new Promise(F=>{f==null||f.interpolate(($==null?void 0:$.interpolate)==="linear"?vs:Ji).scaleTo(na(h,$==null?void 0:$.duration,$==null?void 0:$.ease,()=>F(!0)),S)}):Promise.resolve(!1)}function M(S,$){return h?new Promise(F=>{f==null||f.interpolate(($==null?void 0:$.interpolate)==="linear"?vs:Ji).scaleBy(na(h,$==null?void 0:$.duration,$==null?void 0:$.ease,()=>F(!0)),S)}):Promise.resolve(!1)}function I(S){f==null||f.scaleExtent(S)}function P(S){f==null||f.translateExtent(S)}function z(S){const $=!yt(S)||S<0?0:S;f==null||f.clickDistance($)}return{update:b,destroy:x,setViewport:g,setViewportConstrained:y,getViewport:k,scaleTo:N,scaleBy:M,setScaleExtent:I,setTranslateExtent:P,syncViewport:w,setClickDistance:z}}var Or;(function(e){e.Line="line",e.Handle="handle"})(Or||(Or={}));function T6({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:s,affectsY:i}){const o=e-t,l=n-r,u=[o>0?1:o<0?-1:0,l>0?1:l<0?-1:0];return o&&s&&(u[0]=u[0]*-1),l&&i&&(u[1]=u[1]*-1),u}function Wf(e){const t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),r=e.includes("left"),s=e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:r,affectsY:s}}function Jt(e,t){return Math.max(0,t-e)}function en(e,t){return Math.max(0,e-t)}function Ri(e,t,n){return Math.max(0,t-e,e-n)}function Uf(e,t){return e?!t:t}function $6(e,t,n,r,s,i,o,l){let{affectsX:u,affectsY:c}=t;const{isHorizontal:d,isVertical:f}=t,h=d&&f,{xSnapped:m,ySnapped:p}=n,{minWidth:v,maxWidth:b,minHeight:x,maxHeight:y}=r,{x:g,y:w,width:k,height:N,aspectRatio:M}=e;let I=Math.floor(d?m-e.pointerX:0),P=Math.floor(f?p-e.pointerY:0);const z=k+(u?-I:I),S=N+(c?-P:P),$=-i[0]*k,F=-i[1]*N;let C=Ri(z,v,b),A=Ri(S,x,y);if(o){let _=0,L=0;u&&I<0?_=Jt(g+I+$,o[0][0]):!u&&I>0&&(_=en(g+z+$,o[1][0])),c&&P<0?L=Jt(w+P+F,o[0][1]):!c&&P>0&&(L=en(w+S+F,o[1][1])),C=Math.max(C,_),A=Math.max(A,L)}if(l){let _=0,L=0;u&&I>0?_=en(g+I,l[0][0]):!u&&I<0&&(_=Jt(g+z,l[1][0])),c&&P>0?L=en(w+P,l[0][1]):!c&&P<0&&(L=Jt(w+S,l[1][1])),C=Math.max(C,_),A=Math.max(A,L)}if(s){if(d){const _=Ri(z/M,x,y)*M;if(C=Math.max(C,_),o){let L=0;!u&&!c||u&&!c&&h?L=en(w+F+z/M,o[1][1])*M:L=Jt(w+F+(u?I:-I)/M,o[0][1])*M,C=Math.max(C,L)}if(l){let L=0;!u&&!c||u&&!c&&h?L=Jt(w+z/M,l[1][1])*M:L=en(w+(u?I:-I)/M,l[0][1])*M,C=Math.max(C,L)}}if(f){const _=Ri(S*M,v,b)/M;if(A=Math.max(A,_),o){let L=0;!u&&!c||c&&!u&&h?L=en(g+S*M+$,o[1][0])/M:L=Jt(g+(c?P:-P)*M+$,o[0][0])/M,A=Math.max(A,L)}if(l){let L=0;!u&&!c||c&&!u&&h?L=Jt(g+S*M,l[1][0])/M:L=en(g+(c?P:-P)*M,l[0][0])/M,A=Math.max(A,L)}}}P=P+(P<0?A:-A),I=I+(I<0?C:-C),s&&(h?z>S*M?P=(Uf(u,c)?-I:I)/M:I=(Uf(u,c)?-P:P)*M:d?(P=I/M,c=u):(I=P*M,u=c));const T=u?g+I:g,O=c?w+P:w;return{width:k+(u?-I:I),height:N+(c?-P:P),x:i[0]*I*(u?-1:1)+T,y:i[1]*P*(c?-1:1)+O}}const um={width:0,height:0,x:0,y:0},A6={...um,pointerX:0,pointerY:0,aspectRatio:1};function R6(e){return[[0,0],[e.measured.width,e.measured.height]]}function O6(e,t,n){const r=t.position.x+e.position.x,s=t.position.y+e.position.y,i=e.measured.width??0,o=e.measured.height??0,l=n[0]*i,u=n[1]*o;return[[r-l,s-u],[r+i-l,s+o-u]]}function z6({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:s}){const i=Ze(e);let o={controlDirection:Wf("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function l({controlPosition:c,boundaries:d,keepAspectRatio:f,resizeDirection:h,onResizeStart:m,onResize:p,onResizeEnd:v,shouldResize:b}){let x={...um},y={...A6};o={boundaries:d,resizeDirection:h,keepAspectRatio:f,controlDirection:Wf(c)};let g,w=null,k=[],N,M,I,P=!1;const z=w1().on("start",S=>{const{nodeLookup:$,transform:F,snapGrid:C,snapToGrid:A,nodeOrigin:T,paneDomNode:O}=n();if(g=$.get(t),!g)return;w=(O==null?void 0:O.getBoundingClientRect())??null;const{xSnapped:_,ySnapped:L}=ws(S.sourceEvent,{transform:F,snapGrid:C,snapToGrid:A,containerBounds:w});x={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},y={...x,pointerX:_,pointerY:L,aspectRatio:x.width/x.height},N=void 0,g.parentId&&(g.extent==="parent"||g.expandParent)&&(N=$.get(g.parentId),M=N&&g.extent==="parent"?R6(N):void 0),k=[],I=void 0;for(const[E,R]of $)if(R.parentId===t&&(k.push({id:E,position:{...R.position},extent:R.extent}),R.extent==="parent"||R.expandParent)){const D=O6(R,g,R.origin??T);I?I=[[Math.min(D[0][0],I[0][0]),Math.min(D[0][1],I[0][1])],[Math.max(D[1][0],I[1][0]),Math.max(D[1][1],I[1][1])]]:I=D}m==null||m(S,{...x})}).on("drag",S=>{const{transform:$,snapGrid:F,snapToGrid:C,nodeOrigin:A}=n(),T=ws(S.sourceEvent,{transform:$,snapGrid:F,snapToGrid:C,containerBounds:w}),O=[];if(!g)return;const{x:_,y:L,width:E,height:R}=x,D={},W=g.origin??A,{width:B,height:G,x:Y,y:q}=$6(y,o.controlDirection,T,o.boundaries,o.keepAspectRatio,W,M,I),H=B!==E,Q=G!==R,te=Y!==_&&H,J=q!==L&&Q;if(!te&&!J&&!H&&!Q)return;if((te||J||W[0]===1||W[1]===1)&&(D.x=te?Y:x.x,D.y=J?q:x.y,x.x=D.x,x.y=D.y,k.length>0)){const ue=Y-_,ie=q-L;for(const $e of k)$e.position={x:$e.position.x-ue+W[0]*(B-E),y:$e.position.y-ie+W[1]*(G-R)},O.push($e)}if((H||Q)&&(D.width=H&&(!o.resizeDirection||o.resizeDirection==="horizontal")?B:x.width,D.height=Q&&(!o.resizeDirection||o.resizeDirection==="vertical")?G:x.height,x.width=D.width,x.height=D.height),N&&g.expandParent){const ue=W[0]*(D.width??0);D.x&&D.x<ue&&(x.x=ue,y.x=y.x-(D.x-ue));const ie=W[1]*(D.height??0);D.y&&D.y<ie&&(x.y=ie,y.y=y.y-(D.y-ie))}const Z=T6({width:x.width,prevWidth:E,height:x.height,prevHeight:R,affectsX:o.controlDirection.affectsX,affectsY:o.controlDirection.affectsY}),K={...x,direction:Z};(b==null?void 0:b(S,K))!==!1&&(P=!0,p==null||p(S,K),r(D,O))}).on("end",S=>{P&&(v==null||v(S,{...x}),s==null||s({...x}),P=!1)});i.call(z)}function u(){i.on(".drag",null)}return{update:l,destroy:u}}var cm={exports:{}},dm={},fm={exports:{}},hm={};/**
|
|
48
|
+
* @license React
|
|
49
|
+
* use-sync-external-store-shim.production.js
|
|
50
|
+
*
|
|
51
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
52
|
+
*
|
|
53
|
+
* This source code is licensed under the MIT license found in the
|
|
54
|
+
* LICENSE file in the root directory of this source tree.
|
|
55
|
+
*/var zr=j;function D6(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var F6=typeof Object.is=="function"?Object.is:D6,V6=zr.useState,H6=zr.useEffect,B6=zr.useLayoutEffect,W6=zr.useDebugValue;function U6(e,t){var n=t(),r=V6({inst:{value:n,getSnapshot:t}}),s=r[0].inst,i=r[1];return B6(function(){s.value=n,s.getSnapshot=t,ra(s)&&i({inst:s})},[e,n,t]),H6(function(){return ra(s)&&i({inst:s}),e(function(){ra(s)&&i({inst:s})})},[e]),W6(n),n}function ra(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!F6(e,n)}catch{return!0}}function G6(e,t){return t()}var Y6=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?G6:U6;hm.useSyncExternalStore=zr.useSyncExternalStore!==void 0?zr.useSyncExternalStore:Y6;fm.exports=hm;var X6=fm.exports;/**
|
|
56
|
+
* @license React
|
|
57
|
+
* use-sync-external-store-shim/with-selector.production.js
|
|
58
|
+
*
|
|
59
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
60
|
+
*
|
|
61
|
+
* This source code is licensed under the MIT license found in the
|
|
62
|
+
* LICENSE file in the root directory of this source tree.
|
|
63
|
+
*/var pl=j,q6=X6;function Q6(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var K6=typeof Object.is=="function"?Object.is:Q6,Z6=q6.useSyncExternalStore,J6=pl.useRef,e8=pl.useEffect,t8=pl.useMemo,n8=pl.useDebugValue;dm.useSyncExternalStoreWithSelector=function(e,t,n,r,s){var i=J6(null);if(i.current===null){var o={hasValue:!1,value:null};i.current=o}else o=i.current;i=t8(function(){function u(m){if(!c){if(c=!0,d=m,m=r(m),s!==void 0&&o.hasValue){var p=o.value;if(s(p,m))return f=p}return f=m}if(p=f,K6(d,m))return p;var v=r(m);return s!==void 0&&s(p,v)?(d=m,p):(d=m,f=v)}var c=!1,d,f,h=n===void 0?null:n;return[function(){return u(t())},h===null?void 0:function(){return u(h())}]},[t,n,r,s]);var l=Z6(e,i[0],i[1]);return e8(function(){o.hasValue=!0,o.value=l},[l]),n8(l),l};cm.exports=dm;var r8=cm.exports;const s8=Mu(r8),i8={},Gf=e=>{let t;const n=new Set,r=(d,f)=>{const h=typeof d=="function"?d(t):d;if(!Object.is(h,t)){const m=t;t=f??(typeof h!="object"||h===null)?h:Object.assign({},t,h),n.forEach(p=>p(t,m))}},s=()=>t,u={setState:r,getState:s,getInitialState:()=>c,subscribe:d=>(n.add(d),()=>n.delete(d)),destroy:()=>{(i8?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},c=t=e(r,s,u);return u},o8=e=>e?Gf(e):Gf,{useDebugValue:l8}=$u,{useSyncExternalStoreWithSelector:a8}=s8,u8=e=>e;function pm(e,t=u8,n){const r=a8(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return l8(r),r}const Yf=(e,t)=>{const n=o8(e),r=(s,i=t)=>pm(n,s,i);return Object.assign(r,n),r},c8=(e,t)=>e?Yf(e,t):Yf;function he(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[r,s]of e)if(!Object.is(s,t.get(r)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}const ml=j.createContext(null),d8=ml.Provider,mm=Pt.error001();function re(e,t){const n=j.useContext(ml);if(n===null)throw new Error(mm);return pm(n,e,t)}function pe(){const e=j.useContext(ml);if(e===null)throw new Error(mm);return j.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const Xf={display:"none"},f8={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},gm="react-flow__node-desc",xm="react-flow__edge-desc",h8="react-flow__aria-live",p8=e=>e.ariaLiveMessage,m8=e=>e.ariaLabelConfig;function g8({rfId:e}){const t=re(p8);return a.jsx("div",{id:`${h8}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:f8,children:t})}function x8({rfId:e,disableKeyboardA11y:t}){const n=re(m8);return a.jsxs(a.Fragment,{children:[a.jsx("div",{id:`${gm}-${e}`,style:Xf,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),a.jsx("div",{id:`${xm}-${e}`,style:Xf,children:n["edge.a11yDescription.default"]}),!t&&a.jsx(g8,{rfId:e})]})}const gl=j.forwardRef(({position:e="top-left",children:t,className:n,style:r,...s},i)=>{const o=`${e}`.split("-");return a.jsx("div",{className:Ee(["react-flow__panel",n,...o]),style:r,ref:i,...s,children:t})});gl.displayName="Panel";function y8({proOptions:e,position:t="bottom-right"}){return e!=null&&e.hideAttribution?null:a.jsx(gl,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:a.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const v8=e=>{const t=[],n=[];for(const[,r]of e.nodeLookup)r.selected&&t.push(r.internals.userNode);for(const[,r]of e.edgeLookup)r.selected&&n.push(r);return{selectedNodes:t,selectedEdges:n}},Oi=e=>e.id;function w8(e,t){return he(e.selectedNodes.map(Oi),t.selectedNodes.map(Oi))&&he(e.selectedEdges.map(Oi),t.selectedEdges.map(Oi))}function b8({onSelectionChange:e}){const t=pe(),{selectedNodes:n,selectedEdges:r}=re(v8,w8);return j.useEffect(()=>{const s={nodes:n,edges:r};e==null||e(s),t.getState().onSelectionChangeHandlers.forEach(i=>i(s))},[n,r,e]),null}const k8=e=>!!e.onSelectionChangeHandlers;function N8({onSelectionChange:e}){const t=re(k8);return e||t?a.jsx(b8,{onSelectionChange:e}):null}const bu=typeof window<"u"?j.useLayoutEffect:j.useEffect,ym=[0,0],C8={x:0,y:0,zoom:1},E8=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],qf=[...E8,"rfId"],j8=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),Qf={translateExtent:Hs,nodeOrigin:ym,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function _8(e){const{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:s,setTranslateExtent:i,setNodeExtent:o,reset:l,setDefaultNodesAndEdges:u}=re(j8,he),c=pe();bu(()=>(u(e.defaultNodes,e.defaultEdges),()=>{d.current=Qf,l()}),[]);const d=j.useRef(Qf);return bu(()=>{for(const f of qf){const h=e[f],m=d.current[f];h!==m&&(typeof e[f]>"u"||(f==="nodes"?t(h):f==="edges"?n(h):f==="minZoom"?r(h):f==="maxZoom"?s(h):f==="translateExtent"?i(h):f==="nodeExtent"?o(h):f==="ariaLabelConfig"?c.setState({ariaLabelConfig:Qv(h)}):f==="fitView"?c.setState({fitViewQueued:h}):f==="fitViewOptions"?c.setState({fitViewOptions:h}):c.setState({[f]:h})))}d.current=e},qf.map(f=>e[f])),null}function Kf(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function S8(e){var r;const[t,n]=j.useState(e==="system"?null:e);return j.useEffect(()=>{if(e!=="system"){n(e);return}const s=Kf(),i=()=>n(s!=null&&s.matches?"dark":"light");return i(),s==null||s.addEventListener("change",i),()=>{s==null||s.removeEventListener("change",i)}},[e]),t!==null?t:(r=Kf())!=null&&r.matches?"dark":"light"}const Zf=typeof document<"u"?document:null;function Ys(e=null,t={target:Zf,actInsideInputWithModifier:!0}){const[n,r]=j.useState(!1),s=j.useRef(!1),i=j.useRef(new Set([])),[o,l]=j.useMemo(()=>{if(e!==null){const c=(Array.isArray(e)?e:[e]).filter(f=>typeof f=="string").map(f=>f.replace("+",`
|
|
64
|
+
`).replace(`
|
|
65
|
+
|
|
66
|
+
`,`
|
|
67
|
+
+`).split(`
|
|
68
|
+
`)),d=c.reduce((f,h)=>f.concat(...h),[]);return[c,d]}return[[],[]]},[e]);return j.useEffect(()=>{const u=(t==null?void 0:t.target)??Zf,c=(t==null?void 0:t.actInsideInputWithModifier)??!0;if(e!==null){const d=m=>{var b,x;if(s.current=m.ctrlKey||m.metaKey||m.shiftKey||m.altKey,(!s.current||s.current&&!c)&&X1(m))return!1;const v=e0(m.code,l);if(i.current.add(m[v]),Jf(o,i.current,!1)){const y=((x=(b=m.composedPath)==null?void 0:b.call(m))==null?void 0:x[0])||m.target,g=(y==null?void 0:y.nodeName)==="BUTTON"||(y==null?void 0:y.nodeName)==="A";t.preventDefault!==!1&&(s.current||!g)&&m.preventDefault(),r(!0)}},f=m=>{const p=e0(m.code,l);Jf(o,i.current,!0)?(r(!1),i.current.clear()):i.current.delete(m[p]),m.key==="Meta"&&i.current.clear(),s.current=!1},h=()=>{i.current.clear(),r(!1)};return u==null||u.addEventListener("keydown",d),u==null||u.addEventListener("keyup",f),window.addEventListener("blur",h),window.addEventListener("contextmenu",h),()=>{u==null||u.removeEventListener("keydown",d),u==null||u.removeEventListener("keyup",f),window.removeEventListener("blur",h),window.removeEventListener("contextmenu",h)}}},[e,r]),n}function Jf(e,t,n){return e.filter(r=>n||r.length===t.size).some(r=>r.every(s=>t.has(s)))}function e0(e,t){return t.includes(e)?"code":"key"}const M8=()=>{const e=pe();return j.useMemo(()=>({zoomIn:t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):Promise.resolve(!1)},zoomOut:t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):Promise.resolve(!1)},zoomTo:(t,n)=>{const{panZoom:r}=e.getState();return r?r.scaleTo(t,n):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{const{transform:[r,s,i],panZoom:o}=e.getState();return o?(await o.setViewport({x:t.x??r,y:t.y??s,zoom:t.zoom??i},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},setCenter:async(t,n,r)=>e.getState().setCenter(t,n,r),fitBounds:async(t,n)=>{const{width:r,height:s,minZoom:i,maxZoom:o,panZoom:l}=e.getState(),u=$c(t,r,s,i,o,(n==null?void 0:n.padding)??.1);return l?(await l.setViewport(u,{duration:n==null?void 0:n.duration,ease:n==null?void 0:n.ease,interpolate:n==null?void 0:n.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(t,n={})=>{const{transform:r,snapGrid:s,snapToGrid:i,domNode:o}=e.getState();if(!o)return t;const{x:l,y:u}=o.getBoundingClientRect(),c={x:t.x-l,y:t.y-u},d=n.snapGrid??s,f=n.snapToGrid??i;return ii(c,r,f,d)},flowToScreenPosition:t=>{const{transform:n,domNode:r}=e.getState();if(!r)return t;const{x:s,y:i}=r.getBoundingClientRect(),o=Oo(t,n);return{x:o.x+s,y:o.y+i}}}),[])};function vm(e,t){const n=[],r=new Map,s=[];for(const i of e)if(i.type==="add"){s.push(i);continue}else if(i.type==="remove"||i.type==="replace")r.set(i.id,[i]);else{const o=r.get(i.id);o?o.push(i):r.set(i.id,[i])}for(const i of t){const o=r.get(i.id);if(!o){n.push(i);continue}if(o[0].type==="remove")continue;if(o[0].type==="replace"){n.push({...o[0].item});continue}const l={...i};for(const u of o)L8(u,l);n.push(l)}return s.length&&s.forEach(i=>{i.index!==void 0?n.splice(i.index,0,{...i.item}):n.push({...i.item})}),n}function L8(e,t){switch(e.type){case"select":{t.selected=e.selected;break}case"position":{typeof e.position<"u"&&(t.position=e.position),typeof e.dragging<"u"&&(t.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(t.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(t.resizing=e.resizing);break}}}function wm(e,t){return vm(e,t)}function bm(e,t){return vm(e,t)}function In(e,t){return{id:e,type:"select",selected:t}}function mr(e,t=new Set,n=!1){const r=[];for(const[s,i]of e){const o=t.has(s);!(i.selected===void 0&&!o)&&i.selected!==o&&(n&&(i.selected=o),r.push(In(i.id,o)))}return r}function t0({items:e=[],lookup:t}){var s;const n=[],r=new Map(e.map(i=>[i.id,i]));for(const[i,o]of e.entries()){const l=t.get(o.id),u=((s=l==null?void 0:l.internals)==null?void 0:s.userNode)??l;u!==void 0&&u!==o&&n.push({id:o.id,item:o,type:"replace"}),u===void 0&&n.push({item:o,type:"add",index:i})}for(const[i]of t)r.get(i)===void 0&&n.push({id:i,type:"remove"});return n}function n0(e){return{id:e.id,type:"remove"}}const r0=e=>Fv(e),I8=e=>F1(e);function km(e){return j.forwardRef(e)}function s0(e){const[t,n]=j.useState(BigInt(0)),[r]=j.useState(()=>P8(()=>n(s=>s+BigInt(1))));return bu(()=>{const s=r.get();s.length&&(e(s),r.reset())},[t]),r}function P8(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}const Nm=j.createContext(null);function T8({children:e}){const t=pe(),n=j.useCallback(l=>{const{nodes:u=[],setNodes:c,hasDefaultNodes:d,onNodesChange:f,nodeLookup:h,fitViewQueued:m,onNodesChangeMiddlewareMap:p}=t.getState();let v=u;for(const x of l)v=typeof x=="function"?x(v):x;let b=t0({items:v,lookup:h});for(const x of p.values())b=x(b);d&&c(v),b.length>0?f==null||f(b):m&&window.requestAnimationFrame(()=>{const{fitViewQueued:x,nodes:y,setNodes:g}=t.getState();x&&g(y)})},[]),r=s0(n),s=j.useCallback(l=>{const{edges:u=[],setEdges:c,hasDefaultEdges:d,onEdgesChange:f,edgeLookup:h}=t.getState();let m=u;for(const p of l)m=typeof p=="function"?p(m):p;d?c(m):f&&f(t0({items:m,lookup:h}))},[]),i=s0(s),o=j.useMemo(()=>({nodeQueue:r,edgeQueue:i}),[]);return a.jsx(Nm.Provider,{value:o,children:e})}function $8(){const e=j.useContext(Nm);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const A8=e=>!!e.panZoom;function Hc(){const e=M8(),t=pe(),n=$8(),r=re(A8),s=j.useMemo(()=>{const i=f=>t.getState().nodeLookup.get(f),o=f=>{n.nodeQueue.push(f)},l=f=>{n.edgeQueue.push(f)},u=f=>{var x,y;const{nodeLookup:h,nodeOrigin:m}=t.getState(),p=r0(f)?f:h.get(f.id),v=p.parentId?G1(p.position,p.measured,p.parentId,h,m):p.position,b={...p,position:v,width:((x=p.measured)==null?void 0:x.width)??p.width,height:((y=p.measured)==null?void 0:y.height)??p.height};return Ar(b)},c=(f,h,m={replace:!1})=>{o(p=>p.map(v=>{if(v.id===f){const b=typeof h=="function"?h(v):h;return m.replace&&r0(b)?b:{...v,...b}}return v}))},d=(f,h,m={replace:!1})=>{l(p=>p.map(v=>{if(v.id===f){const b=typeof h=="function"?h(v):h;return m.replace&&I8(b)?b:{...v,...b}}return v}))};return{getNodes:()=>t.getState().nodes.map(f=>({...f})),getNode:f=>{var h;return(h=i(f))==null?void 0:h.internals.userNode},getInternalNode:i,getEdges:()=>{const{edges:f=[]}=t.getState();return f.map(h=>({...h}))},getEdge:f=>t.getState().edgeLookup.get(f),setNodes:o,setEdges:l,addNodes:f=>{const h=Array.isArray(f)?f:[f];n.nodeQueue.push(m=>[...m,...h])},addEdges:f=>{const h=Array.isArray(f)?f:[f];n.edgeQueue.push(m=>[...m,...h])},toObject:()=>{const{nodes:f=[],edges:h=[],transform:m}=t.getState(),[p,v,b]=m;return{nodes:f.map(x=>({...x})),edges:h.map(x=>({...x})),viewport:{x:p,y:v,zoom:b}}},deleteElements:async({nodes:f=[],edges:h=[]})=>{const{nodes:m,edges:p,onNodesDelete:v,onEdgesDelete:b,triggerNodeChanges:x,triggerEdgeChanges:y,onDelete:g,onBeforeDelete:w}=t.getState(),{nodes:k,edges:N}=await Uv({nodesToRemove:f,edgesToRemove:h,nodes:m,edges:p,onBeforeDelete:w}),M=N.length>0,I=k.length>0;if(M){const P=N.map(n0);b==null||b(N),y(P)}if(I){const P=k.map(n0);v==null||v(k),x(P)}return(I||M)&&(g==null||g({nodes:k,edges:N})),{deletedNodes:k,deletedEdges:N}},getIntersectingNodes:(f,h=!0,m)=>{const p=Tf(f),v=p?f:u(f),b=m!==void 0;return v?(m||t.getState().nodes).filter(x=>{const y=t.getState().nodeLookup.get(x.id);if(y&&!p&&(x.id===f.id||!y.internals.positionAbsolute))return!1;const g=Ar(b?x:y),w=Us(g,v);return h&&w>0||w>=g.width*g.height||w>=v.width*v.height}):[]},isNodeIntersecting:(f,h,m=!0)=>{const v=Tf(f)?f:u(f);if(!v)return!1;const b=Us(v,h);return m&&b>0||b>=h.width*h.height||b>=v.width*v.height},updateNode:c,updateNodeData:(f,h,m={replace:!1})=>{c(f,p=>{const v=typeof h=="function"?h(p):h;return m.replace?{...p,data:v}:{...p,data:{...p.data,...v}}},m)},updateEdge:d,updateEdgeData:(f,h,m={replace:!1})=>{d(f,p=>{const v=typeof h=="function"?h(p):h;return m.replace?{...p,data:v}:{...p,data:{...p.data,...v}}},m)},getNodesBounds:f=>{const{nodeLookup:h,nodeOrigin:m}=t.getState();return Vv(f,{nodeLookup:h,nodeOrigin:m})},getHandleConnections:({type:f,id:h,nodeId:m})=>{var p;return Array.from(((p=t.getState().connectionLookup.get(`${m}-${f}${h?`-${h}`:""}`))==null?void 0:p.values())??[])},getNodeConnections:({type:f,handleId:h,nodeId:m})=>{var p;return Array.from(((p=t.getState().connectionLookup.get(`${m}${f?h?`-${f}-${h}`:`-${f}`:""}`))==null?void 0:p.values())??[])},fitView:async f=>{const h=t.getState().fitViewResolver??qv();return t.setState({fitViewQueued:!0,fitViewOptions:f,fitViewResolver:h}),n.nodeQueue.push(m=>[...m]),h.promise}}},[]);return j.useMemo(()=>({...s,...e,viewportInitialized:r}),[r])}const i0=e=>e.selected,R8=typeof window<"u"?window:void 0;function O8({deleteKeyCode:e,multiSelectionKeyCode:t}){const n=pe(),{deleteElements:r}=Hc(),s=Ys(e,{actInsideInputWithModifier:!1}),i=Ys(t,{target:R8});j.useEffect(()=>{if(s){const{edges:o,nodes:l}=n.getState();r({nodes:l.filter(i0),edges:o.filter(i0)}),n.setState({nodesSelectionActive:!1})}},[s]),j.useEffect(()=>{n.setState({multiSelectionActive:i})},[i])}function z8(e){const t=pe();j.useEffect(()=>{const n=()=>{var s,i,o,l;if(!e.current||!(((i=(s=e.current).checkVisibility)==null?void 0:i.call(s))??!0))return!1;const r=Ac(e.current);(r.height===0||r.width===0)&&((l=(o=t.getState()).onError)==null||l.call(o,"004",Pt.error004())),t.setState({width:r.width||500,height:r.height||500})};if(e.current){n(),window.addEventListener("resize",n);const r=new ResizeObserver(()=>n());return r.observe(e.current),()=>{window.removeEventListener("resize",n),r&&e.current&&r.unobserve(e.current)}}},[])}const xl={position:"absolute",width:"100%",height:"100%",top:0,left:0},D8=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function F8({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panOnScrollSpeed:s=.5,panOnScrollMode:i=Dn.Free,zoomOnDoubleClick:o=!0,panOnDrag:l=!0,defaultViewport:u,translateExtent:c,minZoom:d,maxZoom:f,zoomActivationKeyCode:h,preventScrolling:m=!0,children:p,noWheelClassName:v,noPanClassName:b,onViewportChange:x,isControlledViewport:y,paneClickDistance:g,selectionOnDrag:w}){const k=pe(),N=j.useRef(null),{userSelectionActive:M,lib:I,connectionInProgress:P}=re(D8,he),z=Ys(h),S=j.useRef();z8(N);const $=j.useCallback(F=>{x==null||x({x:F[0],y:F[1],zoom:F[2]}),y||k.setState({transform:F})},[x,y]);return j.useEffect(()=>{if(N.current){S.current=P6({domNode:N.current,minZoom:d,maxZoom:f,translateExtent:c,viewport:u,onDraggingChange:T=>k.setState(O=>O.paneDragging===T?O:{paneDragging:T}),onPanZoomStart:(T,O)=>{const{onViewportChangeStart:_,onMoveStart:L}=k.getState();L==null||L(T,O),_==null||_(O)},onPanZoom:(T,O)=>{const{onViewportChange:_,onMove:L}=k.getState();L==null||L(T,O),_==null||_(O)},onPanZoomEnd:(T,O)=>{const{onViewportChangeEnd:_,onMoveEnd:L}=k.getState();L==null||L(T,O),_==null||_(O)}});const{x:F,y:C,zoom:A}=S.current.getViewport();return k.setState({panZoom:S.current,transform:[F,C,A],domNode:N.current.closest(".react-flow")}),()=>{var T;(T=S.current)==null||T.destroy()}}},[]),j.useEffect(()=>{var F;(F=S.current)==null||F.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panOnScrollSpeed:s,panOnScrollMode:i,zoomOnDoubleClick:o,panOnDrag:l,zoomActivationKeyPressed:z,preventScrolling:m,noPanClassName:b,userSelectionActive:M,noWheelClassName:v,lib:I,onTransformChange:$,connectionInProgress:P,selectionOnDrag:w,paneClickDistance:g})},[e,t,n,r,s,i,o,l,z,m,b,M,v,I,$,P,w,g]),a.jsx("div",{className:"react-flow__renderer",ref:N,style:xl,children:p})}const V8=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function H8(){const{userSelectionActive:e,userSelectionRect:t}=re(V8,he);return e&&t?a.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}const sa=(e,t)=>n=>{n.target===t.current&&(e==null||e(n))},B8=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function W8({isSelecting:e,selectionKeyPressed:t,selectionMode:n=Bs.Full,panOnDrag:r,paneClickDistance:s,selectionOnDrag:i,onSelectionStart:o,onSelectionEnd:l,onPaneClick:u,onPaneContextMenu:c,onPaneScroll:d,onPaneMouseEnter:f,onPaneMouseMove:h,onPaneMouseLeave:m,children:p}){const v=pe(),{userSelectionActive:b,elementsSelectable:x,dragging:y,connectionInProgress:g}=re(B8,he),w=x&&(e||b),k=j.useRef(null),N=j.useRef(),M=j.useRef(new Set),I=j.useRef(new Set),P=j.useRef(!1),z=_=>{if(P.current||g){P.current=!1;return}u==null||u(_),v.getState().resetSelectedElements(),v.setState({nodesSelectionActive:!1})},S=_=>{if(Array.isArray(r)&&(r!=null&&r.includes(2))){_.preventDefault();return}c==null||c(_)},$=d?_=>d(_):void 0,F=_=>{P.current&&(_.stopPropagation(),P.current=!1)},C=_=>{var G,Y;const{domNode:L}=v.getState();if(N.current=L==null?void 0:L.getBoundingClientRect(),!N.current)return;const E=_.target===k.current;if(!E&&!!_.target.closest(".nokey")||!e||!(i&&E||t)||_.button!==0||!_.isPrimary)return;(Y=(G=_.target)==null?void 0:G.setPointerCapture)==null||Y.call(G,_.pointerId),P.current=!1;const{x:W,y:B}=vt(_.nativeEvent,N.current);v.setState({userSelectionRect:{width:0,height:0,startX:W,startY:B,x:W,y:B}}),E||(_.stopPropagation(),_.preventDefault())},A=_=>{const{userSelectionRect:L,transform:E,nodeLookup:R,edgeLookup:D,connectionLookup:W,triggerNodeChanges:B,triggerEdgeChanges:G,defaultEdgeOptions:Y,resetSelectedElements:q}=v.getState();if(!N.current||!L)return;const{x:H,y:Q}=vt(_.nativeEvent,N.current),{startX:te,startY:J}=L;if(!P.current){const ie=t?0:s;if(Math.hypot(H-te,Q-J)<=ie)return;q(),o==null||o(_)}P.current=!0;const Z={startX:te,startY:J,x:H<te?H:te,y:Q<J?Q:J,width:Math.abs(H-te),height:Math.abs(Q-J)},K=M.current,oe=I.current;M.current=new Set(Tc(R,Z,E,n===Bs.Partial,!0).map(ie=>ie.id)),I.current=new Set;const ue=(Y==null?void 0:Y.selectable)??!0;for(const ie of M.current){const $e=W.get(ie);if($e)for(const{edgeId:Kt}of $e.values()){const $t=D.get(Kt);$t&&($t.selectable??ue)&&I.current.add(Kt)}}if(!$f(K,M.current)){const ie=mr(R,M.current,!0);B(ie)}if(!$f(oe,I.current)){const ie=mr(D,I.current);G(ie)}v.setState({userSelectionRect:Z,userSelectionActive:!0,nodesSelectionActive:!1})},T=_=>{var L,E;_.button===0&&((E=(L=_.target)==null?void 0:L.releasePointerCapture)==null||E.call(L,_.pointerId),!b&&_.target===k.current&&v.getState().userSelectionRect&&(z==null||z(_)),v.setState({userSelectionActive:!1,userSelectionRect:null}),P.current&&(l==null||l(_),v.setState({nodesSelectionActive:M.current.size>0})))},O=r===!0||Array.isArray(r)&&r.includes(0);return a.jsxs("div",{className:Ee(["react-flow__pane",{draggable:O,dragging:y,selection:e}]),onClick:w?void 0:sa(z,k),onContextMenu:sa(S,k),onWheel:sa($,k),onPointerEnter:w?void 0:f,onPointerMove:w?A:h,onPointerUp:w?T:void 0,onPointerDownCapture:w?C:void 0,onClickCapture:w?F:void 0,onPointerLeave:m,ref:k,style:xl,children:[p,a.jsx(H8,{})]})}function ku({id:e,store:t,unselect:n=!1,nodeRef:r}){const{addSelectedNodes:s,unselectNodesAndEdges:i,multiSelectionActive:o,nodeLookup:l,onError:u}=t.getState(),c=l.get(e);if(!c){u==null||u("012",Pt.error012(e));return}t.setState({nodesSelectionActive:!1}),c.selected?(n||c.selected&&o)&&(i({nodes:[c],edges:[]}),requestAnimationFrame(()=>{var d;return(d=r==null?void 0:r.current)==null?void 0:d.blur()})):s([e])}function Cm({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:s,isSelectable:i,nodeClickDistance:o}){const l=pe(),[u,c]=j.useState(!1),d=j.useRef();return j.useEffect(()=>{d.current=y6({getStoreItems:()=>l.getState(),onNodeMouseDown:f=>{ku({id:f,store:l,nodeRef:e})},onDragStart:()=>{c(!0)},onDragStop:()=>{c(!1)}})},[]),j.useEffect(()=>{if(!(t||!e.current||!d.current))return d.current.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:i,nodeId:s,nodeClickDistance:o}),()=>{var f;(f=d.current)==null||f.destroy()}},[n,r,t,i,e,s,o]),u}const U8=e=>t=>t.selected&&(t.draggable||e&&typeof t.draggable>"u");function Em(){const e=pe();return j.useCallback(n=>{const{nodeExtent:r,snapToGrid:s,snapGrid:i,nodesDraggable:o,onError:l,updateNodePositions:u,nodeLookup:c,nodeOrigin:d}=e.getState(),f=new Map,h=U8(o),m=s?i[0]:5,p=s?i[1]:5,v=n.direction.x*m*n.factor,b=n.direction.y*p*n.factor;for(const[,x]of c){if(!h(x))continue;let y={x:x.internals.positionAbsolute.x+v,y:x.internals.positionAbsolute.y+b};s&&(y=si(y,i));const{position:g,positionAbsolute:w}=V1({nodeId:x.id,nextPosition:y,nodeLookup:c,nodeExtent:r,nodeOrigin:d,onError:l});x.position=g,x.internals.positionAbsolute=w,f.set(x.id,x)}u(f)},[])}const Bc=j.createContext(null),G8=Bc.Provider;Bc.Consumer;const jm=()=>j.useContext(Bc),Y8=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),X8=(e,t,n)=>r=>{const{connectionClickStartHandle:s,connectionMode:i,connection:o}=r,{fromHandle:l,toHandle:u,isValid:c}=o,d=(u==null?void 0:u.nodeId)===e&&(u==null?void 0:u.id)===t&&(u==null?void 0:u.type)===n;return{connectingFrom:(l==null?void 0:l.nodeId)===e&&(l==null?void 0:l.id)===t&&(l==null?void 0:l.type)===n,connectingTo:d,clickConnecting:(s==null?void 0:s.nodeId)===e&&(s==null?void 0:s.id)===t&&(s==null?void 0:s.type)===n,isPossibleEndHandle:i===Tr.Strict?(l==null?void 0:l.type)!==n:e!==(l==null?void 0:l.nodeId)||t!==(l==null?void 0:l.id),connectionInProcess:!!l,clickConnectionInProcess:!!s,valid:d&&c}};function q8({type:e="source",position:t=X.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:s=!0,isConnectableEnd:i=!0,id:o,onConnect:l,children:u,className:c,onMouseDown:d,onTouchStart:f,...h},m){var A,T;const p=o||null,v=e==="target",b=pe(),x=jm(),{connectOnClick:y,noPanClassName:g,rfId:w}=re(Y8,he),{connectingFrom:k,connectingTo:N,clickConnecting:M,isPossibleEndHandle:I,connectionInProcess:P,clickConnectionInProcess:z,valid:S}=re(X8(x,p,e),he);x||(T=(A=b.getState()).onError)==null||T.call(A,"010",Pt.error010());const $=O=>{const{defaultEdgeOptions:_,onConnect:L,hasDefaultEdges:E}=b.getState(),R={..._,...O};if(E){const{edges:D,setEdges:W}=b.getState();W(n6(R,D))}L==null||L(R),l==null||l(R)},F=O=>{if(!x)return;const _=q1(O.nativeEvent);if(s&&(_&&O.button===0||!_)){const L=b.getState();wu.onPointerDown(O.nativeEvent,{handleDomNode:O.currentTarget,autoPanOnConnect:L.autoPanOnConnect,connectionMode:L.connectionMode,connectionRadius:L.connectionRadius,domNode:L.domNode,nodeLookup:L.nodeLookup,lib:L.lib,isTarget:v,handleId:p,nodeId:x,flowId:L.rfId,panBy:L.panBy,cancelConnection:L.cancelConnection,onConnectStart:L.onConnectStart,onConnectEnd:(...E)=>{var R,D;return(D=(R=b.getState()).onConnectEnd)==null?void 0:D.call(R,...E)},updateConnection:L.updateConnection,onConnect:$,isValidConnection:n||((...E)=>{var R,D;return((D=(R=b.getState()).isValidConnection)==null?void 0:D.call(R,...E))??!0}),getTransform:()=>b.getState().transform,getFromHandle:()=>b.getState().connection.fromHandle,autoPanSpeed:L.autoPanSpeed,dragThreshold:L.connectionDragThreshold})}_?d==null||d(O):f==null||f(O)},C=O=>{const{onClickConnectStart:_,onClickConnectEnd:L,connectionClickStartHandle:E,connectionMode:R,isValidConnection:D,lib:W,rfId:B,nodeLookup:G,connection:Y}=b.getState();if(!x||!E&&!s)return;if(!E){_==null||_(O.nativeEvent,{nodeId:x,handleId:p,handleType:e}),b.setState({connectionClickStartHandle:{nodeId:x,type:e,id:p}});return}const q=Y1(O.target),H=n||D,{connection:Q,isValid:te}=wu.isValid(O.nativeEvent,{handle:{nodeId:x,id:p,type:e},connectionMode:R,fromNodeId:E.nodeId,fromHandleId:E.id||null,fromType:E.type,isValidConnection:H,flowId:B,doc:q,lib:W,nodeLookup:G});te&&Q&&$(Q);const J=structuredClone(Y);delete J.inProgress,J.toPosition=J.toHandle?J.toHandle.position:null,L==null||L(O,J),b.setState({connectionClickStartHandle:null})};return a.jsx("div",{"data-handleid":p,"data-nodeid":x,"data-handlepos":t,"data-id":`${w}-${x}-${p}-${e}`,className:Ee(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",g,c,{source:!v,target:v,connectable:r,connectablestart:s,connectableend:i,clickconnecting:M,connectingfrom:k,connectingto:N,valid:S,connectionindicator:r&&(!P||I)&&(P||z?i:s)}]),onMouseDown:F,onTouchStart:F,onClick:y?C:void 0,ref:m,...h,children:u})}const Dr=j.memo(km(q8));function Q8({data:e,isConnectable:t,sourcePosition:n=X.Bottom}){return a.jsxs(a.Fragment,{children:[e==null?void 0:e.label,a.jsx(Dr,{type:"source",position:n,isConnectable:t})]})}function K8({data:e,isConnectable:t,targetPosition:n=X.Top,sourcePosition:r=X.Bottom}){return a.jsxs(a.Fragment,{children:[a.jsx(Dr,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label,a.jsx(Dr,{type:"source",position:r,isConnectable:t})]})}function Z8(){return null}function J8({data:e,isConnectable:t,targetPosition:n=X.Top}){return a.jsxs(a.Fragment,{children:[a.jsx(Dr,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label]})}const zo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},o0={input:Q8,default:K8,output:J8,group:Z8};function ew(e){var t,n,r,s;return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??((t=e.style)==null?void 0:t.width),height:e.height??e.initialHeight??((n=e.style)==null?void 0:n.height)}:{width:e.width??((r=e.style)==null?void 0:r.width),height:e.height??((s=e.style)==null?void 0:s.height)}}const tw=e=>{const{width:t,height:n,x:r,y:s}=ri(e.nodeLookup,{filter:i=>!!i.selected});return{width:yt(t)?t:null,height:yt(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${s}px)`}};function nw({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){const r=pe(),{width:s,height:i,transformString:o,userSelectionActive:l}=re(tw,he),u=Em(),c=j.useRef(null);j.useEffect(()=>{var m;n||(m=c.current)==null||m.focus({preventScroll:!0})},[n]);const d=!l&&s!==null&&i!==null;if(Cm({nodeRef:c,disabled:!d}),!d)return null;const f=e?m=>{const p=r.getState().nodes.filter(v=>v.selected);e(m,p)}:void 0,h=m=>{Object.prototype.hasOwnProperty.call(zo,m.key)&&(m.preventDefault(),u({direction:zo[m.key],factor:m.shiftKey?4:1}))};return a.jsx("div",{className:Ee(["react-flow__nodesselection","react-flow__container",t]),style:{transform:o},children:a.jsx("div",{ref:c,className:"react-flow__nodesselection-rect",onContextMenu:f,tabIndex:n?void 0:-1,onKeyDown:n?void 0:h,style:{width:s,height:i}})})}const l0=typeof window<"u"?window:void 0,rw=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function _m({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:s,onPaneContextMenu:i,onPaneScroll:o,paneClickDistance:l,deleteKeyCode:u,selectionKeyCode:c,selectionOnDrag:d,selectionMode:f,onSelectionStart:h,onSelectionEnd:m,multiSelectionKeyCode:p,panActivationKeyCode:v,zoomActivationKeyCode:b,elementsSelectable:x,zoomOnScroll:y,zoomOnPinch:g,panOnScroll:w,panOnScrollSpeed:k,panOnScrollMode:N,zoomOnDoubleClick:M,panOnDrag:I,defaultViewport:P,translateExtent:z,minZoom:S,maxZoom:$,preventScrolling:F,onSelectionContextMenu:C,noWheelClassName:A,noPanClassName:T,disableKeyboardA11y:O,onViewportChange:_,isControlledViewport:L}){const{nodesSelectionActive:E,userSelectionActive:R}=re(rw,he),D=Ys(c,{target:l0}),W=Ys(v,{target:l0}),B=W||I,G=W||w,Y=d&&B!==!0,q=D||R||Y;return O8({deleteKeyCode:u,multiSelectionKeyCode:p}),a.jsx(F8,{onPaneContextMenu:i,elementsSelectable:x,zoomOnScroll:y,zoomOnPinch:g,panOnScroll:G,panOnScrollSpeed:k,panOnScrollMode:N,zoomOnDoubleClick:M,panOnDrag:!D&&B,defaultViewport:P,translateExtent:z,minZoom:S,maxZoom:$,zoomActivationKeyCode:b,preventScrolling:F,noWheelClassName:A,noPanClassName:T,onViewportChange:_,isControlledViewport:L,paneClickDistance:l,selectionOnDrag:Y,children:a.jsxs(W8,{onSelectionStart:h,onSelectionEnd:m,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:s,onPaneContextMenu:i,onPaneScroll:o,panOnDrag:B,isSelecting:!!q,selectionMode:f,selectionKeyPressed:D,paneClickDistance:l,selectionOnDrag:Y,children:[e,E&&a.jsx(nw,{onSelectionContextMenu:C,noPanClassName:T,disableKeyboardA11y:O})]})})}_m.displayName="FlowRenderer";const sw=j.memo(_m),iw=e=>t=>e?Tc(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(n=>n.id):Array.from(t.nodeLookup.keys());function ow(e){return re(j.useCallback(iw(e),[e]),he)}const lw=e=>e.updateNodeInternals;function aw(){const e=re(lw),[t]=j.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const r=new Map;n.forEach(s=>{const i=s.target.getAttribute("data-id");r.set(i,{id:i,nodeElement:s.target,force:!0})}),e(r)}));return j.useEffect(()=>()=>{t==null||t.disconnect()},[t]),t}function uw({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){const s=pe(),i=j.useRef(null),o=j.useRef(null),l=j.useRef(e.sourcePosition),u=j.useRef(e.targetPosition),c=j.useRef(t),d=n&&!!e.internals.handleBounds;return j.useEffect(()=>{i.current&&!e.hidden&&(!d||o.current!==i.current)&&(o.current&&(r==null||r.unobserve(o.current)),r==null||r.observe(i.current),o.current=i.current)},[d,e.hidden]),j.useEffect(()=>()=>{o.current&&(r==null||r.unobserve(o.current),o.current=null)},[]),j.useEffect(()=>{if(i.current){const f=c.current!==t,h=l.current!==e.sourcePosition,m=u.current!==e.targetPosition;(f||h||m)&&(c.current=t,l.current=e.sourcePosition,u.current=e.targetPosition,s.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:i.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),i}function cw({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:s,onContextMenu:i,onDoubleClick:o,nodesDraggable:l,elementsSelectable:u,nodesConnectable:c,nodesFocusable:d,resizeObserver:f,noDragClassName:h,noPanClassName:m,disableKeyboardA11y:p,rfId:v,nodeTypes:b,nodeClickDistance:x,onError:y}){const{node:g,internals:w,isParent:k}=re(H=>{const Q=H.nodeLookup.get(e),te=H.parentLookup.has(e);return{node:Q,internals:Q.internals,isParent:te}},he);let N=g.type||"default",M=(b==null?void 0:b[N])||o0[N];M===void 0&&(y==null||y("003",Pt.error003(N)),N="default",M=(b==null?void 0:b.default)||o0.default);const I=!!(g.draggable||l&&typeof g.draggable>"u"),P=!!(g.selectable||u&&typeof g.selectable>"u"),z=!!(g.connectable||c&&typeof g.connectable>"u"),S=!!(g.focusable||d&&typeof g.focusable>"u"),$=pe(),F=U1(g),C=uw({node:g,nodeType:N,hasDimensions:F,resizeObserver:f}),A=Cm({nodeRef:C,disabled:g.hidden||!I,noDragClassName:h,handleSelector:g.dragHandle,nodeId:e,isSelectable:P,nodeClickDistance:x}),T=Em();if(g.hidden)return null;const O=Qt(g),_=ew(g),L=P||I||t||n||r||s,E=n?H=>n(H,{...w.userNode}):void 0,R=r?H=>r(H,{...w.userNode}):void 0,D=s?H=>s(H,{...w.userNode}):void 0,W=i?H=>i(H,{...w.userNode}):void 0,B=o?H=>o(H,{...w.userNode}):void 0,G=H=>{const{selectNodesOnDrag:Q,nodeDragThreshold:te}=$.getState();P&&(!Q||!I||te>0)&&ku({id:e,store:$,nodeRef:C}),t&&t(H,{...w.userNode})},Y=H=>{if(!(X1(H.nativeEvent)||p)){if(R1.includes(H.key)&&P){const Q=H.key==="Escape";ku({id:e,store:$,unselect:Q,nodeRef:C})}else if(I&&g.selected&&Object.prototype.hasOwnProperty.call(zo,H.key)){H.preventDefault();const{ariaLabelConfig:Q}=$.getState();$.setState({ariaLiveMessage:Q["node.a11yDescription.ariaLiveMessage"]({direction:H.key.replace("Arrow","").toLowerCase(),x:~~w.positionAbsolute.x,y:~~w.positionAbsolute.y})}),T({direction:zo[H.key],factor:H.shiftKey?4:1})}}},q=()=>{var oe;if(p||!((oe=C.current)!=null&&oe.matches(":focus-visible")))return;const{transform:H,width:Q,height:te,autoPanOnNodeFocus:J,setCenter:Z}=$.getState();if(!J)return;Tc(new Map([[e,g]]),{x:0,y:0,width:Q,height:te},H,!0).length>0||Z(g.position.x+O.width/2,g.position.y+O.height/2,{zoom:H[2]})};return a.jsx("div",{className:Ee(["react-flow__node",`react-flow__node-${N}`,{[m]:I},g.className,{selected:g.selected,selectable:P,parent:k,draggable:I,dragging:A}]),ref:C,style:{zIndex:w.z,transform:`translate(${w.positionAbsolute.x}px,${w.positionAbsolute.y}px)`,pointerEvents:L?"all":"none",visibility:F?"visible":"hidden",...g.style,..._},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:E,onMouseMove:R,onMouseLeave:D,onContextMenu:W,onClick:G,onDoubleClick:B,onKeyDown:S?Y:void 0,tabIndex:S?0:void 0,onFocus:S?q:void 0,role:g.ariaRole??(S?"group":void 0),"aria-roledescription":"node","aria-describedby":p?void 0:`${gm}-${v}`,"aria-label":g.ariaLabel,...g.domAttributes,children:a.jsx(G8,{value:e,children:a.jsx(M,{id:e,data:g.data,type:N,positionAbsoluteX:w.positionAbsolute.x,positionAbsoluteY:w.positionAbsolute.y,selected:g.selected??!1,selectable:P,draggable:I,deletable:g.deletable??!0,isConnectable:z,sourcePosition:g.sourcePosition,targetPosition:g.targetPosition,dragging:A,dragHandle:g.dragHandle,zIndex:w.z,parentId:g.parentId,...O})})})}var dw=j.memo(cw);const fw=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function Sm(e){const{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:s,onError:i}=re(fw,he),o=ow(e.onlyRenderVisibleElements),l=aw();return a.jsx("div",{className:"react-flow__nodes",style:xl,children:o.map(u=>a.jsx(dw,{id:u,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:l,nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:s,nodeClickDistance:e.nodeClickDistance,onError:i},u))})}Sm.displayName="NodeRenderer";const hw=j.memo(Sm);function pw(e){return re(j.useCallback(n=>{if(!e)return n.edges.map(s=>s.id);const r=[];if(n.width&&n.height)for(const s of n.edges){const i=n.nodeLookup.get(s.source),o=n.nodeLookup.get(s.target);i&&o&&Jv({sourceNode:i,targetNode:o,width:n.width,height:n.height,transform:n.transform})&&r.push(s.id)}return r},[e]),he)}const mw=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e}};return a.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},gw=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e,fill:e}};return a.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},a0={[Ws.Arrow]:mw,[Ws.ArrowClosed]:gw};function xw(e){const t=pe();return j.useMemo(()=>{var s,i;return Object.prototype.hasOwnProperty.call(a0,e)?a0[e]:((i=(s=t.getState()).onError)==null||i.call(s,"009",Pt.error009(e)),null)},[e])}const yw=({id:e,type:t,color:n,width:r=12.5,height:s=12.5,markerUnits:i="strokeWidth",strokeWidth:o,orient:l="auto-start-reverse"})=>{const u=xw(t);return u?a.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${r}`,markerHeight:`${s}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:l,refX:"0",refY:"0",children:a.jsx(u,{color:n,strokeWidth:o})}):null},Mm=({defaultColor:e,rfId:t})=>{const n=re(i=>i.edges),r=re(i=>i.defaultEdgeOptions),s=j.useMemo(()=>l6(n,{id:t,defaultColor:e,defaultMarkerStart:r==null?void 0:r.markerStart,defaultMarkerEnd:r==null?void 0:r.markerEnd}),[n,r,t,e]);return s.length?a.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:a.jsx("defs",{children:s.map(i=>a.jsx(yw,{id:i.id,type:i.type,color:i.color,width:i.width,height:i.height,markerUnits:i.markerUnits,strokeWidth:i.strokeWidth,orient:i.orient},i.id))})}):null};Mm.displayName="MarkerDefinitions";var vw=j.memo(Mm);function Lm({x:e,y:t,label:n,labelStyle:r,labelShowBg:s=!0,labelBgStyle:i,labelBgPadding:o=[2,4],labelBgBorderRadius:l=2,children:u,className:c,...d}){const[f,h]=j.useState({x:1,y:0,width:0,height:0}),m=Ee(["react-flow__edge-textwrapper",c]),p=j.useRef(null);return j.useEffect(()=>{if(p.current){const v=p.current.getBBox();h({x:v.x,y:v.y,width:v.width,height:v.height})}},[n]),n?a.jsxs("g",{transform:`translate(${e-f.width/2} ${t-f.height/2})`,className:m,visibility:f.width?"visible":"hidden",...d,children:[s&&a.jsx("rect",{width:f.width+2*o[0],x:-o[0],y:-o[1],height:f.height+2*o[1],className:"react-flow__edge-textbg",style:i,rx:l,ry:l}),a.jsx("text",{className:"react-flow__edge-text",y:f.height/2,dy:"0.3em",ref:p,style:r,children:n}),u]}):null}Lm.displayName="EdgeText";const ww=j.memo(Lm);function oi({path:e,labelX:t,labelY:n,label:r,labelStyle:s,labelShowBg:i,labelBgStyle:o,labelBgPadding:l,labelBgBorderRadius:u,interactionWidth:c=20,...d}){return a.jsxs(a.Fragment,{children:[a.jsx("path",{...d,d:e,fill:"none",className:Ee(["react-flow__edge-path",d.className])}),c?a.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:c,className:"react-flow__edge-interaction"}):null,r&&yt(t)&&yt(n)?a.jsx(ww,{x:t,y:n,label:r,labelStyle:s,labelShowBg:i,labelBgStyle:o,labelBgPadding:l,labelBgBorderRadius:u}):null]})}function u0({pos:e,x1:t,y1:n,x2:r,y2:s}){return e===X.Left||e===X.Right?[.5*(t+r),n]:[t,.5*(n+s)]}function Im({sourceX:e,sourceY:t,sourcePosition:n=X.Bottom,targetX:r,targetY:s,targetPosition:i=X.Top}){const[o,l]=u0({pos:n,x1:e,y1:t,x2:r,y2:s}),[u,c]=u0({pos:i,x1:r,y1:s,x2:e,y2:t}),[d,f,h,m]=Q1({sourceX:e,sourceY:t,targetX:r,targetY:s,sourceControlX:o,sourceControlY:l,targetControlX:u,targetControlY:c});return[`M${e},${t} C${o},${l} ${u},${c} ${r},${s}`,d,f,h,m]}function Pm(e){return j.memo(({id:t,sourceX:n,sourceY:r,targetX:s,targetY:i,sourcePosition:o,targetPosition:l,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:p,markerEnd:v,markerStart:b,interactionWidth:x})=>{const[y,g,w]=Im({sourceX:n,sourceY:r,sourcePosition:o,targetX:s,targetY:i,targetPosition:l}),k=e.isInternal?void 0:t;return a.jsx(oi,{id:k,path:y,labelX:g,labelY:w,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:p,markerEnd:v,markerStart:b,interactionWidth:x})})}const bw=Pm({isInternal:!1}),Tm=Pm({isInternal:!0});bw.displayName="SimpleBezierEdge";Tm.displayName="SimpleBezierEdgeInternal";function $m(e){return j.memo(({id:t,sourceX:n,sourceY:r,targetX:s,targetY:i,label:o,labelStyle:l,labelShowBg:u,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:f,style:h,sourcePosition:m=X.Bottom,targetPosition:p=X.Top,markerEnd:v,markerStart:b,pathOptions:x,interactionWidth:y})=>{const[g,w,k]=xu({sourceX:n,sourceY:r,sourcePosition:m,targetX:s,targetY:i,targetPosition:p,borderRadius:x==null?void 0:x.borderRadius,offset:x==null?void 0:x.offset,stepPosition:x==null?void 0:x.stepPosition}),N=e.isInternal?void 0:t;return a.jsx(oi,{id:N,path:g,labelX:w,labelY:k,label:o,labelStyle:l,labelShowBg:u,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:f,style:h,markerEnd:v,markerStart:b,interactionWidth:y})})}const Am=$m({isInternal:!1}),Rm=$m({isInternal:!0});Am.displayName="SmoothStepEdge";Rm.displayName="SmoothStepEdgeInternal";function Om(e){return j.memo(({id:t,...n})=>{var s;const r=e.isInternal?void 0:t;return a.jsx(Am,{...n,id:r,pathOptions:j.useMemo(()=>{var i;return{borderRadius:0,offset:(i=n.pathOptions)==null?void 0:i.offset}},[(s=n.pathOptions)==null?void 0:s.offset])})})}const kw=Om({isInternal:!1}),zm=Om({isInternal:!0});kw.displayName="StepEdge";zm.displayName="StepEdgeInternal";function Dm(e){return j.memo(({id:t,sourceX:n,sourceY:r,targetX:s,targetY:i,label:o,labelStyle:l,labelShowBg:u,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:f,style:h,markerEnd:m,markerStart:p,interactionWidth:v})=>{const[b,x,y]=Z1({sourceX:n,sourceY:r,targetX:s,targetY:i}),g=e.isInternal?void 0:t;return a.jsx(oi,{id:g,path:b,labelX:x,labelY:y,label:o,labelStyle:l,labelShowBg:u,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:f,style:h,markerEnd:m,markerStart:p,interactionWidth:v})})}const Nw=Dm({isInternal:!1}),Fm=Dm({isInternal:!0});Nw.displayName="StraightEdge";Fm.displayName="StraightEdgeInternal";function Vm(e){return j.memo(({id:t,sourceX:n,sourceY:r,targetX:s,targetY:i,sourcePosition:o=X.Bottom,targetPosition:l=X.Top,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:p,markerEnd:v,markerStart:b,pathOptions:x,interactionWidth:y})=>{const[g,w,k]=Rc({sourceX:n,sourceY:r,sourcePosition:o,targetX:s,targetY:i,targetPosition:l,curvature:x==null?void 0:x.curvature}),N=e.isInternal?void 0:t;return a.jsx(oi,{id:N,path:g,labelX:w,labelY:k,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:p,markerEnd:v,markerStart:b,interactionWidth:y})})}const Cw=Vm({isInternal:!1}),Hm=Vm({isInternal:!0});Cw.displayName="BezierEdge";Hm.displayName="BezierEdgeInternal";const c0={default:Hm,straight:Fm,step:zm,smoothstep:Rm,simplebezier:Tm},d0={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},Ew=(e,t,n)=>n===X.Left?e-t:n===X.Right?e+t:e,jw=(e,t,n)=>n===X.Top?e-t:n===X.Bottom?e+t:e,f0="react-flow__edgeupdater";function h0({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:s,onMouseEnter:i,onMouseOut:o,type:l}){return a.jsx("circle",{onMouseDown:s,onMouseEnter:i,onMouseOut:o,className:Ee([f0,`${f0}-${l}`]),cx:Ew(t,r,e),cy:jw(n,r,e),r,stroke:"transparent",fill:"transparent"})}function _w({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:s,targetX:i,targetY:o,sourcePosition:l,targetPosition:u,onReconnect:c,onReconnectStart:d,onReconnectEnd:f,setReconnecting:h,setUpdateHover:m}){const p=pe(),v=(w,k)=>{if(w.button!==0)return;const{autoPanOnConnect:N,domNode:M,connectionMode:I,connectionRadius:P,lib:z,onConnectStart:S,cancelConnection:$,nodeLookup:F,rfId:C,panBy:A,updateConnection:T}=p.getState(),O=k.type==="target",_=(R,D)=>{h(!1),f==null||f(R,n,k.type,D)},L=R=>c==null?void 0:c(n,R),E=(R,D)=>{h(!0),d==null||d(w,n,k.type),S==null||S(R,D)};wu.onPointerDown(w.nativeEvent,{autoPanOnConnect:N,connectionMode:I,connectionRadius:P,domNode:M,handleId:k.id,nodeId:k.nodeId,nodeLookup:F,isTarget:O,edgeUpdaterType:k.type,lib:z,flowId:C,cancelConnection:$,panBy:A,isValidConnection:(...R)=>{var D,W;return((W=(D=p.getState()).isValidConnection)==null?void 0:W.call(D,...R))??!0},onConnect:L,onConnectStart:E,onConnectEnd:(...R)=>{var D,W;return(W=(D=p.getState()).onConnectEnd)==null?void 0:W.call(D,...R)},onReconnectEnd:_,updateConnection:T,getTransform:()=>p.getState().transform,getFromHandle:()=>p.getState().connection.fromHandle,dragThreshold:p.getState().connectionDragThreshold,handleDomNode:w.currentTarget})},b=w=>v(w,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),x=w=>v(w,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),y=()=>m(!0),g=()=>m(!1);return a.jsxs(a.Fragment,{children:[(e===!0||e==="source")&&a.jsx(h0,{position:l,centerX:r,centerY:s,radius:t,onMouseDown:b,onMouseEnter:y,onMouseOut:g,type:"source"}),(e===!0||e==="target")&&a.jsx(h0,{position:u,centerX:i,centerY:o,radius:t,onMouseDown:x,onMouseEnter:y,onMouseOut:g,type:"target"})]})}function Sw({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:s,onDoubleClick:i,onContextMenu:o,onMouseEnter:l,onMouseMove:u,onMouseLeave:c,reconnectRadius:d,onReconnect:f,onReconnectStart:h,onReconnectEnd:m,rfId:p,edgeTypes:v,noPanClassName:b,onError:x,disableKeyboardA11y:y}){let g=re(Z=>Z.edgeLookup.get(e));const w=re(Z=>Z.defaultEdgeOptions);g=w?{...w,...g}:g;let k=g.type||"default",N=(v==null?void 0:v[k])||c0[k];N===void 0&&(x==null||x("011",Pt.error011(k)),k="default",N=(v==null?void 0:v.default)||c0.default);const M=!!(g.focusable||t&&typeof g.focusable>"u"),I=typeof f<"u"&&(g.reconnectable||n&&typeof g.reconnectable>"u"),P=!!(g.selectable||r&&typeof g.selectable>"u"),z=j.useRef(null),[S,$]=j.useState(!1),[F,C]=j.useState(!1),A=pe(),{zIndex:T,sourceX:O,sourceY:_,targetX:L,targetY:E,sourcePosition:R,targetPosition:D}=re(j.useCallback(Z=>{const K=Z.nodeLookup.get(g.source),oe=Z.nodeLookup.get(g.target);if(!K||!oe)return{zIndex:g.zIndex,...d0};const ue=o6({id:e,sourceNode:K,targetNode:oe,sourceHandle:g.sourceHandle||null,targetHandle:g.targetHandle||null,connectionMode:Z.connectionMode,onError:x});return{zIndex:Zv({selected:g.selected,zIndex:g.zIndex,sourceNode:K,targetNode:oe,elevateOnSelect:Z.elevateEdgesOnSelect,zIndexMode:Z.zIndexMode}),...ue||d0}},[g.source,g.target,g.sourceHandle,g.targetHandle,g.selected,g.zIndex]),he),W=j.useMemo(()=>g.markerStart?`url('#${yu(g.markerStart,p)}')`:void 0,[g.markerStart,p]),B=j.useMemo(()=>g.markerEnd?`url('#${yu(g.markerEnd,p)}')`:void 0,[g.markerEnd,p]);if(g.hidden||O===null||_===null||L===null||E===null)return null;const G=Z=>{var ie;const{addSelectedEdges:K,unselectNodesAndEdges:oe,multiSelectionActive:ue}=A.getState();P&&(A.setState({nodesSelectionActive:!1}),g.selected&&ue?(oe({nodes:[],edges:[g]}),(ie=z.current)==null||ie.blur()):K([e])),s&&s(Z,g)},Y=i?Z=>{i(Z,{...g})}:void 0,q=o?Z=>{o(Z,{...g})}:void 0,H=l?Z=>{l(Z,{...g})}:void 0,Q=u?Z=>{u(Z,{...g})}:void 0,te=c?Z=>{c(Z,{...g})}:void 0,J=Z=>{var K;if(!y&&R1.includes(Z.key)&&P){const{unselectNodesAndEdges:oe,addSelectedEdges:ue}=A.getState();Z.key==="Escape"?((K=z.current)==null||K.blur(),oe({edges:[g]})):ue([e])}};return a.jsx("svg",{style:{zIndex:T},children:a.jsxs("g",{className:Ee(["react-flow__edge",`react-flow__edge-${k}`,g.className,b,{selected:g.selected,animated:g.animated,inactive:!P&&!s,updating:S,selectable:P}]),onClick:G,onDoubleClick:Y,onContextMenu:q,onMouseEnter:H,onMouseMove:Q,onMouseLeave:te,onKeyDown:M?J:void 0,tabIndex:M?0:void 0,role:g.ariaRole??(M?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":g.ariaLabel===null?void 0:g.ariaLabel||`Edge from ${g.source} to ${g.target}`,"aria-describedby":M?`${xm}-${p}`:void 0,ref:z,...g.domAttributes,children:[!F&&a.jsx(N,{id:e,source:g.source,target:g.target,type:g.type,selected:g.selected,animated:g.animated,selectable:P,deletable:g.deletable??!0,label:g.label,labelStyle:g.labelStyle,labelShowBg:g.labelShowBg,labelBgStyle:g.labelBgStyle,labelBgPadding:g.labelBgPadding,labelBgBorderRadius:g.labelBgBorderRadius,sourceX:O,sourceY:_,targetX:L,targetY:E,sourcePosition:R,targetPosition:D,data:g.data,style:g.style,sourceHandleId:g.sourceHandle,targetHandleId:g.targetHandle,markerStart:W,markerEnd:B,pathOptions:"pathOptions"in g?g.pathOptions:void 0,interactionWidth:g.interactionWidth}),I&&a.jsx(_w,{edge:g,isReconnectable:I,reconnectRadius:d,onReconnect:f,onReconnectStart:h,onReconnectEnd:m,sourceX:O,sourceY:_,targetX:L,targetY:E,sourcePosition:R,targetPosition:D,setUpdateHover:$,setReconnecting:C})]})})}var Mw=j.memo(Sw);const Lw=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function Bm({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:s,onReconnect:i,onEdgeContextMenu:o,onEdgeMouseEnter:l,onEdgeMouseMove:u,onEdgeMouseLeave:c,onEdgeClick:d,reconnectRadius:f,onEdgeDoubleClick:h,onReconnectStart:m,onReconnectEnd:p,disableKeyboardA11y:v}){const{edgesFocusable:b,edgesReconnectable:x,elementsSelectable:y,onError:g}=re(Lw,he),w=pw(t);return a.jsxs("div",{className:"react-flow__edges",children:[a.jsx(vw,{defaultColor:e,rfId:n}),w.map(k=>a.jsx(Mw,{id:k,edgesFocusable:b,edgesReconnectable:x,elementsSelectable:y,noPanClassName:s,onReconnect:i,onContextMenu:o,onMouseEnter:l,onMouseMove:u,onMouseLeave:c,onClick:d,reconnectRadius:f,onDoubleClick:h,onReconnectStart:m,onReconnectEnd:p,rfId:n,onError:g,edgeTypes:r,disableKeyboardA11y:v},k))]})}Bm.displayName="EdgeRenderer";const Iw=j.memo(Bm),Pw=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function Tw({children:e}){const t=re(Pw);return a.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}function $w(e){const t=Hc(),n=j.useRef(!1);j.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const Aw=e=>{var t;return(t=e.panZoom)==null?void 0:t.syncViewport};function Rw(e){const t=re(Aw),n=pe();return j.useEffect(()=>{e&&(t==null||t(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function Ow(e){return e.connection.inProgress?{...e.connection,to:ii(e.connection.to,e.transform)}:{...e.connection}}function zw(e){return Ow}function Dw(e){const t=zw();return re(t,he)}const Fw=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function Vw({containerStyle:e,style:t,type:n,component:r}){const{nodesConnectable:s,width:i,height:o,isValid:l,inProgress:u}=re(Fw,he);return!(i&&s&&u)?null:a.jsx("svg",{style:e,width:i,height:o,className:"react-flow__connectionline react-flow__container",children:a.jsx("g",{className:Ee(["react-flow__connection",D1(l)]),children:a.jsx(Wm,{style:t,type:n,CustomComponent:r,isValid:l})})})}const Wm=({style:e,type:t=on.Bezier,CustomComponent:n,isValid:r})=>{const{inProgress:s,from:i,fromNode:o,fromHandle:l,fromPosition:u,to:c,toNode:d,toHandle:f,toPosition:h,pointer:m}=Dw();if(!s)return;if(n)return a.jsx(n,{connectionLineType:t,connectionLineStyle:e,fromNode:o,fromHandle:l,fromX:i.x,fromY:i.y,toX:c.x,toY:c.y,fromPosition:u,toPosition:h,connectionStatus:D1(r),toNode:d,toHandle:f,pointer:m});let p="";const v={sourceX:i.x,sourceY:i.y,sourcePosition:u,targetX:c.x,targetY:c.y,targetPosition:h};switch(t){case on.Bezier:[p]=Rc(v);break;case on.SimpleBezier:[p]=Im(v);break;case on.Step:[p]=xu({...v,borderRadius:0});break;case on.SmoothStep:[p]=xu(v);break;default:[p]=Z1(v)}return a.jsx("path",{d:p,fill:"none",className:"react-flow__connection-path",style:e})};Wm.displayName="ConnectionLine";const Hw={};function p0(e=Hw){j.useRef(e),pe(),j.useEffect(()=>{},[e])}function Bw(){pe(),j.useRef(!1),j.useEffect(()=>{},[])}function Um({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:s,onNodeDoubleClick:i,onEdgeDoubleClick:o,onNodeMouseEnter:l,onNodeMouseMove:u,onNodeMouseLeave:c,onNodeContextMenu:d,onSelectionContextMenu:f,onSelectionStart:h,onSelectionEnd:m,connectionLineType:p,connectionLineStyle:v,connectionLineComponent:b,connectionLineContainerStyle:x,selectionKeyCode:y,selectionOnDrag:g,selectionMode:w,multiSelectionKeyCode:k,panActivationKeyCode:N,zoomActivationKeyCode:M,deleteKeyCode:I,onlyRenderVisibleElements:P,elementsSelectable:z,defaultViewport:S,translateExtent:$,minZoom:F,maxZoom:C,preventScrolling:A,defaultMarkerColor:T,zoomOnScroll:O,zoomOnPinch:_,panOnScroll:L,panOnScrollSpeed:E,panOnScrollMode:R,zoomOnDoubleClick:D,panOnDrag:W,onPaneClick:B,onPaneMouseEnter:G,onPaneMouseMove:Y,onPaneMouseLeave:q,onPaneScroll:H,onPaneContextMenu:Q,paneClickDistance:te,nodeClickDistance:J,onEdgeContextMenu:Z,onEdgeMouseEnter:K,onEdgeMouseMove:oe,onEdgeMouseLeave:ue,reconnectRadius:ie,onReconnect:$e,onReconnectStart:Kt,onReconnectEnd:$t,noDragClassName:jn,noWheelClassName:Br,noPanClassName:Wr,disableKeyboardA11y:Ur,nodeExtent:bl,rfId:di,viewport:Jn,onViewportChange:Gr}){return p0(e),p0(t),Bw(),$w(n),Rw(Jn),a.jsx(sw,{onPaneClick:B,onPaneMouseEnter:G,onPaneMouseMove:Y,onPaneMouseLeave:q,onPaneContextMenu:Q,onPaneScroll:H,paneClickDistance:te,deleteKeyCode:I,selectionKeyCode:y,selectionOnDrag:g,selectionMode:w,onSelectionStart:h,onSelectionEnd:m,multiSelectionKeyCode:k,panActivationKeyCode:N,zoomActivationKeyCode:M,elementsSelectable:z,zoomOnScroll:O,zoomOnPinch:_,zoomOnDoubleClick:D,panOnScroll:L,panOnScrollSpeed:E,panOnScrollMode:R,panOnDrag:W,defaultViewport:S,translateExtent:$,minZoom:F,maxZoom:C,onSelectionContextMenu:f,preventScrolling:A,noDragClassName:jn,noWheelClassName:Br,noPanClassName:Wr,disableKeyboardA11y:Ur,onViewportChange:Gr,isControlledViewport:!!Jn,children:a.jsxs(Tw,{children:[a.jsx(Iw,{edgeTypes:t,onEdgeClick:s,onEdgeDoubleClick:o,onReconnect:$e,onReconnectStart:Kt,onReconnectEnd:$t,onlyRenderVisibleElements:P,onEdgeContextMenu:Z,onEdgeMouseEnter:K,onEdgeMouseMove:oe,onEdgeMouseLeave:ue,reconnectRadius:ie,defaultMarkerColor:T,noPanClassName:Wr,disableKeyboardA11y:Ur,rfId:di}),a.jsx(Vw,{style:v,type:p,component:b,containerStyle:x}),a.jsx("div",{className:"react-flow__edgelabel-renderer"}),a.jsx(hw,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:i,onNodeMouseEnter:l,onNodeMouseMove:u,onNodeMouseLeave:c,onNodeContextMenu:d,nodeClickDistance:J,onlyRenderVisibleElements:P,noPanClassName:Wr,noDragClassName:jn,disableKeyboardA11y:Ur,nodeExtent:bl,rfId:di}),a.jsx("div",{className:"react-flow__viewport-portal"})]})})}Um.displayName="GraphView";const Ww=j.memo(Um),m0=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:s,height:i,fitView:o,fitViewOptions:l,minZoom:u=.5,maxZoom:c=2,nodeOrigin:d,nodeExtent:f,zIndexMode:h="basic"}={})=>{const m=new Map,p=new Map,v=new Map,b=new Map,x=r??t??[],y=n??e??[],g=d??[0,0],w=f??Hs;tm(v,b,x);const{nodesInitialized:k}=vu(y,m,p,{nodeOrigin:g,nodeExtent:w,zIndexMode:h});let N=[0,0,1];if(o&&s&&i){const M=ri(m,{filter:S=>!!((S.width||S.initialWidth)&&(S.height||S.initialHeight))}),{x:I,y:P,zoom:z}=$c(M,s,i,u,c,(l==null?void 0:l.padding)??.1);N=[I,P,z]}return{rfId:"1",width:s??0,height:i??0,transform:N,nodes:y,nodesInitialized:k,nodeLookup:m,parentLookup:p,edges:x,edgeLookup:b,connectionLookup:v,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:u,maxZoom:c,translateExtent:Hs,nodeExtent:w,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:Tr.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:g,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:l,fitViewResolver:null,connection:{...z1},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:Gv,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:O1,zIndexMode:h,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},Uw=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:s,height:i,fitView:o,fitViewOptions:l,minZoom:u,maxZoom:c,nodeOrigin:d,nodeExtent:f,zIndexMode:h})=>c8((m,p)=>{async function v(){const{nodeLookup:b,panZoom:x,fitViewOptions:y,fitViewResolver:g,width:w,height:k,minZoom:N,maxZoom:M}=p();x&&(await Wv({nodes:b,width:w,height:k,panZoom:x,minZoom:N,maxZoom:M},y),g==null||g.resolve(!0),m({fitViewResolver:null}))}return{...m0({nodes:e,edges:t,width:s,height:i,fitView:o,fitViewOptions:l,minZoom:u,maxZoom:c,nodeOrigin:d,nodeExtent:f,defaultNodes:n,defaultEdges:r,zIndexMode:h}),setNodes:b=>{const{nodeLookup:x,parentLookup:y,nodeOrigin:g,elevateNodesOnSelect:w,fitViewQueued:k,zIndexMode:N,nodesSelectionActive:M}=p(),{nodesInitialized:I,hasSelectedNodes:P}=vu(b,x,y,{nodeOrigin:g,nodeExtent:f,elevateNodesOnSelect:w,checkEquality:!0,zIndexMode:N}),z=M&&P;k&&I?(v(),m({nodes:b,nodesInitialized:I,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:z})):m({nodes:b,nodesInitialized:I,nodesSelectionActive:z})},setEdges:b=>{const{connectionLookup:x,edgeLookup:y}=p();tm(x,y,b),m({edges:b})},setDefaultNodesAndEdges:(b,x)=>{if(b){const{setNodes:y}=p();y(b),m({hasDefaultNodes:!0})}if(x){const{setEdges:y}=p();y(x),m({hasDefaultEdges:!0})}},updateNodeInternals:b=>{const{triggerNodeChanges:x,nodeLookup:y,parentLookup:g,domNode:w,nodeOrigin:k,nodeExtent:N,debug:M,fitViewQueued:I,zIndexMode:P}=p(),{changes:z,updatedInternals:S}=p6(b,y,g,w,k,N,P);S&&(c6(y,g,{nodeOrigin:k,nodeExtent:N,zIndexMode:P}),I?(v(),m({fitViewQueued:!1,fitViewOptions:void 0})):m({}),(z==null?void 0:z.length)>0&&(M&&console.log("React Flow: trigger node changes",z),x==null||x(z)))},updateNodePositions:(b,x=!1)=>{const y=[];let g=[];const{nodeLookup:w,triggerNodeChanges:k,connection:N,updateConnection:M,onNodesChangeMiddlewareMap:I}=p();for(const[P,z]of b){const S=w.get(P),$=!!(S!=null&&S.expandParent&&(S!=null&&S.parentId)&&(z!=null&&z.position)),F={id:P,type:"position",position:$?{x:Math.max(0,z.position.x),y:Math.max(0,z.position.y)}:z.position,dragging:x};if(S&&N.inProgress&&N.fromNode.id===S.id){const C=Xn(S,N.fromHandle,X.Left,!0);M({...N,from:C})}$&&S.parentId&&y.push({id:P,parentId:S.parentId,rect:{...z.internals.positionAbsolute,width:z.measured.width??0,height:z.measured.height??0}}),g.push(F)}if(y.length>0){const{parentLookup:P,nodeOrigin:z}=p(),S=Vc(y,w,P,z);g.push(...S)}for(const P of I.values())g=P(g);k(g)},triggerNodeChanges:b=>{const{onNodesChange:x,setNodes:y,nodes:g,hasDefaultNodes:w,debug:k}=p();if(b!=null&&b.length){if(w){const N=wm(b,g);y(N)}k&&console.log("React Flow: trigger node changes",b),x==null||x(b)}},triggerEdgeChanges:b=>{const{onEdgesChange:x,setEdges:y,edges:g,hasDefaultEdges:w,debug:k}=p();if(b!=null&&b.length){if(w){const N=bm(b,g);y(N)}k&&console.log("React Flow: trigger edge changes",b),x==null||x(b)}},addSelectedNodes:b=>{const{multiSelectionActive:x,edgeLookup:y,nodeLookup:g,triggerNodeChanges:w,triggerEdgeChanges:k}=p();if(x){const N=b.map(M=>In(M,!0));w(N);return}w(mr(g,new Set([...b]),!0)),k(mr(y))},addSelectedEdges:b=>{const{multiSelectionActive:x,edgeLookup:y,nodeLookup:g,triggerNodeChanges:w,triggerEdgeChanges:k}=p();if(x){const N=b.map(M=>In(M,!0));k(N);return}k(mr(y,new Set([...b]))),w(mr(g,new Set,!0))},unselectNodesAndEdges:({nodes:b,edges:x}={})=>{const{edges:y,nodes:g,nodeLookup:w,triggerNodeChanges:k,triggerEdgeChanges:N}=p(),M=b||g,I=x||y,P=[];for(const S of M){if(!S.selected)continue;const $=w.get(S.id);$&&($.selected=!1),P.push(In(S.id,!1))}const z=[];for(const S of I)S.selected&&z.push(In(S.id,!1));k(P),N(z)},setMinZoom:b=>{const{panZoom:x,maxZoom:y}=p();x==null||x.setScaleExtent([b,y]),m({minZoom:b})},setMaxZoom:b=>{const{panZoom:x,minZoom:y}=p();x==null||x.setScaleExtent([y,b]),m({maxZoom:b})},setTranslateExtent:b=>{var x;(x=p().panZoom)==null||x.setTranslateExtent(b),m({translateExtent:b})},resetSelectedElements:()=>{const{edges:b,nodes:x,triggerNodeChanges:y,triggerEdgeChanges:g,elementsSelectable:w}=p();if(!w)return;const k=x.reduce((M,I)=>I.selected?[...M,In(I.id,!1)]:M,[]),N=b.reduce((M,I)=>I.selected?[...M,In(I.id,!1)]:M,[]);y(k),g(N)},setNodeExtent:b=>{const{nodes:x,nodeLookup:y,parentLookup:g,nodeOrigin:w,elevateNodesOnSelect:k,nodeExtent:N,zIndexMode:M}=p();b[0][0]===N[0][0]&&b[0][1]===N[0][1]&&b[1][0]===N[1][0]&&b[1][1]===N[1][1]||(vu(x,y,g,{nodeOrigin:w,nodeExtent:b,elevateNodesOnSelect:k,checkEquality:!1,zIndexMode:M}),m({nodeExtent:b}))},panBy:b=>{const{transform:x,width:y,height:g,panZoom:w,translateExtent:k}=p();return m6({delta:b,panZoom:w,transform:x,translateExtent:k,width:y,height:g})},setCenter:async(b,x,y)=>{const{width:g,height:w,maxZoom:k,panZoom:N}=p();if(!N)return Promise.resolve(!1);const M=typeof(y==null?void 0:y.zoom)<"u"?y.zoom:k;return await N.setViewport({x:g/2-b*M,y:w/2-x*M,zoom:M},{duration:y==null?void 0:y.duration,ease:y==null?void 0:y.ease,interpolate:y==null?void 0:y.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{m({connection:{...z1}})},updateConnection:b=>{m({connection:b})},reset:()=>m({...m0()})}},Object.is);function Gw({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:s,initialHeight:i,initialMinZoom:o,initialMaxZoom:l,initialFitViewOptions:u,fitView:c,nodeOrigin:d,nodeExtent:f,zIndexMode:h,children:m}){const[p]=j.useState(()=>Uw({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:s,height:i,fitView:c,minZoom:o,maxZoom:l,fitViewOptions:u,nodeOrigin:d,nodeExtent:f,zIndexMode:h}));return a.jsx(d8,{value:p,children:a.jsx(T8,{children:m})})}function Yw({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:s,width:i,height:o,fitView:l,fitViewOptions:u,minZoom:c,maxZoom:d,nodeOrigin:f,nodeExtent:h,zIndexMode:m}){return j.useContext(ml)?a.jsx(a.Fragment,{children:e}):a.jsx(Gw,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:s,initialWidth:i,initialHeight:o,fitView:l,initialFitViewOptions:u,initialMinZoom:c,initialMaxZoom:d,nodeOrigin:f,nodeExtent:h,zIndexMode:m,children:e})}const Xw={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function qw({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:s,nodeTypes:i,edgeTypes:o,onNodeClick:l,onEdgeClick:u,onInit:c,onMove:d,onMoveStart:f,onMoveEnd:h,onConnect:m,onConnectStart:p,onConnectEnd:v,onClickConnectStart:b,onClickConnectEnd:x,onNodeMouseEnter:y,onNodeMouseMove:g,onNodeMouseLeave:w,onNodeContextMenu:k,onNodeDoubleClick:N,onNodeDragStart:M,onNodeDrag:I,onNodeDragStop:P,onNodesDelete:z,onEdgesDelete:S,onDelete:$,onSelectionChange:F,onSelectionDragStart:C,onSelectionDrag:A,onSelectionDragStop:T,onSelectionContextMenu:O,onSelectionStart:_,onSelectionEnd:L,onBeforeDelete:E,connectionMode:R,connectionLineType:D=on.Bezier,connectionLineStyle:W,connectionLineComponent:B,connectionLineContainerStyle:G,deleteKeyCode:Y="Backspace",selectionKeyCode:q="Shift",selectionOnDrag:H=!1,selectionMode:Q=Bs.Full,panActivationKeyCode:te="Space",multiSelectionKeyCode:J=Gs()?"Meta":"Control",zoomActivationKeyCode:Z=Gs()?"Meta":"Control",snapToGrid:K,snapGrid:oe,onlyRenderVisibleElements:ue=!1,selectNodesOnDrag:ie,nodesDraggable:$e,autoPanOnNodeFocus:Kt,nodesConnectable:$t,nodesFocusable:jn,nodeOrigin:Br=ym,edgesFocusable:Wr,edgesReconnectable:Ur,elementsSelectable:bl=!0,defaultViewport:di=C8,minZoom:Jn=.5,maxZoom:Gr=2,translateExtent:qc=Hs,preventScrolling:Sg=!0,nodeExtent:kl,defaultMarkerColor:Mg="#b1b1b7",zoomOnScroll:Lg=!0,zoomOnPinch:Ig=!0,panOnScroll:Pg=!1,panOnScrollSpeed:Tg=.5,panOnScrollMode:$g=Dn.Free,zoomOnDoubleClick:Ag=!0,panOnDrag:Rg=!0,onPaneClick:Og,onPaneMouseEnter:zg,onPaneMouseMove:Dg,onPaneMouseLeave:Fg,onPaneScroll:Vg,onPaneContextMenu:Hg,paneClickDistance:Bg=1,nodeClickDistance:Wg=0,children:Ug,onReconnect:Gg,onReconnectStart:Yg,onReconnectEnd:Xg,onEdgeContextMenu:qg,onEdgeDoubleClick:Qg,onEdgeMouseEnter:Kg,onEdgeMouseMove:Zg,onEdgeMouseLeave:Jg,reconnectRadius:e2=10,onNodesChange:t2,onEdgesChange:n2,noDragClassName:r2="nodrag",noWheelClassName:s2="nowheel",noPanClassName:Qc="nopan",fitView:Kc,fitViewOptions:Zc,connectOnClick:i2,attributionPosition:o2,proOptions:l2,defaultEdgeOptions:a2,elevateNodesOnSelect:u2=!0,elevateEdgesOnSelect:c2=!1,disableKeyboardA11y:Jc=!1,autoPanOnConnect:d2,autoPanOnNodeDrag:f2,autoPanSpeed:h2,connectionRadius:p2,isValidConnection:m2,onError:g2,style:x2,id:ed,nodeDragThreshold:y2,connectionDragThreshold:v2,viewport:w2,onViewportChange:b2,width:k2,height:N2,colorMode:C2="light",debug:E2,onScroll:fi,ariaLabelConfig:j2,zIndexMode:td="basic",..._2},S2){const Nl=ed||"1",M2=S8(C2),L2=j.useCallback(nd=>{nd.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),fi==null||fi(nd)},[fi]);return a.jsx("div",{"data-testid":"rf__wrapper",..._2,onScroll:L2,style:{...x2,...Xw},ref:S2,className:Ee(["react-flow",s,M2]),id:ed,role:"application",children:a.jsxs(Yw,{nodes:e,edges:t,width:k2,height:N2,fitView:Kc,fitViewOptions:Zc,minZoom:Jn,maxZoom:Gr,nodeOrigin:Br,nodeExtent:kl,zIndexMode:td,children:[a.jsx(_8,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:m,onConnectStart:p,onConnectEnd:v,onClickConnectStart:b,onClickConnectEnd:x,nodesDraggable:$e,autoPanOnNodeFocus:Kt,nodesConnectable:$t,nodesFocusable:jn,edgesFocusable:Wr,edgesReconnectable:Ur,elementsSelectable:bl,elevateNodesOnSelect:u2,elevateEdgesOnSelect:c2,minZoom:Jn,maxZoom:Gr,nodeExtent:kl,onNodesChange:t2,onEdgesChange:n2,snapToGrid:K,snapGrid:oe,connectionMode:R,translateExtent:qc,connectOnClick:i2,defaultEdgeOptions:a2,fitView:Kc,fitViewOptions:Zc,onNodesDelete:z,onEdgesDelete:S,onDelete:$,onNodeDragStart:M,onNodeDrag:I,onNodeDragStop:P,onSelectionDrag:A,onSelectionDragStart:C,onSelectionDragStop:T,onMove:d,onMoveStart:f,onMoveEnd:h,noPanClassName:Qc,nodeOrigin:Br,rfId:Nl,autoPanOnConnect:d2,autoPanOnNodeDrag:f2,autoPanSpeed:h2,onError:g2,connectionRadius:p2,isValidConnection:m2,selectNodesOnDrag:ie,nodeDragThreshold:y2,connectionDragThreshold:v2,onBeforeDelete:E,debug:E2,ariaLabelConfig:j2,zIndexMode:td}),a.jsx(Ww,{onInit:c,onNodeClick:l,onEdgeClick:u,onNodeMouseEnter:y,onNodeMouseMove:g,onNodeMouseLeave:w,onNodeContextMenu:k,onNodeDoubleClick:N,nodeTypes:i,edgeTypes:o,connectionLineType:D,connectionLineStyle:W,connectionLineComponent:B,connectionLineContainerStyle:G,selectionKeyCode:q,selectionOnDrag:H,selectionMode:Q,deleteKeyCode:Y,multiSelectionKeyCode:J,panActivationKeyCode:te,zoomActivationKeyCode:Z,onlyRenderVisibleElements:ue,defaultViewport:di,translateExtent:qc,minZoom:Jn,maxZoom:Gr,preventScrolling:Sg,zoomOnScroll:Lg,zoomOnPinch:Ig,zoomOnDoubleClick:Ag,panOnScroll:Pg,panOnScrollSpeed:Tg,panOnScrollMode:$g,panOnDrag:Rg,onPaneClick:Og,onPaneMouseEnter:zg,onPaneMouseMove:Dg,onPaneMouseLeave:Fg,onPaneScroll:Vg,onPaneContextMenu:Hg,paneClickDistance:Bg,nodeClickDistance:Wg,onSelectionContextMenu:O,onSelectionStart:_,onSelectionEnd:L,onReconnect:Gg,onReconnectStart:Yg,onReconnectEnd:Xg,onEdgeContextMenu:qg,onEdgeDoubleClick:Qg,onEdgeMouseEnter:Kg,onEdgeMouseMove:Zg,onEdgeMouseLeave:Jg,reconnectRadius:e2,defaultMarkerColor:Mg,noDragClassName:r2,noWheelClassName:s2,noPanClassName:Qc,rfId:Nl,disableKeyboardA11y:Jc,nodeExtent:kl,viewport:w2,onViewportChange:b2}),a.jsx(N8,{onSelectionChange:F}),Ug,a.jsx(y8,{proOptions:l2,position:o2}),a.jsx(x8,{rfId:Nl,disableKeyboardA11y:Jc})]})})}var Qw=km(qw);const Kw=e=>{var t;return(t=e.domNode)==null?void 0:t.querySelector(".react-flow__edgelabel-renderer")};function Zw({children:e}){const t=re(Kw);return t?il.createPortal(e,t):null}function Jw(e){const[t,n]=j.useState(e),r=j.useCallback(s=>n(i=>wm(s,i)),[]);return[t,n,r]}function e7(e){const[t,n]=j.useState(e),r=j.useCallback(s=>n(i=>bm(s,i)),[]);return[t,n,r]}function t7({dimensions:e,lineWidth:t,variant:n,className:r}){return a.jsx("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:Ee(["react-flow__background-pattern",n,r])})}function n7({radius:e,className:t}){return a.jsx("circle",{cx:e,cy:e,r:e,className:Ee(["react-flow__background-pattern","dots",t])})}var xn;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(xn||(xn={}));const r7={[xn.Dots]:1,[xn.Lines]:1,[xn.Cross]:6},s7=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function Gm({id:e,variant:t=xn.Dots,gap:n=20,size:r,lineWidth:s=1,offset:i=0,color:o,bgColor:l,style:u,className:c,patternClassName:d}){const f=j.useRef(null),{transform:h,patternId:m}=re(s7,he),p=r||r7[t],v=t===xn.Dots,b=t===xn.Cross,x=Array.isArray(n)?n:[n,n],y=[x[0]*h[2]||1,x[1]*h[2]||1],g=p*h[2],w=Array.isArray(i)?i:[i,i],k=b?[g,g]:y,N=[w[0]*h[2]||1+k[0]/2,w[1]*h[2]||1+k[1]/2],M=`${m}${e||""}`;return a.jsxs("svg",{className:Ee(["react-flow__background",c]),style:{...u,...xl,"--xy-background-color-props":l,"--xy-background-pattern-color-props":o},ref:f,"data-testid":"rf__background",children:[a.jsx("pattern",{id:M,x:h[0]%y[0],y:h[1]%y[1],width:y[0],height:y[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${N[0]},-${N[1]})`,children:v?a.jsx(n7,{radius:g/2,className:d}):a.jsx(t7,{dimensions:k,lineWidth:s,variant:t,className:d})}),a.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${M})`})]})}Gm.displayName="Background";const i7=j.memo(Gm);function o7(){return a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:a.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function l7(){return a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:a.jsx("path",{d:"M0 0h32v4.2H0z"})})}function a7(){return a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:a.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 u7(){return a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:a.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 c7(){return a.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:a.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 zi({children:e,className:t,...n}){return a.jsx("button",{type:"button",className:Ee(["react-flow__controls-button",t]),...n,children:e})}const d7=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function Ym({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:s,onZoomIn:i,onZoomOut:o,onFitView:l,onInteractiveChange:u,className:c,children:d,position:f="bottom-left",orientation:h="vertical","aria-label":m}){const p=pe(),{isInteractive:v,minZoomReached:b,maxZoomReached:x,ariaLabelConfig:y}=re(d7,he),{zoomIn:g,zoomOut:w,fitView:k}=Hc(),N=()=>{g(),i==null||i()},M=()=>{w(),o==null||o()},I=()=>{k(s),l==null||l()},P=()=>{p.setState({nodesDraggable:!v,nodesConnectable:!v,elementsSelectable:!v}),u==null||u(!v)},z=h==="horizontal"?"horizontal":"vertical";return a.jsxs(gl,{className:Ee(["react-flow__controls",z,c]),position:f,style:e,"data-testid":"rf__controls","aria-label":m??y["controls.ariaLabel"],children:[t&&a.jsxs(a.Fragment,{children:[a.jsx(zi,{onClick:N,className:"react-flow__controls-zoomin",title:y["controls.zoomIn.ariaLabel"],"aria-label":y["controls.zoomIn.ariaLabel"],disabled:x,children:a.jsx(o7,{})}),a.jsx(zi,{onClick:M,className:"react-flow__controls-zoomout",title:y["controls.zoomOut.ariaLabel"],"aria-label":y["controls.zoomOut.ariaLabel"],disabled:b,children:a.jsx(l7,{})})]}),n&&a.jsx(zi,{className:"react-flow__controls-fitview",onClick:I,title:y["controls.fitView.ariaLabel"],"aria-label":y["controls.fitView.ariaLabel"],children:a.jsx(a7,{})}),r&&a.jsx(zi,{className:"react-flow__controls-interactive",onClick:P,title:y["controls.interactive.ariaLabel"],"aria-label":y["controls.interactive.ariaLabel"],children:v?a.jsx(c7,{}):a.jsx(u7,{})}),d]})}Ym.displayName="Controls";const f7=j.memo(Ym);function h7({id:e,x:t,y:n,width:r,height:s,style:i,color:o,strokeColor:l,strokeWidth:u,className:c,borderRadius:d,shapeRendering:f,selected:h,onClick:m}){const{background:p,backgroundColor:v}=i||{},b=o||p||v;return a.jsx("rect",{className:Ee(["react-flow__minimap-node",{selected:h},c]),x:t,y:n,rx:d,ry:d,width:r,height:s,style:{fill:b,stroke:l,strokeWidth:u},shapeRendering:f,onClick:m?x=>m(x,e):void 0})}const p7=j.memo(h7),m7=e=>e.nodes.map(t=>t.id),ia=e=>e instanceof Function?e:()=>e;function g7({nodeStrokeColor:e,nodeColor:t,nodeClassName:n="",nodeBorderRadius:r=5,nodeStrokeWidth:s,nodeComponent:i=p7,onClick:o}){const l=re(m7,he),u=ia(t),c=ia(e),d=ia(n),f=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return a.jsx(a.Fragment,{children:l.map(h=>a.jsx(y7,{id:h,nodeColorFunc:u,nodeStrokeColorFunc:c,nodeClassNameFunc:d,nodeBorderRadius:r,nodeStrokeWidth:s,NodeComponent:i,onClick:o,shapeRendering:f},h))})}function x7({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:s,nodeStrokeWidth:i,shapeRendering:o,NodeComponent:l,onClick:u}){const{node:c,x:d,y:f,width:h,height:m}=re(p=>{const v=p.nodeLookup.get(e);if(!v)return{node:void 0,x:0,y:0,width:0,height:0};const b=v.internals.userNode,{x,y}=v.internals.positionAbsolute,{width:g,height:w}=Qt(b);return{node:b,x,y,width:g,height:w}},he);return!c||c.hidden||!U1(c)?null:a.jsx(l,{x:d,y:f,width:h,height:m,style:c.style,selected:!!c.selected,className:r(c),color:t(c),borderRadius:s,strokeColor:n(c),strokeWidth:i,shapeRendering:o,onClick:u,id:c.id})}const y7=j.memo(x7);var v7=j.memo(g7);const w7=200,b7=150,k7=e=>!e.hidden,N7=e=>{const t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?W1(ri(e.nodeLookup,{filter:k7}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},C7="react-flow__minimap-desc";function Xm({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:s="",nodeBorderRadius:i=5,nodeStrokeWidth:o,nodeComponent:l,bgColor:u,maskColor:c,maskStrokeColor:d,maskStrokeWidth:f,position:h="bottom-right",onClick:m,onNodeClick:p,pannable:v=!1,zoomable:b=!1,ariaLabel:x,inversePan:y,zoomStep:g=1,offsetScale:w=5}){const k=pe(),N=j.useRef(null),{boundingRect:M,viewBB:I,rfId:P,panZoom:z,translateExtent:S,flowWidth:$,flowHeight:F,ariaLabelConfig:C}=re(N7,he),A=(e==null?void 0:e.width)??w7,T=(e==null?void 0:e.height)??b7,O=M.width/A,_=M.height/T,L=Math.max(O,_),E=L*A,R=L*T,D=w*L,W=M.x-(E-M.width)/2-D,B=M.y-(R-M.height)/2-D,G=E+D*2,Y=R+D*2,q=`${C7}-${P}`,H=j.useRef(0),Q=j.useRef();H.current=L,j.useEffect(()=>{if(N.current&&z)return Q.current=C6({domNode:N.current,panZoom:z,getTransform:()=>k.getState().transform,getViewScale:()=>H.current}),()=>{var K;(K=Q.current)==null||K.destroy()}},[z]),j.useEffect(()=>{var K;(K=Q.current)==null||K.update({translateExtent:S,width:$,height:F,inversePan:y,pannable:v,zoomStep:g,zoomable:b})},[v,b,y,g,S,$,F]);const te=m?K=>{var ie;const[oe,ue]=((ie=Q.current)==null?void 0:ie.pointer(K))||[0,0];m(K,{x:oe,y:ue})}:void 0,J=p?j.useCallback((K,oe)=>{const ue=k.getState().nodeLookup.get(oe).internals.userNode;p(K,ue)},[]):void 0,Z=x??C["minimap.ariaLabel"];return a.jsx(gl,{position:h,style:{...e,"--xy-minimap-background-color-props":typeof u=="string"?u: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 f=="number"?f*L:void 0,"--xy-minimap-node-background-color-props":typeof r=="string"?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof o=="number"?o:void 0},className:Ee(["react-flow__minimap",t]),"data-testid":"rf__minimap",children:a.jsxs("svg",{width:A,height:T,viewBox:`${W} ${B} ${G} ${Y}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":q,ref:N,onClick:te,children:[Z&&a.jsx("title",{id:q,children:Z}),a.jsx(v7,{onClick:J,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:i,nodeClassName:s,nodeStrokeWidth:o,nodeComponent:l}),a.jsx("path",{className:"react-flow__minimap-mask",d:`M${W-D},${B-D}h${G+D*2}v${Y+D*2}h${-G-D*2}z
|
|
69
|
+
M${I.x},${I.y}h${I.width}v${I.height}h${-I.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Xm.displayName="MiniMap";const E7=j.memo(Xm),j7=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,_7={[Or.Line]:"right",[Or.Handle]:"bottom-right"};function S7({nodeId:e,position:t,variant:n=Or.Handle,className:r,style:s=void 0,children:i,color:o,minWidth:l=10,minHeight:u=10,maxWidth:c=Number.MAX_VALUE,maxHeight:d=Number.MAX_VALUE,keepAspectRatio:f=!1,resizeDirection:h,autoScale:m=!0,shouldResize:p,onResizeStart:v,onResize:b,onResizeEnd:x}){const y=jm(),g=typeof e=="string"?e:y,w=pe(),k=j.useRef(null),N=n===Or.Handle,M=re(j.useCallback(j7(N&&m),[N,m]),he),I=j.useRef(null),P=t??_7[n];j.useEffect(()=>{if(!(!k.current||!g))return I.current||(I.current=z6({domNode:k.current,nodeId:g,getStoreItems:()=>{const{nodeLookup:S,transform:$,snapGrid:F,snapToGrid:C,nodeOrigin:A,domNode:T}=w.getState();return{nodeLookup:S,transform:$,snapGrid:F,snapToGrid:C,nodeOrigin:A,paneDomNode:T}},onChange:(S,$)=>{const{triggerNodeChanges:F,nodeLookup:C,parentLookup:A,nodeOrigin:T}=w.getState(),O=[],_={x:S.x,y:S.y},L=C.get(g);if(L&&L.expandParent&&L.parentId){const E=L.origin??T,R=S.width??L.measured.width??0,D=S.height??L.measured.height??0,W={id:L.id,parentId:L.parentId,rect:{width:R,height:D,...G1({x:S.x??L.position.x,y:S.y??L.position.y},{width:R,height:D},L.parentId,C,E)}},B=Vc([W],C,A,T);O.push(...B),_.x=S.x?Math.max(E[0]*R,S.x):void 0,_.y=S.y?Math.max(E[1]*D,S.y):void 0}if(_.x!==void 0&&_.y!==void 0){const E={id:g,type:"position",position:{..._}};O.push(E)}if(S.width!==void 0&&S.height!==void 0){const R={id:g,type:"dimensions",resizing:!0,setAttributes:h?h==="horizontal"?"width":"height":!0,dimensions:{width:S.width,height:S.height}};O.push(R)}for(const E of $){const R={...E,type:"position"};O.push(R)}F(O)},onEnd:({width:S,height:$})=>{const F={id:g,type:"dimensions",resizing:!1,dimensions:{width:S,height:$}};w.getState().triggerNodeChanges([F])}})),I.current.update({controlPosition:P,boundaries:{minWidth:l,minHeight:u,maxWidth:c,maxHeight:d},keepAspectRatio:f,resizeDirection:h,onResizeStart:v,onResize:b,onResizeEnd:x,shouldResize:p}),()=>{var S;(S=I.current)==null||S.destroy()}},[P,l,u,c,d,f,v,b,x,p]);const z=P.split("-");return a.jsx("div",{className:Ee(["react-flow__resize-control","nodrag",...z,n,r]),ref:k,style:{...s,scale:M,...o&&{[N?"backgroundColor":"borderColor"]:o}},children:i})}j.memo(S7);function Ht(e){return`${e.name}|${e.tableName}`}function ee(e,t,n=`${t}s`){return e===1?t:n}const M7={integer:"bg-blue-100 text-blue-700",bigint:"bg-blue-100 text-blue-700",string:"bg-emerald-100 text-emerald-700",text:"bg-emerald-100 text-emerald-700",boolean:"bg-purple-100 text-purple-700",datetime:"bg-orange-100 text-orange-700",date:"bg-orange-100 text-orange-700",time:"bg-orange-100 text-orange-700",decimal:"bg-yellow-100 text-yellow-700",float:"bg-yellow-100 text-yellow-700",json:"bg-pink-100 text-pink-700",jsonb:"bg-pink-100 text-pink-700",uuid:"bg-gray-100 text-gray-600"};function L7(e){return M7[e]??"bg-gray-100 text-gray-500"}const I7=j.memo(function({col:t}){var n;return a.jsxs("div",{className:"flex items-center gap-1.5 px-3 py-1 text-xs min-h-[24px]",children:[a.jsxs("span",{className:`flex-1 truncate ${t.primary?"font-semibold text-amber-700":"text-gray-700"}`,title:t.name,children:[t.primary&&a.jsx("span",{className:"mr-0.5",title:"Primary Key",children:"🔑"}),t.name,!t.null&&!t.primary&&a.jsx("span",{className:"text-red-400 ml-0.5",title:"NOT NULL",children:"*"})]}),t.enum&&a.jsx("span",{className:"shrink-0 text-[9px] bg-purple-100 text-purple-600 px-1 py-0.5 rounded",title:`Enum values: ${t.enum.join(", ")}`,children:"enum"}),((n=t.index)==null?void 0:n.unique)&&!t.primary&&a.jsx("span",{className:"shrink-0 text-[9px] bg-teal-100 text-teal-600 px-1 py-0.5 rounded",title:`Unique index: ${t.index.name}`,children:"UQ"}),t.index&&!t.index.unique&&a.jsx("span",{className:"shrink-0 text-[9px] bg-sky-100 text-sky-600 px-1 py-0.5 rounded",title:`Index: ${t.index.name}`,children:"IDX"}),a.jsx("span",{className:`shrink-0 text-[10px] px-1.5 py-0.5 rounded font-mono ${L7(t.type)}`,title:t.type,children:t.type})]})}),P7=j.memo(function({data:t,selected:n}){const r=t.compact??!1,s=r?200:260;return a.jsxs("div",{className:`rounded-lg shadow-md border-2 overflow-hidden bg-white ${n?"border-indigo-500 shadow-lg shadow-indigo-100":"border-gray-200"}`,style:{width:s},children:[a.jsx(Dr,{type:"target",position:X.Left,className:"!w-2.5 !h-2.5 !bg-indigo-400 !border-2 !border-white"}),a.jsx(Dr,{type:"source",position:X.Right,className:"!w-2.5 !h-2.5 !bg-indigo-400 !border-2 !border-white"}),a.jsxs("div",{className:"bg-indigo-600 px-3 py-2.5",children:[a.jsx("div",{className:"text-white font-semibold text-sm leading-tight truncate",children:t.name}),a.jsx("div",{className:"text-indigo-200 text-xs mt-0.5 font-mono truncate",children:t.tableName})]}),r?a.jsxs("div",{className:"px-3 py-1.5 text-xs text-gray-500",children:[t.columnCount," ",ee(t.columnCount,"column")]}):a.jsxs("div",{className:"divide-y divide-gray-50",children:[t.columns.map(i=>a.jsx(I7,{col:i},i.name)),t.columns.length===0&&a.jsx("div",{className:"px-3 py-2 text-xs text-gray-400 italic",children:"No columns"})]})]})}),T7={has_many:"#6366f1",has_one:"#10b981",belongs_to:"#f59e0b"},$7=j.memo(function({sourceX:t,sourceY:n,targetX:r,targetY:s,sourcePosition:i,targetPosition:o,data:l,markerEnd:u,selected:c,style:d={}}){const[f,h,m]=Rc({sourceX:t,sourceY:n,sourcePosition:i,targetX:r,targetY:s,targetPosition:o}),p=T7[(l==null?void 0:l.macro)??""]??"#94a3b8",v=(l==null?void 0:l.compact)??!1,b=typeof d.opacity=="number"&&d.opacity<.5;return a.jsxs(a.Fragment,{children:[a.jsx(oi,{path:f,markerEnd:u,style:{stroke:p,strokeWidth:c?2.5:1.5,opacity:c?1:.5,...d}}),!v&&!b&&a.jsx(Zw,{children:a.jsx("div",{style:{position:"absolute",transform:`translate(-50%, -50%) translate(${h}px,${m}px)`,pointerEvents:"all"},className:"nodrag nopan",children:a.jsxs("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full font-medium shadow-sm border bg-white",style:{color:p,borderColor:p},children:[l==null?void 0:l.macro,(l==null?void 0:l.through)&&a.jsxs("span",{className:"opacity-50",children:[" via ",l.through]})]})})})]})});var A7="\0",_n="\0",g0="";let R7=class{constructor(t){ke(this,"_isDirected",!0);ke(this,"_isMultigraph",!1);ke(this,"_isCompound",!1);ke(this,"_label");ke(this,"_defaultNodeLabelFn",()=>{});ke(this,"_defaultEdgeLabelFn",()=>{});ke(this,"_nodes",{});ke(this,"_in",{});ke(this,"_preds",{});ke(this,"_out",{});ke(this,"_sucs",{});ke(this,"_edgeObjs",{});ke(this,"_edgeLabels",{});ke(this,"_nodeCount",0);ke(this,"_edgeCount",0);ke(this,"_parent");ke(this,"_children");t&&(this._isDirected=Object.hasOwn(t,"directed")?t.directed:!0,this._isMultigraph=Object.hasOwn(t,"multigraph")?t.multigraph:!1,this._isCompound=Object.hasOwn(t,"compound")?t.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[_n]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(t){return this._label=t,this}graph(){return this._label}setDefaultNodeLabel(t){return this._defaultNodeLabelFn=t,typeof t!="function"&&(this._defaultNodeLabelFn=()=>t),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var t=this;return this.nodes().filter(n=>Object.keys(t._in[n]).length===0)}sinks(){var t=this;return this.nodes().filter(n=>Object.keys(t._out[n]).length===0)}setNodes(t,n){var r=arguments,s=this;return t.forEach(function(i){r.length>1?s.setNode(i,n):s.setNode(i)}),this}setNode(t,n){return Object.hasOwn(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=n),this):(this._nodes[t]=arguments.length>1?n:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=_n,this._children[t]={},this._children[_n][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)}node(t){return this._nodes[t]}hasNode(t){return Object.hasOwn(this._nodes,t)}removeNode(t){var n=this;if(Object.hasOwn(this._nodes,t)){var r=s=>n.removeEdge(n._edgeObjs[s]);delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],this.children(t).forEach(function(s){n.setParent(s)}),delete this._children[t]),Object.keys(this._in[t]).forEach(r),delete this._in[t],delete this._preds[t],Object.keys(this._out[t]).forEach(r),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this}setParent(t,n){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(n===void 0)n=_n;else{n+="";for(var r=n;r!==void 0;r=this.parent(r))if(r===t)throw new Error("Setting "+n+" as parent of "+t+" would create a cycle");this.setNode(n)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=n,this._children[n][t]=!0,this}_removeFromParentsChildList(t){delete this._children[this._parent[t]][t]}parent(t){if(this._isCompound){var n=this._parent[t];if(n!==_n)return n}}children(t=_n){if(this._isCompound){var n=this._children[t];if(n)return Object.keys(n)}else{if(t===_n)return this.nodes();if(this.hasNode(t))return[]}}predecessors(t){var n=this._preds[t];if(n)return Object.keys(n)}successors(t){var n=this._sucs[t];if(n)return Object.keys(n)}neighbors(t){var n=this.predecessors(t);if(n){const s=new Set(n);for(var r of this.successors(t))s.add(r);return Array.from(s.values())}}isLeaf(t){var n;return this.isDirected()?n=this.successors(t):n=this.neighbors(t),n.length===0}filterNodes(t){var n=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});n.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([o,l]){t(o)&&n.setNode(o,l)}),Object.values(this._edgeObjs).forEach(function(o){n.hasNode(o.v)&&n.hasNode(o.w)&&n.setEdge(o,r.edge(o))});var s={};function i(o){var l=r.parent(o);return l===void 0||n.hasNode(l)?(s[o]=l,l):l in s?s[l]:i(l)}return this._isCompound&&n.nodes().forEach(o=>n.setParent(o,i(o))),n}setDefaultEdgeLabel(t){return this._defaultEdgeLabelFn=t,typeof t!="function"&&(this._defaultEdgeLabelFn=()=>t),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(t,n){var r=this,s=arguments;return t.reduce(function(i,o){return s.length>1?r.setEdge(i,o,n):r.setEdge(i,o),o}),this}setEdge(){var t,n,r,s,i=!1,o=arguments[0];typeof o=="object"&&o!==null&&"v"in o?(t=o.v,n=o.w,r=o.name,arguments.length===2&&(s=arguments[1],i=!0)):(t=o,n=arguments[1],r=arguments[3],arguments.length>2&&(s=arguments[2],i=!0)),t=""+t,n=""+n,r!==void 0&&(r=""+r);var l=us(this._isDirected,t,n,r);if(Object.hasOwn(this._edgeLabels,l))return i&&(this._edgeLabels[l]=s),this;if(r!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(n),this._edgeLabels[l]=i?s:this._defaultEdgeLabelFn(t,n,r);var u=O7(this._isDirected,t,n,r);return t=u.v,n=u.w,Object.freeze(u),this._edgeObjs[l]=u,x0(this._preds[n],t),x0(this._sucs[t],n),this._in[n][l]=u,this._out[t][l]=u,this._edgeCount++,this}edge(t,n,r){var s=arguments.length===1?oa(this._isDirected,arguments[0]):us(this._isDirected,t,n,r);return this._edgeLabels[s]}edgeAsObj(){const t=this.edge(...arguments);return typeof t!="object"?{label:t}:t}hasEdge(t,n,r){var s=arguments.length===1?oa(this._isDirected,arguments[0]):us(this._isDirected,t,n,r);return Object.hasOwn(this._edgeLabels,s)}removeEdge(t,n,r){var s=arguments.length===1?oa(this._isDirected,arguments[0]):us(this._isDirected,t,n,r),i=this._edgeObjs[s];return i&&(t=i.v,n=i.w,delete this._edgeLabels[s],delete this._edgeObjs[s],y0(this._preds[n],t),y0(this._sucs[t],n),delete this._in[n][s],delete this._out[t][s],this._edgeCount--),this}inEdges(t,n){var r=this._in[t];if(r){var s=Object.values(r);return n?s.filter(i=>i.v===n):s}}outEdges(t,n){var r=this._out[t];if(r){var s=Object.values(r);return n?s.filter(i=>i.w===n):s}}nodeEdges(t,n){var r=this.inEdges(t,n);if(r)return r.concat(this.outEdges(t,n))}};function x0(e,t){e[t]?e[t]++:e[t]=1}function y0(e,t){--e[t]||delete e[t]}function us(e,t,n,r){var s=""+t,i=""+n;if(!e&&s>i){var o=s;s=i,i=o}return s+g0+i+g0+(r===void 0?A7:r)}function O7(e,t,n,r){var s=""+t,i=""+n;if(!e&&s>i){var o=s;s=i,i=o}var l={v:s,w:i};return r&&(l.name=r),l}function oa(e,t){return us(e,t.v,t.w,t.name)}var Wc=R7,z7="2.2.4",D7={Graph:Wc,version:z7},F7=Wc,V7={write:H7,read:U7};function H7(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:B7(e),edges:W7(e)};return e.graph()!==void 0&&(t.value=structuredClone(e.graph())),t}function B7(e){return e.nodes().map(function(t){var n=e.node(t),r=e.parent(t),s={v:t};return n!==void 0&&(s.value=n),r!==void 0&&(s.parent=r),s})}function W7(e){return e.edges().map(function(t){var n=e.edge(t),r={v:t.v,w:t.w};return t.name!==void 0&&(r.name=t.name),n!==void 0&&(r.value=n),r})}function U7(e){var t=new F7(e.options).setGraph(e.value);return e.nodes.forEach(function(n){t.setNode(n.v,n.value),n.parent&&t.setParent(n.v,n.parent)}),e.edges.forEach(function(n){t.setEdge({v:n.v,w:n.w,name:n.name},n.value)}),t}var G7=Y7;function Y7(e){var t={},n=[],r;function s(i){Object.hasOwn(t,i)||(t[i]=!0,r.push(i),e.successors(i).forEach(s),e.predecessors(i).forEach(s))}return e.nodes().forEach(function(i){r=[],s(i),r.length&&n.push(r)}),n}let X7=class{constructor(){ke(this,"_arr",[]);ke(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(t){return t.key})}has(t){return Object.hasOwn(this._keyIndices,t)}priority(t){var n=this._keyIndices[t];if(n!==void 0)return this._arr[n].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(t,n){var r=this._keyIndices;if(t=String(t),!Object.hasOwn(r,t)){var s=this._arr,i=s.length;return r[t]=i,s.push({key:t,priority:n}),this._decrease(i),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key}decrease(t,n){var r=this._keyIndices[t];if(n>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[r].priority+" New: "+n);this._arr[r].priority=n,this._decrease(r)}_heapify(t){var n=this._arr,r=2*t,s=r+1,i=t;r<n.length&&(i=n[r].priority<n[i].priority?r:i,s<n.length&&(i=n[s].priority<n[i].priority?s:i),i!==t&&(this._swap(t,i),this._heapify(i)))}_decrease(t){for(var n=this._arr,r=n[t].priority,s;t!==0&&(s=t>>1,!(n[s].priority<r));)this._swap(t,s),t=s}_swap(t,n){var r=this._arr,s=this._keyIndices,i=r[t],o=r[n];r[t]=o,r[n]=i,s[o.key]=t,s[i.key]=n}};var qm=X7,q7=qm,Qm=K7,Q7=()=>1;function K7(e,t,n,r){return Z7(e,String(t),n||Q7,r||function(s){return e.outEdges(s)})}function Z7(e,t,n,r){var s={},i=new q7,o,l,u=function(c){var d=c.v!==o?c.v:c.w,f=s[d],h=n(c),m=l.distance+h;if(h<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+c+" Weight: "+h);m<f.distance&&(f.distance=m,f.predecessor=o,i.decrease(d,m))};for(e.nodes().forEach(function(c){var d=c===t?0:Number.POSITIVE_INFINITY;s[c]={distance:d},i.add(c,d)});i.size()>0&&(o=i.removeMin(),l=s[o],l.distance!==Number.POSITIVE_INFINITY);)r(o).forEach(u);return s}var J7=Qm,e9=t9;function t9(e,t,n){return e.nodes().reduce(function(r,s){return r[s]=J7(e,s,t,n),r},{})}var Km=n9;function n9(e){var t=0,n=[],r={},s=[];function i(o){var l=r[o]={onStack:!0,lowlink:t,index:t++};if(n.push(o),e.successors(o).forEach(function(d){Object.hasOwn(r,d)?r[d].onStack&&(l.lowlink=Math.min(l.lowlink,r[d].index)):(i(d),l.lowlink=Math.min(l.lowlink,r[d].lowlink))}),l.lowlink===l.index){var u=[],c;do c=n.pop(),r[c].onStack=!1,u.push(c);while(o!==c);s.push(u)}}return e.nodes().forEach(function(o){Object.hasOwn(r,o)||i(o)}),s}var r9=Km,s9=i9;function i9(e){return r9(e).filter(function(t){return t.length>1||t.length===1&&e.hasEdge(t[0],t[0])})}var o9=a9,l9=()=>1;function a9(e,t,n){return u9(e,t||l9,n||function(r){return e.outEdges(r)})}function u9(e,t,n){var r={},s=e.nodes();return s.forEach(function(i){r[i]={},r[i][i]={distance:0},s.forEach(function(o){i!==o&&(r[i][o]={distance:Number.POSITIVE_INFINITY})}),n(i).forEach(function(o){var l=o.v===i?o.w:o.v,u=t(o);r[i][l]={distance:u,predecessor:i}})}),s.forEach(function(i){var o=r[i];s.forEach(function(l){var u=r[l];s.forEach(function(c){var d=u[i],f=o[c],h=u[c],m=d.distance+f.distance;m<h.distance&&(h.distance=m,h.predecessor=f.predecessor)})})}),r}function Zm(e){var t={},n={},r=[];function s(i){if(Object.hasOwn(n,i))throw new Nu;Object.hasOwn(t,i)||(n[i]=!0,t[i]=!0,e.predecessors(i).forEach(s),delete n[i],r.push(i))}if(e.sinks().forEach(s),Object.keys(t).length!==e.nodeCount())throw new Nu;return r}class Nu extends Error{constructor(){super(...arguments)}}var Jm=Zm;Zm.CycleException=Nu;var v0=Jm,c9=d9;function d9(e){try{v0(e)}catch(t){if(t instanceof v0.CycleException)return!1;throw t}return!0}var eg=f9;function f9(e,t,n){Array.isArray(t)||(t=[t]);var r=e.isDirected()?l=>e.successors(l):l=>e.neighbors(l),s=n==="post"?h9:p9,i=[],o={};return t.forEach(l=>{if(!e.hasNode(l))throw new Error("Graph does not have node: "+l);s(l,r,o,i)}),i}function h9(e,t,n,r){for(var s=[[e,!1]];s.length>0;){var i=s.pop();i[1]?r.push(i[0]):Object.hasOwn(n,i[0])||(n[i[0]]=!0,s.push([i[0],!0]),tg(t(i[0]),o=>s.push([o,!1])))}}function p9(e,t,n,r){for(var s=[e];s.length>0;){var i=s.pop();Object.hasOwn(n,i)||(n[i]=!0,r.push(i),tg(t(i),o=>s.push(o)))}}function tg(e,t){for(var n=e.length;n--;)t(e[n],n,e);return e}var m9=eg,g9=x9;function x9(e,t){return m9(e,t,"post")}var y9=eg,v9=w9;function w9(e,t){return y9(e,t,"pre")}var b9=Wc,k9=qm,N9=C9;function C9(e,t){var n=new b9,r={},s=new k9,i;function o(u){var c=u.v===i?u.w:u.v,d=s.priority(c);if(d!==void 0){var f=t(u);f<d&&(r[c]=i,s.decrease(c,f))}}if(e.nodeCount()===0)return n;e.nodes().forEach(function(u){s.add(u,Number.POSITIVE_INFINITY),n.setNode(u)}),s.decrease(e.nodes()[0],0);for(var l=!1;s.size()>0;){if(i=s.removeMin(),Object.hasOwn(r,i))n.setEdge(i,r[i]);else{if(l)throw new Error("Input graph is not connected: "+e);l=!0}e.nodeEdges(i).forEach(o)}return n}var E9={components:G7,dijkstra:Qm,dijkstraAll:e9,findCycles:s9,floydWarshall:o9,isAcyclic:c9,postorder:g9,preorder:v9,prim:N9,tarjan:Km,topsort:Jm},w0=D7,Ct={Graph:w0.Graph,json:V7,alg:E9,version:w0.version};let j9=class{constructor(){let t={};t._next=t._prev=t,this._sentinel=t}dequeue(){let t=this._sentinel,n=t._prev;if(n!==t)return b0(n),n}enqueue(t){let n=this._sentinel;t._prev&&t._next&&b0(t),t._next=n._next,n._next._prev=t,n._next=t,t._prev=n}toString(){let t=[],n=this._sentinel,r=n._prev;for(;r!==n;)t.push(JSON.stringify(r,_9)),r=r._prev;return"["+t.join(", ")+"]"}};function b0(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function _9(e,t){if(e!=="_next"&&e!=="_prev")return t}var S9=j9;let M9=Ct.Graph,L9=S9;var I9=T9;let P9=()=>1;function T9(e,t){if(e.nodeCount()<=1)return[];let n=A9(e,t||P9);return $9(n.graph,n.buckets,n.zeroIdx).flatMap(s=>e.outEdges(s.v,s.w))}function $9(e,t,n){let r=[],s=t[t.length-1],i=t[0],o;for(;e.nodeCount();){for(;o=i.dequeue();)la(e,t,n,o);for(;o=s.dequeue();)la(e,t,n,o);if(e.nodeCount()){for(let l=t.length-2;l>0;--l)if(o=t[l].dequeue(),o){r=r.concat(la(e,t,n,o,!0));break}}}return r}function la(e,t,n,r,s){let i=s?[]:void 0;return e.inEdges(r.v).forEach(o=>{let l=e.edge(o),u=e.node(o.v);s&&i.push({v:o.v,w:o.w}),u.out-=l,Cu(t,n,u)}),e.outEdges(r.v).forEach(o=>{let l=e.edge(o),u=o.w,c=e.node(u);c.in-=l,Cu(t,n,c)}),e.removeNode(r.v),i}function A9(e,t){let n=new M9,r=0,s=0;e.nodes().forEach(l=>{n.setNode(l,{v:l,in:0,out:0})}),e.edges().forEach(l=>{let u=n.edge(l.v,l.w)||0,c=t(l),d=u+c;n.setEdge(l.v,l.w,d),s=Math.max(s,n.node(l.v).out+=c),r=Math.max(r,n.node(l.w).in+=c)});let i=R9(s+r+3).map(()=>new L9),o=r+1;return n.nodes().forEach(l=>{Cu(i,o,n.node(l))}),{graph:n,buckets:i,zeroIdx:o}}function Cu(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}function R9(e){const t=[];for(let n=0;n<e;n++)t.push(n);return t}let ng=Ct.Graph;var Ce={addBorderNode:U9,addDummyNode:rg,applyWithChunking:yl,asNonCompoundGraph:z9,buildLayerMatrix:H9,intersectRect:V9,mapValues:Z9,maxRank:ig,normalizeRanks:B9,notime:q9,partition:Y9,pick:K9,predecessorWeights:F9,range:lg,removeEmptyRanks:W9,simplify:O9,successorWeights:D9,time:X9,uniqueId:og,zipObject:Uc};function rg(e,t,n,r){for(var s=r;e.hasNode(s);)s=og(r);return n.dummy=t,e.setNode(s,n),s}function O9(e){let t=new ng().setGraph(e.graph());return e.nodes().forEach(n=>t.setNode(n,e.node(n))),e.edges().forEach(n=>{let r=t.edge(n.v,n.w)||{weight:0,minlen:1},s=e.edge(n);t.setEdge(n.v,n.w,{weight:r.weight+s.weight,minlen:Math.max(r.minlen,s.minlen)})}),t}function z9(e){let t=new ng({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(n=>{e.children(n).length||t.setNode(n,e.node(n))}),e.edges().forEach(n=>{t.setEdge(n,e.edge(n))}),t}function D9(e){let t=e.nodes().map(n=>{let r={};return e.outEdges(n).forEach(s=>{r[s.w]=(r[s.w]||0)+e.edge(s).weight}),r});return Uc(e.nodes(),t)}function F9(e){let t=e.nodes().map(n=>{let r={};return e.inEdges(n).forEach(s=>{r[s.v]=(r[s.v]||0)+e.edge(s).weight}),r});return Uc(e.nodes(),t)}function V9(e,t){let n=e.x,r=e.y,s=t.x-n,i=t.y-r,o=e.width/2,l=e.height/2;if(!s&&!i)throw new Error("Not possible to find intersection inside of the rectangle");let u,c;return Math.abs(i)*o>Math.abs(s)*l?(i<0&&(l=-l),u=l*s/i,c=l):(s<0&&(o=-o),u=o,c=o*i/s),{x:n+u,y:r+c}}function H9(e){let t=lg(ig(e)+1).map(()=>[]);return e.nodes().forEach(n=>{let r=e.node(n),s=r.rank;s!==void 0&&(t[s][r.order]=n)}),t}function B9(e){let t=e.nodes().map(r=>{let s=e.node(r).rank;return s===void 0?Number.MAX_VALUE:s}),n=yl(Math.min,t);e.nodes().forEach(r=>{let s=e.node(r);Object.hasOwn(s,"rank")&&(s.rank-=n)})}function W9(e){let t=e.nodes().map(o=>e.node(o).rank),n=yl(Math.min,t),r=[];e.nodes().forEach(o=>{let l=e.node(o).rank-n;r[l]||(r[l]=[]),r[l].push(o)});let s=0,i=e.graph().nodeRankFactor;Array.from(r).forEach((o,l)=>{o===void 0&&l%i!==0?--s:o!==void 0&&s&&o.forEach(u=>e.node(u).rank+=s)})}function U9(e,t,n,r){let s={width:0,height:0};return arguments.length>=4&&(s.rank=n,s.order=r),rg(e,"border",s,t)}function G9(e,t=sg){const n=[];for(let r=0;r<e.length;r+=t){const s=e.slice(r,r+t);n.push(s)}return n}const sg=65535;function yl(e,t){if(t.length>sg){const n=G9(t);return e.apply(null,n.map(r=>e.apply(null,r)))}else return e.apply(null,t)}function ig(e){const n=e.nodes().map(r=>{let s=e.node(r).rank;return s===void 0?Number.MIN_VALUE:s});return yl(Math.max,n)}function Y9(e,t){let n={lhs:[],rhs:[]};return e.forEach(r=>{t(r)?n.lhs.push(r):n.rhs.push(r)}),n}function X9(e,t){let n=Date.now();try{return t()}finally{console.log(e+" time: "+(Date.now()-n)+"ms")}}function q9(e,t){return t()}let Q9=0;function og(e){var t=++Q9;return e+(""+t)}function lg(e,t,n=1){t==null&&(t=e,e=0);let r=i=>i<t;n<0&&(r=i=>t<i);const s=[];for(let i=e;r(i);i+=n)s.push(i);return s}function K9(e,t){const n={};for(const r of t)e[r]!==void 0&&(n[r]=e[r]);return n}function Z9(e,t){let n=t;return typeof t=="string"&&(n=r=>r[t]),Object.entries(e).reduce((r,[s,i])=>(r[s]=n(i,s),r),{})}function Uc(e,t){return e.reduce((n,r,s)=>(n[r]=t[s],n),{})}let J9=I9,eb=Ce.uniqueId;var tb={run:nb,undo:sb};function nb(e){(e.graph().acyclicer==="greedy"?J9(e,n(e)):rb(e)).forEach(r=>{let s=e.edge(r);e.removeEdge(r),s.forwardName=r.name,s.reversed=!0,e.setEdge(r.w,r.v,s,eb("rev"))});function n(r){return s=>r.edge(s).weight}}function rb(e){let t=[],n={},r={};function s(i){Object.hasOwn(r,i)||(r[i]=!0,n[i]=!0,e.outEdges(i).forEach(o=>{Object.hasOwn(n,o.w)?t.push(o):s(o.w)}),delete n[i])}return e.nodes().forEach(s),t}function sb(e){e.edges().forEach(t=>{let n=e.edge(t);if(n.reversed){e.removeEdge(t);let r=n.forwardName;delete n.reversed,delete n.forwardName,e.setEdge(t.w,t.v,n,r)}})}let ib=Ce;var ob={run:lb,undo:ub};function lb(e){e.graph().dummyChains=[],e.edges().forEach(t=>ab(e,t))}function ab(e,t){let n=t.v,r=e.node(n).rank,s=t.w,i=e.node(s).rank,o=t.name,l=e.edge(t),u=l.labelRank;if(i===r+1)return;e.removeEdge(t);let c,d,f;for(f=0,++r;r<i;++f,++r)l.points=[],d={width:0,height:0,edgeLabel:l,edgeObj:t,rank:r},c=ib.addDummyNode(e,"edge",d,"_d"),r===u&&(d.width=l.width,d.height=l.height,d.dummy="edge-label",d.labelpos=l.labelpos),e.setEdge(n,c,{weight:l.weight},o),f===0&&e.graph().dummyChains.push(c),n=c;e.setEdge(n,s,{weight:l.weight},o)}function ub(e){e.graph().dummyChains.forEach(t=>{let n=e.node(t),r=n.edgeLabel,s;for(e.setEdge(n.edgeObj,r);n.dummy;)s=e.successors(t)[0],e.removeNode(t),r.points.push({x:n.x,y:n.y}),n.dummy==="edge-label"&&(r.x=n.x,r.y=n.y,r.width=n.width,r.height=n.height),t=s,n=e.node(t)})}const{applyWithChunking:cb}=Ce;var vl={longestPath:db,slack:fb};function db(e){var t={};function n(r){var s=e.node(r);if(Object.hasOwn(t,r))return s.rank;t[r]=!0;let i=e.outEdges(r).map(l=>l==null?Number.POSITIVE_INFINITY:n(l.w)-e.edge(l).minlen);var o=cb(Math.min,i);return o===Number.POSITIVE_INFINITY&&(o=0),s.rank=o}e.sources().forEach(n)}function fb(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var hb=Ct.Graph,Do=vl.slack,ag=pb;function pb(e){var t=new hb({directed:!1}),n=e.nodes()[0],r=e.nodeCount();t.setNode(n,{});for(var s,i;mb(t,e)<r;)s=gb(t,e),i=t.hasNode(s.v)?Do(e,s):-Do(e,s),xb(t,e,i);return t}function mb(e,t){function n(r){t.nodeEdges(r).forEach(s=>{var i=s.v,o=r===i?s.w:i;!e.hasNode(o)&&!Do(t,s)&&(e.setNode(o,{}),e.setEdge(r,o,{}),n(o))})}return e.nodes().forEach(n),e.nodeCount()}function gb(e,t){return t.edges().reduce((r,s)=>{let i=Number.POSITIVE_INFINITY;return e.hasNode(s.v)!==e.hasNode(s.w)&&(i=Do(t,s)),i<r[0]?[i,s]:r},[Number.POSITIVE_INFINITY,null])[1]}function xb(e,t,n){e.nodes().forEach(r=>t.node(r).rank+=n)}var yb=ag,k0=vl.slack,vb=vl.longestPath,wb=Ct.alg.preorder,bb=Ct.alg.postorder,kb=Ce.simplify,Nb=Kn;Kn.initLowLimValues=Yc;Kn.initCutValues=Gc;Kn.calcCutValue=ug;Kn.leaveEdge=dg;Kn.enterEdge=fg;Kn.exchangeEdges=hg;function Kn(e){e=kb(e),vb(e);var t=yb(e);Yc(t),Gc(t,e);for(var n,r;n=dg(t);)r=fg(t,e,n),hg(t,e,n,r)}function Gc(e,t){var n=bb(e,e.nodes());n=n.slice(0,n.length-1),n.forEach(r=>Cb(e,t,r))}function Cb(e,t,n){var r=e.node(n),s=r.parent;e.edge(n,s).cutvalue=ug(e,t,n)}function ug(e,t,n){var r=e.node(n),s=r.parent,i=!0,o=t.edge(n,s),l=0;return o||(i=!1,o=t.edge(s,n)),l=o.weight,t.nodeEdges(n).forEach(u=>{var c=u.v===n,d=c?u.w:u.v;if(d!==s){var f=c===i,h=t.edge(u).weight;if(l+=f?h:-h,jb(e,n,d)){var m=e.edge(n,d).cutvalue;l+=f?-m:m}}}),l}function Yc(e,t){arguments.length<2&&(t=e.nodes()[0]),cg(e,{},1,t)}function cg(e,t,n,r,s){var i=n,o=e.node(r);return t[r]=!0,e.neighbors(r).forEach(l=>{Object.hasOwn(t,l)||(n=cg(e,t,n,l,r))}),o.low=i,o.lim=n++,s?o.parent=s:delete o.parent,n}function dg(e){return e.edges().find(t=>e.edge(t).cutvalue<0)}function fg(e,t,n){var r=n.v,s=n.w;t.hasEdge(r,s)||(r=n.w,s=n.v);var i=e.node(r),o=e.node(s),l=i,u=!1;i.lim>o.lim&&(l=o,u=!0);var c=t.edges().filter(d=>u===N0(e,e.node(d.v),l)&&u!==N0(e,e.node(d.w),l));return c.reduce((d,f)=>k0(t,f)<k0(t,d)?f:d)}function hg(e,t,n,r){var s=n.v,i=n.w;e.removeEdge(s,i),e.setEdge(r.v,r.w,{}),Yc(e),Gc(e,t),Eb(e,t)}function Eb(e,t){var n=e.nodes().find(s=>!t.node(s).parent),r=wb(e,n);r=r.slice(1),r.forEach(s=>{var i=e.node(s).parent,o=t.edge(s,i),l=!1;o||(o=t.edge(i,s),l=!0),t.node(s).rank=t.node(i).rank+(l?o.minlen:-o.minlen)})}function jb(e,t,n){return e.hasEdge(t,n)}function N0(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}var _b=vl,pg=_b.longestPath,Sb=ag,Mb=Nb,Lb=Ib;function Ib(e){var t=e.graph().ranker;if(t instanceof Function)return t(e);switch(e.graph().ranker){case"network-simplex":C0(e);break;case"tight-tree":Tb(e);break;case"longest-path":Pb(e);break;case"none":break;default:C0(e)}}var Pb=pg;function Tb(e){pg(e),Sb(e)}function C0(e){Mb(e)}var $b=Ab;function Ab(e){let t=Ob(e);e.graph().dummyChains.forEach(n=>{let r=e.node(n),s=r.edgeObj,i=Rb(e,t,s.v,s.w),o=i.path,l=i.lca,u=0,c=o[u],d=!0;for(;n!==s.w;){if(r=e.node(n),d){for(;(c=o[u])!==l&&e.node(c).maxRank<r.rank;)u++;c===l&&(d=!1)}if(!d){for(;u<o.length-1&&e.node(c=o[u+1]).minRank<=r.rank;)u++;c=o[u]}e.setParent(n,c),n=e.successors(n)[0]}})}function Rb(e,t,n,r){let s=[],i=[],o=Math.min(t[n].low,t[r].low),l=Math.max(t[n].lim,t[r].lim),u,c;u=n;do u=e.parent(u),s.push(u);while(u&&(t[u].low>o||l>t[u].lim));for(c=u,u=r;(u=e.parent(u))!==c;)i.push(u);return{path:s.concat(i.reverse()),lca:c}}function Ob(e){let t={},n=0;function r(s){let i=n;e.children(s).forEach(r),t[s]={low:i,lim:n++}}return e.children().forEach(r),t}let Fo=Ce;var zb={run:Db,cleanup:Hb};function Db(e){let t=Fo.addDummyNode(e,"root",{},"_root"),n=Fb(e),r=Object.values(n),s=Fo.applyWithChunking(Math.max,r)-1,i=2*s+1;e.graph().nestingRoot=t,e.edges().forEach(l=>e.edge(l).minlen*=i);let o=Vb(e)+1;e.children().forEach(l=>mg(e,t,i,o,s,n,l)),e.graph().nodeRankFactor=i}function mg(e,t,n,r,s,i,o){let l=e.children(o);if(!l.length){o!==t&&e.setEdge(t,o,{weight:0,minlen:n});return}let u=Fo.addBorderNode(e,"_bt"),c=Fo.addBorderNode(e,"_bb"),d=e.node(o);e.setParent(u,o),d.borderTop=u,e.setParent(c,o),d.borderBottom=c,l.forEach(f=>{mg(e,t,n,r,s,i,f);let h=e.node(f),m=h.borderTop?h.borderTop:f,p=h.borderBottom?h.borderBottom:f,v=h.borderTop?r:2*r,b=m!==p?1:s-i[o]+1;e.setEdge(u,m,{weight:v,minlen:b,nestingEdge:!0}),e.setEdge(p,c,{weight:v,minlen:b,nestingEdge:!0})}),e.parent(o)||e.setEdge(t,u,{weight:0,minlen:s+i[o]})}function Fb(e){var t={};function n(r,s){var i=e.children(r);i&&i.length&&i.forEach(o=>n(o,s+1)),t[r]=s}return e.children().forEach(r=>n(r,1)),t}function Vb(e){return e.edges().reduce((t,n)=>t+e.edge(n).weight,0)}function Hb(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,e.edges().forEach(n=>{var r=e.edge(n);r.nestingEdge&&e.removeEdge(n)})}let Bb=Ce;var Wb=Ub;function Ub(e){function t(n){let r=e.children(n),s=e.node(n);if(r.length&&r.forEach(t),Object.hasOwn(s,"minRank")){s.borderLeft=[],s.borderRight=[];for(let i=s.minRank,o=s.maxRank+1;i<o;++i)E0(e,"borderLeft","_bl",n,s,i),E0(e,"borderRight","_br",n,s,i)}}e.children().forEach(t)}function E0(e,t,n,r,s,i){let o={width:0,height:0,rank:i,borderType:t},l=s[t][i-1],u=Bb.addDummyNode(e,"border",o,n);s[t][i]=u,e.setParent(u,r),l&&e.setEdge(l,u,{weight:1})}var Gb={adjust:Yb,undo:Xb};function Yb(e){let t=e.graph().rankdir.toLowerCase();(t==="lr"||t==="rl")&&gg(e)}function Xb(e){let t=e.graph().rankdir.toLowerCase();(t==="bt"||t==="rl")&&qb(e),(t==="lr"||t==="rl")&&(Qb(e),gg(e))}function gg(e){e.nodes().forEach(t=>j0(e.node(t))),e.edges().forEach(t=>j0(e.edge(t)))}function j0(e){let t=e.width;e.width=e.height,e.height=t}function qb(e){e.nodes().forEach(t=>aa(e.node(t))),e.edges().forEach(t=>{let n=e.edge(t);n.points.forEach(aa),Object.hasOwn(n,"y")&&aa(n)})}function aa(e){e.y=-e.y}function Qb(e){e.nodes().forEach(t=>ua(e.node(t))),e.edges().forEach(t=>{let n=e.edge(t);n.points.forEach(ua),Object.hasOwn(n,"x")&&ua(n)})}function ua(e){let t=e.x;e.x=e.y,e.y=t}let _0=Ce;var Kb=Zb;function Zb(e){let t={},n=e.nodes().filter(u=>!e.children(u).length),r=n.map(u=>e.node(u).rank),s=_0.applyWithChunking(Math.max,r),i=_0.range(s+1).map(()=>[]);function o(u){if(t[u])return;t[u]=!0;let c=e.node(u);i[c.rank].push(u),e.successors(u).forEach(o)}return n.sort((u,c)=>e.node(u).rank-e.node(c).rank).forEach(o),i}let Jb=Ce.zipObject;var ek=tk;function tk(e,t){let n=0;for(let r=1;r<t.length;++r)n+=nk(e,t[r-1],t[r]);return n}function nk(e,t,n){let r=Jb(n,n.map((c,d)=>d)),s=t.flatMap(c=>e.outEdges(c).map(d=>({pos:r[d.w],weight:e.edge(d).weight})).sort((d,f)=>d.pos-f.pos)),i=1;for(;i<n.length;)i<<=1;let o=2*i-1;i-=1;let l=new Array(o).fill(0),u=0;return s.forEach(c=>{let d=c.pos+i;l[d]+=c.weight;let f=0;for(;d>0;)d%2&&(f+=l[d+1]),d=d-1>>1,l[d]+=c.weight;u+=c.weight*f}),u}var rk=sk;function sk(e,t=[]){return t.map(n=>{let r=e.inEdges(n);if(r.length){let s=r.reduce((i,o)=>{let l=e.edge(o),u=e.node(o.v);return{sum:i.sum+l.weight*u.order,weight:i.weight+l.weight}},{sum:0,weight:0});return{v:n,barycenter:s.sum/s.weight,weight:s.weight}}else return{v:n}})}let ik=Ce;var ok=lk;function lk(e,t){let n={};e.forEach((s,i)=>{let o=n[s.v]={indegree:0,in:[],out:[],vs:[s.v],i};s.barycenter!==void 0&&(o.barycenter=s.barycenter,o.weight=s.weight)}),t.edges().forEach(s=>{let i=n[s.v],o=n[s.w];i!==void 0&&o!==void 0&&(o.indegree++,i.out.push(n[s.w]))});let r=Object.values(n).filter(s=>!s.indegree);return ak(r)}function ak(e){let t=[];function n(s){return i=>{i.merged||(i.barycenter===void 0||s.barycenter===void 0||i.barycenter>=s.barycenter)&&uk(s,i)}}function r(s){return i=>{i.in.push(s),--i.indegree===0&&e.push(i)}}for(;e.length;){let s=e.pop();t.push(s),s.in.reverse().forEach(n(s)),s.out.forEach(r(s))}return t.filter(s=>!s.merged).map(s=>ik.pick(s,["vs","i","barycenter","weight"]))}function uk(e,t){let n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight),t.weight&&(n+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}let ck=Ce;var dk=fk;function fk(e,t){let n=ck.partition(e,d=>Object.hasOwn(d,"barycenter")),r=n.lhs,s=n.rhs.sort((d,f)=>f.i-d.i),i=[],o=0,l=0,u=0;r.sort(hk(!!t)),u=S0(i,s,u),r.forEach(d=>{u+=d.vs.length,i.push(d.vs),o+=d.barycenter*d.weight,l+=d.weight,u=S0(i,s,u)});let c={vs:i.flat(!0)};return l&&(c.barycenter=o/l,c.weight=l),c}function S0(e,t,n){let r;for(;t.length&&(r=t[t.length-1]).i<=n;)t.pop(),e.push(r.vs),n++;return n}function hk(e){return(t,n)=>t.barycenter<n.barycenter?-1:t.barycenter>n.barycenter?1:e?n.i-t.i:t.i-n.i}let pk=rk,mk=ok,gk=dk;var xk=xg;function xg(e,t,n,r){let s=e.children(t),i=e.node(t),o=i?i.borderLeft:void 0,l=i?i.borderRight:void 0,u={};o&&(s=s.filter(h=>h!==o&&h!==l));let c=pk(e,s);c.forEach(h=>{if(e.children(h.v).length){let m=xg(e,h.v,n,r);u[h.v]=m,Object.hasOwn(m,"barycenter")&&vk(h,m)}});let d=mk(c,n);yk(d,u);let f=gk(d,r);if(o&&(f.vs=[o,f.vs,l].flat(!0),e.predecessors(o).length)){let h=e.node(e.predecessors(o)[0]),m=e.node(e.predecessors(l)[0]);Object.hasOwn(f,"barycenter")||(f.barycenter=0,f.weight=0),f.barycenter=(f.barycenter*f.weight+h.order+m.order)/(f.weight+2),f.weight+=2}return f}function yk(e,t){e.forEach(n=>{n.vs=n.vs.flatMap(r=>t[r]?t[r].vs:r)})}function vk(e,t){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight):(e.barycenter=t.barycenter,e.weight=t.weight)}let wk=Ct.Graph,bk=Ce;var kk=Nk;function Nk(e,t,n,r){r||(r=e.nodes());let s=Ck(e),i=new wk({compound:!0}).setGraph({root:s}).setDefaultNodeLabel(o=>e.node(o));return r.forEach(o=>{let l=e.node(o),u=e.parent(o);(l.rank===t||l.minRank<=t&&t<=l.maxRank)&&(i.setNode(o),i.setParent(o,u||s),e[n](o).forEach(c=>{let d=c.v===o?c.w:c.v,f=i.edge(d,o),h=f!==void 0?f.weight:0;i.setEdge(d,o,{weight:e.edge(c).weight+h})}),Object.hasOwn(l,"minRank")&&i.setNode(o,{borderLeft:l.borderLeft[t],borderRight:l.borderRight[t]}))}),i}function Ck(e){for(var t;e.hasNode(t=bk.uniqueId("_root")););return t}var Ek=jk;function jk(e,t,n){let r={},s;n.forEach(i=>{let o=e.parent(i),l,u;for(;o;){if(l=e.parent(o),l?(u=r[l],r[l]=o):(u=s,s=o),u&&u!==o){t.setEdge(u,o);return}o=l}})}let _k=Kb,Sk=ek,Mk=xk,Lk=kk,Ik=Ek,Pk=Ct.Graph,Di=Ce;var Tk=yg;function yg(e,t){if(t&&typeof t.customOrder=="function"){t.customOrder(e,yg);return}let n=Di.maxRank(e),r=M0(e,Di.range(1,n+1),"inEdges"),s=M0(e,Di.range(n-1,-1,-1),"outEdges"),i=_k(e);if(L0(e,i),t&&t.disableOptimalOrderHeuristic)return;let o=Number.POSITIVE_INFINITY,l;for(let u=0,c=0;c<4;++u,++c){$k(u%2?r:s,u%4>=2),i=Di.buildLayerMatrix(e);let d=Sk(e,i);d<o&&(c=0,l=Object.assign({},i),o=d)}L0(e,l)}function M0(e,t,n){const r=new Map,s=(i,o)=>{r.has(i)||r.set(i,[]),r.get(i).push(o)};for(const i of e.nodes()){const o=e.node(i);if(typeof o.rank=="number"&&s(o.rank,i),typeof o.minRank=="number"&&typeof o.maxRank=="number")for(let l=o.minRank;l<=o.maxRank;l++)l!==o.rank&&s(l,i)}return t.map(function(i){return Lk(e,i,n,r.get(i)||[])})}function $k(e,t){let n=new Pk;e.forEach(function(r){let s=r.graph().root,i=Mk(r,s,n,t);i.vs.forEach((o,l)=>r.node(o).order=l),Ik(r,n,i.vs)})}function L0(e,t){Object.values(t).forEach(n=>n.forEach((r,s)=>e.node(r).order=s))}let Ak=Ct.Graph,zt=Ce;var Rk={positionX:Yk};function Ok(e,t){let n={};function r(s,i){let o=0,l=0,u=s.length,c=i[i.length-1];return i.forEach((d,f)=>{let h=Dk(e,d),m=h?e.node(h).order:u;(h||d===c)&&(i.slice(l,f+1).forEach(p=>{e.predecessors(p).forEach(v=>{let b=e.node(v),x=b.order;(x<o||m<x)&&!(b.dummy&&e.node(p).dummy)&&vg(n,v,p)})}),l=f+1,o=m)}),i}return t.length&&t.reduce(r),n}function zk(e,t){let n={};function r(i,o,l,u,c){let d;zt.range(o,l).forEach(f=>{d=i[f],e.node(d).dummy&&e.predecessors(d).forEach(h=>{let m=e.node(h);m.dummy&&(m.order<u||m.order>c)&&vg(n,h,d)})})}function s(i,o){let l=-1,u,c=0;return o.forEach((d,f)=>{if(e.node(d).dummy==="border"){let h=e.predecessors(d);h.length&&(u=e.node(h[0]).order,r(o,c,f,l,u),c=f,l=u)}r(o,c,o.length,u,i.length)}),o}return t.length&&t.reduce(s),n}function Dk(e,t){if(e.node(t).dummy)return e.predecessors(t).find(n=>e.node(n).dummy)}function vg(e,t,n){if(t>n){let s=t;t=n,n=s}let r=e[t];r||(e[t]=r={}),r[n]=!0}function Fk(e,t,n){if(t>n){let r=t;t=n,n=r}return!!e[t]&&Object.hasOwn(e[t],n)}function Vk(e,t,n,r){let s={},i={},o={};return t.forEach(l=>{l.forEach((u,c)=>{s[u]=u,i[u]=u,o[u]=c})}),t.forEach(l=>{let u=-1;l.forEach(c=>{let d=r(c);if(d.length){d=d.sort((h,m)=>o[h]-o[m]);let f=(d.length-1)/2;for(let h=Math.floor(f),m=Math.ceil(f);h<=m;++h){let p=d[h];i[c]===c&&u<o[p]&&!Fk(n,c,p)&&(i[p]=c,i[c]=s[c]=s[p],u=o[p])}}})}),{root:s,align:i}}function Hk(e,t,n,r,s){let i={},o=Bk(e,t,n,s),l=s?"borderLeft":"borderRight";function u(f,h){let m=o.nodes(),p=m.pop(),v={};for(;p;)v[p]?f(p):(v[p]=!0,m.push(p),m=m.concat(h(p))),p=m.pop()}function c(f){i[f]=o.inEdges(f).reduce((h,m)=>Math.max(h,i[m.v]+o.edge(m)),0)}function d(f){let h=o.outEdges(f).reduce((p,v)=>Math.min(p,i[v.w]-o.edge(v)),Number.POSITIVE_INFINITY),m=e.node(f);h!==Number.POSITIVE_INFINITY&&m.borderType!==l&&(i[f]=Math.max(i[f],h))}return u(c,o.predecessors.bind(o)),u(d,o.successors.bind(o)),Object.keys(r).forEach(f=>i[f]=i[n[f]]),i}function Bk(e,t,n,r){let s=new Ak,i=e.graph(),o=Xk(i.nodesep,i.edgesep,r);return t.forEach(l=>{let u;l.forEach(c=>{let d=n[c];if(s.setNode(d),u){var f=n[u],h=s.edge(f,d);s.setEdge(f,d,Math.max(o(e,c,u),h||0))}u=c})}),s}function Wk(e,t){return Object.values(t).reduce((n,r)=>{let s=Number.NEGATIVE_INFINITY,i=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([l,u])=>{let c=qk(e,l)/2;s=Math.max(u+c,s),i=Math.min(u-c,i)});const o=s-i;return o<n[0]&&(n=[o,r]),n},[Number.POSITIVE_INFINITY,null])[1]}function Uk(e,t){let n=Object.values(t),r=zt.applyWithChunking(Math.min,n),s=zt.applyWithChunking(Math.max,n);["u","d"].forEach(i=>{["l","r"].forEach(o=>{let l=i+o,u=e[l];if(u===t)return;let c=Object.values(u),d=r-zt.applyWithChunking(Math.min,c);o!=="l"&&(d=s-zt.applyWithChunking(Math.max,c)),d&&(e[l]=zt.mapValues(u,f=>f+d))})})}function Gk(e,t){return zt.mapValues(e.ul,(n,r)=>{if(t)return e[t.toLowerCase()][r];{let s=Object.values(e).map(i=>i[r]).sort((i,o)=>i-o);return(s[1]+s[2])/2}})}function Yk(e){let t=zt.buildLayerMatrix(e),n=Object.assign(Ok(e,t),zk(e,t)),r={},s;["u","d"].forEach(o=>{s=o==="u"?t:Object.values(t).reverse(),["l","r"].forEach(l=>{l==="r"&&(s=s.map(f=>Object.values(f).reverse()));let u=(o==="u"?e.predecessors:e.successors).bind(e),c=Vk(e,s,n,u),d=Hk(e,s,c.root,c.align,l==="r");l==="r"&&(d=zt.mapValues(d,f=>-f)),r[o+l]=d})});let i=Wk(e,r);return Uk(r,i),Gk(r,e.graph().align)}function Xk(e,t,n){return(r,s,i)=>{let o=r.node(s),l=r.node(i),u=0,c;if(u+=o.width/2,Object.hasOwn(o,"labelpos"))switch(o.labelpos.toLowerCase()){case"l":c=-o.width/2;break;case"r":c=o.width/2;break}if(c&&(u+=n?c:-c),c=0,u+=(o.dummy?t:e)/2,u+=(l.dummy?t:e)/2,u+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":c=l.width/2;break;case"r":c=-l.width/2;break}return c&&(u+=n?c:-c),c=0,u}}function qk(e,t){return e.node(t).width}let wg=Ce,Qk=Rk.positionX;var Kk=Zk;function Zk(e){e=wg.asNonCompoundGraph(e),Jk(e),Object.entries(Qk(e)).forEach(([t,n])=>e.node(t).x=n)}function Jk(e){let t=wg.buildLayerMatrix(e),n=e.graph().ranksep,r=0;t.forEach(s=>{const i=s.reduce((o,l)=>{const u=e.node(l).height;return o>u?o:u},0);s.forEach(o=>e.node(o).y=r+i/2),r+=i+n})}let I0=tb,P0=ob,eN=Lb,tN=Ce.normalizeRanks,nN=$b,rN=Ce.removeEmptyRanks,T0=zb,sN=Wb,$0=Gb,iN=Tk,oN=Kk,dt=Ce,lN=Ct.Graph;var aN=uN;function uN(e,t){let n=t&&t.debugTiming?dt.time:dt.notime;n("layout",()=>{let r=n(" buildLayoutGraph",()=>vN(e));n(" runLayout",()=>cN(r,n,t)),n(" updateInputGraph",()=>dN(e,r))})}function cN(e,t,n){t(" makeSpaceForEdgeLabels",()=>wN(e)),t(" removeSelfEdges",()=>MN(e)),t(" acyclic",()=>I0.run(e)),t(" nestingGraph.run",()=>T0.run(e)),t(" rank",()=>eN(dt.asNonCompoundGraph(e))),t(" injectEdgeLabelProxies",()=>bN(e)),t(" removeEmptyRanks",()=>rN(e)),t(" nestingGraph.cleanup",()=>T0.cleanup(e)),t(" normalizeRanks",()=>tN(e)),t(" assignRankMinMax",()=>kN(e)),t(" removeEdgeLabelProxies",()=>NN(e)),t(" normalize.run",()=>P0.run(e)),t(" parentDummyChains",()=>nN(e)),t(" addBorderSegments",()=>sN(e)),t(" order",()=>iN(e,n)),t(" insertSelfEdges",()=>LN(e)),t(" adjustCoordinateSystem",()=>$0.adjust(e)),t(" position",()=>oN(e)),t(" positionSelfEdges",()=>IN(e)),t(" removeBorderNodes",()=>SN(e)),t(" normalize.undo",()=>P0.undo(e)),t(" fixupEdgeLabelCoords",()=>jN(e)),t(" undoCoordinateSystem",()=>$0.undo(e)),t(" translateGraph",()=>CN(e)),t(" assignNodeIntersects",()=>EN(e)),t(" reversePoints",()=>_N(e)),t(" acyclic.undo",()=>I0.undo(e))}function dN(e,t){e.nodes().forEach(n=>{let r=e.node(n),s=t.node(n);r&&(r.x=s.x,r.y=s.y,r.rank=s.rank,t.children(n).length&&(r.width=s.width,r.height=s.height))}),e.edges().forEach(n=>{let r=e.edge(n),s=t.edge(n);r.points=s.points,Object.hasOwn(s,"x")&&(r.x=s.x,r.y=s.y)}),e.graph().width=t.graph().width,e.graph().height=t.graph().height}let fN=["nodesep","edgesep","ranksep","marginx","marginy"],hN={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},pN=["acyclicer","ranker","rankdir","align"],mN=["width","height","rank"],A0={width:0,height:0},gN=["minlen","weight","width","height","labeloffset"],xN={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},yN=["labelpos"];function vN(e){let t=new lN({multigraph:!0,compound:!0}),n=da(e.graph());return t.setGraph(Object.assign({},hN,ca(n,fN),dt.pick(n,pN))),e.nodes().forEach(r=>{let s=da(e.node(r));const i=ca(s,mN);Object.keys(A0).forEach(o=>{i[o]===void 0&&(i[o]=A0[o])}),t.setNode(r,i),t.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let s=da(e.edge(r));t.setEdge(r,Object.assign({},xN,ca(s,gN),dt.pick(s,yN)))}),t}function wN(e){let t=e.graph();t.ranksep/=2,e.edges().forEach(n=>{let r=e.edge(n);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(t.rankdir==="TB"||t.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function bN(e){e.edges().forEach(t=>{let n=e.edge(t);if(n.width&&n.height){let r=e.node(t.v),i={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};dt.addDummyNode(e,"edge-proxy",i,"_ep")}})}function kN(e){let t=0;e.nodes().forEach(n=>{let r=e.node(n);r.borderTop&&(r.minRank=e.node(r.borderTop).rank,r.maxRank=e.node(r.borderBottom).rank,t=Math.max(t,r.maxRank))}),e.graph().maxRank=t}function NN(e){e.nodes().forEach(t=>{let n=e.node(t);n.dummy==="edge-proxy"&&(e.edge(n.e).labelRank=n.rank,e.removeNode(t))})}function CN(e){let t=Number.POSITIVE_INFINITY,n=0,r=Number.POSITIVE_INFINITY,s=0,i=e.graph(),o=i.marginx||0,l=i.marginy||0;function u(c){let d=c.x,f=c.y,h=c.width,m=c.height;t=Math.min(t,d-h/2),n=Math.max(n,d+h/2),r=Math.min(r,f-m/2),s=Math.max(s,f+m/2)}e.nodes().forEach(c=>u(e.node(c))),e.edges().forEach(c=>{let d=e.edge(c);Object.hasOwn(d,"x")&&u(d)}),t-=o,r-=l,e.nodes().forEach(c=>{let d=e.node(c);d.x-=t,d.y-=r}),e.edges().forEach(c=>{let d=e.edge(c);d.points.forEach(f=>{f.x-=t,f.y-=r}),Object.hasOwn(d,"x")&&(d.x-=t),Object.hasOwn(d,"y")&&(d.y-=r)}),i.width=n-t+o,i.height=s-r+l}function EN(e){e.edges().forEach(t=>{let n=e.edge(t),r=e.node(t.v),s=e.node(t.w),i,o;n.points?(i=n.points[0],o=n.points[n.points.length-1]):(n.points=[],i=s,o=r),n.points.unshift(dt.intersectRect(r,i)),n.points.push(dt.intersectRect(s,o))})}function jN(e){e.edges().forEach(t=>{let n=e.edge(t);if(Object.hasOwn(n,"x"))switch((n.labelpos==="l"||n.labelpos==="r")&&(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset;break}})}function _N(e){e.edges().forEach(t=>{let n=e.edge(t);n.reversed&&n.points.reverse()})}function SN(e){e.nodes().forEach(t=>{if(e.children(t).length){let n=e.node(t),r=e.node(n.borderTop),s=e.node(n.borderBottom),i=e.node(n.borderLeft[n.borderLeft.length-1]),o=e.node(n.borderRight[n.borderRight.length-1]);n.width=Math.abs(o.x-i.x),n.height=Math.abs(s.y-r.y),n.x=i.x+n.width/2,n.y=r.y+n.height/2}}),e.nodes().forEach(t=>{e.node(t).dummy==="border"&&e.removeNode(t)})}function MN(e){e.edges().forEach(t=>{if(t.v===t.w){var n=e.node(t.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}})}function LN(e){var t=dt.buildLayerMatrix(e);t.forEach(n=>{var r=0;n.forEach((s,i)=>{var o=e.node(s);o.order=i+r,(o.selfEdges||[]).forEach(l=>{dt.addDummyNode(e,"selfedge",{width:l.label.width,height:l.label.height,rank:o.rank,order:i+ ++r,e:l.e,label:l.label},"_se")}),delete o.selfEdges})})}function IN(e){e.nodes().forEach(t=>{var n=e.node(t);if(n.dummy==="selfedge"){var r=e.node(n.e.v),s=r.x+r.width/2,i=r.y,o=n.x-s,l=r.height/2;e.setEdge(n.e,n.label),e.removeNode(t),n.label.points=[{x:s+2*o/3,y:i-l},{x:s+5*o/6,y:i-l},{x:s+o,y:i},{x:s+5*o/6,y:i+l},{x:s+2*o/3,y:i+l}],n.label.x=n.x,n.label.y=n.y}})}function ca(e,t){return dt.mapValues(dt.pick(e,t),Number)}function da(e){var t={};return e&&Object.entries(e).forEach(([n,r])=>{typeof n=="string"&&(n=n.toLowerCase()),t[n]=r}),t}let PN=Ce,TN=Ct.Graph;var $N={debugOrdering:AN};function AN(e){let t=PN.buildLayerMatrix(e),n=new TN({compound:!0,multigraph:!0}).setGraph({});return e.nodes().forEach(r=>{n.setNode(r,{label:r}),n.setParent(r,"layer"+e.node(r).rank)}),e.edges().forEach(r=>n.setEdge(r.v,r.w,{},r.name)),t.forEach((r,s)=>{let i="layer"+s;n.setNode(i,{rank:"same"}),r.reduce((o,l)=>(n.setEdge(o,l,{style:"invis"}),l))}),n}var RN="1.1.8",ON={graphlib:Ct,layout:aN,debug:$N,util:{time:Ce.time,notime:Ce.notime},version:RN};const R0=Mu(ON),zN=260,DN=200,FN=24,VN=56,HN=80;function O0(e,t=!1){return t?HN:VN+Math.max(e,1)*FN}function BN(e,t,n=!1){const r=n?DN:zN,s=new R0.graphlib.Graph;return s.setDefaultEdgeLabel(()=>({})),s.setGraph({rankdir:"LR",nodesep:n?30:60,ranksep:n?60:120,marginx:40,marginy:40}),e.forEach(i=>{const o=i.data.columnCount??0;s.setNode(i.id,{width:r,height:O0(o,n)})}),t.forEach(i=>{s.setEdge(i.source,i.target)}),R0.layout(s),{nodes:e.map(i=>{const{x:o,y:l}=s.node(i.id),u=i.data.columnCount??0,c=O0(u,n);return{...i,position:{x:o-r/2,y:l-c/2}}}),edges:t}}function WN(e,t,n){return new Promise(r=>{setTimeout(()=>{r(BN(e,t,n))},0)})}const UN=60,GN=300,YN={model:P7},XN={association:$7};function qN(e,t){const n=new Map(e.map(o=>[o.name,Ht(o)])),r=e.map(o=>({id:Ht(o),type:"model",position:{x:0,y:0},data:{name:o.name,tableName:o.tableName,columns:t?[]:o.columns,columnCount:o.columns.length,compact:t}})),s=[],i=new Set;return e.forEach(o=>{o.associations.forEach(l=>{if(l.macro==="belongs_to"||l.through||!l.className||l.polymorphic)return;const u=n.get(l.className);if(!u)return;const c=Ht(o),f=`${[c,u].sort().join("↔")}:${l.macro}`;i.has(f)||(i.add(f),s.push({id:`${c}-${l.name}`,source:c,target:u,type:"association",data:{macro:l.macro,label:l.name,through:l.through,compact:t},markerEnd:{type:Ws.ArrowClosed,color:"#6366f1"}}))})}),{nodes:r,edges:s}}function QN({models:e,searchQuery:t,onSelectModel:n,selectedModel:r,issueModelNames:s}){const i=e.length>UN,o=e.length<=GN,[l,u]=j.useState(!1),[c,d]=j.useState({nodes:[],edges:[]});j.useEffect(()=>{u(!1);let P=!1;const{nodes:z,edges:S}=qN(e,i);return WN(z,S,i).then($=>{P||(d($),u(!0))}),()=>{P=!0}},[]);const[f,h,m]=Jw(c.nodes),[p,v,b]=e7(c.edges);j.useEffect(()=>{l&&(h(c.nodes),v(c.edges))},[l,c,h,v]);const x=j.useMemo(()=>{if(!l)return null;const P=!!(s&&s.size>0);if(!t&&!P)return null;const z=t.toLowerCase(),S=new Set;return f.forEach($=>{const F=!t||$.id.toLowerCase().includes(z)||String($.data.tableName).toLowerCase().includes(z),C=!P||s.has($.data.name);F&&C&&S.add($.id)}),S},[f,t,s,l]),y=j.useMemo(()=>({opacity:.15,filter:"grayscale(1)"}),[]),g=j.useMemo(()=>({opacity:.08}),[]),w=j.useMemo(()=>l?x?f.map(P=>({...P,style:x.has(P.id)?void 0:y})):f:[],[f,x,l,y]),k=j.useMemo(()=>l?x?p.map(P=>x.has(P.source)||x.has(P.target)?P:{...P,style:g}):p:[],[p,x,l,g]),N=j.useCallback((P,z)=>{const S=e.find($=>Ht($)===z.id)??null;n(S)},[e,n]),M=j.useCallback(()=>{n(null)},[n]),I=j.useCallback(P=>r&&P.id===Ht(r)?"#6366f1":"#cbd5e1",[r]);return l?a.jsxs(Qw,{nodes:w,edges:k,onNodesChange:m,onEdgesChange:b,nodeTypes:YN,edgeTypes:XN,onNodeClick:N,onPaneClick:M,nodesDraggable:!1,nodesConnectable:!1,edgesReconnectable:!1,onlyRenderVisibleElements:!0,panOnScroll:!0,fitView:!0,fitViewOptions:{padding:.12},minZoom:.02,maxZoom:2,proOptions:{hideAttribution:!0},children:[a.jsx(i7,{color:"#e5e7eb",gap:20}),a.jsx(f7,{}),o&&a.jsx(E7,{nodeColor:I,maskColor:"rgba(255,255,255,0.75)",pannable:!0,zoomable:!0})]}):a.jsx("div",{className:"h-full flex items-center justify-center text-gray-400 text-sm",children:a.jsxs("div",{className:"flex flex-col items-center gap-2",children:[a.jsxs("svg",{className:"animate-spin h-6 w-6 text-indigo-400",viewBox:"0 0 24 24",fill:"none",children:[a.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),a.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),a.jsxs("span",{children:["Computing layout for ",e.length," models..."]})]})})}function Nn({value:e,hint:t,className:n=""}){const[r,s]=j.useState(!1);if(e===null)return null;const i=async o=>{o.stopPropagation();try{await navigator.clipboard.writeText(e)}catch{const l=document.createElement("textarea");l.value=e,l.style.position="fixed",l.style.opacity="0",document.body.appendChild(l),l.select(),document.execCommand("copy"),document.body.removeChild(l)}s(!0),setTimeout(()=>s(!1),1500)};return a.jsx("button",{onClick:i,title:r?"Copied!":t?`Copy: ${t}`:"Copy path",className:`inline-flex items-center justify-center w-5 h-5 rounded text-gray-300 hover:text-gray-600 hover:bg-gray-100 transition-colors shrink-0 ${n}`,children:r?a.jsx("svg",{className:"w-3 h-3 text-emerald-500",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2.5,d:"M5 13l4 4L19 7"})}):a.jsx("svg",{className:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})})}function Cn({filePath:e,className:t=""}){if(!e)return null;const n=r=>{var l;r.stopPropagation();const s=((l=window.__RAILS_VISUALIZER_DATA__)==null?void 0:l.appRoot)??"",o=`file://${e.startsWith("/")?e:`${s}/${e}`}`;window.open(o,"_blank")};return a.jsx("button",{onClick:n,title:`Open file: ${e}`,className:`inline-flex items-center justify-center w-5 h-5 rounded text-gray-300 hover:text-gray-600 hover:bg-gray-100 transition-colors shrink-0 ${t}`,children:a.jsx("svg",{className:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.5,d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"})})})}function qe({icon:e,message:t,hint:n,variant:r="full"}){return r==="compact"?a.jsx("div",{className:"flex items-center justify-center py-16 select-none",children:a.jsxs("div",{className:"text-center",children:[a.jsx("div",{className:"text-sm text-gray-400",children:t}),n&&a.jsx("div",{className:"text-xs text-gray-300 mt-1",children:n})]})}):a.jsx("div",{className:"h-full flex items-center justify-center",children:a.jsxs("div",{className:"text-center select-none",children:[a.jsx("div",{className:"w-14 h-14 rounded-2xl bg-gray-100 flex items-center justify-center mx-auto mb-4 text-gray-400",children:a.jsx("div",{className:"w-7 h-7",children:e})}),a.jsx("div",{className:"text-sm font-medium text-gray-500",children:t}),n&&a.jsx("div",{className:"text-xs text-gray-400 mt-1",children:n})]})})}const z0=8;function be({text:e,content:t,children:n}){const[r,s]=j.useState(!1),[i,o]=j.useState(null),l=j.useRef(null),u=j.useRef(null),c=j.useRef(),d=j.useCallback(()=>{c.current&&(clearTimeout(c.current),c.current=void 0)},[]),f=j.useCallback(()=>{d(),o(null),s(!0)},[d]),h=j.useCallback(()=>{d(),c.current=setTimeout(()=>{s(!1),o(null)},120)},[d]);return j.useLayoutEffect(()=>{if(!r||!u.current||!l.current)return;const m=u.current.getBoundingClientRect(),p=l.current.getBoundingClientRect(),v=window.innerWidth,b=p.left+p.width/2,x=Math.max(z0+m.width/2,Math.min(v-z0-m.width/2,b)),y=p.top-m.height-6>=0,g=y?p.top-6:p.bottom+6;o({left:x,top:g,transform:y?"translate(-50%, -100%)":"translate(-50%, 0)"})},[r]),a.jsxs(a.Fragment,{children:[a.jsx("span",{ref:l,onMouseEnter:f,onMouseLeave:h,className:"inline-flex items-center",children:n}),r&&il.createPortal(a.jsx("div",{ref:u,onMouseEnter:d,onMouseLeave:h,style:i?{position:"fixed",left:i.left,top:i.top,transform:i.transform,zIndex:9999}:{position:"fixed",visibility:"hidden",left:0,top:0,zIndex:-1},className:"text-xs px-2.5 py-1.5 rounded-lg shadow-lg max-w-xs w-max leading-snug whitespace-pre-wrap break-words select-text bg-white text-gray-800 border border-gray-200 dark:bg-gray-800 dark:text-gray-100 dark:border-gray-700",children:t??e}),document.body)]})}function ve(e,t){if(!t||!e)return e;const n=t.toLowerCase(),r=e.toLowerCase(),s=[];let i=0,o=!1,l=r.indexOf(n,i);for(;l!==-1;)o=!0,l>i&&s.push(e.slice(i,l)),s.push(a.jsx("mark",{className:"bg-yellow-200 text-yellow-900 rounded-[2px] not-italic",children:e.slice(l,l+n.length)},l)),i=l+n.length,l=r.indexOf(n,i);return o?(i<e.length&&s.push(e.slice(i)),a.jsx(a.Fragment,{children:s})):e}function D0(e){return{label:e,items:[],children:new Map}}function Xs(e){const t=D0("");for(const n of e){const s=n.name.split("::").slice(0,-1);let i=t;for(const o of s)i.children.has(o)||i.children.set(o,D0(o)),i=i.children.get(o);i.items.push(n)}return t}function li(e){let t=e.items.length;for(const n of e.children.values())t+=li(n);return t}const KN=new Set(["created_at","updated_at","created_on","updated_on"]);function bg(e){const t=new Set;return e.associations.filter(n=>n.macro==="belongs_to").forEach(n=>{n.foreignKey&&t.add(n.foreignKey),n.polymorphic&&t.add(`${n.name}_type`)}),e.columns.filter(n=>!n.primary&&!KN.has(n.name)&&!t.has(n.name))}function ZN(e,t){const n=new Set;return e.associations.forEach(r=>{r.through||r.polymorphic||!r.className||t.has(r.className)&&r.className!==e.name&&n.add(r.className)}),Array.from(n).sort()}function JN({model:e,query:t,knownNames:n,isSelected:r,onSelect:s}){const i=ZN(e,n),o=e.columns.length,l=new Set(e.columns.map(v=>v.name)),u=new Set(e.validations.flatMap(v=>v.attributes).filter(v=>l.has(v))).size,c=bg(e),d=!e.abstract&&c.length>0&&u===0,f=Object.keys(e.enums??{}).length,h=(e.scopes??[]).length,m=(e.callbacks??[]).length,p=e.associations.length;return a.jsxs("div",{onClick:s,className:`rounded-lg border px-4 py-3 cursor-pointer transition-all hover:shadow-sm ${r?"border-indigo-300 bg-indigo-50 shadow-sm":"border-gray-200 bg-white hover:border-indigo-200"}`,children:[a.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[a.jsx("span",{className:`font-semibold text-sm truncate flex-1 min-w-0 ${r?"text-indigo-700":"text-gray-800"}`,children:ve(e.name.split("::").slice(-1)[0],t)}),e.abstract&&a.jsx(be,{text:"Abstract model — not backed by a DB table directly",children:a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:"abstract"})}),a.jsx(Nn,{value:e.filePath,hint:e.filePath??void 0}),a.jsx(Cn,{filePath:e.filePath})]}),a.jsx("div",{className:"text-xs font-mono text-gray-400 mt-0.5 truncate mb-2",children:e.tableName}),a.jsxs("div",{className:"flex flex-wrap gap-1 mb-2",children:[o>0&&(d?a.jsx(be,{text:"No validations defined on any meaningful column",children:a.jsxs("span",{className:"text-[10px] px-1.5 py-0.5 rounded tabular-nums whitespace-nowrap border bg-amber-50 text-amber-600 border-amber-200",children:[o," ",ee(o,"column")," ⚠"]})}):a.jsxs("span",{className:"text-[10px] px-1.5 py-0.5 rounded tabular-nums whitespace-nowrap border bg-gray-50 text-gray-500 border-gray-200",children:[o," ",ee(o,"column")]})),p>0&&a.jsxs("span",{className:"text-[10px] bg-gray-50 text-gray-500 border border-gray-200 px-1.5 py-0.5 rounded tabular-nums whitespace-nowrap",children:[p," ",ee(p,"association")]}),f>0&&a.jsxs("span",{className:"text-[10px] bg-gray-50 text-gray-500 border border-gray-200 px-1.5 py-0.5 rounded tabular-nums whitespace-nowrap",children:[f," ",ee(f,"enum")]}),h>0&&a.jsxs("span",{className:"text-[10px] bg-gray-50 text-gray-500 border border-gray-200 px-1.5 py-0.5 rounded tabular-nums whitespace-nowrap",children:[h," ",ee(h,"scope")]}),m>0&&a.jsxs("span",{className:"text-[10px] bg-gray-50 text-gray-500 border border-gray-200 px-1.5 py-0.5 rounded tabular-nums whitespace-nowrap",children:[m," ",ee(m,"callback")]})]}),a.jsx("div",{className:"flex gap-1 overflow-x-auto min-h-[18px] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",children:i.map(v=>a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-indigo-50 text-indigo-600 border border-indigo-100 font-medium whitespace-nowrap shrink-0",children:v},v))})]})}function eC({count:e,children:t}){const[n,r]=j.useState(!1);return a.jsxs("div",{className:"mb-4",children:[a.jsxs("button",{onClick:()=>r(s=>!s),className:"flex items-center gap-1.5 mb-2 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:n?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700",children:"Root"}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:e})]}),!n&&a.jsx("div",{className:"mb-2",children:t})]})}function Eu({node:e,query:t,knownNames:n,selectedModel:r,onSelectModel:s,depth:i=0}){const[o,l]=j.useState(!1),u=li(e);if(u===0)return null;const c=Array.from(e.children.entries()).sort((m,p)=>m[0].localeCompare(p[0])),d=e.items.map(m=>a.jsx(JN,{model:m,query:t,knownNames:n,isSelected:!!r&&Ht(r)===Ht(m),onSelect:()=>s(r&&Ht(r)===Ht(m)?null:m)},m.name)),f=a.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-2",children:d});if(i===0&&e.label===""){const m=c.length>0;return a.jsxs(a.Fragment,{children:[e.items.length>0&&(m?a.jsx(eC,{count:e.items.length,children:f}):a.jsx("div",{className:"mb-4",children:f})),c.map(([p,v])=>a.jsx(Eu,{node:v,query:t,knownNames:n,selectedModel:r,onSelectModel:s,depth:1},p))]})}const h=(i-1)*14;return a.jsxs("div",{className:"mb-3",style:{marginLeft:`${h}px`},children:[a.jsxs("button",{onClick:()=>l(m=>!m),className:"flex items-center gap-1.5 mb-1.5 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:o?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700",children:ve(e.label,t)}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:u})]}),!o&&a.jsxs("div",{className:"border-l border-gray-100 pl-3",children:[e.items.length>0&&a.jsx("div",{className:"mb-2",children:f}),c.map(([m,p])=>a.jsx(Eu,{node:p,query:t,knownNames:n,selectedModel:r,onSelectModel:s,depth:i+1},m))]})]})}function tC({models:e,searchQuery:t,issueModelNames:n,onSelectModel:r,selectedModel:s}){const i=j.useMemo(()=>new Set(e.map(c=>c.name)),[e]),o=t.toLowerCase(),l=j.useMemo(()=>e.filter(c=>n&&!n.has(c.name)?!1:o?c.name.toLowerCase().includes(o)||c.tableName.toLowerCase().includes(o):!0),[e,o,n]),u=j.useMemo(()=>Xs(l),[l]);return a.jsx("div",{className:"flex-1 overflow-auto px-4 py-4",children:l.length===0?a.jsx(qe,{variant:"compact",message:n?"No models with issues.":"No models match your search."}):a.jsx(Eu,{node:u,query:t,knownNames:i,selectedModel:s,onSelectModel:r})})}function Zn({value:e,onChange:t,placeholder:n="Search…",className:r=""}){return a.jsxs("div",{className:`flex items-center gap-2 bg-gray-50 border border-gray-200 rounded-lg px-3 py-1.5 focus-within:border-indigo-300 focus-within:ring-1 focus-within:ring-indigo-200 transition-all ${r}`,children:[a.jsx("svg",{className:"w-3.5 h-3.5 text-gray-400 shrink-0",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"})}),a.jsx("input",{type:"text",placeholder:n,value:e,onChange:s=>t(s.target.value),className:"flex-1 text-sm bg-transparent outline-none text-gray-700 placeholder-gray-400 min-w-[120px]"}),e&&a.jsx("button",{onClick:()=>t(""),className:"text-gray-300 hover:text-gray-500 leading-none text-base shrink-0","aria-label":"Clear search",children:"×"})]})}const nC={has_many:"bg-indigo-100 text-indigo-700",has_one:"bg-emerald-100 text-emerald-700",belongs_to:"bg-amber-100 text-amber-700"};function F0({model:e,onClose:t}){return e?a.jsxs("div",{className:"absolute right-0 top-0 h-full w-[560px] bg-white border-l border-gray-200 shadow-2xl overflow-y-auto z-10 flex flex-col",children:[a.jsxs("div",{className:"flex items-center justify-between px-4 py-3 bg-indigo-50 border-b border-indigo-100 shrink-0",children:[a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsx("span",{className:"font-semibold text-indigo-900 truncate block",children:e.name}),a.jsx("div",{className:"text-xs text-indigo-500 font-mono mt-0.5",children:e.tableName})]}),a.jsxs("div",{className:"flex items-center gap-1 shrink-0 ml-2",children:[a.jsx(Nn,{value:e.filePath,hint:e.filePath??void 0}),a.jsx(Cn,{filePath:e.filePath}),a.jsx("button",{onClick:t,className:"text-gray-400 hover:text-gray-600 text-xl leading-none ml-1","aria-label":"Close",children:"×"})]})]}),a.jsxs("div",{className:"p-4 space-y-5 flex-1 overflow-y-auto",children:[a.jsxs("section",{children:[a.jsxs("h3",{className:"text-[10px] font-semibold uppercase tracking-wider text-gray-400 mb-2",children:["Columns (",e.columns.length,")"]}),e.columns.length===0?a.jsx("p",{className:"text-xs text-gray-400 italic",children:"No columns (table not migrated?)"}):a.jsx("div",{className:"space-y-0.5",children:e.columns.map(n=>{var r;return a.jsxs("div",{className:"flex items-center gap-2 py-1 text-sm border-b border-gray-50 last:border-0",children:[a.jsxs("span",{className:`flex-1 truncate ${n.primary?"font-medium text-amber-700":"text-gray-700"}`,children:[n.primary&&a.jsx("span",{className:"mr-0.5",children:"🔑"}),n.name]}),a.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[!n.null&&!n.primary&&a.jsx("span",{className:"text-[9px] text-red-400 font-medium",children:"NN"}),n.enum&&a.jsx(be,{text:`Enum — integer column mapped to named values by ActiveRecord. Values: ${n.enum.join(", ")}`,children:a.jsx("span",{className:"text-[9px] bg-purple-100 text-purple-600 px-1 py-0.5 rounded",children:"enum"})}),((r=n.index)==null?void 0:r.unique)&&!n.primary&&a.jsx(be,{text:`Unique Index — database index "${n.index.name}" enforces uniqueness on this column`,children:a.jsx("span",{className:"text-[9px] bg-teal-100 text-teal-600 px-1 py-0.5 rounded",children:"UQ"})}),n.index&&!n.index.unique&&a.jsx(be,{text:`Indexed — database index "${n.index.name}" speeds up queries filtering by this column`,children:a.jsx("span",{className:"text-[9px] bg-sky-100 text-sky-600 px-1 py-0.5 rounded",children:"IDX"})}),a.jsx("span",{className:"text-[10px] font-mono text-gray-400",children:n.type})]})]},n.name)})})]}),e.associations.length>0&&(()=>{const n=["belongs_to","has_one","has_many","has_and_belongs_to_many"],r=new Map;e.associations.forEach(i=>{r.has(i.macro)||r.set(i.macro,[]),r.get(i.macro).push(i)});const s=Array.from(r.entries()).sort(([i],[o])=>{const l=n.indexOf(i),u=n.indexOf(o);return l===-1&&u===-1?i.localeCompare(o):l===-1?1:u===-1?-1:l-u});return a.jsxs("section",{children:[a.jsxs("h3",{className:"text-[10px] font-semibold uppercase tracking-wider text-gray-400 mb-2",children:["Associations (",e.associations.length,")"]}),a.jsx("div",{className:"space-y-3",children:s.map(([i,o])=>a.jsxs("div",{children:[a.jsx("div",{className:`inline-block text-[10px] font-mono px-1.5 py-0.5 rounded mb-1.5 ${nC[i]??"bg-gray-100 text-gray-600"}`,children:i}),a.jsx("div",{className:"space-y-1 pl-2 border-l-2 border-gray-100",children:o.map((l,u)=>a.jsx("div",{className:"min-w-0",children:a.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[a.jsx("span",{className:"text-xs font-medium text-gray-800",children:l.name}),l.className&&l.className!==l.name&&a.jsxs("span",{className:"text-gray-400 text-xs",children:["→ ",l.className]}),l.polymorphic&&a.jsx(be,{text:"Polymorphic — can belong to any model, using *_type and *_id columns",children:a.jsx("span",{className:"text-[9px] bg-purple-50 text-purple-500 border border-purple-100 px-1 py-0.5 rounded",children:"poly"})}),l.through&&a.jsxs("span",{className:"text-[9px] bg-gray-50 text-gray-400 border border-gray-200 px-1 py-0.5 rounded font-mono",children:["through: ",l.through]}),l.dependent&&a.jsx(be,{text:`dependent: :${l.dependent} — associated records will be ${l.dependent} when this record is deleted`,children:a.jsxs("span",{className:"text-[9px] bg-gray-50 text-gray-400 border border-gray-200 px-1 py-0.5 rounded font-mono",children:["dep: ",l.dependent]})})]})},u))})]},i))})]})})(),e.validations.length>0&&(()=>{const n=e.validations.filter(c=>c.attributes.length>0),r=e.validations.filter(c=>c.attributes.length===0),s=new Map;n.forEach(c=>{c.attributes.forEach(d=>{s.has(d)||s.set(d,[]);const f=s.get(d);f.includes(c.kind)||f.push(c.kind)})});const i=new Set(e.columns.map(c=>c.name)),o=e.columns.map(c=>c.name).filter(c=>s.has(c)),l=Array.from(s.keys()).filter(c=>!i.has(c)).sort(),u=[...o,...l];return a.jsxs("section",{children:[a.jsxs("h3",{className:"text-[10px] font-semibold uppercase tracking-wider text-gray-400 mb-2",children:["Validations (",e.validations.length,")"]}),u.length>0&&a.jsx("div",{className:"space-y-1 mb-3",children:u.map(c=>a.jsxs("div",{className:"flex items-center gap-2 py-0.5",children:[a.jsxs("span",{className:`text-xs flex-1 min-w-0 truncate font-mono ${i.has(c)?"text-gray-700":"text-purple-600"}`,children:[c,!i.has(c)&&a.jsx(be,{text:"Virtual attribute — not a direct DB column (e.g. an association name)",children:a.jsx("span",{className:"ml-1 text-[9px] text-purple-400",children:"virtual"})})]}),a.jsx("div",{className:"flex gap-1 flex-wrap justify-end shrink-0",children:s.get(c).map(d=>a.jsx("span",{className:"text-[10px] font-mono bg-gray-100 text-gray-600 px-1.5 py-0.5 rounded",children:d},d))})]},c))}),r.length>0&&a.jsxs(a.Fragment,{children:[u.length>0&&a.jsx("div",{className:"text-[9px] font-semibold uppercase tracking-wider text-gray-300 mb-1.5",children:"Model-level"}),a.jsx("div",{className:"space-y-1",children:r.map((c,d)=>{const f=c.validatorClass&&!c.validatorClass.startsWith("ActiveModel::")&&!c.validatorClass.startsWith("ActiveRecord::"),h=f?c.validatorClass.split("::").slice(-1)[0]:c.kind;return a.jsxs("div",{className:"flex items-center gap-2 py-0.5",children:[a.jsx("span",{className:"text-xs font-mono text-gray-700 flex-1 min-w-0 truncate",children:h}),a.jsx("span",{className:"text-[9px] bg-gray-50 text-gray-400 border border-gray-200 px-1.5 py-0.5 rounded whitespace-nowrap",children:f?"custom class":"method"})]},d)})})]})]})})(),Object.keys(e.enums??{}).length>0&&a.jsxs("section",{children:[a.jsxs("h3",{className:"text-[10px] font-semibold uppercase tracking-wider text-gray-400 mb-2",children:["Enums (",Object.keys(e.enums).length,")"]}),a.jsx("div",{className:"space-y-2",children:Object.entries(e.enums).map(([n,r])=>a.jsxs("div",{children:[a.jsx("div",{className:"text-xs font-mono text-gray-600 mb-1",children:n}),a.jsx("div",{className:"flex flex-wrap gap-1",children:r.map(s=>a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-purple-50 text-purple-600 border border-purple-100 font-medium",children:s},s))})]},n))})]}),(e.scopes??[]).length>0&&a.jsxs("section",{children:[a.jsxs("h3",{className:"text-[10px] font-semibold uppercase tracking-wider text-gray-400 mb-2",children:["Scopes (",e.scopes.length,")"]}),a.jsx("div",{className:"flex flex-wrap gap-1",children:e.scopes.map(n=>a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded bg-teal-50 text-teal-700 border border-teal-100 font-mono",children:n},n))})]}),(e.callbacks??[]).length>0&&(()=>{const n=["after_initialize","after_find","before_validate","after_validate","before_save","around_save","before_create","around_create","after_create","before_update","around_update","after_update","after_save","before_destroy","around_destroy","after_destroy","before_touch","after_touch","after_commit","after_rollback"],r=new Map;e.callbacks.forEach(i=>{r.has(i.kind)||r.set(i.kind,[]),r.get(i.kind).push(i)});const s=Array.from(r.entries()).sort(([i],[o])=>{const l=n.indexOf(i),u=n.indexOf(o);return l===-1&&u===-1?i.localeCompare(o):l===-1?1:u===-1?-1:l-u});return a.jsxs("section",{children:[a.jsxs("h3",{className:"text-[10px] font-semibold uppercase tracking-wider text-gray-400 mb-2",children:["Callbacks (",e.callbacks.length,")"]}),a.jsx("div",{className:"space-y-3",children:s.map(([i,o])=>a.jsxs("div",{children:[a.jsx("div",{className:`inline-block text-[10px] font-mono px-1.5 py-0.5 rounded mb-1.5 ${i.startsWith("before_")?"bg-orange-100 text-orange-700":i.startsWith("after_")?"bg-sky-100 text-sky-700":"bg-gray-100 text-gray-600"}`,children:i}),a.jsx("div",{className:"space-y-1 pl-2 border-l-2 border-gray-100",children:o.map((l,u)=>a.jsxs("div",{children:[a.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[a.jsx("span",{className:"text-xs font-mono text-gray-700 break-all",children:l.name}),l.conditional&&a.jsx("span",{className:"text-[9px] text-gray-400 shrink-0 whitespace-nowrap",children:"conditional"})]}),l.definedIn&&a.jsx("div",{className:"text-[9px] text-gray-400 font-mono mt-0.5 break-all",children:l.definedIn})]},u))})]},i))})]})})()]})]}):null}const En={viewBox:"0 0 20 20",fill:"none",stroke:"currentColor",strokeWidth:1.75,strokeLinecap:"round",strokeLinejoin:"round"};function rC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("rect",{x:"2",y:"2",width:"7",height:"7",rx:"1.5"}),a.jsx("rect",{x:"11",y:"2",width:"7",height:"7",rx:"1.5"}),a.jsx("rect",{x:"2",y:"11",width:"7",height:"7",rx:"1.5"}),a.jsx("rect",{x:"11",y:"11",width:"7",height:"7",rx:"1.5"})]})}function sC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("line",{x1:"4.5",y1:"18",x2:"10",y2:"3"}),a.jsx("line",{x1:"15.5",y1:"18",x2:"10",y2:"3"}),a.jsx("line",{x1:"5.8",y1:"14.5",x2:"14.2",y2:"14.5"}),a.jsx("line",{x1:"7.4",y1:"10",x2:"12.6",y2:"10"}),a.jsx("line",{x1:"8.9",y1:"6",x2:"11.1",y2:"6"})]})}function iC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("rect",{x:"5",y:"5",width:"10",height:"10",rx:"1.5"}),a.jsx("rect",{x:"8",y:"8",width:"4",height:"4",rx:"0.5"}),a.jsx("line",{x1:"8",y1:"5",x2:"8",y2:"2"}),a.jsx("line",{x1:"12",y1:"5",x2:"12",y2:"2"}),a.jsx("line",{x1:"8",y1:"15",x2:"8",y2:"18"}),a.jsx("line",{x1:"12",y1:"15",x2:"12",y2:"18"}),a.jsx("line",{x1:"5",y1:"8",x2:"2",y2:"8"}),a.jsx("line",{x1:"5",y1:"12",x2:"2",y2:"12"}),a.jsx("line",{x1:"15",y1:"8",x2:"18",y2:"8"}),a.jsx("line",{x1:"15",y1:"12",x2:"18",y2:"12"})]})}function oC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("circle",{cx:"10",cy:"10",r:"7.5"}),a.jsx("line",{x1:"10",y1:"10",x2:"7",y2:"6.5",strokeWidth:2}),a.jsx("line",{x1:"10",y1:"10",x2:"13.5",y2:"8"})]})}function lC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("ellipse",{cx:"10",cy:"5",rx:"6.5",ry:"2"}),a.jsx("line",{x1:"3.5",y1:"5",x2:"3.5",y2:"15"}),a.jsx("line",{x1:"16.5",y1:"5",x2:"16.5",y2:"15"}),a.jsx("path",{d:"M3.5 10 Q10 12 16.5 10"}),a.jsx("path",{d:"M3.5 15 Q10 17 16.5 15"})]})}function aC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("defs",{children:a.jsx("clipPath",{id:"rv-mail-clip",children:a.jsx("rect",{x:"2",y:"5",width:"16",height:"12",rx:"1.5"})})}),a.jsx("rect",{x:"2",y:"5",width:"16",height:"12",rx:"1.5"}),a.jsx("polyline",{points:"2,5 10,12 18,5",clipPath:"url(#rv-mail-clip)"})]})}function uC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("polygon",{points:"6,3 14,3 18,8 10,18 2,8"}),a.jsx("line",{x1:"2",y1:"8",x2:"18",y2:"8"}),a.jsx("line",{x1:"6",y1:"3",x2:"10",y2:"8"}),a.jsx("line",{x1:"14",y1:"3",x2:"10",y2:"8"})]})}function cC({className:e="w-4 h-4"}){return a.jsxs("svg",{...En,className:e,children:[a.jsx("rect",{x:"2",y:"3",width:"16",height:"14",rx:"1.5"}),a.jsx("line",{x1:"2",y1:"8",x2:"18",y2:"8"}),a.jsx("line",{x1:"9",y1:"8",x2:"9",y2:"17"}),a.jsx("line",{x1:"2",y1:"12.5",x2:"18",y2:"12.5"})]})}function dC({className:e="w-4 h-4"}){return a.jsxs("svg",{viewBox:"0 0 20 20",fill:"none",className:e,children:[a.jsx("circle",{cx:"8.5",cy:"8.5",r:"5.5",stroke:"currentColor",strokeWidth:"1.9",strokeLinecap:"round"}),a.jsx("g",{transform:"translate(4.2, 3.4) scale(0.355)",fill:"currentColor",children:a.jsx("path",{d:"M.741 19.365h8.36s-1.598-7.291 3.693-10.243l.134-.066c1.286-.637 4.907-2.431 10.702 1.854.19-.159.37-.286.37-.286s-5.503-5.492-11.63-4.878c-3.079.275-6.867 3.079-9.09 6.783C1.058 16.233.741 19.365.741 19.365Zm8.804-.783a10.682 10.682 0 0 1-.127-1.333l1.143.412c.063.498.159.963.254 1.376l-1.27-.455Zm-7.799-4.317L.529 13.82c-.201.455-.423.984-.529 1.27l1.217.444c.137-.359.36-.878.529-1.269Zm7.831.296.857.677c.042-.413.116-.825.222-1.238l-.762-.603c-.137.391-.233.783-.317 1.164Zm2.042-2.646-.508-.762c.191-.243.413-.486.656-.709l.476.72a5.958 5.958 0 0 0-.624.751ZM4.19 8.878l.752.656c-.254.265-.498.551-.72.836l-.815-.698c.244-.265.508-.529.783-.794Zm9.799 1.027-.243-.73c.265-.117.571-.233.931-.339l.233.698a6.82 6.82 0 0 0-.921.371Zm3.122-.656.042-.667c.339.021.688.064 1.048.138l-.042.656a5.859 5.859 0 0 0-1.048-.127ZM8.942 6.392l-.476-.731c-.265.138-.54.286-.826.455l.487.741c.275-.169.54-.328.815-.465Zm9.217-.053.042-.709c-.095-.053-.36-.18-1.026-.371l-.043.699c.349.116.688.243 1.027.381ZM13.238 5.28h.106l-.212-.645c-.328 0-.666.021-1.016.063l.201.625a8.87 8.87 0 0 1 .921-.043Z"})}),a.jsx("path",{d:"M13 13 L17 17",stroke:"currentColor",strokeWidth:"2.1",strokeLinecap:"round"})]})}function ju({className:e="w-4 h-4"}){return a.jsx("svg",{viewBox:"0 0 16 16",fill:"currentColor",className:e,"aria-hidden":"true",children:a.jsx("path",{d:"M8 1L2 3.5v4.25C2 11.1 4.667 13.9 8 15c3.333-1.1 6-3.9 6-7.25V3.5L8 1zm2.78 5.97-3 3a.75.75 0 0 1-1.06 0l-1.5-1.5a.75.75 0 1 1 1.06-1.06L7.25 8.44l2.47-2.47a.75.75 0 1 1 1.06 1.06z"})})}function ai({className:e="w-4 h-4"}){return a.jsxs("svg",{viewBox:"0 0 16 16",fill:"currentColor",className:e,"aria-hidden":"true",children:[a.jsx("path",{d:"M7.12 1.56a1 1 0 0 1 1.76 0l6.5 11.5A1 1 0 0 1 14.5 14.5h-13a1 1 0 0 1-.88-1.44l6.5-11.5z"}),a.jsx("path",{className:"fill-white dark:fill-gray-900",d:"M8 5.5a.75.75 0 0 0-.75.75v3a.75.75 0 0 0 1.5 0v-3A.75.75 0 0 0 8 5.5zm0 5.75a.875.875 0 1 0 0 1.75.875.875 0 0 0 0-1.75z"})]})}function ui({className:e="w-4 h-4"}){return a.jsxs("svg",{viewBox:"0 0 16 16",fill:"currentColor",className:e,"aria-hidden":"true",children:[a.jsx("circle",{cx:"8",cy:"8",r:"7"}),a.jsx("path",{className:"fill-white dark:fill-gray-900",d:"M5.47 5.47a.75.75 0 0 1 1.06 0L8 6.94l1.47-1.47a.75.75 0 1 1 1.06 1.06L9.06 8l1.47 1.47a.75.75 0 1 1-1.06 1.06L8 9.06l-1.47 1.47a.75.75 0 0 1-1.06-1.06L6.94 8 5.47 6.53a.75.75 0 0 1 0-1.06z"})]})}const Ie={overview:rC,routes:sC,controllers:iC,jobs:oC,migrations:lC,mailers:aC,gems:uC,models:cC};function V0({label:e,count:t,colorClass:n,isActive:r,hasActiveFilter:s,onClick:i,title:o,monoLabel:l=!1}){return a.jsxs("button",{onClick:i,title:o,className:`text-xs px-3 py-1 rounded-full font-medium border transition-all ${n} ${s&&!r?"opacity-40":"opacity-100"} ${r&&s?"ring-2 ring-current":""}`,children:[l?a.jsx("span",{className:"font-mono",children:e}):e,a.jsx("span",{className:"ml-1 tabular-nums text-[10px] opacity-75",children:t})]})}const fC="bg-gray-100 text-gray-700 border-gray-300";function ci({active:e,count:t,severity:n="warn",onToggle:r}){if(t===0)return null;const s=n==="error",i=s?ui:ai,o=s?e?"bg-red-100 text-red-700 border-red-300 ring-2 ring-current":"bg-red-100 text-red-700 border-red-200 hover:bg-red-200 hover:border-red-300":e?"bg-amber-100 text-amber-700 border-amber-300 ring-2 ring-current":"bg-amber-100 text-amber-700 border-amber-200 hover:bg-amber-200 hover:border-amber-300";return a.jsxs("button",{onClick:r,title:e?"Showing issues only — click to show all":"Show only items with issues",className:`flex items-center gap-1.5 text-xs px-3 py-1 rounded-full font-medium border transition-all whitespace-nowrap ${o}`,children:[a.jsx(i,{className:"w-3 h-3 shrink-0"}),t]})}function wl({options:e,selected:t,onChange:n,allCount:r,className:s=""}){const i=t.size>0,o=i&&t.size===e.length;function l(){n(o?new Set:new Set(e.map(c=>c.key)))}function u(c){const d=new Set(t);d.has(c)?d.delete(c):d.add(c),n(d)}return a.jsxs("div",{className:`flex flex-wrap gap-1 ${s}`,children:[a.jsx(V0,{label:"All",count:r,colorClass:fC,isActive:!i||o,hasActiveFilter:i,onClick:l}),e.map(c=>a.jsx(V0,{label:c.label,count:c.count,colorClass:c.colorClass,isActive:t.has(c.key),hasActiveFilter:i,onClick:()=>u(c.key),monoLabel:c.monoLabel,title:c.title},c.key))]})}const kg={GET:"bg-emerald-100 text-emerald-700 border-emerald-200",POST:"bg-blue-100 text-blue-700 border-blue-200",PATCH:"bg-amber-100 text-amber-700 border-amber-200",PUT:"bg-amber-100 text-amber-700 border-amber-200",DELETE:"bg-red-100 text-red-700 border-red-200"};function hC({verb:e}){const t=kg[e]??"bg-gray-100 text-gray-600 border-gray-200";return a.jsx("span",{className:`inline-block text-[10px] font-bold px-1.5 py-0.5 rounded border font-mono ${t}`,children:e})}function pC(e,t){return e.split(/(:[a-z_]+|\(.*?\))/).map((n,r)=>{const s=ve(n,t);return n.startsWith(":")?a.jsx("span",{className:"text-amber-600 font-semibold",children:s},r):n.startsWith("(")?a.jsx("span",{className:"text-gray-400",children:s},r):a.jsx($u.Fragment,{children:s},r)})}const mC=["GET","POST","PATCH","PUT","DELETE"];function gC({routes:e}){if(e.length===0)return a.jsx(qe,{icon:Ie.routes({className:"w-full h-full"}),message:"No routes found.",hint:"Define routes in config/routes.rb to see them here."});const[t,n]=j.useState(""),[r,s]=j.useState(new Set),[i,o]=j.useState(!1),[l,u]=j.useState(!1),c=j.useMemo(()=>e.filter(p=>!p.internal),[e]),d=j.useMemo(()=>c.filter(p=>p.orphaned).length,[c]),f=j.useMemo(()=>{const p={};return c.forEach(v=>{v.verb.split("|").forEach(b=>{p[b]=(p[b]??0)+1})}),p},[c]),h=mC.filter(p=>(f[p]??0)>0),m=j.useMemo(()=>e.filter(p=>{if(!i&&p.internal||l&&!p.orphaned||r.size>0&&!p.verb.split("|").some(b=>r.has(b)))return!1;const v=t.toLowerCase();return v?p.path.toLowerCase().includes(v)||p.controller.toLowerCase().includes(v)||p.action.toLowerCase().includes(v)||(p.name??"").toLowerCase().includes(v):!0}),[e,t,r,i,l]);return a.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[a.jsxs("div",{className:"px-4 py-3 bg-white border-b border-gray-200 flex items-center gap-3 shrink-0",children:[a.jsxs("div",{className:"flex-1 flex flex-wrap items-center gap-2 min-w-0",children:[a.jsx(wl,{options:h.map(p=>({key:p,label:p,count:f[p]??0,colorClass:kg[p]??"bg-gray-100 text-gray-600 border-gray-200",monoLabel:!0})),selected:r,onChange:s,allCount:c.length}),e.length-c.length>0&&a.jsxs("button",{onClick:()=>o(p=>!p),className:`text-xs px-3 py-1 rounded-full font-medium border transition-all whitespace-nowrap select-none ${i?"bg-gray-200 text-gray-800 border-gray-300 ring-2 ring-gray-400/40":"bg-gray-100 text-gray-500 border-gray-200 hover:bg-gray-200 hover:border-gray-300"}`,children:["Include ",e.length-c.length," engine ",ee(e.length-c.length,"route")]}),a.jsx(ci,{active:l,count:d,severity:"error",onToggle:()=>u(p=>!p)})]}),a.jsx(Zn,{value:t,onChange:n,placeholder:"Search path, controller, action, route name…",className:"flex-[2] min-w-0"}),a.jsx("div",{className:"flex-1 flex items-center justify-end min-w-0",children:a.jsxs("span",{className:"text-xs text-gray-400 tabular-nums whitespace-nowrap",children:[m.length," / ",i?e.length:c.length," ",ee(i?e.length:c.length,"route")]})})]}),a.jsx("div",{className:"flex-1 overflow-auto",children:a.jsxs("table",{className:"w-full text-sm border-collapse table-fixed",children:[a.jsxs("colgroup",{children:[a.jsx("col",{className:"w-[76px]"}),a.jsx("col",{className:"w-[34%]"}),a.jsx("col",{className:"w-[26%]"}),a.jsx("col",{className:"w-[80px]"}),a.jsx("col",{className:"w-[20%]"})]}),a.jsx("thead",{className:"sticky top-0 bg-gray-50 z-10",children:a.jsxs("tr",{className:"border-b border-gray-200 text-left",children:[a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Verb"}),a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Path"}),a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Controller"}),a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Action"}),a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide hidden md:table-cell",children:"Route name"})]})}),a.jsxs("tbody",{children:[m.map((p,v)=>{const b=p.orphaned;return a.jsxs("tr",{className:`group border-b border-gray-100 hover:bg-gray-100 transition-colors ${p.internal?"opacity-50":""} ${b?"bg-red-50/50":""}`,children:[a.jsx("td",{className:"px-3 py-2",children:a.jsx(hC,{verb:p.verb})}),a.jsx("td",{className:"px-3 py-2 font-mono text-xs text-gray-700 max-w-0",children:a.jsx("div",{className:"truncate",title:p.path,children:pC(p.path,t)})}),a.jsx("td",{className:"px-3 py-2 text-xs max-w-0",children:a.jsxs("div",{className:"flex items-center gap-0.5 min-w-0",children:[b?a.jsx(be,{text:`No controller file found for ${p.controller}_controller.rb — this route may be stale`,children:a.jsx("div",{className:"truncate text-red-600 font-medium flex-1 min-w-0",title:p.controller,children:ve(p.controller,t)})}):a.jsx("div",{className:"truncate text-gray-600 flex-1 min-w-0",title:p.controller,children:ve(p.controller,t)}),a.jsxs("span",{className:"opacity-0 group-hover:opacity-100 transition-opacity shrink-0 flex items-center",children:[a.jsx(Nn,{value:p.controller,hint:p.controller}),a.jsx(Cn,{filePath:p.controllerFilePath})]})]})}),a.jsx("td",{className:"px-3 py-2 text-xs font-medium text-gray-800 max-w-0",children:a.jsx("div",{className:"truncate",title:p.action,children:ve(p.action,t)})}),a.jsx("td",{className:"px-3 py-2 text-xs text-indigo-500 font-mono hidden md:table-cell max-w-0",children:a.jsx("div",{className:"truncate",title:p.name??"",children:p.name?ve(p.name,t):null})})]},`${p.verb}-${p.path}-${v}`)}),m.length===0&&a.jsx("tr",{children:a.jsx("td",{colSpan:5,children:a.jsx(qe,{variant:"compact",message:"No routes match your filter."})})})]})]})})]})}function ro(e){const t=e.split("::");return t[t.length-1]}const xC={sidekiq:"Sidekiq — multi-threaded background processor backed by Redis",resque:"Resque — Redis-backed processor with a web UI",delayed_job:"Delayed::Job — database-backed processor",good_job:"GoodJob — Postgres-backed processor with threading and concurrency",solid_queue:"Solid Queue — database-backed processor built into Rails 8",test:"Test adapter — jobs are queued but not executed (use in specs)",inline:"Inline adapter — jobs run immediately in the same process (not for production)",async:"Async adapter — jobs run in a background thread pool inside the web process"},H0=["bg-indigo-100 text-indigo-700 border-indigo-200","bg-teal-100 text-teal-700 border-teal-200","bg-amber-100 text-amber-700 border-amber-200","bg-rose-100 text-rose-700 border-rose-200","bg-sky-100 text-sky-700 border-sky-200","bg-violet-100 text-violet-700 border-violet-200","bg-orange-100 text-orange-700 border-orange-200"];function Ng(e,t){const n=t.indexOf(e);return H0[n%H0.length]}function Cg({queue:e,allQueues:t}){return a.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded border font-medium shrink-0 ${Ng(e,t)}`,title:e,children:e})}function yC({job:e,allQueues:t,query:n}){const r=ro(e.name);return a.jsxs("div",{className:"bg-white rounded-lg border border-gray-200 p-3 hover:border-indigo-300 hover:shadow-sm transition-all min-w-0",children:[a.jsxs("div",{className:"flex items-center gap-1.5 min-w-0 mb-1.5",children:[a.jsx("span",{className:"font-semibold text-gray-800 text-sm truncate flex-1",title:e.name,children:ve(r,n)}),a.jsx(Nn,{value:e.filePath,hint:e.filePath??void 0}),a.jsx(Cn,{filePath:e.filePath})]}),a.jsxs("div",{className:"flex items-center justify-between gap-2 min-w-0",children:[a.jsxs("div",{className:"flex items-center gap-1.5 min-w-0 overflow-hidden",children:[a.jsx(Cg,{queue:e.queue,allQueues:t}),e.priority!=null&&a.jsxs("span",{className:"text-[10px] text-gray-400 shrink-0",children:["p",e.priority]})]}),e.retryOn.length>0&&a.jsxs("span",{className:"text-[10px] text-gray-400 shrink-0",children:["Retries: ",e.retryOn.length]})]}),(e.retryOn.length>0||e.discardOn.length>0)&&a.jsxs("div",{className:"mt-2 space-y-1.5",children:[e.retryOn.length>0&&a.jsxs("div",{children:[a.jsx("span",{className:"text-[10px] text-gray-400",children:"Retries on"}),a.jsx("div",{className:"mt-0.5 flex flex-wrap gap-1",children:e.retryOn.map((s,i)=>a.jsx("span",{className:"bg-amber-50 text-amber-700 border border-amber-200 px-1 py-0.5 rounded text-[10px] font-mono",title:s.error,children:ro(s.error)},i))})]}),e.discardOn.length>0&&a.jsxs("div",{children:[a.jsx("span",{className:"text-[10px] text-gray-400",children:"Discards on"}),a.jsx("div",{className:"mt-0.5 flex flex-wrap gap-1",children:e.discardOn.map((s,i)=>a.jsx("span",{className:"bg-red-50 text-red-600 border border-red-200 px-1 py-0.5 rounded text-[10px] font-mono",title:s,children:ro(s)},i))})]})]})]})}function vC({worker:e,allQueues:t,query:n}){const r=ro(e.name),s=e.retry===!0?"25":e.retry===!1?"0":e.retry!=null?String(e.retry):null;return a.jsxs("div",{className:"bg-white rounded-lg border border-gray-200 p-3 hover:border-red-300 hover:shadow-sm transition-all min-w-0",children:[a.jsxs("div",{className:"flex items-center gap-1.5 min-w-0 mb-1.5",children:[a.jsx("span",{className:"font-semibold text-gray-800 text-sm truncate flex-1",title:e.name,children:ve(r,n)}),a.jsx(Nn,{value:e.filePath,hint:e.filePath??void 0}),a.jsx(Cn,{filePath:e.filePath})]}),a.jsxs("div",{className:"flex items-center justify-between gap-2 min-w-0",children:[a.jsx("div",{className:"flex items-center gap-1.5 min-w-0 overflow-hidden",children:a.jsx(Cg,{queue:e.queue,allQueues:t})}),s!=null&&a.jsxs("span",{className:`text-[10px] shrink-0 ${s==="0"?"text-amber-600 font-medium":"text-gray-400"}`,children:["Retries: ",s]})]})]})}function wC({items:e,renderCard:t}){const[n,r]=j.useState(!1);return a.jsxs("div",{className:"mb-3",children:[a.jsxs("button",{onClick:()=>r(s=>!s),className:"flex items-center gap-1.5 mb-1.5 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:n?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700",children:"Root"}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:e.length})]}),!n&&a.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-2",children:e.map(t)})]})}function Vo({node:e,allQueues:t,type:n,query:r,depth:s=0}){const[i,o]=j.useState(!1),l=li(e);if(l===0)return null;const u=Array.from(e.children.entries()).sort((f,h)=>f[0].localeCompare(h[0])),c=f=>n==="active"?a.jsx(yC,{job:f,allQueues:t,query:r},f.name):a.jsx(vC,{worker:f,allQueues:t,query:r},f.name);if(s===0&&e.label===""){const f=e.items.length>0&&u.length>0;return a.jsxs(a.Fragment,{children:[f&&a.jsx(wC,{items:e.items,renderCard:c}),!f&&e.items.length>0&&a.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-2 mb-4",children:e.items.map(c)}),u.map(([h,m])=>a.jsx(Vo,{node:m,allQueues:t,type:n,query:r,depth:1},h))]})}const d=(s-1)*14;return a.jsxs("div",{className:"mb-3",style:{marginLeft:`${d}px`},children:[a.jsxs("button",{onClick:()=>o(!i),className:"flex items-center gap-1.5 mb-1.5 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:i?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700 truncate",children:ve(e.label,r)}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:l})]}),!i&&a.jsxs("div",{className:"border-l border-gray-100 pl-3",children:[e.items.length>0&&a.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-2 mb-2",children:e.items.map(c)}),u.map(([f,h])=>a.jsx(Vo,{node:h,allQueues:t,type:n,query:r,depth:s+1},f))]})]})}function B0({title:e,count:t,countLabel:n,countLabelPlural:r,children:s}){const[i,o]=j.useState(!1);return a.jsxs("section",{className:"mb-4",children:[a.jsxs("button",{onClick:()=>o(l=>!l),className:"flex items-center gap-2 mb-3 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:i?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("h2",{className:"text-sm font-semibold text-gray-700 group-hover:text-gray-900",children:e}),a.jsxs("span",{className:"text-xs text-gray-400",children:[t," ",ee(t,n,r??`${n}s`)]})]}),!i&&s]})}function bC({jobs:e}){const[t,n]=j.useState(""),[r,s]=j.useState(new Set),[i,o]=j.useState(!1),l=j.useMemo(()=>e.sidekiqWorkers.filter(y=>y.retry===!1||y.retry===0).length,[e.sidekiqWorkers]),u=j.useMemo(()=>{const y=new Set;return e.activeJobs.forEach(g=>y.add(g.queue)),e.sidekiqWorkers.forEach(g=>y.add(g.queue)),Array.from(y).sort()},[e]),c=j.useMemo(()=>{const y={};return e.activeJobs.forEach(g=>{y[g.queue]=(y[g.queue]??0)+1}),e.sidekiqWorkers.forEach(g=>{y[g.queue]=(y[g.queue]??0)+1}),y},[e]),d=j.useMemo(()=>i?[]:e.activeJobs.filter(y=>r.size>0&&!r.has(y.queue)?!1:t?y.name.toLowerCase().includes(t.toLowerCase()):!0),[e.activeJobs,r,t,i]),f=j.useMemo(()=>e.sidekiqWorkers.filter(y=>r.size>0&&!r.has(y.queue)||i&&y.retry!==!1&&y.retry!==0?!1:t?y.name.toLowerCase().includes(t.toLowerCase()):!0),[e.sidekiqWorkers,r,t,i]),h=j.useMemo(()=>Xs(d),[d]),m=j.useMemo(()=>Xs(f),[f]);if(!(e.activeJobs.length>0||e.sidekiqWorkers.length>0))return a.jsx(qe,{icon:Ie.jobs({className:"w-full h-full"}),message:"No background jobs found.",hint:"Inherit from ApplicationJob (ActiveJob) to have jobs appear here."});const v=xC[e.adapter]??`${e.adapter} adapter`,b=e.activeJobs.length+e.sidekiqWorkers.length,x=d.length+f.length;return a.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[a.jsxs("div",{className:"px-4 bg-white border-b border-gray-200 shrink-0",children:[u.length>1&&a.jsxs("div",{className:"flex flex-wrap items-center gap-1.5 pt-3 pb-2 border-b border-gray-100",children:[a.jsx("span",{className:"text-xs text-gray-400 shrink-0",children:"Queue:"}),a.jsx(wl,{options:u.map(y=>({key:y,label:y,count:c[y]??0,colorClass:Ng(y,u),title:y})),selected:r,onChange:s,allCount:b})]}),a.jsxs("div",{className:"flex items-center gap-3 py-3",children:[a.jsx("div",{className:"flex-1 flex items-center gap-2 min-w-0",children:a.jsx(ci,{active:i,count:l,severity:"warn",onToggle:()=>o(y=>!y)})}),a.jsx(Zn,{value:t,onChange:n,placeholder:"Search jobs…",className:"flex-[2] min-w-0"}),a.jsxs("div",{className:"flex-1 flex items-center justify-end gap-2 min-w-0",children:[a.jsxs("span",{className:"text-xs text-gray-400 tabular-nums whitespace-nowrap",children:[x," / ",b," ",ee(b,"job")]}),a.jsx(be,{text:v,children:a.jsx("span",{className:"text-xs text-gray-500 border border-gray-200 rounded-full px-2.5 py-0.5 bg-gray-50 whitespace-nowrap font-medium",children:e.adapter})})]})]})]}),a.jsxs("div",{className:"flex-1 overflow-auto px-4 py-4 space-y-2",children:[d.length>0&&a.jsx(B0,{title:"ActiveJob",count:d.length,countLabel:"class",countLabelPlural:"classes",children:a.jsx(Vo,{node:h,allQueues:u,type:"active",query:t})}),f.length>0&&a.jsx(B0,{title:"Sidekiq Workers",count:f.length,countLabel:"worker",children:a.jsx(Vo,{node:m,allQueues:u,type:"sidekiq",query:t})}),x===0&&a.jsx(qe,{variant:"compact",message:"No jobs match your search."})]})]})}const W0={index:"index — list all records (GET /resources)",show:"show — display one record (GET /resources/:id)",new:'new — render the "new" form (GET /resources/new)',create:"create — save a new record (POST /resources)",edit:'edit — render the "edit" form (GET /resources/:id/edit)',update:"update — save changes to a record (PATCH/PUT /resources/:id)",destroy:"destroy — delete a record (DELETE /resources/:id)"};function kC(e){if(!(e.before.length>0||e.around.length>0||e.after.length>0))return null;const n=[{label:"Before",names:e.before,labelCls:"text-amber-600",chipCls:"bg-amber-50 text-amber-700 border border-amber-200"},{label:"Around",names:e.around,labelCls:"text-teal-600",chipCls:"bg-teal-50 text-teal-700 border border-teal-200"},{label:"After",names:e.after,labelCls:"text-sky-600",chipCls:"bg-sky-50 text-sky-700 border border-sky-200"}];return a.jsx("div",{className:"mt-1.5 border-t border-gray-200 pt-1.5 space-y-1",children:n.filter(r=>r.names.length>0).map(({label:r,names:s,labelCls:i,chipCls:o})=>a.jsxs("div",{children:[a.jsx("span",{className:`${i} text-[9px] font-semibold uppercase tracking-wide`,children:r}),a.jsx("div",{className:"flex flex-wrap gap-1 mt-0.5",children:s.map(l=>a.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded font-mono ${o}`,children:l},l))})]},r))})}function NC({action:e,noRoute:t=!1,isCallback:n=!1,routedVia:r,callbacks:s}){const{name:i,definedIn:o}=e,l=i in W0,u=o?` · defined in ${o}`:"",c=s?kC(s):null;if(t){if(r&&r.length>0){const m=r.join(", ");return a.jsx(be,{content:a.jsxs("div",{className:"text-left space-y-1 min-w-[160px]",children:[a.jsx("div",{children:"No direct route on this controller."}),a.jsxs("div",{className:"mt-1 border-t border-gray-200 pt-1 text-gray-500",children:["Routed via:",a.jsx("br",{}),r.map(p=>a.jsx("span",{className:"block font-mono text-gray-800",children:p},p))]}),u&&a.jsx("div",{className:"text-gray-500",children:u.slice(3)}),c]}),children:a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-mono bg-yellow-50 text-yellow-600 border border-yellow-200",title:m,children:i})})}return a.jsx(be,{content:a.jsxs("div",{className:"text-left min-w-[140px]",children:[a.jsxs("div",{children:[i," — no route points here",u]}),c]}),children:a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-mono bg-amber-50 text-amber-600 border border-amber-200",children:i})})}if(n)return a.jsx(be,{content:a.jsxs("div",{className:"text-left min-w-[140px]",children:[a.jsxs("div",{children:[i," — registered as a callback; consider making it private or protected",u]}),c]}),children:a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-mono bg-amber-50 text-amber-600 border border-amber-200",children:i})});const f=[W0[i],o?`defined in ${o}`:""].filter(Boolean).join(" · "),h=a.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded font-mono ${l?"bg-indigo-100 text-indigo-700":"bg-gray-100 text-gray-600"}`,children:i});return!f&&!c?h:a.jsx(be,{content:a.jsxs("div",{className:"text-left min-w-[140px]",children:[f&&a.jsx("div",{children:f}),c]}),children:h})}function CC({action:e}){const{name:t,definedIn:n}=e,r=t.endsWith("?")?"predicate":t.endsWith("=")?"setter":"helper",s=n?` · defined in ${n}`:"";return a.jsx(be,{text:`${t} — public ${r} that can never be routed; consider making it private or protected${s}`,children:a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-mono bg-orange-50 text-orange-500 border border-orange-200",children:t})})}function EC(e){const t=()=>e.only.length>0?a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-400",children:"Only:"})," ",e.only.join(", ")]}):e.except.length>0?a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-400",children:"Except:"})," ",e.except.join(", ")]}):a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-400",children:"Runs for:"})," all actions"]});return a.jsxs("div",{className:"text-left space-y-0.5 min-w-[140px]",children:[t(),e.ifConditions.length>0&&a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-400",children:"Runs if:"})," ",e.ifConditions.join(", ")]}),e.unlessConditions.length>0&&a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-400",children:"Skips if:"})," ",e.unlessConditions.join(", ")]}),e.hasCustomCondition&&a.jsx("div",{className:"text-amber-600",children:"(custom condition)"}),e.inheritedFrom&&a.jsxs("div",{className:"text-gray-400 text-[9px] mt-1 border-t border-gray-200 pt-1",children:["inherited from ",e.inheritedFrom]})]})}function fa({cb:e,kind:t}){const n=!!e.inheritedFrom,r=t==="before"?n?"bg-amber-50/50 text-amber-500 border border-amber-100":"bg-amber-50 text-amber-700 border border-amber-200":t==="after"?n?"bg-sky-50/50 text-sky-400 border border-sky-100":"bg-sky-50 text-sky-700 border border-sky-200":n?"bg-teal-50/50 text-teal-500 border border-teal-100":"bg-teal-50 text-teal-700 border border-teal-200";return a.jsx(be,{content:EC(e),children:a.jsxs("span",{className:`text-[10px] px-1.5 py-0.5 rounded font-mono ${r}`,children:[e.name,n&&a.jsx("span",{className:"ml-0.5 opacity-60",children:"↑"})]})})}function jC(e,t){const n=r=>!(r.only.length>0&&!r.only.includes(e)||r.except.length>0&&r.except.includes(e));return{before:t.beforeActions.filter(n).map(r=>r.name),around:t.aroundActions.filter(n).map(r=>r.name),after:t.afterActions.filter(n).map(r=>r.name)}}function U0({ctrl:e,query:t,noRouteActions:n,routedViaDescendants:r}){const[s,i]=j.useState(!1),o=(n==null?void 0:n.size)??0,l=j.useMemo(()=>{const c=new Set;return e.beforeActions.forEach(d=>c.add(d.name)),e.afterActions.forEach(d=>c.add(d.name)),e.aroundActions.forEach(d=>c.add(d.name)),c},[e.beforeActions,e.afterActions,e.aroundActions]),u=[e.beforeActions.length>0&&`${e.beforeActions.length} before`,e.aroundActions.length>0&&`${e.aroundActions.length} around`,e.afterActions.length>0&&`${e.afterActions.length} after`].filter(Boolean).join(" · ");return a.jsxs("div",{className:"bg-white rounded-lg border border-gray-200 hover:border-indigo-300 hover:shadow-sm transition-all",children:[a.jsxs("button",{className:"w-full text-left px-4 py-3 flex items-start justify-between gap-3",onClick:()=>i(!s),children:[a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsx("div",{className:"flex items-center gap-1.5 min-w-0",children:a.jsx("span",{className:"font-semibold text-gray-800 text-sm truncate",children:ve(e.name,t)})}),a.jsxs("div",{className:"text-xs text-gray-400 mt-0.5 truncate",children:["inherits ",a.jsx("span",{className:"font-mono text-gray-500",children:e.superclass})]})]}),a.jsxs("div",{className:"flex flex-col items-end gap-1 shrink-0",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[o>0&&a.jsxs("span",{className:"text-[9px] bg-amber-50 text-amber-600 border border-amber-200 px-1.5 py-0.5 rounded",children:[o," public ",ee(o,"action")," without route"]}),a.jsxs("span",{className:"text-[10px] bg-indigo-50 text-indigo-600 px-2 py-0.5 rounded-full",children:[e.actions.length," ",ee(e.actions.length,"action")]}),a.jsx(Nn,{value:e.filePath,hint:e.filePath??void 0}),a.jsx(Cn,{filePath:e.filePath}),a.jsx("span",{className:"text-gray-400 text-xs",children:s?"▲":"▼"})]}),u&&a.jsx("div",{className:"text-[10px] text-gray-400",children:u})]})]}),s&&a.jsxs("div",{className:"border-t border-gray-100 px-4 py-3 space-y-3",children:[a.jsxs("div",{children:[a.jsx("div",{className:"text-[10px] uppercase tracking-wide text-gray-400 font-semibold mb-1.5",children:"Actions"}),a.jsxs("div",{className:"flex flex-wrap gap-1",children:[e.actions.map(c=>a.jsx(NC,{action:c,noRoute:(n==null?void 0:n.has(c.name))??!1,isCallback:l.has(c.name),routedVia:r==null?void 0:r.get(c.name),callbacks:jC(c.name,e)},c.name)),e.publicHelpers.map(c=>a.jsx(CC,{action:c},c.name)),e.actions.length===0&&e.publicHelpers.length===0&&a.jsx("span",{className:"text-xs text-gray-400 italic",children:"No public actions"})]})]}),e.beforeActions.length>0&&a.jsxs("div",{children:[a.jsx("div",{className:"text-[10px] uppercase tracking-wide text-amber-500 font-semibold mb-1.5",children:"Before Actions"}),a.jsx("div",{className:"flex flex-wrap gap-1",children:[...e.beforeActions].sort((c,d)=>(c.inheritedFrom?1:0)-(d.inheritedFrom?1:0)).map(c=>a.jsx(fa,{cb:c,kind:"before"},c.name))})]}),e.aroundActions.length>0&&a.jsxs("div",{children:[a.jsx("div",{className:"text-[10px] uppercase tracking-wide text-teal-600 font-semibold mb-1.5",children:"Around Actions"}),a.jsx("div",{className:"flex flex-wrap gap-1",children:[...e.aroundActions].sort((c,d)=>(c.inheritedFrom?1:0)-(d.inheritedFrom?1:0)).map(c=>a.jsx(fa,{cb:c,kind:"around"},c.name))})]}),e.afterActions.length>0&&a.jsxs("div",{children:[a.jsx("div",{className:"text-[10px] uppercase tracking-wide text-sky-500 font-semibold mb-1.5",children:"After Actions"}),a.jsx("div",{className:"flex flex-wrap gap-1",children:[...e.afterActions].sort((c,d)=>(c.inheritedFrom?1:0)-(d.inheritedFrom?1:0)).map(c=>a.jsx(fa,{cb:c,kind:"after"},c.name))})]})]})]})}function _C({count:e,children:t}){const[n,r]=j.useState(!1);return a.jsxs("div",{className:"mb-4",children:[a.jsxs("button",{onClick:()=>r(s=>!s),className:"flex items-center gap-1.5 mb-2 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:n?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700",children:"Root"}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:e})]}),!n&&t]})}function _u({node:e,query:t,noRouteResult:n,depth:r=0}){const[s,i]=j.useState(!1),o=li(e);if(o===0)return null;const l=Array.from(e.children.entries()).sort((c,d)=>c[0].localeCompare(d[0]));if(r===0&&e.label===""){const c=l.length>0,d=e.items.map(f=>a.jsx(U0,{ctrl:f,query:t,noRouteActions:n.noRouteActions.get(f.name),routedViaDescendants:n.routedViaDescendants.get(f.name)},f.name));return a.jsxs(a.Fragment,{children:[e.items.length>0&&(c?a.jsx(_C,{count:e.items.length,children:a.jsx("div",{className:"space-y-2",children:d})}):a.jsx("div",{className:"space-y-2 mb-4",children:d})),l.map(([f,h])=>a.jsx(_u,{node:h,query:t,noRouteResult:n,depth:1},f))]})}const u=(r-1)*14;return a.jsxs("div",{className:"mb-4",style:{marginLeft:`${u}px`},children:[a.jsxs("button",{onClick:()=>i(c=>!c),className:"flex items-center gap-1.5 mb-2 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:s?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700",children:ve(e.label,t)}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:o})]}),!s&&a.jsxs("div",{className:"border-l border-gray-100 pl-3",children:[e.items.length>0&&a.jsx("div",{className:"space-y-2 mb-3",children:e.items.map(c=>a.jsx(U0,{ctrl:c,query:t,noRouteActions:n.noRouteActions.get(c.name),routedViaDescendants:n.routedViaDescendants.get(c.name)},c.name))}),l.map(([c,d])=>a.jsx(_u,{node:d,query:t,noRouteResult:n,depth:r+1},c))]})]})}function SC({controllers:e,deadCode:t}){const[n,r]=j.useState(""),[s,i]=j.useState(!1),o=j.useMemo(()=>e.filter(d=>{var f;return(((f=t.noRouteActions.get(d.name))==null?void 0:f.size)??0)>0}).length,[e,t]),l=j.useMemo(()=>e.filter(d=>{var f;return s&&(((f=t.noRouteActions.get(d.name))==null?void 0:f.size)??0)===0?!1:d.name.toLowerCase().includes(n.toLowerCase())}),[e,n,s,t]),u=j.useMemo(()=>Xs(l),[l]),c=j.useMemo(()=>{let d=0;return t.noRouteActions.forEach(f=>{d+=f.size}),d},[t]);return e.length===0?a.jsx(qe,{icon:Ie.controllers({className:"w-full h-full"}),message:"No controllers found.",hint:"Create controllers inheriting from ApplicationController to see them here."}):a.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[a.jsxs("div",{className:"px-4 py-3 bg-white border-b border-gray-200 flex items-center gap-3 shrink-0",children:[a.jsx("div",{className:"flex-1 flex items-center gap-2 min-w-0",children:a.jsx(ci,{active:s,count:o,onToggle:()=>i(d=>!d)})}),a.jsx(Zn,{value:n,onChange:r,placeholder:"Search controllers…",className:"flex-[2] min-w-0"}),a.jsxs("div",{className:"flex-1 flex items-center gap-2 justify-end min-w-0",children:[c>0&&a.jsxs("span",{className:"text-xs bg-amber-50 text-amber-600 border border-amber-200 px-2 py-1 rounded whitespace-nowrap",children:[c," public ",ee(c,"action")," without route"]}),a.jsxs("span",{className:"text-xs text-gray-400 tabular-nums whitespace-nowrap",children:[l.length," / ",e.length," ",ee(e.length,"controller")]})]})]}),a.jsx("div",{className:"flex-1 overflow-auto px-4 py-4",children:l.length===0?a.jsx(qe,{variant:"compact",message:"No controllers match your search."}):a.jsx(_u,{node:u,query:n,noRouteResult:t})})]})}function MC({status:e}){return e==="up"?a.jsx("span",{className:"inline-flex items-center gap-1 text-[10px] font-medium text-emerald-700 bg-emerald-50 border border-emerald-200 px-1.5 py-0.5 rounded whitespace-nowrap",children:"✓ Applied"}):a.jsx("span",{className:"inline-flex items-center gap-1 text-[10px] font-medium text-red-700 bg-red-50 border border-red-200 px-1.5 py-0.5 rounded whitespace-nowrap",children:"⏳ Pending"})}function LC({m:e,isLatest:t,query:n}){const r=e.version,s=r.length>=8?`${r.slice(0,4)}-${r.slice(4,6)}-${r.slice(6,8)}`:r;return a.jsxs("tr",{className:`border-b border-gray-100 hover:bg-gray-100 transition-colors ${e.status==="down"?"bg-red-50/30":""}`,children:[a.jsx("td",{className:"px-3 py-2.5",children:a.jsx(MC,{status:e.status})}),a.jsx("td",{className:"px-3 py-2.5",children:a.jsxs("div",{className:"min-w-0",children:[a.jsxs("div",{className:"font-medium text-gray-800 text-sm flex items-center gap-1.5 flex-wrap",children:[ve(e.humanName,n),t&&a.jsx("span",{className:"text-[9px] bg-indigo-100 text-indigo-600 px-1 py-0.5 rounded whitespace-nowrap",children:"CURRENT"})]}),a.jsxs("div",{className:"flex items-center gap-1 mt-0.5 min-w-0",children:[a.jsx("span",{className:"text-xs text-gray-400 font-mono truncate",children:ve(e.name.replace(/^\d+_/,""),n)}),a.jsx(Nn,{value:e.filePath,hint:e.filePath??void 0}),a.jsx(Cn,{filePath:e.filePath})]})]})}),a.jsx("td",{className:"px-3 py-2.5 text-xs font-mono text-gray-400 hidden sm:table-cell",children:a.jsx(be,{text:`Date from version timestamp. Full version: ${e.version}`,children:a.jsx("span",{className:"whitespace-nowrap",children:s})})}),a.jsx("td",{className:"px-3 py-2.5 text-xs font-mono text-gray-300 hidden lg:table-cell",children:a.jsx("span",{className:"whitespace-nowrap",children:ve(e.version,n)})})]})}const G0=[{key:"up",label:"Applied",count:0,colorClass:"bg-emerald-100 text-emerald-700 border-emerald-200"},{key:"down",label:"Pending",count:0,colorClass:"bg-red-100 text-red-700 border-red-200"}];function IC({migrations:e}){if(e.totalCount===0)return a.jsx(qe,{icon:Ie.migrations({className:"w-full h-full"}),message:"No migrations found.",hint:"Run rails generate migration to create your first migration."});const[t,n]=j.useState(new Set),[r,s]=j.useState(""),i=[{...G0[0],count:e.appliedCount},{...G0[1],count:e.pendingCount}],o=j.useMemo(()=>[...e.migrations].sort((l,u)=>u.version.localeCompare(l.version)).filter(l=>{if(t.size>0&&!t.has(l.status))return!1;if(!r)return!0;const u=r.toLowerCase();return l.humanName.toLowerCase().includes(u)||l.name.toLowerCase().includes(u)||l.version.includes(u)}),[e.migrations,t,r]);return a.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[a.jsxs("div",{className:"px-4 py-3 bg-white border-b border-gray-200 flex items-center gap-3 shrink-0",children:[a.jsx("div",{className:"flex-1 min-w-0",children:a.jsx(wl,{options:i,selected:t,onChange:n,allCount:e.totalCount})}),a.jsx(Zn,{value:r,onChange:s,placeholder:"Search migrations…",className:"flex-[2] min-w-0"}),a.jsx("div",{className:"flex-1 flex items-center justify-end min-w-0",children:a.jsxs("span",{className:"text-xs text-gray-400 tabular-nums whitespace-nowrap",children:[o.length," / ",e.totalCount," ",ee(e.totalCount,"migration"),e.currentVersion&&a.jsxs(a.Fragment,{children:[" · ",a.jsx("span",{className:"font-mono text-gray-600",children:e.currentVersion})]})]})})]}),a.jsx("div",{className:"flex-1 overflow-auto",children:a.jsxs("table",{className:"w-full text-sm border-collapse",children:[a.jsx("thead",{className:"sticky top-0 bg-gray-50 z-10",children:a.jsxs("tr",{className:"border-b border-gray-200 text-left",children:[a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide w-24",children:"Status"}),a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide",children:"Migration"}),a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide hidden sm:table-cell w-28",children:"Date"}),a.jsx("th",{className:"px-3 py-2 text-xs font-semibold text-gray-500 uppercase tracking-wide hidden lg:table-cell w-36",children:"Version"})]})}),a.jsxs("tbody",{children:[o.map(l=>a.jsx(LC,{m:l,isLatest:l.version===e.currentVersion,query:r},l.version)),o.length===0&&a.jsx("tr",{children:a.jsx("td",{colSpan:4,children:a.jsx(qe,{variant:"compact",message:"No migrations match your filter."})})})]})]})})]})}function PC({groups:e,query:t}){const[n,r]=j.useState(!1),s=e.reduce((i,o)=>i+o.methods.length,0);return a.jsxs("div",{className:"mt-3 border-t border-gray-100 pt-3",children:[a.jsxs("button",{onClick:()=>r(i=>!i),className:"flex items-center gap-1.5 text-left w-full group mb-1",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:n?"rotate(0deg)":"rotate(-90deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] uppercase tracking-wide text-gray-400 font-semibold group-hover:text-gray-600",children:"Inherited email methods"}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded ml-1",children:s})]}),n&&a.jsx("div",{className:"space-y-2 mt-1.5",children:e.map(i=>a.jsxs("div",{children:[a.jsxs("div",{className:"text-[9px] text-gray-400 mb-1",children:["from ",a.jsx("span",{className:"font-mono text-gray-500",children:i.definedIn})]}),a.jsx("div",{className:"flex flex-wrap gap-1",children:i.methods.map(o=>a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-mono bg-gray-50 text-gray-500 border border-gray-200",children:ve(o,t)},o))})]},i.definedIn))})]})}function TC({callbacks:e}){const t=[{kind:"before",label:"Before",names:e.before,cls:"text-amber-500",pillCls:"bg-amber-50 text-amber-700 border-amber-200"},{kind:"around",label:"Around",names:e.around,cls:"text-teal-600",pillCls:"bg-teal-50 text-teal-700 border-teal-200"},{kind:"after",label:"After",names:e.after,cls:"text-sky-500",pillCls:"bg-sky-50 text-sky-700 border-sky-200"}].filter(n=>n.names.length>0);return t.length===0?null:a.jsx("div",{className:"mt-3 border-t border-gray-100 pt-3 space-y-2",children:t.map(({kind:n,label:r,names:s,cls:i,pillCls:o})=>a.jsxs("div",{children:[a.jsxs("div",{className:`text-[10px] uppercase tracking-wide font-semibold mb-1.5 ${i}`,children:[r," Actions"]}),a.jsx("div",{className:"flex flex-wrap gap-1",children:s.map(l=>a.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded font-mono border ${o}`,children:l},l))})]},n))})}function Y0({mailer:e,query:t}){const[n,r]=j.useState(!1),s=(e.inheritedActions??[]).reduce((u,c)=>u+c.methods.length,0),i=e.callbacks??{before:[],after:[],around:[]},o=i.before.length>0||i.after.length>0||i.around.length>0,l=t?e.actions.filter(u=>u.toLowerCase().includes(t.toLowerCase())):e.actions;return a.jsxs("div",{className:"bg-white rounded-lg border border-gray-200 hover:border-indigo-300 hover:shadow-sm transition-all",children:[a.jsxs("button",{className:"w-full text-left px-4 py-3 flex items-start justify-between gap-3",onClick:()=>r(u=>!u),children:[a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsxs("div",{className:"flex items-center gap-1.5 min-w-0 flex-wrap",children:[a.jsx("span",{className:"font-semibold text-gray-800 text-sm truncate",children:ve(e.name,t)}),e.abstract&&a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-500 border border-gray-200 px-1.5 py-0.5 rounded font-medium",children:"base"})]}),a.jsxs("div",{className:"text-xs text-gray-400 mt-0.5 flex flex-wrap gap-x-2 gap-y-0.5 items-center",children:[a.jsxs("span",{children:["inherits ",a.jsx("span",{className:"font-mono text-gray-500",children:e.superclass})]}),e.defaultFrom&&a.jsxs("span",{children:["from ",a.jsx("span",{className:"font-mono text-gray-500",children:e.defaultFrom})]}),e.defaultReplyTo&&a.jsxs("span",{children:["reply-to ",a.jsx("span",{className:"font-mono text-gray-500",children:e.defaultReplyTo})]}),e.layout&&a.jsxs("span",{children:["layout ",a.jsx("span",{className:"font-mono text-gray-500",children:e.layout})]}),!e.defaultFrom&&a.jsx(be,{text:"No default_from set — each email method must supply its own sender address",children:a.jsx("span",{className:"text-amber-500",children:"no default_from"})})]})]}),a.jsxs("div",{className:"flex items-center gap-1.5 shrink-0 flex-wrap justify-end",children:[a.jsxs("span",{className:"text-[10px] bg-indigo-50 text-indigo-600 px-2 py-0.5 rounded-full",children:[l.length,t&&l.length!==e.actions.length?`/${e.actions.length}`:""," ",ee(e.actions.length,"method")]}),s>0&&a.jsxs("span",{className:"text-[10px] bg-gray-100 text-gray-500 px-2 py-0.5 rounded-full",children:["+",s," inherited"]}),o&&a.jsx("span",{className:"text-[10px] bg-amber-50 text-amber-600 px-2 py-0.5 rounded-full",children:"callbacks"}),a.jsx(Nn,{value:e.filePath,hint:e.filePath??void 0}),a.jsx(Cn,{filePath:e.filePath}),a.jsx("span",{className:"text-gray-400 text-xs",children:n?"▲":"▼"})]})]}),n&&a.jsxs("div",{className:"border-t border-gray-100 px-4 py-3",children:[a.jsx("div",{className:"text-[10px] uppercase tracking-wide text-gray-400 font-semibold mb-2",children:"Email methods"}),e.actions.length===0?a.jsx("span",{className:"text-xs text-gray-400 italic",children:e.abstract?"Base mailer — email methods live in subclasses":"No own email methods defined"}):a.jsx("div",{className:"flex flex-wrap gap-1",children:e.actions.map(u=>a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-mono bg-indigo-50 text-indigo-700 border border-indigo-100",children:ve(u,t)},u))}),(e.inheritedActions??[]).length>0&&a.jsx(PC,{groups:e.inheritedActions,query:t}),a.jsx(TC,{callbacks:i})]})]})}function $C({count:e,children:t}){const[n,r]=j.useState(!1);return a.jsxs("div",{className:"mb-4",children:[a.jsxs("button",{onClick:()=>r(s=>!s),className:"flex items-center gap-1.5 mb-2 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:n?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700",children:"Root"}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:e})]}),!n&&t]})}function Su({node:e,query:t,depth:n=0}){const[r,s]=j.useState(!1),i=li(e);if(i===0)return null;const o=Array.from(e.children.entries()).sort((u,c)=>u[0].localeCompare(c[0]));if(n===0&&e.label===""){const u=o.length>0,c=e.items.map(d=>a.jsx(Y0,{mailer:d,query:t},d.name));return a.jsxs(a.Fragment,{children:[e.items.length>0&&(u?a.jsx($C,{count:e.items.length,children:a.jsx("div",{className:"space-y-2",children:c})}):a.jsx("div",{className:"space-y-2 mb-4",children:c})),o.map(([d,f])=>a.jsx(Su,{node:f,query:t,depth:1},d))]})}const l=(n-1)*14;return a.jsxs("div",{className:"mb-4",style:{marginLeft:`${l}px`},children:[a.jsxs("button",{onClick:()=>s(u=>!u),className:"flex items-center gap-1.5 mb-2 text-left group w-full",children:[a.jsx("span",{className:"text-gray-400 text-[9px] shrink-0 transition-transform duration-150",style:{display:"inline-block",transform:r?"rotate(-90deg)":"rotate(0deg)"},children:"▼"}),a.jsx("span",{className:"text-[10px] font-semibold font-mono uppercase tracking-wide text-gray-500 group-hover:text-gray-700",children:ve(e.label,t)}),a.jsx("span",{className:"text-[9px] bg-gray-100 text-gray-400 px-1 py-0.5 rounded shrink-0",children:i})]}),!r&&a.jsxs("div",{className:"border-l border-gray-100 pl-3",children:[e.items.length>0&&a.jsx("div",{className:"space-y-2 mb-3",children:e.items.map(u=>a.jsx(Y0,{mailer:u,query:t},u.name))}),o.map(([u,c])=>a.jsx(Su,{node:c,query:t,depth:n+1},u))]})]})}function AC({mailers:e}){const[t,n]=j.useState(""),[r,s]=j.useState(!1),i=j.useMemo(()=>e.filter(c=>!c.defaultFrom).length,[e]),o=j.useMemo(()=>e.filter(c=>{if(r&&c.defaultFrom)return!1;const d=t.toLowerCase();return d?c.name.toLowerCase().includes(d)||c.actions.some(f=>f.toLowerCase().includes(d))||(c.inheritedActions??[]).some(f=>f.methods.some(h=>h.toLowerCase().includes(d))):!0}),[e,t,r]),l=j.useMemo(()=>Xs(o),[o]),u=j.useMemo(()=>o.reduce((c,d)=>c+d.actions.length,0),[o]);return e.length===0?a.jsx(qe,{icon:Ie.mailers({className:"w-full h-full"}),message:"No mailers found.",hint:"Inherit from ApplicationMailer to have mailers appear here."}):a.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[a.jsxs("div",{className:"px-4 py-3 bg-white border-b border-gray-200 flex items-center gap-3 shrink-0",children:[a.jsx("div",{className:"flex-1 flex items-center gap-2 min-w-0",children:a.jsx(ci,{active:r,count:i,onToggle:()=>s(c=>!c)})}),a.jsx(Zn,{value:t,onChange:n,placeholder:"Search mailers or email methods…",className:"flex-[2] min-w-0"}),a.jsx("div",{className:"flex-1 flex items-center justify-end min-w-0",children:a.jsxs("span",{className:"text-xs text-gray-400 tabular-nums whitespace-nowrap",children:[o.length," / ",e.length," ",ee(e.length,"mailer")," · ",u," ",ee(u,"method")]})})]}),a.jsx("div",{className:"flex-1 overflow-auto px-4 py-4",children:o.length===0?a.jsx(qe,{variant:"compact",message:"No mailers match your search."}):a.jsx(Su,{node:l,query:t})})]})}function Eg(e,t){const n=t.filter(r=>r.superclass===e);return[...n,...n.flatMap(r=>Eg(r.name,t))]}function jg(e,t){const n=t.filter(o=>!o.internal),r=new Set;n.forEach(o=>{o.controller&&o.action&&r.add(`${o.controller}#${o.action}`)});const s=new Map,i=new Map;return e.forEach(o=>{if(o.actions.length===0)return;const l=new Set([...o.beforeActions.map(f=>f.name),...o.afterActions.map(f=>f.name),...o.aroundActions.map(f=>f.name)]),u=o.actions.map(f=>f.name).filter(f=>!l.has(f)&&!r.has(`${o.controllerPath}#${f}`));if(u.length===0)return;s.set(o.name,new Set(u));const c=Eg(o.name,e),d=new Map;u.forEach(f=>{const h=c.filter(m=>r.has(`${m.controllerPath}#${f}`)).map(m=>m.name);h.length>0&&d.set(f,h)}),d.size>0&&i.set(o.name,d)}),{noRouteActions:s,routedViaDescendants:i}}function RC(e){let t=0;return e.noRouteActions.forEach(n=>{t+=n.size}),t}function OC({className:e}){return a.jsx("svg",{className:e,viewBox:"0 0 24 24","aria-hidden":"true",fill:"#CC342D",children:a.jsx("path",{d:"M20.156.083c3.033.525 3.893 2.598 3.829 4.77L24 4.822 22.635 22.71 4.89 23.926h.016C3.433 23.864.15 23.729 0 19.139l1.645-3 2.819 6.586.503 1.172 2.805-9.144-.03.007.016-.03 9.255 2.956-1.396-5.431-.99-3.9 8.82-.569-.615-.51L16.5 2.114 20.159.073l-.003.01zM0 19.089zM5.13 5.073c3.561-3.533 8.157-5.621 9.922-3.84 1.762 1.777-.105 6.105-3.673 9.636-3.563 3.532-8.103 5.734-9.864 3.957-1.766-1.777.045-6.217 3.612-9.75l.003-.003z"})})}function zC({className:e}){return a.jsx("svg",{className:e,viewBox:"0 4.5 24 15","aria-hidden":"true",fill:"#D30001",children:a.jsx("path",{d:"M.741 19.365h8.36s-1.598-7.291 3.693-10.243l.134-.066c1.286-.637 4.907-2.431 10.702 1.854.19-.159.37-.286.37-.286s-5.503-5.492-11.63-4.878c-3.079.275-6.867 3.079-9.09 6.783C1.058 16.233.741 19.365.741 19.365Zm8.804-.783a10.682 10.682 0 0 1-.127-1.333l1.143.412c.063.498.159.963.254 1.376l-1.27-.455Zm-7.799-4.317L.529 13.82c-.201.455-.423.984-.529 1.27l1.217.444c.137-.359.36-.878.529-1.269Zm7.831.296.857.677c.042-.413.116-.825.222-1.238l-.762-.603c-.137.391-.233.783-.317 1.164Zm2.042-2.646-.508-.762c.191-.243.413-.486.656-.709l.476.72a5.958 5.958 0 0 0-.624.751ZM4.19 8.878l.752.656c-.254.265-.498.551-.72.836l-.815-.698c.244-.265.508-.529.783-.794Zm9.799 1.027-.243-.73c.265-.117.571-.233.931-.339l.233.698a6.82 6.82 0 0 0-.921.371Zm3.122-.656.042-.667c.339.021.688.064 1.048.138l-.042.656a5.859 5.859 0 0 0-1.048-.127ZM8.942 6.392l-.476-.731c-.265.138-.54.286-.826.455l.487.741c.275-.169.54-.328.815-.465Zm9.217-.053.042-.709c-.095-.053-.36-.18-1.026-.371l-.043.699c.349.116.688.243 1.027.381ZM13.238 5.28h.106l-.212-.645c-.328 0-.666.021-1.016.063l.201.625a8.87 8.87 0 0 1 .921-.043Z"})})}function DC({className:e}){return a.jsxs("svg",{className:e,viewBox:"-4 0 264 264","aria-hidden":"true",children:[a.jsx("path",{d:"M255.008 158.086c-1.535-4.649-5.556-7.887-10.756-8.664-2.452-.366-5.26-.21-8.583.475-5.792 1.195-10.089 1.65-13.225 1.738 11.837-19.985 21.462-42.775 27.003-64.228 8.96-34.689 4.172-50.492-1.423-57.64C233.217 10.847 211.614.683 185.552.372c-13.903-.17-26.108 2.575-32.475 4.549-5.928-1.046-12.302-1.63-18.99-1.738-12.537-.2-23.614 2.533-33.079 8.15-5.24-1.772-13.65-4.27-23.362-5.864-22.842-3.75-41.252-.828-54.718 8.685C6.622 25.672-.937 45.684.461 73.634c.444 8.874 5.408 35.874 13.224 61.48 4.492 14.718 9.282 26.94 14.237 36.33 7.027 13.315 14.546 21.156 22.987 23.972 4.731 1.576 13.327 2.68 22.368-4.85 1.146 1.388 2.675 2.767 4.704 4.048 2.577 1.625 5.728 2.953 8.875 3.74 11.341 2.835 21.964 2.126 31.027-1.848.056 1.612.099 3.152.135 4.482.06 2.157.12 4.272.199 6.25.537 13.374 1.447 23.773 4.143 31.049.148.4.347 1.01.557 1.657 1.345 4.118 3.594 11.012 9.316 16.411 5.925 5.593 13.092 7.308 19.656 7.308 3.292 0 6.433-.432 9.188-1.022 9.82-2.105 20.973-5.311 29.041-16.799 7.628-10.86 11.336-27.217 12.007-52.99.087-.729.167-1.425.244-2.088l.16-1.362 1.797.158.463.031c10.002.456 22.232-1.665 29.743-5.154 5.935-2.754 24.954-12.795 20.476-26.351"}),a.jsx("path",{d:"M237.906 160.722c-29.74 6.135-31.785-3.934-31.785-3.934 31.4-46.593 44.527-105.736 33.2-120.211-30.904-39.485-84.399-20.811-85.292-20.327l-.287.052c-5.876-1.22-12.451-1.946-19.842-2.067-13.456-.22-23.664 3.528-31.41 9.402 0 0-95.43-39.314-90.991 49.444.944 18.882 27.064 142.873 58.218 105.422 11.387-13.695 22.39-25.274 22.39-25.274 5.464 3.63 12.006 5.482 18.864 4.817l.533-.452c-.166 1.7-.09 3.363.213 5.332-8.026 8.967-5.667 10.541-21.711 13.844-16.235 3.346-6.698 9.302-.471 10.86 7.549 1.887 25.013 4.561 36.813-11.958l-.47 1.885c3.144 2.519 5.352 16.383 4.982 28.952-.37 12.568-.617 21.197 1.86 27.937 2.479 6.74 4.948 21.905 26.04 17.386 17.623-3.777 26.756-13.564 28.027-29.89.901-11.606 2.942-9.89 3.07-20.267l1.637-4.912c1.887-15.733.3-20.809 11.157-18.448l2.64.232c7.99.363 18.45-1.286 24.589-4.139 13.218-6.134 21.058-16.377 8.024-13.686h.002",fill:"#336791"}),a.jsx("path",{d:"M108.076 81.525c-2.68-.373-5.107-.028-6.335.902-.69.523-.904 1.129-.962 1.546-.154 1.105.62 2.327 1.096 2.957 1.346 1.784 3.312 3.01 5.258 3.28.282.04.563.058.842.058 3.245 0 6.196-2.527 6.456-4.392.325-2.336-3.066-3.893-6.355-4.35M196.86 81.599c-.256-1.831-3.514-2.353-6.606-1.923-3.088.43-6.082 1.824-5.832 3.659.2 1.427 2.777 3.863 5.827 3.863.258 0 .518-.017.78-.054 2.036-.282 3.53-1.575 4.24-2.32 1.08-1.136 1.706-2.402 1.591-3.225",fill:"#FFF"}),a.jsx("path",{d:"M247.802 160.025c-1.134-3.429-4.784-4.532-10.848-3.28-18.005 3.716-24.453 1.142-26.57-.417 13.995-21.32 25.508-47.092 31.719-71.137 2.942-11.39 4.567-21.968 4.7-30.59.147-9.463-1.465-16.417-4.789-20.665-13.402-17.125-33.072-26.311-56.882-26.563-16.369-.184-30.199 4.005-32.88 5.183-5.646-1.404-11.801-2.266-18.502-2.376-12.288-.199-22.91 2.743-31.704 8.74-3.82-1.422-13.692-4.811-25.765-6.756-20.872-3.36-37.458-.814-49.294 7.571-14.123 10.006-20.643 27.892-19.38 53.16.425 8.501 5.269 34.653 12.913 59.698 10.062 32.964 21 51.625 32.508 55.464 1.347.449 2.9.763 4.613.763 4.198 0 9.345-1.892 14.7-8.33a529.832 529.832 0 0 1 20.261-22.926c4.524 2.428 9.494 3.784 14.577 3.92.01.133.023.266.035.398a117.66 117.66 0 0 0-2.57 3.175c-3.522 4.471-4.255 5.402-15.592 7.736-3.225.666-11.79 2.431-11.916 8.435-.136 6.56 10.125 9.315 11.294 9.607 4.074 1.02 7.999 1.523 11.742 1.523 9.103 0 17.114-2.992 23.516-8.781-.197 23.386.778 46.43 3.586 53.451 2.3 5.748 7.918 19.795 25.664 19.794 2.604 0 5.47-.303 8.623-.979 18.521-3.97 26.564-12.156 29.675-30.203 1.665-9.645 4.522-32.676 5.866-45.03 2.836.885 6.487 1.29 10.434 1.289 8.232 0 17.731-1.749 23.688-4.514 6.692-3.108 18.768-10.734 16.578-17.36zm-44.106-83.48c-.061 3.647-.563 6.958-1.095 10.414-.573 3.717-1.165 7.56-1.314 12.225-.147 4.54.42 9.26.968 13.825 1.108 9.22 2.245 18.712-2.156 28.078a36.508 36.508 0 0 1-1.95-4.009c-.547-1.326-1.735-3.456-3.38-6.404-6.399-11.476-21.384-38.35-13.713-49.316 2.285-3.264 8.084-6.62 22.64-4.813zm-17.644-61.787c21.334.471 38.21 8.452 50.158 23.72 9.164 11.711-.927 64.998-30.14 110.969a171.33 171.33 0 0 0-.886-1.117l-.37-.462c7.549-12.467 6.073-24.802 4.759-35.738-.54-4.488-1.05-8.727-.92-12.709.134-4.22.692-7.84 1.232-11.34.663-4.313 1.338-8.776 1.152-14.037.139-.552.195-1.204.122-1.978-.475-5.045-6.235-20.144-17.975-33.81-6.422-7.475-15.787-15.84-28.574-21.482 5.5-1.14 13.021-2.203 21.442-2.016zM66.674 175.778c-5.9 7.094-9.974 5.734-11.314 5.288-8.73-2.912-18.86-21.364-27.791-50.624-7.728-25.318-12.244-50.777-12.602-57.916-1.128-22.578 4.345-38.313 16.268-46.769 19.404-13.76 51.306-5.524 64.125-1.347-.184.182-.376.352-.558.537-21.036 21.244-20.537 57.54-20.485 59.759-.002.856.07 2.068.168 3.735.362 6.105 1.036 17.467-.764 30.334-1.672 11.957 2.014 23.66 10.111 32.109a36.275 36.275 0 0 0 2.617 2.468c-3.604 3.86-11.437 12.396-19.775 22.426zm22.479-29.993c-6.526-6.81-9.49-16.282-8.133-25.99 1.9-13.592 1.199-25.43.822-31.79-.053-.89-.1-1.67-.127-2.285 3.073-2.725 17.314-10.355 27.47-8.028 4.634 1.061 7.458 4.217 8.632 9.645 6.076 28.103.804 39.816-3.432 49.229-.873 1.939-1.698 3.772-2.402 5.668l-.546 1.466c-1.382 3.706-2.668 7.152-3.465 10.424-6.938-.02-13.687-2.984-18.819-8.34zm1.065 37.9c-2.026-.506-3.848-1.385-4.917-2.114.893-.42 2.482-.992 5.238-1.56 13.337-2.745 15.397-4.683 19.895-10.394 1.031-1.31 2.2-2.794 3.819-4.602l.002-.002c2.411-2.7 3.514-2.242 5.514-1.412 1.621.67 3.2 2.702 3.84 4.938.303 1.056.643 3.06-.47 4.62-9.396 13.156-23.088 12.987-32.921 10.526zm69.799 64.952c-16.316 3.496-22.093-4.829-25.9-14.346-2.457-6.144-3.665-33.85-2.808-64.447.011-.407-.047-.8-.159-1.17a15.444 15.444 0 0 0-.456-2.162c-1.274-4.452-4.379-8.176-8.104-9.72-1.48-.613-4.196-1.738-7.46-.903.696-2.868 1.903-6.107 3.212-9.614l.549-1.475c.618-1.663 1.394-3.386 2.214-5.21 4.433-9.848 10.504-23.337 3.915-53.81-2.468-11.414-10.71-16.988-23.204-15.693-7.49.775-14.343 3.797-17.761 5.53-.735.372-1.407.732-2.035 1.082.954-11.5 4.558-32.992 18.04-46.59 8.489-8.56 19.794-12.788 33.568-12.56 27.14.444 44.544 14.372 54.366 25.979 8.464 10.001 13.047 20.076 14.876 25.51-13.755-1.399-23.11 1.316-27.852 8.096-10.317 14.748 5.644 43.372 13.315 57.129 1.407 2.521 2.621 4.7 3.003 5.626 2.498 6.054 5.732 10.096 8.093 13.046.724.904 1.426 1.781 1.96 2.547-4.166 1.201-11.649 3.976-10.967 17.847-.55 6.96-4.461 39.546-6.448 51.059-2.623 15.21-8.22 20.875-23.957 24.25zm68.104-77.936c-4.26 1.977-11.389 3.46-18.161 3.779-7.48.35-11.288-.838-12.184-1.569-.42-8.644 2.797-9.547 6.202-10.503.535-.15 1.057-.297 1.561-.473.313.255.656.508 1.032.756 6.012 3.968 16.735 4.396 31.874 1.271l.166-.033c-2.042 1.909-5.536 4.471-10.49 6.772z",fill:"#FFF"})]})}function FC({className:e}){return a.jsx("svg",{className:e,viewBox:"0 0 24 24","aria-hidden":"true",children:a.jsx("path",{fill:"#00758F",fillRule:"evenodd",d:"M5.46192862,4.04007684 C5.18892668,4.03501656 4.99575061,4.06967946 4.79169495,4.11446291 L4.79169495,4.15152944 L4.82901449,4.15152944 C4.95944313,4.41909158 5.18943271,4.591394 5.35034952,4.82188962 C5.47407329,5.08262038 5.59817658,5.34297163 5.72227987,5.60332288 C5.73493056,5.5909252 5.74745474,5.57865403 5.75959941,5.56625635 C5.99047454,5.40394797 6.0957283,5.14410275 6.09471625,4.74737704 C6.00211318,4.64996671 5.98832392,4.52826705 5.90837155,4.4122602 C5.80235875,4.25754224 5.59615247,4.17012595 5.46192862,4.04007684 Z M23.478665,23.1369293 C23.6543831,23.2658398 23.772161,23.4657208 24,23.5466852 L24,23.5093657 C23.8800714,23.3573044 23.8495833,23.1474294 23.7395222,22.9880306 C23.5786054,22.8271138 23.4164236,22.6655645 23.2555068,22.5040152 C22.7821179,21.8759083 22.1818425,21.3245911 21.5432356,20.8663831 C21.0345512,20.5006515 19.8944709,20.0072745 19.6819392,19.4148426 C19.6697946,19.4021919 19.6571439,19.3896677 19.6444932,19.3770171 C20.0054174,19.3365348 20.4283301,19.2059797 20.7614228,19.1165393 C21.3210894,18.9665021 21.8214243,19.0054662 22.3990549,18.8560615 C22.6600387,18.781296 22.9203899,18.7066569 23.1808677,18.6329033 L23.1808677,18.4834987 C22.8887632,18.1836773 22.6805328,17.7869515 22.3622414,17.5155942 C21.5283078,16.8061434 20.6188495,16.0966926 19.6818127,15.5056522 C19.1626283,15.1774933 18.5200996,14.9645821 17.969415,14.6865199 C17.7842089,14.5931578 17.4590861,14.5444526 17.3365009,14.3887226 C17.0476856,14.0198284 16.8899314,13.5523853 16.6667732,13.1228943 C16.1997097,12.2230506 15.740363,11.2403448 15.3263059,10.293567 C15.044322,9.6481287 14.8597484,9.01154587 14.5076796,8.43227067 C12.8174206,5.65329311 10.9976185,3.97581132 8.17942382,2.3270466 C7.57927498,1.97649592 6.85742648,1.83809735 6.09471625,1.65719245 C5.68546635,1.6325236 5.27545742,1.60734872 4.86620752,1.58267987 C4.61635635,1.47831166 4.35651113,1.17267094 4.12184079,1.02427832 C3.18796669,0.434503045 0.792811133,-0.848656668 0.10157731,0.838313141 C-0.335124586,1.90286889 0.753847001,2.94174374 1.14361483,3.48142227 C1.4172493,3.85980447 1.76704094,4.2842352 1.96287366,4.70967798 C2.09127818,4.98938478 2.11316388,5.27010364 2.22385744,5.56600333 C2.49432924,6.29518923 2.7293791,7.08838764 3.07929725,7.76241652 C3.25653344,8.10322617 3.45173363,8.46263233 3.67539786,8.76738751 C3.81265788,8.95449125 4.04720171,9.03684725 4.08401522,9.32578906 C3.85465817,9.64749617 3.84150145,10.1466925 3.7125909,10.5541713 C3.13065906,12.3887747 3.35014857,14.6686824 4.19660638,16.0266077 C4.45594557,16.443195 5.06773305,17.3374725 5.90837155,16.9942592 C6.64375629,16.6946908 6.47980332,15.76613 6.69018433,14.9469976 C6.73749792,14.760906 6.70865434,14.624405 6.80176344,14.5003017 L6.80176344,14.5373682 C7.02542767,14.9840642 7.2488389,15.4307601 7.47199711,15.8773296 C7.96815726,16.6759678 8.84826592,17.5111665 9.59415073,18.0739958 C9.98037636,18.3659737 10.2848785,18.8709894 10.7852134,19.0419002 L10.7852134,19.0040746 L10.7478939,19.0040746 C10.6504835,18.8536579 10.4989282,18.790531 10.3759635,18.6694638 C10.0844916,18.3836847 9.76050733,18.0287063 9.51938514,17.7014329 C8.84080201,16.780589 8.24153872,15.7725818 7.69553484,14.7235864 C7.43455106,14.2224925 7.20785066,13.6697838 6.98785512,13.1600874 C6.90322199,12.9633691 6.90423404,12.6662043 6.72737736,12.5643663 C6.48650818,12.9378147 6.13190928,13.2401663 5.94556458,13.6811694 C5.64776729,14.386319 5.60943569,15.2461865 5.49899515,16.1379338 C5.43371758,16.1614641 5.46268766,16.1453977 5.42422956,16.1750003 C4.90555118,16.0502645 4.72350772,15.5164053 4.53096418,15.0584502 C4.04378602,13.9006589 3.95333357,12.0360734 4.38206553,10.7030699 C4.4930121,10.3583386 4.99499157,9.27202362 4.79131543,8.95347919 C4.69441112,8.63544079 4.37510765,8.45187925 4.19635337,8.20885945 C3.97420721,7.90853201 3.75332613,7.5134509 3.59974672,7.16644241 C3.20150293,6.26368901 3.01528474,5.25024206 2.59540827,4.33749461 C2.39451528,3.90142525 2.0550972,3.45966308 1.77627595,3.07166635 C1.46759906,2.64204884 1.12185564,2.32578153 0.882884062,1.80583808 C0.797744903,1.62126448 0.681991069,1.32587082 0.808244978,1.13598393 C0.848094658,1.00783242 0.905022773,0.954446496 1.03190922,0.912572704 C1.24810955,0.746089595 1.84889092,0.967982736 2.07394674,1.06147135 C2.67055338,1.30929841 3.16924367,1.54548684 3.67489184,1.88035066 C3.91740561,2.04126747 4.16295554,2.35272751 4.45607208,2.43887872 L4.79118892,2.43887872 C5.31568662,2.5591868 5.90280525,2.47645128 6.39200751,2.62509691 C7.25744137,2.8881048 8.0329288,3.29722819 8.73719284,3.74202653 C10.8826237,5.09653615 12.6370217,7.02526068 13.8370664,9.32578906 C14.030116,9.69620133 14.1138635,10.0496617 14.2836358,10.4427187 C14.6265961,11.2350315 15.0591233,12.0501156 15.4004389,12.825097 C15.7408691,13.5978013 16.0728232,14.3779695 16.5541821,15.0213837 C16.8071959,15.3594102 17.7850944,15.5408211 18.2297663,15.7288104 C18.5412263,15.8602511 19.0514287,15.9976376 19.3460633,16.1750003 C19.9100312,16.5151775 20.4556556,16.9197466 20.9842015,17.292183 C21.2483479,17.4785277 22.0606489,17.886639 22.1006251,18.2223884 C20.7916579,18.1877255 19.7916207,18.3092986 18.9366869,18.6695903 C18.6936671,18.7716814 18.3064295,18.7747176 18.2664533,19.0787137 C18.4000446,19.2186304 18.4211712,19.4281259 18.527437,19.6000488 C18.7309867,19.9304848 19.0755915,20.3728795 19.3833829,20.6053993 C19.7195118,20.8590456 20.0657612,21.130403 20.4255469,21.3498925 C21.0663045,21.7407989 21.7818276,21.9638306 22.3984224,22.3551165 C22.7632683,22.5861182 23.1241926,22.8764515 23.478665,23.1369293 Z"})})}function VC({className:e}){return a.jsx("svg",{className:e,viewBox:"0 0 24 24","aria-hidden":"true",fill:"#003B57",children:a.jsx("path",{d:"M21.678.521c-1.032-.92-2.28-.55-3.513.544a8.71 8.71 0 0 0-.547.535c-2.109 2.237-4.066 6.38-4.674 9.544.237.48.422 1.093.544 1.561a13.044 13.044 0 0 1 .164.703s-.019-.071-.096-.296l-.05-.146a1.689 1.689 0 0 0-.033-.08c-.138-.32-.518-.995-.686-1.289-.143.423-.27.818-.376 1.176.484.884.778 2.4.778 2.4s-.025-.099-.147-.442c-.107-.303-.644-1.244-.772-1.464-.217.804-.304 1.346-.226 1.478.152.256.296.698.422 1.186.286 1.1.485 2.44.485 2.44l.017.224a22.41 22.41 0 0 0 .056 2.748c.095 1.146.273 2.13.5 2.657l.155-.084c-.334-1.038-.47-2.399-.41-3.967.09-2.398.642-5.29 1.661-8.304 1.723-4.55 4.113-8.201 6.3-9.945-1.993 1.8-4.692 7.63-5.5 9.788-.904 2.416-1.545 4.684-1.931 6.857.666-2.037 2.821-2.912 2.821-2.912s1.057-1.304 2.292-3.166c-.74.169-1.955.458-2.362.629-.6.251-.762.337-.762.337s1.945-1.184 3.613-1.72C21.695 7.9 24.195 2.767 21.678.521m-18.573.543A1.842 1.842 0 0 0 1.27 2.9v16.608a1.84 1.84 0 0 0 1.835 1.834h9.418a22.953 22.953 0 0 1-.052-2.707c-.006-.062-.011-.141-.016-.2a27.01 27.01 0 0 0-.473-2.378c-.121-.47-.275-.898-.369-1.057-.116-.197-.098-.31-.097-.432 0-.12.015-.245.037-.386a9.98 9.98 0 0 1 .234-1.045l.217-.028c-.017-.035-.014-.065-.031-.097l-.041-.381a32.8 32.8 0 0 1 .382-1.194l.2-.019c-.008-.016-.01-.038-.018-.053l-.043-.316c.63-3.28 2.587-7.443 4.8-9.791.066-.069.133-.128.198-.194Z"})})}function HC({className:e}){return a.jsxs("svg",{className:e,viewBox:"-12 0 280 280","aria-hidden":"true",children:[a.jsx("path",{d:"M70.8815851,129.427786 C70.8815851,129.427786 67.6702779,128.762087 66.7270968,129.046983 C65.7839157,129.33188 60.3971164,128.386926 58.0335495,126.677545 C55.6699826,124.973806 53.3092227,126.206478 51.1365376,124.8779 C48.9666597,123.549322 45.6571046,123.738313 43.2037109,123.645228 C40.7475101,123.552143 37.6288368,123.738313 36.4947738,125.255882 C35.3607108,126.77063 30.9227069,131.419243 29.3170533,133.311973 C27.7113998,135.207524 21.1933446,142.030943 18.6417029,143.071804 C18.6417029,143.071804 19.3013682,144.118305 18.9252186,144.874269 C18.546262,145.635875 18.8297777,147.81068 18.8297777,148.572286 C18.8297777,149.333891 19.0178525,150.560922 18.3609942,151.322527 C17.6957147,152.081311 17.3195651,153.311163 17.3195651,153.785051 C17.3195651,154.258939 16.5616517,155.965498 17.3195651,158.241852 C18.0746714,160.518205 18.7343368,163.073814 15.6184706,162.032954 C12.4997974,160.992093 13.1622698,158.148766 10.6134351,158.05004 C8.06460051,157.956955 4.75785243,158.05004 3.81186423,154.546656 C2.86306896,151.03763 1.07214769,145.066081 0.693190997,144.118305 C0.31704139,143.173351 -1.00509641,138.812455 1.45110438,135.021354 C3.90730518,131.230252 4.37889573,128.480011 4.75785243,127.62532 C5.13400204,126.773451 6.93053744,121.368875 8.24986822,120.60727 C9.57200602,119.848484 9.09760838,117.479046 9.85552175,116.438186 C10.610628,115.394505 10.3271123,113.687945 10.7987028,112.740169 C11.2702934,111.792393 11.4611753,109.044973 12.1208406,106.960431 C12.7833131,104.875889 14.9559982,101.64894 16.278136,99.9452012 C17.6002738,98.241462 18.3581871,95.6830321 18.3581871,94.828342 C18.3581871,93.9736512 17.8865966,92.1768272 20.0564746,90.6592584 C22.2263525,89.1416896 26.1001321,84.2138209 26.4790887,83.4550365 C26.4790887,83.266046 26.4790887,79.7598411 26.2882069,78.5271686 C26.1001321,77.2944967 25.8166163,76.1577299 27.0433131,75.6838424 C28.2756242,75.2071341 29.9739116,74.1634527 29.9739116,74.1634527 C29.9739116,74.1634527 28.7949352,72.6487041 26.2432935,71.3680794 C23.6916517,70.0902749 16.0395336,61.4164374 15.3321477,56.2995784 C14.6219548,51.1798987 14.3384391,43.0758546 21.2831714,40.2325283 C28.2279037,37.3863813 35.8772148,35.8236802 37.0140849,35.6826421 C38.1481478,35.5416041 42.1145613,34.6869138 43.6753014,35.8236802 C43.6753014,35.8236802 41.9742069,35.5416041 41.2668211,35.8236802 C40.5566281,36.108577 44.6633959,35.9675389 45.6571046,37.1043053 C45.6571046,37.1043053 43.6753014,36.5373325 42.5412384,36.6783705 C41.4099825,36.8194085 44.5258487,38.1000336 45.0928801,39.095762 C45.6571046,40.0914903 47.7848762,40.8023219 47.5013605,42.3678438 C47.2206518,43.930545 47.0774904,46.3479364 47.3581991,47.058768 C47.6445219,47.7695996 48.3519077,49.0502247 48.4950691,51.0388606 C48.6382305,53.0303173 49.2052621,55.7326056 49.7694865,57.0104099 C50.3365179,58.2910351 51.7540967,62.2711277 51.1870652,65.114454 C51.1870652,65.114454 51.7540967,66.5361171 54.5864471,63.2668561 C57.4216046,59.9947743 60.2567621,59.4278014 61.6715338,59.4278014 C63.0891125,59.4278014 65.2168842,58.0033175 66.6316558,58.5731111 C68.0520417,59.1429046 69.6127817,58.4320731 71.3110694,58.8580079 C73.0093563,59.2839427 80.0944431,58.8580079 81.6551833,58.2882143 C83.2103097,57.7184207 88.5971088,57.0075892 89.7283647,57.0075892 C90.8624275,57.0075892 88.3135926,55.1599913 90.4385576,53.7383281 C92.5663289,52.316665 88.1704314,51.6058334 91.4322661,47.4847028 C94.6884864,43.3607514 91.5698135,42.223985 91.0055887,41.3721154 C90.4413645,40.5174251 90.2982033,37.8151368 90.2982033,36.2524357 C90.2982033,34.6869138 89.8743328,30.7068212 89.8743328,30.7068212 L90.4413645,29.9959896 C90.4413645,29.9959896 89.9838092,29.2400258 89.5346753,28.9720536 C89.0883489,28.7040814 88.6420218,27.0906066 88.2883292,26.0158969 C87.9262151,24.9411873 83.9991005,19.1163176 82.8397743,18.2221365 C81.6776398,17.322314 81.5007938,15.982453 81.6776398,14.7272147 C81.8572934,13.4691556 82.7471399,12.3972668 82.5702939,11.0517641 C82.3906403,9.7090823 82.4804671,7.9178996 82.3906403,7.2916908 C82.3036204,6.66266129 82.5702939,2.90258795 83.3759274,2.54435141 C83.3759274,2.54435141 83.9991005,2.27355843 84.2685808,3.16773941 C84.2685808,3.16773941 83.8194469,0.0338748378 84.8019278,0.0338748378 C84.8019278,0.0338748378 85.9640616,-0.324361707 86.4103879,1.28911313 C86.8539081,2.90258795 87.3030421,3.79676893 87.3928688,4.2452698 C87.4826949,4.69377067 87.8391952,5.407423 87.8391952,5.407423 C87.8391952,5.407423 88.8188685,4.96456365 89.624502,5.31997944 C90.4273294,5.67821598 90.9662901,6.03645253 90.9662901,6.4849534 C90.9662901,6.93345427 90.9662901,6.12671685 91.9487703,6.12671685 C92.9284436,6.12671685 93.8239039,5.85592387 94.0933843,6.84318994 C94.3572502,7.82763523 94.5397114,8.54692907 94.6267306,9.53137438 C94.7193643,10.5158197 94.8962109,11.3225571 95.2527112,12.0390302 C95.6120184,12.7555033 96.1425577,14.0079209 96.1425577,15.71166 C96.1425577,17.4153991 96.7713453,20.5492637 97.038018,21.9850307 C97.3046915,23.4179769 100.341959,28.9720536 100.341959,28.9720536 C100.341959,28.9720536 104.98488,29.8690554 107.126687,29.4205545 C109.271301,28.9720536 113.018762,29.7787911 112.575242,31.7505024 C112.128916,33.7193931 111.862242,39.5442628 111.682589,44.1138944 C111.502935,48.6835259 110.787129,57.5519959 110.074129,60.6886812 C109.358321,63.8225458 104.98488,71.9773635 103.199573,73.3200454 C101.417074,74.6655483 99.4493055,75.5597293 94.5397114,77.8896771 C89.6273096,80.2196249 83.9120813,82.8175451 83.9120813,82.8175451 C83.9120813,82.8175451 86.9493487,87.1163835 87.6623485,87.3871767 C88.3753491,87.6551484 88.2883292,86.7609674 89.1781757,87.1163835 C89.6216952,87.2940912 91.1627857,87.9005551 90.1831124,87.4971861 C90.1810071,87.5345892 95.5621735,88.9170062 95.5621735,88.9170062 C96.077851,88.9067746 96.3969811,88.81311 96.3327394,88.507531 C96.063143,87.2560342 97.3156428,85.6437459 97.8492185,85.2829538 C98.3856031,84.9249805 97.0460463,86.8952428 97.8492185,87.7887663 C98.6551996,88.6879274 110.197292,85.2575855 109.981054,85.8720595 C109.767623,86.4865328 110.607304,86.5344507 111.343077,85.9566201 C112.073233,85.3816077 115.131467,83.383159 117.310704,83.3916154 C119.495558,83.4028898 124.438157,83.8397862 125.763672,83.3549719 C127.089187,82.8729771 133.115789,79.1410355 135.129337,78.1544956 C137.137268,77.1623176 144.076565,77.2581533 147.005617,75.2794354 C149.934668,73.2978988 156.385322,68.661159 159.109368,66.9727657 C161.830606,65.2871911 182.025057,52.8962449 186.332981,52.2225788 C190.640906,51.5489127 200.967007,47.4618171 202.736234,46.1962269 C204.50546,44.9334553 210.0715,41.8582682 211.186393,40.8942773 C212.304095,39.9302865 217.886986,42.3797252 220.79638,46.5316506 C220.79638,46.5316506 226.471944,43.7439695 227.696361,43.6368594 C228.917969,43.5297493 231.181455,41.9484662 232.916981,40.6152274 C234.655316,39.2791699 239.889978,35.7417183 242.178738,34.6226997 C242.178738,34.6226997 243.335756,34.1125174 243.557612,33.2979169 C243.779467,32.4833166 244.703396,30.9274016 245.534651,31.2487318 C245.534651,31.2487318 247.357235,28.9148593 248.095817,29.6167123 C248.095817,29.6167123 249.696545,28.0974402 250.614857,28.9233154 C250.614857,28.9233154 251.521937,29.0529749 251.828041,29.5434264 C251.828041,29.5434264 252.979442,28.6104411 253.513018,29.3179315 C253.513018,29.3179315 254.344273,28.3764901 255.745612,29.4814153 C255.745612,29.4814153 256.677966,30.6342581 254.962098,32.7539105 C254.962098,32.7539105 253.886521,33.3120104 253.133898,34.8679254 C252.386891,36.4238404 250.294711,39.3806427 248.003143,40.5391228 C245.705958,41.697603 243.054927,43.7326948 243.153217,47.8930762 C243.254316,52.0562763 241.487898,56.8959612 237.132233,55.8079481 C232.776567,54.7199351 228.957286,56.1884708 225.14362,58.2714802 C225.14362,58.2714802 224.809433,60.4700558 224.441546,60.9943315 C224.070852,61.5157885 222.366216,61.3466673 220.02129,62.8208404 C217.679172,64.2921948 216.24975,64.8446574 214.401892,66.2314512 C212.551225,67.618245 212.155255,68.5540489 210.59946,69.2784514 C209.043664,70.0084911 207.296905,71.9872089 206.266261,73.0836784 C205.23,74.1773284 201.419143,76.8691741 196.914637,79.0677499 C192.407324,81.2691438 173.881001,87.9015141 169.598351,91.3882288 C165.310084,94.8749442 157.4272,101.121154 145.463863,106.995297 C144.966795,107.237704 144.506234,107.474473 144.037249,107.708424 C143.312709,108.370816 133.025924,117.813416 129.504321,120.282585 C125.853537,122.841953 124.393224,123.208382 123.297989,129.062794 C122.579066,132.921576 119.644397,139.150873 117.616808,144.111762 C117.170289,148.940172 116.914734,153.630467 116.805211,156.488615 C116.664796,160.183913 111.949669,196.93113 110.815117,200.905478 C109.677758,204.885464 109.396928,207.870453 109.964204,210.996376 C110.531479,214.116662 109.11329,217.81196 107.414272,220.937883 C105.709636,224.063807 102.876067,231.451585 103.300119,235.713439 C103.724172,239.975293 104.151033,241.539664 102.876067,242.10622 C101.598292,242.672776 97.4869485,242.53466 96.9224809,243.955278 C96.3552057,245.375896 94.2293258,245.375896 94.2293258,245.375896 C94.2293258,245.375896 93.5918434,251.715123 94.7039281,252.831323 C95.8188211,253.941885 99.7504346,258.612449 94.967908,262.090708 C90.1797648,265.574605 85.1332584,268.663885 83.9565823,271.096412 C82.7742904,273.523301 80.1513426,274.907276 79.1684392,275.69369 C78.1855358,276.480103 76.41631,277.599121 76.2843204,278.055749 C76.1551384,278.518013 74.7144832,279.372075 73.3356103,278.980278 C73.3356103,278.980278 72.1561267,279.501735 70.9092434,278.120578 C70.9092434,278.120578 68.8816543,278.317887 68.4856846,277.007198 C68.4856846,277.007198 66.7810495,277.134039 66.5844688,275.823349 C66.5844688,275.823349 65.7307471,273.917917 68.289104,273.131504 C70.8418444,272.339453 74.9082558,266.623156 75.0402454,265.704265 C75.1694267,264.785373 77.0734511,259.066257 78.5141064,256.704198 C79.9547623,254.336502 81.8559777,248.160759 82.1199576,242.512111 C82.1199576,242.512111 81.5330237,242.120313 81.5330237,241.531208 C81.5330237,240.936465 81.5667232,238.22207 81.8503611,237.181975 C82.1368073,236.136242 82.7012749,233.108972 82.3249627,228.655448 C81.945843,224.20756 82.8922386,216.912799 82.3249627,211.892718 C81.7576876,206.872638 82.8360728,172.022396 84.3469353,167.475855 C85.8606067,162.929313 86.4250743,161.889218 86.3324,160.088077 C86.2369182,158.286937 86.3324,152.793317 86.8996759,152.511448 C87.4641434,152.22676 87.5596253,145.312523 87.3714692,144.551477 C87.1805055,143.796069 83.1169024,140.954833 82.5524349,138.96484 C82.5524349,138.96484 82.6451084,141.04785 82.5524349,141.806076 C82.456953,142.564303 82.3642795,141.617224 80.850608,140.004935 C79.334129,138.392647 76.5005587,134.984855 76.3124033,132.521323 C75.9742125,132.338233 71.7870986,129.864813 71.7870986,129.864813 C71.2661556,129.887571 71.0079035,129.642164 70.8815851,129.427786 Z",fill:"#991B21"}),a.jsx("path",{d:"M90.1960921,87.4311756 C89.7675989,95.1243965 71.7764376,130.165013 71.7764376,130.165013 C71.1476095,133.265477 71.2783834,136.15962 71.5955795,137.880844 C72.357964,142.00726 68.5460417,148.196883 68.5460417,148.196883 L72.6974201,150.381622 C78.3040072,147.131363 75.8999919,137.383413 75.8999919,137.383413 C75.4353266,135.639579 75.3935905,133.96075 75.630096,132.383668 L75.6746153,132.428888 C75.6746153,132.428888 96.0781391,91.9871904 95.0903781,88.801937 C95.0875957,88.8075892 92.6557563,88.4571266 90.1960921,87.4311756 Z",fill:"#000000"})]})}function BC(e){const t=new Set(e.map(n=>n.name.toLowerCase()));return t.has("pg")||t.has("activerecord-postgresql-adapter")?{name:"PostgreSQL",icon:"postgresql"}:t.has("mysql2")||t.has("trilogy")?{name:"MySQL",icon:"mysql"}:t.has("sqlite3")?{name:"SQLite",icon:"sqlite"}:null}function WC(e){const t=e.match(/^\d+(?:\.\d+)*/),n=(t==null?void 0:t[0])??e;return{short:n,full:n!==e?e:null}}const UC=new Set(["sidekiq","resque","good_job","solid_queue","delayed_job"]),GC={sidekiq:"Sidekiq",resque:"Resque",good_job:"GoodJob",solid_queue:"Solid Queue",delayed_job:"Delayed::Job"},YC={sidekiq:"Multi-threaded background processor backed by Redis",resque:"Redis-backed processor with a web UI",good_job:"Postgres-backed processor with threading and concurrency",solid_queue:"Database-backed processor built into Rails 8",delayed_job:"Database-backed processor (Delayed::Job)"},XC={sidekiq:"sidekiq",resque:"resque",good_job:"good_job",solid_queue:"solid_queue",delayed_job:"delayed_job"};function Qe({children:e,className:t=""}){return a.jsx("span",{className:`inline-flex items-center text-[10px] px-1.5 py-0.5 rounded bg-gray-100 text-gray-600 font-medium whitespace-nowrap ${t}`,children:e})}function qC({alerts:e}){if(e.length===0)return null;const t=e.some(i=>i.severity==="error")?"error":"warn",n=e.map(i=>i.message).join(`
|
|
70
|
+
`),r=t==="error"?ui:ai,s=t==="error"?"text-red-500":"text-amber-500";return a.jsx("div",{className:"absolute top-2.5 right-3",onClick:i=>i.stopPropagation(),children:a.jsx(be,{text:n,children:a.jsx(r,{className:`w-3.5 h-3.5 select-none ${s}`,"aria-label":n})})})}function Sn({icon:e,label:t,value:n,sub:r,alerts:s=[],onClick:i}){return a.jsxs("div",{className:`relative flex flex-col gap-2 p-4 rounded-xl border border-gray-200 bg-white transition-all select-none ${i?"cursor-pointer hover:border-indigo-300 hover:shadow-md active:scale-[.98]":""}`,onClick:i,children:[a.jsx(qC,{alerts:s}),a.jsxs("div",{className:"flex items-center gap-2.5",children:[a.jsx("div",{className:"w-7 h-7 rounded-lg flex items-center justify-center shrink-0 bg-indigo-50 text-indigo-500",children:e}),a.jsx("div",{className:"text-2xl font-bold tabular-nums leading-none text-gray-800",children:n})]}),a.jsx("div",{className:"text-xs font-medium text-gray-500 uppercase tracking-wide",children:t}),a.jsx("div",{className:"flex flex-col gap-1 h-[88px] overflow-hidden justify-end",children:r})]})}function QC({item:e,onNavigate:t}){const{category:n,tab:r,severity:s,ok:i,empty:o,message:l}=e,u=o||i?"":s==="error"?"bg-red-50/60 dark:bg-red-900/20":"bg-amber-50/50 dark:bg-amber-900/15",c=o?null:i?ju:s==="error"?ui:ai,d=o?"text-gray-300 dark:text-gray-600":i?"text-emerald-500":s==="error"?"text-red-500":"text-amber-500",f=o?"text-gray-400 italic dark:text-gray-500":i?"text-gray-500 dark:text-gray-400":"text-gray-800 dark:text-gray-100 font-medium";return a.jsxs("div",{className:`flex items-center gap-3 px-5 py-3 border-b border-gray-100 dark:border-gray-700 last:border-0 transition-colors ${u}`,children:[a.jsx("div",{className:"w-4 shrink-0 flex items-center justify-center",children:c?a.jsx(c,{className:`w-4 h-4 ${d}`}):a.jsx("span",{className:"text-gray-300 dark:text-gray-600 text-base leading-none",children:"–"})}),a.jsx("span",{className:`text-sm flex-1 leading-snug ${f}`,children:l}),a.jsx("div",{className:"w-28 shrink-0 flex justify-end",children:!i&&!o&&a.jsxs("button",{onClick:()=>t(r),className:"text-xs text-indigo-500 hover:text-indigo-700 dark:hover:text-indigo-300 font-semibold whitespace-nowrap px-2 py-1 rounded hover:bg-indigo-50 dark:hover:bg-indigo-900/30 transition-colors",children:["Go to ",n," →"]})})]})}function ha({icon:e,count:t,label:n,colors:r}){return t===0?null:a.jsxs("span",{className:`inline-flex items-center gap-1 text-xs font-semibold px-2.5 py-1 rounded-full ${r}`,children:[a.jsx(e,{className:"w-3 h-3 shrink-0"}),t," ",n]})}function KC({data:e,onNavigate:t}){var L;const[n,r]=j.useState(!1),s=!!e.appLogo&&!n,i=e.routes.filter(E=>!E.internal),o=e.jobs.activeJobs.length+e.jobs.sidekiqWorkers.length,l=e.mailers.reduce((E,R)=>E+R.actions.length,0),u=e.migrations.pendingCount,c=e.generatedAt?new Date(e.generatedAt).toLocaleString(void 0,{month:"short",day:"numeric",year:"numeric",hour:"2-digit",minute:"2-digit",timeZone:"UTC",timeZoneName:"short"}):null,d=BC(e.gems),f=UC.has(e.jobs.adapter)?e.jobs.adapter:null,h=f?((L=e.gems.find(E=>E.name===XC[f]))==null?void 0:L.version)??null:null,m=["common","development","test","production"],p={common:"Common",development:"Development",test:"Test",production:"Production"},v=m.map(E=>({g:E,count:E==="common"?e.gems.filter(R=>R.groups.length===0).length:e.gems.filter(R=>R.groups.includes(E)).length})).filter(({count:E})=>E>0),b=["GET","POST","PATCH","PUT","DELETE"],x=i.reduce((E,R)=>(R.verb.split("|").forEach(D=>{b.includes(D)&&(E[D]=(E[D]||0)+1)}),E),{}),y=i.filter(E=>E.orphaned).length,g=e.controllers.reduce((E,R)=>E+R.actions.length,0),w=e.controllers.reduce((E,R)=>E+R.beforeActions.length+R.afterActions.length+R.aroundActions.length,0),k=RC(jg(e.controllers,e.routes)),N=e.models.reduce((E,R)=>E+R.columns.length,0),M=new Set;e.models.forEach(E=>{E.associations.forEach(R=>{if(R.through||R.polymorphic||!R.className)return;const D=R.foreignKey??R.as??R.name;M.add(JSON.stringify([[E.name,R.className].sort(),D]))})});const I=M.size,P=e.models.filter(E=>!E.abstract&&E.validations.length===0).length,z=new Set([...e.jobs.activeJobs.map(E=>E.queue),...e.jobs.sidekiqWorkers.map(E=>E.queue)]),S=e.jobs.sidekiqWorkers.filter(E=>E.retry===!1||E.retry===0).length,$=e.routes.filter(E=>E.internal).length,F=e.mailers.filter(E=>!E.defaultFrom).length,C=[{category:"Routes",tab:"routes",severity:"error",ok:y===0,empty:i.length===0,message:i.length===0?"No routes found":y===0?"All routes point to a known controller":`${y} ${ee(y,"route")} point to an unknown controller`},{category:"Controllers",tab:"controllers",severity:"warn",ok:k===0,empty:e.controllers.length===0,message:e.controllers.length===0?"No controllers found":k===0?"All public actions have a matching route":`${k} public ${ee(k,"action")} without a matching route`},{category:"Models",tab:"models",severity:"warn",ok:P===0,empty:e.models.length===0,message:e.models.length===0?"No models found":P===0?"All models have at least one validation":`${P} ${ee(P,"model")} without any validation`},{category:"Migrations",tab:"migrations",severity:"error",ok:u===0,empty:e.migrations.totalCount===0,message:e.migrations.totalCount===0?"No migrations found":u===0?"All migrations are applied":`${u} pending ${ee(u,"migration")} not yet run`},...e.jobs.sidekiqWorkers.length>0?[{category:"Jobs",tab:"jobs",severity:"warn",ok:S===0,empty:!1,message:S===0?"All Sidekiq workers have retries enabled":`${S} Sidekiq ${ee(S,"worker")} with retries explicitly disabled`}]:[],{category:"Mailers",tab:"mailers",severity:"warn",ok:F===0,empty:e.mailers.length===0,message:e.mailers.length===0?"No mailers found":F===0?"All mailers have a default_from set":`${F} ${ee(F,"mailer")} without a default_from address`}],A=C.filter(E=>!E.empty&&!E.ok&&E.severity==="error").length,T=C.filter(E=>!E.empty&&!E.ok&&E.severity==="warn").length,O=C.filter(E=>E.ok).length,_=A===0&&T===0;return a.jsxs("div",{className:"p-6 space-y-8 max-w-5xl mx-auto",children:[a.jsxs("div",{className:"rounded-2xl border border-gray-200 bg-white shadow-sm overflow-hidden",children:[a.jsx("div",{className:"h-1 bg-gradient-to-r from-indigo-500 via-indigo-400 to-violet-400"}),a.jsxs("div",{className:"flex items-center justify-between gap-6 px-6 py-5 min-w-0",children:[a.jsxs("div",{className:"flex items-center gap-4 min-w-0",children:[s&&a.jsx("div",{className:"w-11 h-11 rounded-xl border border-gray-200 flex items-center justify-center shrink-0 shadow-sm overflow-hidden",style:{backgroundColor:"#ffffff"},children:a.jsx("img",{src:e.appLogo,alt:"App logo",className:"w-full h-full object-contain p-1.5",onError:()=>r(!0)})}),a.jsxs("div",{className:"min-w-0",children:[a.jsx("h1",{className:"text-xl font-bold text-gray-900 leading-tight truncate",children:e.appName??"Rails Application"}),e.appTitle&&e.appTitle!==e.appName&&a.jsx("p",{className:"text-xs text-gray-500 mt-0.5 truncate",children:e.appTitle}),c&&a.jsxs("p",{className:"text-xs text-gray-400 mt-0.5 whitespace-nowrap",children:["Snapshot · ",c]})]})]}),a.jsxs("div",{className:"flex flex-wrap items-center gap-2 shrink-0 justify-end",children:[e.railsVersion&&a.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-xl bg-white border border-gray-200 shadow-sm",children:[a.jsx(zC,{className:"w-8 h-5 shrink-0"}),a.jsxs("div",{className:"flex flex-col leading-none",children:[a.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-widest text-gray-400 mb-0.5",children:"Rails"}),a.jsx("span",{className:"text-sm font-bold text-gray-700 tabular-nums",children:e.railsVersion})]})]}),e.rubyVersion&&a.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-xl bg-white border border-gray-200 shadow-sm",children:[a.jsx(OC,{className:"w-5 h-5 shrink-0"}),a.jsxs("div",{className:"flex flex-col leading-none",children:[a.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-widest text-gray-400 mb-0.5",children:"Ruby"}),a.jsx("span",{className:"text-sm font-bold text-gray-700 tabular-nums",children:e.rubyVersion})]})]}),d&&(()=>{const E=e.dbVersion?WC(e.dbVersion):null;return a.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-xl bg-white border border-gray-200 shadow-sm",children:[d.icon==="postgresql"&&a.jsx(DC,{className:"w-5 h-5 shrink-0"}),d.icon==="mysql"&&a.jsx(FC,{className:"w-5 h-5 shrink-0"}),d.icon==="sqlite"&&a.jsx(VC,{className:"w-5 h-5 shrink-0"}),a.jsxs("div",{className:"flex flex-col leading-none",children:[a.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-widest text-gray-400 mb-0.5",children:d.name}),E!=null&&E.full?a.jsx(be,{text:E.full,children:a.jsx("span",{className:"text-sm font-bold text-gray-700 tabular-nums",children:E.short})}):a.jsx("span",{className:"text-sm font-bold text-gray-700 tabular-nums",children:(E==null?void 0:E.short)??"—"})]})]})})(),f&&a.jsx(be,{text:YC[f]??f,children:a.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-xl bg-white border border-gray-200 shadow-sm",children:[f==="sidekiq"&&a.jsx(HC,{className:"w-5 h-5 shrink-0"}),a.jsxs("div",{className:"flex flex-col leading-none",children:[a.jsx("span",{className:"text-[9px] font-semibold uppercase tracking-widest text-gray-400 mb-0.5",children:GC[f]??f}),a.jsx("span",{className:"text-sm font-bold text-gray-700 tabular-nums",children:h??"—"})]})]})})]})]})]}),a.jsxs("div",{children:[a.jsx("h2",{className:"text-xs font-semibold text-gray-400 uppercase tracking-wider mb-3",children:"Application Stats"}),a.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-3",children:[a.jsx(Sn,{icon:Ie.gems({className:"w-4 h-4"}),label:"Gems",value:e.gems.length,sub:v.map(({g:E,count:R})=>a.jsxs(Qe,{children:[R," ",p[E]??E]},E)),onClick:()=>t("gems")}),a.jsx(Sn,{icon:Ie.routes({className:"w-4 h-4"}),label:"Routes",value:i.length,alerts:y>0?[{severity:"error",message:`${y} ${ee(y,"route")} point to an unknown controller`}]:[],sub:a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"flex flex-row-reverse flex-wrap-reverse justify-end gap-1",children:[...b].reverse().filter(E=>x[E]).map(E=>a.jsxs(Qe,{className:"basis-[calc(50%-2px)] shrink-0",children:[x[E]," ",E]},E))}),$>0&&a.jsxs(Qe,{children:[$," engine ",ee($,"route")]})]}),onClick:()=>t("routes")}),a.jsx(Sn,{icon:Ie.controllers({className:"w-4 h-4"}),label:"Controllers",value:e.controllers.length,alerts:k>0?[{severity:"warn",message:`${k} public ${ee(k,"action")} without a matching route`}]:[],sub:a.jsxs(a.Fragment,{children:[a.jsxs(Qe,{children:[g," ",ee(g,"action")]}),w>0&&a.jsxs(Qe,{children:[w," ",ee(w,"callback")]})]}),onClick:()=>t("controllers")}),a.jsx(Sn,{icon:Ie.models({className:"w-4 h-4"}),label:"Models",value:e.models.length,alerts:P>0?[{severity:"warn",message:`${P} ${ee(P,"model")} without any validation`}]:[],sub:a.jsxs(a.Fragment,{children:[N>0&&a.jsxs(Qe,{children:[N," ",ee(N,"column")]}),I>0&&a.jsxs(Qe,{children:[I," ",ee(I,"relationship")]})]}),onClick:()=>t("models")}),a.jsx(Sn,{icon:Ie.migrations({className:"w-4 h-4"}),label:"Migrations",value:e.migrations.totalCount,alerts:u>0?[{severity:"error",message:`${u} pending ${ee(u,"migration")} not yet run`}]:[],sub:a.jsxs(a.Fragment,{children:[a.jsxs(Qe,{children:[u," pending"]}),a.jsxs(Qe,{children:[e.migrations.appliedCount," applied"]})]}),onClick:()=>t("migrations")}),a.jsx(Sn,{icon:Ie.jobs({className:"w-4 h-4"}),label:"Jobs",value:o,alerts:S>0?[{severity:"warn",message:`${S} Sidekiq ${ee(S,"worker")} with retries explicitly disabled`}]:[],sub:a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"flex flex-wrap gap-1",children:[e.jobs.activeJobs.length>0&&a.jsxs(Qe,{className:"basis-[calc(50%-2px)] shrink-0",children:[e.jobs.activeJobs.length," ActiveJob"]}),e.jobs.sidekiqWorkers.length>0&&a.jsxs(Qe,{className:"basis-[calc(50%-2px)] shrink-0",children:[e.jobs.sidekiqWorkers.length," Sidekiq"]})]}),a.jsxs(Qe,{children:[z.size," ",ee(z.size,"queue")]})]}),onClick:()=>t("jobs")}),a.jsx(Sn,{icon:Ie.mailers({className:"w-4 h-4"}),label:"Mailers",value:e.mailers.length,alerts:F>0?[{severity:"warn",message:`${F} ${ee(F,"mailer")} without a default_from address`}]:[],sub:a.jsxs(Qe,{children:[l," ",ee(l,"email method")]}),onClick:()=>t("mailers")})]})]}),a.jsxs("div",{children:[a.jsxs("div",{className:"flex items-center justify-between mb-3",children:[a.jsx("h2",{className:"text-xs font-semibold text-gray-400 uppercase tracking-wider",children:"Health Checks"}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx(ha,{icon:ui,count:A,label:ee(A,"error"),colors:"bg-red-100 text-red-700"}),a.jsx(ha,{icon:ai,count:T,label:ee(T,"warning"),colors:"bg-amber-100 text-amber-700"}),a.jsx(ha,{icon:ju,count:O,label:"passed",colors:"bg-emerald-100 text-emerald-700"})]})]}),_&&a.jsxs("div",{className:"flex items-center gap-4 px-5 py-4 mb-2 bg-emerald-50 border border-emerald-100 rounded-xl",children:[a.jsx(ju,{className:"w-6 h-6 text-emerald-500 shrink-0"}),a.jsxs("div",{children:[a.jsx("p",{className:"text-sm font-semibold text-emerald-800",children:"All systems healthy"}),a.jsxs("p",{className:"text-xs text-emerald-600 mt-0.5",children:["All ",O," checks passed — nothing to action"]})]})]}),a.jsx("div",{className:"bg-white dark:bg-gray-800/60 rounded-xl border border-gray-200 dark:border-gray-700 overflow-hidden divide-y-0",children:C.map(E=>a.jsx(QC,{item:E,onNavigate:t},E.category))})]})]})}const Ho=["test","development","production"],Xc={common:{label:"Common",color:"bg-indigo-100 text-indigo-700",pill:"bg-indigo-100 text-indigo-700 border-indigo-200"},test:{label:"Test",color:"bg-emerald-100 text-emerald-700",pill:"bg-emerald-100 text-emerald-700 border-emerald-200"},development:{label:"Development",color:"bg-amber-100 text-amber-700",pill:"bg-amber-100 text-amber-700 border-amber-200"},production:{label:"Production",color:"bg-blue-100 text-blue-700",pill:"bg-blue-100 text-blue-700 border-blue-200"}};function _g(e){var t;return((t=Xc[e])==null?void 0:t.label)??e.charAt(0).toUpperCase()+e.slice(1)}function ZC(e){var t;return((t=Xc[e])==null?void 0:t.color)??"bg-gray-100 text-gray-600"}function JC({gem:e,query:t}){const n=Ho.filter(o=>e.groups.includes(o)),r=e.groups.filter(o=>!Ho.includes(o)),s=[...n,...r],i=s.length>0||e.sourceTags.length>0;return a.jsxs("tr",{className:"border-b border-gray-100 hover:bg-gray-100 transition-colors",children:[a.jsx("td",{className:"py-2.5 pl-4 pr-2",children:a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx("span",{className:"font-mono text-sm text-gray-800 font-medium",children:ve(e.name,t)}),e.homepage&&a.jsx("a",{href:e.homepage,target:"_blank",rel:"noreferrer",title:e.homepage,className:"text-gray-300 hover:text-indigo-500 transition-colors shrink-0",onClick:o=>o.stopPropagation(),children:a.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[a.jsx("path",{d:"M7 3H3a1 1 0 00-1 1v9a1 1 0 001 1h9a1 1 0 001-1v-4"}),a.jsx("path",{d:"M10 2h4v4"}),a.jsx("line",{x1:"14",y1:"2",x2:"7",y2:"9"})]})})]})}),a.jsx("td",{className:"py-2.5 px-2",children:a.jsx("div",{className:"text-xs text-gray-500 leading-snug line-clamp-2",children:e.summary?ve(e.summary,t):"—"})}),a.jsxs("td",{className:"py-2.5 px-2 whitespace-nowrap",children:[a.jsx("span",{className:"font-mono text-xs text-gray-700 font-medium",children:ve(e.version??"—",t)}),e.requirement&&e.requirement!==">= 0"&&a.jsxs("span",{className:"font-mono text-[10px] text-gray-400 ml-1",children:["(",e.requirement,")"]})]}),a.jsx("td",{className:"py-2.5 px-2 pr-4 max-w-0 overflow-hidden",children:i?a.jsxs("div",{className:"flex gap-1 overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden w-full",children:[s.map(o=>a.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded font-medium whitespace-nowrap shrink-0 ${ZC(o)}`,children:_g(o)},o)),e.sourceTags.map(o=>a.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-medium bg-gray-100 text-gray-600 font-mono whitespace-nowrap shrink-0",children:o},o))]}):a.jsx("span",{className:"text-xs text-gray-300",children:"—"})})]})}function eE({gems:e}){if(e.length===0)return a.jsx(qe,{icon:Ie.gems({className:"w-full h-full"}),message:"No gems found.",hint:"Add gems to your Gemfile to see them here."});const[t,n]=j.useState(""),[r,s]=j.useState(new Set),i=j.useMemo(()=>{const u=new Set;e.forEach(d=>d.groups.forEach(f=>u.add(f)));const c=[];return e.some(d=>d.groups.length===0)&&c.push("common"),Ho.filter(d=>u.has(d)).forEach(d=>c.push(d)),u.forEach(d=>{Ho.includes(d)||c.push(d)}),c},[e]),o=j.useMemo(()=>{const u={};return e.forEach(c=>{c.groups.length===0?u.common=(u.common??0)+1:c.groups.forEach(d=>{u[d]=(u[d]??0)+1})}),u},[e]),l=j.useMemo(()=>{const u=t.toLowerCase();return e.filter(c=>{const d=c.groups.length===0,f=!r.size||c.groups.some(m=>r.has(m))||d&&r.has("common"),h=!u||c.name.toLowerCase().includes(u)||(c.summary??"").toLowerCase().includes(u);return f&&h})},[e,t,r]);return a.jsxs("div",{className:"flex flex-col h-full",children:[a.jsxs("div",{className:"flex items-center gap-3 px-4 py-3 border-b border-gray-200 bg-white shrink-0",children:[a.jsx("div",{className:"flex-1 min-w-0",children:a.jsx(wl,{options:i.map(u=>{var c;return{key:u,label:_g(u),count:o[u]??0,colorClass:((c=Xc[u])==null?void 0:c.pill)??"bg-gray-100 text-gray-600 border-gray-200"}}),selected:r,onChange:s,allCount:e.length})}),a.jsx(Zn,{value:t,onChange:n,placeholder:"Search gems…",className:"flex-[2] min-w-0"}),a.jsx("div",{className:"flex-1 flex items-center justify-end min-w-0",children:a.jsxs("span",{className:"text-xs text-gray-400 tabular-nums whitespace-nowrap",children:[l.length," / ",e.length," ",ee(e.length,"gem")]})})]}),a.jsx("div",{className:"flex-1 overflow-auto",children:l.length===0?a.jsx(qe,{variant:"compact",message:"No gems match your filters."}):a.jsxs("table",{className:"w-full text-left table-fixed",children:[a.jsxs("colgroup",{children:[a.jsx("col",{style:{width:"20%"}}),a.jsx("col",{style:{width:"42%"}}),a.jsx("col",{style:{width:"13%"}}),a.jsx("col",{style:{width:"25%"}})]}),a.jsx("thead",{className:"sticky top-0 bg-gray-50 z-10 border-b border-gray-200",children:a.jsxs("tr",{children:[a.jsx("th",{className:"py-2 pl-4 pr-2 text-xs font-semibold text-gray-500 uppercase tracking-wider",children:"Gem"}),a.jsx("th",{className:"py-2 px-2 text-xs font-semibold text-gray-500 uppercase tracking-wider",children:"Description"}),a.jsx("th",{className:"py-2 px-2 text-xs font-semibold text-gray-500 uppercase tracking-wider",children:"Version"}),a.jsx("th",{className:"py-2 px-2 pr-4 text-xs font-semibold text-gray-500 uppercase tracking-wider",children:"Details"})]})}),a.jsx("tbody",{children:l.map(u=>a.jsx(JC,{gem:u,query:t},u.name))})]})})]})}function tE({n:e,active:t}){return a.jsx("span",{className:`text-[10px] px-1.5 py-0.5 rounded-full font-medium ml-1 tabular-nums ${t?"bg-indigo-100 text-indigo-700":"bg-gray-100 text-gray-500"}`,children:e})}function nE(){return a.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[a.jsx("circle",{cx:"12",cy:"12",r:"4"}),a.jsx("path",{d:"M12 2v2M12 20v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M2 12h2M20 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42"})]})}function rE(){return a.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[a.jsx("rect",{x:"2",y:"3",width:"20",height:"14",rx:"2"}),a.jsx("path",{d:"M8 21h8M12 17v4"})]})}function sE(){return a.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:a.jsx("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})})}const pa=[{value:"light",label:"Light",Icon:nE},{value:"system",label:"System",Icon:rE},{value:"dark",label:"Dark",Icon:sE}];function iE({theme:e,setTheme:t}){const[n,r]=j.useState(!1),[s,i]=j.useState(null),o=j.useRef(null),l=j.useRef(null);j.useEffect(()=>{if(!n||!o.current)return;const c=o.current.getBoundingClientRect();i({top:c.bottom+6,right:window.innerWidth-c.right})},[n]),j.useEffect(()=>{if(!n)return;const c=d=>{var h,m;const f=d.target;!((h=o.current)!=null&&h.contains(f))&&!((m=l.current)!=null&&m.contains(f))&&r(!1)};return document.addEventListener("mousedown",c),()=>document.removeEventListener("mousedown",c)},[n]);const u=pa.find(c=>c.value===e)??pa[1];return a.jsxs(a.Fragment,{children:[a.jsx("button",{ref:o,onClick:()=>r(c=>!c),title:`Theme: ${u.label}`,className:`flex items-center justify-center w-7 h-7 rounded-md border transition-colors shrink-0 ml-3 self-center ${n?"border-indigo-300 bg-indigo-50 dark:bg-indigo-900/30 dark:border-indigo-500 text-indigo-600 dark:text-indigo-400":"border-gray-200 dark:border-gray-600 bg-white dark:bg-gray-800 text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 hover:border-gray-300 dark:hover:border-gray-500"}`,children:a.jsx(u.Icon,{})}),n&&il.createPortal(a.jsx("div",{ref:l,style:{position:"fixed",top:(s==null?void 0:s.top)??0,right:(s==null?void 0:s.right)??0,zIndex:9999,visibility:s?"visible":"hidden"},className:"bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-700 rounded-xl shadow-lg dark:shadow-gray-900/50 overflow-hidden py-1 min-w-[128px]",children:pa.map(({value:c,label:d,Icon:f})=>{const h=e===c;return a.jsxs("button",{onClick:()=>{t(c),r(!1)},className:`w-full flex items-center gap-2.5 px-3.5 py-2 text-xs font-medium text-left transition-colors ${h?"bg-indigo-50 dark:bg-indigo-900/30 text-indigo-700 dark:text-indigo-300":"text-gray-600 dark:text-gray-300 hover:bg-gray-50 dark:hover:bg-gray-700 hover:text-gray-900 dark:hover:text-gray-100"}`,children:[a.jsx("span",{className:h?"text-indigo-600 dark:text-indigo-400":"text-gray-400 dark:text-gray-500",children:a.jsx(f,{})}),a.jsx("span",{className:"flex-1",children:d}),h&&a.jsx("svg",{width:"11",height:"11",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"text-indigo-500 dark:text-indigo-400 shrink-0",children:a.jsx("path",{d:"M2 6l3 3 5-5",strokeLinecap:"round",strokeLinejoin:"round"})})]},c)})}),document.body)]})}function oE({data:e}){var k,N,M,I,P,z;const[t,n]=j.useState("overview"),[r,s]=j.useState(""),[i,o]=j.useState(null),[l,u]=j.useState(!1),[c,d]=j.useState("list"),{theme:f,setTheme:h}=o5(),m=r?e.models.filter(S=>S.name.toLowerCase().includes(r.toLowerCase())||S.tableName.toLowerCase().includes(r.toLowerCase())).length:e.models.length,p=(((N=(k=e.jobs)==null?void 0:k.activeJobs)==null?void 0:N.length)??0)+(((I=(M=e.jobs)==null?void 0:M.sidekiqWorkers)==null?void 0:I.length)??0),v=j.useMemo(()=>jg(e.controllers??[],e.routes??[]),[e.controllers,e.routes]),b=j.useMemo(()=>new Set((e.models??[]).filter(S=>!S.abstract&&S.validations.length===0&&bg(S).length>0).map(S=>S.name)),[e.models]),x=j.useMemo(()=>(e.routes??[]).filter(S=>S.orphaned).length,[e.routes]),y=j.useMemo(()=>{let S=0;return v.noRouteActions.forEach($=>{S+=$.size}),S},[v]),g=j.useMemo(()=>{var S;return(((S=e.jobs)==null?void 0:S.sidekiqWorkers)??[]).filter($=>$.retry===!1||$.retry===0).length},[e.jobs]),w=[{id:"overview",label:"Overview",count:0,title:"App summary, stats, and health checks"},{id:"gems",label:"Gems",count:(e.gems??[]).length,title:"Ruby gem dependencies declared in your Gemfile"},{id:"routes",label:"Routes",count:(e.routes??[]).filter(S=>!S.internal).length,title:"All HTTP routes defined in config/routes.rb",alertSeverity:x>0?"error":void 0},{id:"controllers",label:"Controllers",count:(e.controllers??[]).length,title:"ActionController classes with their actions and callbacks",alertSeverity:y>0?"warn":void 0},{id:"models",label:"Models",count:e.models.length,title:"ActiveRecord model classes with associations, validations, and ER diagram",alertSeverity:b.size>0?"warn":void 0},{id:"migrations",label:"Migrations",count:((P=e.migrations)==null?void 0:P.totalCount)??0,title:"Database migration history — applied and pending",alertSeverity:(((z=e.migrations)==null?void 0:z.pendingCount)??0)>0?"error":void 0},{id:"jobs",label:"Jobs",count:p,title:"Background job classes (ActiveJob + Sidekiq)",alertSeverity:g>0?"warn":void 0},{id:"mailers",label:"Mailers",count:(e.mailers??[]).length,title:"ActionMailer classes and their email methods",alertSeverity:(e.mailers??[]).some(S=>!S.defaultFrom)?"warn":void 0}];return a.jsxs("div",{className:"h-screen w-screen flex flex-col bg-gray-50 overflow-hidden",children:[a.jsxs("header",{className:"flex items-stretch bg-white border-b border-gray-200 shadow-sm z-20 shrink-0 h-11 px-4",children:[a.jsxs("div",{className:"flex items-center gap-2 w-48 shrink-0 min-w-0",children:[a.jsx("div",{className:"w-6 h-6 bg-indigo-600 rounded flex items-center justify-center shrink-0",children:a.jsx(dC,{className:"w-3.5 h-3.5 text-white"})}),a.jsx("span",{className:"font-semibold text-gray-800 text-sm tracking-tight whitespace-nowrap",children:"RailsVisualizer"})]}),a.jsx("nav",{className:"flex-1 flex items-stretch overflow-x-auto",children:w.map(S=>{var F;const $=S.id!=="overview"&&S.count>0;return a.jsxs("button",{onClick:()=>n(S.id),className:`relative flex-1 min-w-[72px] flex items-center justify-center gap-1 px-2 h-full text-xs font-medium border-b-2 whitespace-nowrap transition-colors ${t===S.id?"border-indigo-500 text-indigo-600":"border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300"}`,children:[(F=Ie[S.id])==null?void 0:F.call(Ie,{className:"w-3.5 h-3.5 shrink-0"}),a.jsx("span",{children:S.label}),$&&a.jsx(tE,{n:S.count,active:t===S.id}),S.alertSeverity&&(S.alertSeverity==="error"?a.jsx(ui,{"aria-hidden":"true",className:"absolute right-1 top-1 w-2.5 h-2.5 text-red-500"}):a.jsx(ai,{"aria-hidden":"true",className:"absolute right-1 top-1 w-2.5 h-2.5 text-amber-500"}))]},S.id)})}),a.jsx("div",{className:"flex items-center justify-end w-48 shrink-0 min-w-0",children:a.jsx(iE,{theme:f,setTheme:h})})]}),a.jsxs("div",{className:"flex-1 overflow-hidden relative",children:[t==="overview"&&a.jsx("div",{className:"h-full overflow-auto",children:a.jsx(KC,{data:e,onNavigate:S=>n(S)})}),t==="models"&&e.models.length===0&&a.jsx(qe,{icon:Ie.models({className:"w-full h-full"}),message:"No models found.",hint:"Create models inheriting from ApplicationRecord to see them here."}),t==="models"&&e.models.length>0&&a.jsxs("div",{className:"h-full flex flex-col overflow-hidden",children:[a.jsxs("div",{className:"px-4 py-2 bg-white border-b border-gray-200 shrink-0 flex items-center gap-3",children:[a.jsxs("div",{className:"flex-1 flex items-center gap-2 min-w-0",children:[a.jsxs("div",{className:"flex items-center rounded-lg border border-gray-200 bg-gray-50 p-0.5 gap-0.5 shrink-0",children:[a.jsx("button",{onClick:()=>d("list"),title:"List view",className:`flex items-center justify-center w-7 h-7 rounded-md transition-all ${c==="list"?"bg-white text-indigo-600 shadow-sm":"text-gray-400 hover:text-gray-600"}`,children:a.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 16 16",strokeLinecap:"round",children:[a.jsx("circle",{cx:"2.5",cy:"4",r:"1.25",fill:"currentColor"}),a.jsx("rect",{x:"5.5",y:"3.1",width:"9",height:"1.8",rx:"0.9",fill:"currentColor"}),a.jsx("circle",{cx:"2.5",cy:"8",r:"1.25",fill:"currentColor"}),a.jsx("rect",{x:"5.5",y:"7.1",width:"9",height:"1.8",rx:"0.9",fill:"currentColor"}),a.jsx("circle",{cx:"2.5",cy:"12",r:"1.25",fill:"currentColor"}),a.jsx("rect",{x:"5.5",y:"11.1",width:"7",height:"1.8",rx:"0.9",fill:"currentColor"})]})}),a.jsx("button",{onClick:()=>d("canvas"),title:e.models.length>200?`Schema canvas (${e.models.length} models — layout may take a moment)`:"Schema canvas",className:`flex items-center justify-center w-7 h-7 rounded-md transition-all ${c==="canvas"?"bg-white text-indigo-600 shadow-sm":"text-gray-400 hover:text-gray-600"}`,children:a.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round",children:[a.jsx("rect",{x:"0.75",y:"0.75",width:"4.5",height:"3.5",rx:"1"}),a.jsx("rect",{x:"10.75",y:"0.75",width:"4.5",height:"3.5",rx:"1"}),a.jsx("rect",{x:"5.75",y:"11.75",width:"4.5",height:"3.5",rx:"1"}),a.jsx("line",{x1:"5.25",y1:"2.5",x2:"10.75",y2:"2.5"}),a.jsx("line",{x1:"3",y1:"4.25",x2:"7.5",y2:"11.75"}),a.jsx("line",{x1:"13",y1:"4.25",x2:"8.5",y2:"11.75"})]})})]}),a.jsx(ci,{active:l,count:b.size,onToggle:()=>u(S=>!S)})]}),a.jsx(Zn,{value:r,onChange:s,placeholder:"Search models…",className:"flex-[2] min-w-0"}),a.jsx("div",{className:"flex-1 flex items-center justify-end min-w-0",children:a.jsxs("span",{className:"text-xs text-gray-400 tabular-nums whitespace-nowrap",children:[m," / ",e.models.length," ",ee(e.models.length,"model")]})})]}),c==="list"&&a.jsxs("div",{className:"flex-1 overflow-hidden flex relative",children:[a.jsx(tC,{models:e.models,searchQuery:r,issueModelNames:l?b:void 0,onSelectModel:o,selectedModel:i}),a.jsx(F0,{model:i,onClose:()=>o(null)})]}),c==="canvas"&&a.jsxs("div",{className:"flex-1 relative overflow-hidden",children:[a.jsx(QN,{models:e.models,searchQuery:r,onSelectModel:o,selectedModel:i,issueModelNames:l?b:void 0}),a.jsx(F0,{model:i,onClose:()=>o(null)})]})]}),t==="routes"&&a.jsx(gC,{routes:e.routes??[]}),t==="jobs"&&a.jsx(bC,{jobs:e.jobs??{adapter:"unknown",activeJobs:[],sidekiqWorkers:[]}}),t==="controllers"&&a.jsx(SC,{controllers:e.controllers??[],deadCode:v}),t==="migrations"&&a.jsx(IC,{migrations:e.migrations??{migrations:[],currentVersion:null,totalCount:0,pendingCount:0,appliedCount:0}}),t==="mailers"&&a.jsx(AC,{mailers:e.mailers??[]}),t==="gems"&&a.jsx(eE,{gems:e.gems??[]})]})]})}const lE={generatedAt:new Date().toISOString(),railsVersion:null,rubyVersion:"",dbVersion:null,appName:null,appTitle:null,appLogo:null,appRoot:"",models:[],routes:[],jobs:{adapter:"unknown",activeJobs:[],sidekiqWorkers:[]},controllers:[],migrations:{migrations:[],currentVersion:null,totalCount:0,pendingCount:0,appliedCount:0},mailers:[],gems:[]},aE=window.__RAILS_VISUALIZER_DATA__??lE;ma.createRoot(document.getElementById("root")).render(a.jsx($u.StrictMode,{children:a.jsx(oE,{data:aE})}));</script>
|
|
71
|
+
<style rel="stylesheet" crossorigin>.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.top-0{top:0}.top-1{top:.25rem}.top-2\.5{top:.625rem}.z-10{z-index:10}.z-20{z-index:20}.mx-auto{margin-left:auto;margin-right:auto}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-0\.5{margin-right:.125rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.\!h-2\.5{height:.625rem!important}.h-1{height:.25rem}.h-11{height:2.75rem}.h-14{height:3.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-\[88px\]{height:88px}.h-full{height:100%}.h-screen{height:100vh}.min-h-\[18px\]{min-height:18px}.min-h-\[24px\]{min-height:24px}.\!w-2\.5{width:.625rem!important}.w-11{width:2.75rem}.w-14{width:3.5rem}.w-2\.5{width:.625rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-36{width:9rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-\[20\%\]{width:20%}.w-\[26\%\]{width:26%}.w-\[34\%\]{width:34%}.w-\[560px\]{width:560px}.w-\[76px\]{width:76px}.w-\[80px\]{width:80px}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-\[120px\]{min-width:120px}.min-w-\[128px\]{min-width:128px}.min-w-\[140px\]{min-width:140px}.min-w-\[160px\]{min-width:160px}.min-w-\[72px\]{min-width:72px}.max-w-0{max-width:0px}.max-w-5xl{max-width:64rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-\[2\]{flex:2}.shrink-0{flex-shrink:0}.basis-\[calc\(50\%-2px\)\]{flex-basis:calc(50% - 2px)}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-y-0\.5{row-gap:.125rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-y-0>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(0px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(0px * var(--tw-divide-y-reverse))}.divide-gray-50>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(249 250 251 / var(--tw-divide-opacity, 1))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[2px\]{border-radius:2px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.\!border-2{border-width:2px!important}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.\!border-white{--tw-border-opacity: 1 !important;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))!important}.border-amber-100{--tw-border-opacity: 1;border-color:rgb(254 243 199 / var(--tw-border-opacity, 1))}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-emerald-100{--tw-border-opacity: 1;border-color:rgb(209 250 229 / var(--tw-border-opacity, 1))}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-50{--tw-border-opacity: 1;border-color:rgb(249 250 251 / var(--tw-border-opacity, 1))}.border-indigo-100{--tw-border-opacity: 1;border-color:rgb(224 231 255 / var(--tw-border-opacity, 1))}.border-indigo-200{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity, 1))}.border-indigo-300{--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1))}.border-indigo-500{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-orange-200{--tw-border-opacity: 1;border-color:rgb(254 215 170 / var(--tw-border-opacity, 1))}.border-purple-100{--tw-border-opacity: 1;border-color:rgb(243 232 255 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-rose-200{--tw-border-opacity: 1;border-color:rgb(254 205 211 / var(--tw-border-opacity, 1))}.border-sky-100{--tw-border-opacity: 1;border-color:rgb(224 242 254 / var(--tw-border-opacity, 1))}.border-sky-200{--tw-border-opacity: 1;border-color:rgb(186 230 253 / var(--tw-border-opacity, 1))}.border-teal-100{--tw-border-opacity: 1;border-color:rgb(204 251 241 / var(--tw-border-opacity, 1))}.border-teal-200{--tw-border-opacity: 1;border-color:rgb(153 246 228 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-violet-200{--tw-border-opacity: 1;border-color:rgb(221 214 254 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.\!bg-indigo-400{--tw-bg-opacity: 1 !important;background-color:rgb(129 140 248 / var(--tw-bg-opacity, 1))!important}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-50\/50{background-color:#fffbeb80}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.bg-pink-100{--tw-bg-opacity: 1;background-color:rgb(252 231 243 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-50\/30{background-color:#fef2f24d}.bg-red-50\/50{background-color:#fef2f280}.bg-red-50\/60{background-color:#fef2f299}.bg-rose-100{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity, 1))}.bg-sky-100{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity, 1))}.bg-sky-50{--tw-bg-opacity: 1;background-color:rgb(240 249 255 / var(--tw-bg-opacity, 1))}.bg-sky-50\/50{background-color:#f0f9ff80}.bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1))}.bg-teal-50{--tw-bg-opacity: 1;background-color:rgb(240 253 250 / var(--tw-bg-opacity, 1))}.bg-teal-50\/50{background-color:#f0fdfa80}.bg-transparent{background-color:transparent}.bg-violet-100{--tw-bg-opacity: 1;background-color:rgb(237 233 254 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-indigo-500{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-indigo-400{--tw-gradient-to: rgb(129 140 248 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #818cf8 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-violet-400{--tw-gradient-to: #a78bfa var(--tw-gradient-to-position)}.fill-white{fill:#fff}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1\.5{padding:.375rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-2{padding-bottom:.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-emerald-800{--tw-text-opacity: 1;color:rgb(6 95 70 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-indigo-200{--tw-text-opacity: 1;color:rgb(199 210 254 / var(--tw-text-opacity, 1))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-indigo-900{--tw-text-opacity: 1;color:rgb(49 46 129 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-pink-700{--tw-text-opacity: 1;color:rgb(190 24 93 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-rose-700{--tw-text-opacity: 1;color:rgb(190 18 60 / var(--tw-text-opacity, 1))}.text-sky-400{--tw-text-opacity: 1;color:rgb(56 189 248 / var(--tw-text-opacity, 1))}.text-sky-500{--tw-text-opacity: 1;color:rgb(14 165 233 / var(--tw-text-opacity, 1))}.text-sky-600{--tw-text-opacity: 1;color:rgb(2 132 199 / var(--tw-text-opacity, 1))}.text-sky-700{--tw-text-opacity: 1;color:rgb(3 105 161 / var(--tw-text-opacity, 1))}.text-teal-500{--tw-text-opacity: 1;color:rgb(20 184 166 / var(--tw-text-opacity, 1))}.text-teal-600{--tw-text-opacity: 1;color:rgb(13 148 136 / var(--tw-text-opacity, 1))}.text-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-violet-700{--tw-text-opacity: 1;color:rgb(109 40 217 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-900{--tw-text-opacity: 1;color:rgb(113 63 18 / var(--tw-text-opacity, 1))}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-indigo-100{--tw-shadow-color: #e0e7ff;--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-current{--tw-ring-color: currentColor}.ring-gray-400\/40{--tw-ring-color: rgb(156 163 175 / .4)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.\[scrollbar-width\:none\]{scrollbar-width:none}*{box-sizing:border-box}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.react-flow__node.selected>div{outline:none}.dark{color-scheme:dark}.dark .bg-white{background-color:#1e2a38}.dark .bg-gray-50{background-color:#141e2c}.dark .bg-gray-100{background-color:#2a3648}.dark .bg-gray-200,.dark .bg-gray-800{background-color:#38495e}.dark .bg-indigo-50{background-color:#4338ca26}.dark .bg-indigo-100{background-color:#4338ca47}.dark .bg-amber-50{background-color:#b4530926}.dark .bg-amber-100{background-color:#b4530947}.dark .bg-emerald-50{background-color:#05966926}.dark .bg-emerald-100{background-color:#05966947}.dark .bg-red-50{background-color:#b91c1c26}.dark .bg-red-100{background-color:#b91c1c47}.dark .bg-blue-100{background-color:#1d4ed847}.dark .bg-sky-50{background-color:#0284c726}.dark .bg-sky-100{background-color:#0284c747}.dark .bg-teal-50{background-color:#0d948826}.dark .bg-teal-100{background-color:#0d948847}.dark .bg-orange-50{background-color:#c2410c26}.dark .bg-orange-100{background-color:#c2410c47}.dark .bg-yellow-50{background-color:#a1620726}.dark .bg-yellow-200{background-color:#a162074d}.dark .bg-violet-100{background-color:#6d28d947}.dark .bg-rose-100{background-color:#be123c47}.dark .bg-amber-50\/30{background-color:#b453091a}.dark .bg-indigo-50\/40,.dark .bg-indigo-50\/50{background-color:#4338ca14}.dark .bg-amber-50\/50{background-color:#b4530914}.dark .bg-sky-50\/50{background-color:#0284c714}.dark .bg-teal-50\/50{background-color:#0d948814}.dark .text-gray-900{color:#dde3ea}.dark .text-gray-800{color:#c4cdd7}.dark .text-gray-700{color:#8d9bac}.dark .text-gray-600{color:#647385}.dark .text-indigo-900{color:#c7d2fe}.dark .text-indigo-700{color:#a5b4fc}.dark .text-indigo-600{color:#818cf8}.dark .text-indigo-500{color:#a5b4fc}.dark .text-amber-700{color:#fcd34d}.dark .text-amber-600{color:#fbbf24}.dark .text-emerald-700{color:#6ee7b7}.dark .text-emerald-500{color:#34d399}.dark .text-red-700{color:#fca5a5}.dark .text-red-600{color:#f87171}.dark .text-blue-700{color:#93c5fd}.dark .text-sky-700{color:#7dd3fc}.dark .text-teal-700{color:#5eead4}.dark .text-teal-600{color:#2dd4bf}.dark .text-violet-700{color:#c4b5fd}.dark .text-yellow-900{color:#fde68a}.dark .border-gray-100{border-color:#374151b3}.dark .border-gray-200{border-color:#374151}.dark .border-gray-300{border-color:#4b5563}.dark .border-indigo-100{border-color:#4338ca59}.dark .border-indigo-200{border-color:#4338ca8c}.dark .border-indigo-300{border-color:#4f46e5}.dark .border-amber-100{border-color:#b4530959}.dark .border-amber-200{border-color:#b453098c}.dark .border-emerald-200{border-color:#05966973}.dark .border-red-100{border-color:#b91c1c59}.dark .border-red-200{border-color:#b91c1c8c}.dark .border-blue-200{border-color:#1d4ed880}.dark .border-sky-100{border-color:#0284c759}.dark .border-sky-200{border-color:#0284c78c}.dark .border-teal-100{border-color:#0d948859}.dark .border-teal-200{border-color:#0d94888c}.dark .border-orange-200{border-color:#c2410c8c}.dark .border-yellow-200{border-color:#a162078c}.dark .border-gray-600{border-color:#6b7280}.dark .border-gray-800{border-color:#4b5563}.dark .hover\:bg-gray-50:hover{background-color:#1e2a38}.dark .hover\:bg-gray-100:hover{background-color:#2a3648}.dark .hover\:bg-gray-200:hover{background-color:#38495e}.dark .hover\:border-indigo-300:hover{border-color:#6366f1}.dark .hover\:border-gray-400:hover{border-color:#6b7280}.dark .hover\:text-gray-700:hover,.dark .hover\:text-gray-600:hover{color:#8d9bac}.dark .hover\:text-indigo-700:hover{color:#a5b4fc}.dark .hover\:bg-indigo-50\/40:hover{background-color:#4338ca1a}.dark .hover\:shadow-md:hover{box-shadow:0 4px 6px -1px #0006,0 2px 4px -2px #0006}.dark input[type=text],.dark input[type=search]{background-color:#141e2c;color:#c4cdd7;border-color:#38495e}.dark input[type=text]::-moz-placeholder,.dark input[type=search]::-moz-placeholder{color:#647385}.dark input[type=text]::placeholder,.dark input[type=search]::placeholder{color:#647385}.dark .react-flow__controls{box-shadow:0 1px 4px #00000080}.dark .react-flow__controls-button{background-color:#1e2a38;border-bottom-color:#2a3648;fill:#8d9bac;color:#8d9bac}.dark .react-flow__controls-button:hover{background-color:#2a3648}.dark .react-flow__controls-button svg{fill:#8d9bac}.dark .react-flow__minimap{background-color:#1e2a38;border:1px solid #2a3648}.dark .react-flow__background{background-color:#141e2c}.dark ::-webkit-scrollbar{width:8px;height:8px}.dark ::-webkit-scrollbar-track{background:#1e2a38}.dark ::-webkit-scrollbar-thumb{background:#38495e;border-radius:4px}.dark ::-webkit-scrollbar-thumb:hover{background:#4a5c72}.last\:border-0:last-child{border-width:0px}.focus-within\:border-indigo-300:focus-within{--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1))}.focus-within\:ring-1:focus-within{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-within\:ring-indigo-200:focus-within{--tw-ring-opacity: 1;--tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1))}.hover\:border-amber-300:hover{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:border-indigo-200:hover{--tw-border-opacity: 1;border-color:rgb(199 210 254 / var(--tw-border-opacity, 1))}.hover\:border-indigo-300:hover{--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1))}.hover\:border-red-300:hover{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.hover\:bg-amber-200:hover{--tw-bg-opacity: 1;background-color:rgb(253 230 138 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-50:hover{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.hover\:bg-red-200:hover{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.hover\:text-gray-500:hover{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-indigo-500:hover{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.hover\:text-indigo-700:hover{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.active\:scale-\[\.98\]:active{--tw-scale-x: .98;--tw-scale-y: .98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}.dark\:border-gray-600:is(.dark *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:border-indigo-500:is(.dark *){--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.dark\:bg-amber-900\/15:is(.dark *){background-color:#78350f26}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800\/60:is(.dark *){background-color:#1f293799}.dark\:bg-indigo-900\/30:is(.dark *){background-color:#312e814d}.dark\:bg-red-900\/20:is(.dark *){background-color:#7f1d1d33}.dark\:fill-gray-900:is(.dark *){fill:#111827}.dark\:text-gray-100:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.dark\:text-gray-600:is(.dark *){--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.dark\:text-indigo-300:is(.dark *){--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.dark\:text-indigo-400:is(.dark *){--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.dark\:shadow-gray-900\/50:is(.dark *){--tw-shadow-color: rgb(17 24 39 / .5);--tw-shadow: var(--tw-shadow-colored)}.dark\:hover\:border-gray-500:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.dark\:hover\:bg-gray-700:hover:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-indigo-900\/30:hover:is(.dark *){background-color:#312e814d}.dark\:hover\:text-gray-100:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:hover\:text-indigo-300:hover:is(.dark *){--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:table-cell{display:table-cell}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 768px){.md\:table-cell{display:table-cell}}@media (min-width: 1024px){.lg\:table-cell{display:table-cell}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}</style>
|
|
72
|
+
</head>
|
|
73
|
+
<body>
|
|
74
|
+
<div id="root"></div>
|
|
75
|
+
</body>
|
|
76
|
+
</html>
|