ima2-gen 1.1.4 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config.js +5 -0
- package/lib/db.js +41 -3
- package/lib/generationErrors.js +24 -0
- package/lib/historyList.js +14 -1
- package/lib/imageMetadata.js +107 -0
- package/lib/imageMetadataStore.js +67 -0
- package/lib/nodeStore.js +13 -1
- package/lib/oauthProxy.js +116 -12
- package/lib/refs.js +65 -2
- package/package.json +1 -1
- package/routes/generate.js +33 -2
- package/routes/history.js +42 -1
- package/routes/index.js +4 -0
- package/routes/metadata.js +71 -0
- package/routes/nodes.js +15 -1
- package/routes/prompts.js +379 -0
- package/ui/dist/assets/index-0SyTGr-u.js +25 -0
- package/ui/dist/assets/index-0SyTGr-u.js.map +1 -0
- package/ui/dist/assets/index-DfiV508Q.css +1 -0
- package/ui/dist/index.html +2 -2
- package/ui/dist/assets/index-DHeTnSPD.css +0 -1
- package/ui/dist/assets/index-fDTlOt4w.js +0 -23
- package/ui/dist/assets/index-fDTlOt4w.js.map +0 -1
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
(function(){const a=document.createElement("link").relList;if(a&&a.supports&&a.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))o(r);new MutationObserver(r=>{for(const c of r)if(c.type==="childList")for(const d of c.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&o(d)}).observe(document,{childList:!0,subtree:!0});function l(r){const c={};return r.integrity&&(c.integrity=r.integrity),r.referrerPolicy&&(c.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?c.credentials="include":r.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function o(r){if(r.ep)return;r.ep=!0;const c=l(r);fetch(r.href,c)}})();function L0(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Dd={exports:{}},po={};var Dg;function r1(){if(Dg)return po;Dg=1;var t=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function l(o,r,c){var d=null;if(c!==void 0&&(d=""+c),r.key!==void 0&&(d=""+r.key),"key"in r){c={};for(var m in r)m!=="key"&&(c[m]=r[m])}else c=r;return r=c.ref,{$$typeof:t,type:o,key:d,ref:r!==void 0?r:null,props:c}}return po.Fragment=a,po.jsx=l,po.jsxs=l,po}var Og;function c1(){return Og||(Og=1,Dd.exports=r1()),Dd.exports}var f=c1(),Od={exports:{}},Ee={};var Lg;function u1(){if(Lg)return Ee;Lg=1;var t=Symbol.for("react.transitional.element"),a=Symbol.for("react.portal"),l=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),c=Symbol.for("react.consumer"),d=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),v=Symbol.for("react.activity"),x=Symbol.iterator;function w(j){return j===null||typeof j!="object"?null:(j=x&&j[x]||j["@@iterator"],typeof j=="function"?j:null)}var S={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},M=Object.assign,R={};function z(j,U,Y){this.props=j,this.context=U,this.refs=R,this.updater=Y||S}z.prototype.isReactComponent={},z.prototype.setState=function(j,U){if(typeof j!="object"&&typeof j!="function"&&j!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,j,U,"setState")},z.prototype.forceUpdate=function(j){this.updater.enqueueForceUpdate(this,j,"forceUpdate")};function O(){}O.prototype=z.prototype;function C(j,U,Y){this.props=j,this.context=U,this.refs=R,this.updater=Y||S}var _=C.prototype=new O;_.constructor=C,M(_,z.prototype),_.isPureReactComponent=!0;var k=Array.isArray;function A(){}var B={H:null,A:null,T:null,S:null},X=Object.prototype.hasOwnProperty;function K(j,U,Y){var W=Y.ref;return{$$typeof:t,type:j,key:U,ref:W!==void 0?W:null,props:Y}}function de(j,U){return K(j.type,U,j.props)}function F(j){return typeof j=="object"&&j!==null&&j.$$typeof===t}function te(j){var U={"=":"=0",":":"=2"};return"$"+j.replace(/[=:]/g,function(Y){return U[Y]})}var ce=/\/+/g;function N(j,U){return typeof j=="object"&&j!==null&&j.key!=null?te(""+j.key):U.toString(36)}function D(j){switch(j.status){case"fulfilled":return j.value;case"rejected":throw j.reason;default:switch(typeof j.status=="string"?j.then(A,A):(j.status="pending",j.then(function(U){j.status==="pending"&&(j.status="fulfilled",j.value=U)},function(U){j.status==="pending"&&(j.status="rejected",j.reason=U)})),j.status){case"fulfilled":return j.value;case"rejected":throw j.reason}}throw j}function T(j,U,Y,W,fe){var $=typeof j;($==="undefined"||$==="boolean")&&(j=null);var le=!1;if(j===null)le=!0;else switch($){case"bigint":case"string":case"number":le=!0;break;case"object":switch(j.$$typeof){case t:case a:le=!0;break;case g:return le=j._init,T(le(j._payload),U,Y,W,fe)}}if(le)return fe=fe(j),le=W===""?"."+N(j,0):W,k(fe)?(Y="",le!=null&&(Y=le.replace(ce,"$&/")+"/"),T(fe,U,Y,"",function(be){return be})):fe!=null&&(F(fe)&&(fe=de(fe,Y+(fe.key==null||j&&j.key===fe.key?"":(""+fe.key).replace(ce,"$&/")+"/")+le)),U.push(fe)),1;le=0;var se=W===""?".":W+":";if(k(j))for(var ue=0;ue<j.length;ue++)W=j[ue],$=se+N(W,ue),le+=T(W,U,Y,$,fe);else if(ue=w(j),typeof ue=="function")for(j=ue.call(j),ue=0;!(W=j.next()).done;)W=W.value,$=se+N(W,ue++),le+=T(W,U,Y,$,fe);else if($==="object"){if(typeof j.then=="function")return T(D(j),U,Y,W,fe);throw U=String(j),Error("Objects are not valid as a React child (found: "+(U==="[object Object]"?"object with keys {"+Object.keys(j).join(", ")+"}":U)+"). If you meant to render a collection of children, use an array instead.")}return le}function L(j,U,Y){if(j==null)return j;var W=[],fe=0;return T(j,W,"","",function($){return U.call(Y,$,fe++)}),W}function G(j){if(j._status===-1){var U=j._result;U=U(),U.then(function(Y){(j._status===0||j._status===-1)&&(j._status=1,j._result=Y)},function(Y){(j._status===0||j._status===-1)&&(j._status=2,j._result=Y)}),j._status===-1&&(j._status=0,j._result=U)}if(j._status===1)return j._result.default;throw j._result}var Z=typeof reportError=="function"?reportError:function(j){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var U=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof j=="object"&&j!==null&&typeof j.message=="string"?String(j.message):String(j),error:j});if(!window.dispatchEvent(U))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",j);return}console.error(j)},ae={map:L,forEach:function(j,U,Y){L(j,function(){U.apply(this,arguments)},Y)},count:function(j){var U=0;return L(j,function(){U++}),U},toArray:function(j){return L(j,function(U){return U})||[]},only:function(j){if(!F(j))throw Error("React.Children.only expected to receive a single React element child.");return j}};return Ee.Activity=v,Ee.Children=ae,Ee.Component=z,Ee.Fragment=l,Ee.Profiler=r,Ee.PureComponent=C,Ee.StrictMode=o,Ee.Suspense=y,Ee.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=B,Ee.__COMPILER_RUNTIME={__proto__:null,c:function(j){return B.H.useMemoCache(j)}},Ee.cache=function(j){return function(){return j.apply(null,arguments)}},Ee.cacheSignal=function(){return null},Ee.cloneElement=function(j,U,Y){if(j==null)throw Error("The argument must be a React element, but you passed "+j+".");var W=M({},j.props),fe=j.key;if(U!=null)for($ in U.key!==void 0&&(fe=""+U.key),U)!X.call(U,$)||$==="key"||$==="__self"||$==="__source"||$==="ref"&&U.ref===void 0||(W[$]=U[$]);var $=arguments.length-2;if($===1)W.children=Y;else if(1<$){for(var le=Array($),se=0;se<$;se++)le[se]=arguments[se+2];W.children=le}return K(j.type,fe,W)},Ee.createContext=function(j){return j={$$typeof:d,_currentValue:j,_currentValue2:j,_threadCount:0,Provider:null,Consumer:null},j.Provider=j,j.Consumer={$$typeof:c,_context:j},j},Ee.createElement=function(j,U,Y){var W,fe={},$=null;if(U!=null)for(W in U.key!==void 0&&($=""+U.key),U)X.call(U,W)&&W!=="key"&&W!=="__self"&&W!=="__source"&&(fe[W]=U[W]);var le=arguments.length-2;if(le===1)fe.children=Y;else if(1<le){for(var se=Array(le),ue=0;ue<le;ue++)se[ue]=arguments[ue+2];fe.children=se}if(j&&j.defaultProps)for(W in le=j.defaultProps,le)fe[W]===void 0&&(fe[W]=le[W]);return K(j,$,fe)},Ee.createRef=function(){return{current:null}},Ee.forwardRef=function(j){return{$$typeof:m,render:j}},Ee.isValidElement=F,Ee.lazy=function(j){return{$$typeof:g,_payload:{_status:-1,_result:j},_init:G}},Ee.memo=function(j,U){return{$$typeof:p,type:j,compare:U===void 0?null:U}},Ee.startTransition=function(j){var U=B.T,Y={};B.T=Y;try{var W=j(),fe=B.S;fe!==null&&fe(Y,W),typeof W=="object"&&W!==null&&typeof W.then=="function"&&W.then(A,Z)}catch($){Z($)}finally{U!==null&&Y.types!==null&&(U.types=Y.types),B.T=U}},Ee.unstable_useCacheRefresh=function(){return B.H.useCacheRefresh()},Ee.use=function(j){return B.H.use(j)},Ee.useActionState=function(j,U,Y){return B.H.useActionState(j,U,Y)},Ee.useCallback=function(j,U){return B.H.useCallback(j,U)},Ee.useContext=function(j){return B.H.useContext(j)},Ee.useDebugValue=function(){},Ee.useDeferredValue=function(j,U){return B.H.useDeferredValue(j,U)},Ee.useEffect=function(j,U){return B.H.useEffect(j,U)},Ee.useEffectEvent=function(j){return B.H.useEffectEvent(j)},Ee.useId=function(){return B.H.useId()},Ee.useImperativeHandle=function(j,U,Y){return B.H.useImperativeHandle(j,U,Y)},Ee.useInsertionEffect=function(j,U){return B.H.useInsertionEffect(j,U)},Ee.useLayoutEffect=function(j,U){return B.H.useLayoutEffect(j,U)},Ee.useMemo=function(j,U){return B.H.useMemo(j,U)},Ee.useOptimistic=function(j,U){return B.H.useOptimistic(j,U)},Ee.useReducer=function(j,U,Y){return B.H.useReducer(j,U,Y)},Ee.useRef=function(j){return B.H.useRef(j)},Ee.useState=function(j){return B.H.useState(j)},Ee.useSyncExternalStore=function(j,U,Y){return B.H.useSyncExternalStore(j,U,Y)},Ee.useTransition=function(){return B.H.useTransition()},Ee.version="19.2.5",Ee}var Hg;function Go(){return Hg||(Hg=1,Od.exports=u1()),Od.exports}var H=Go();const No=L0(H);var Ld={exports:{}},go={},Hd={exports:{}},Id={};var Ig;function d1(){return Ig||(Ig=1,(function(t){function a(T,L){var G=T.length;T.push(L);e:for(;0<G;){var Z=G-1>>>1,ae=T[Z];if(0<r(ae,L))T[Z]=L,T[G]=ae,G=Z;else break e}}function l(T){return T.length===0?null:T[0]}function o(T){if(T.length===0)return null;var L=T[0],G=T.pop();if(G!==L){T[0]=G;e:for(var Z=0,ae=T.length,j=ae>>>1;Z<j;){var U=2*(Z+1)-1,Y=T[U],W=U+1,fe=T[W];if(0>r(Y,G))W<ae&&0>r(fe,Y)?(T[Z]=fe,T[W]=G,Z=W):(T[Z]=Y,T[U]=G,Z=U);else if(W<ae&&0>r(fe,G))T[Z]=fe,T[W]=G,Z=W;else break e}}return L}function r(T,L){var G=T.sortIndex-L.sortIndex;return G!==0?G:T.id-L.id}if(t.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var c=performance;t.unstable_now=function(){return c.now()}}else{var d=Date,m=d.now();t.unstable_now=function(){return d.now()-m}}var y=[],p=[],g=1,v=null,x=3,w=!1,S=!1,M=!1,R=!1,z=typeof setTimeout=="function"?setTimeout:null,O=typeof clearTimeout=="function"?clearTimeout:null,C=typeof setImmediate<"u"?setImmediate:null;function _(T){for(var L=l(p);L!==null;){if(L.callback===null)o(p);else if(L.startTime<=T)o(p),L.sortIndex=L.expirationTime,a(y,L);else break;L=l(p)}}function k(T){if(M=!1,_(T),!S)if(l(y)!==null)S=!0,A||(A=!0,te());else{var L=l(p);L!==null&&D(k,L.startTime-T)}}var A=!1,B=-1,X=5,K=-1;function de(){return R?!0:!(t.unstable_now()-K<X)}function F(){if(R=!1,A){var T=t.unstable_now();K=T;var L=!0;try{e:{S=!1,M&&(M=!1,O(B),B=-1),w=!0;var G=x;try{t:{for(_(T),v=l(y);v!==null&&!(v.expirationTime>T&&de());){var Z=v.callback;if(typeof Z=="function"){v.callback=null,x=v.priorityLevel;var ae=Z(v.expirationTime<=T);if(T=t.unstable_now(),typeof ae=="function"){v.callback=ae,_(T),L=!0;break t}v===l(y)&&o(y),_(T)}else o(y);v=l(y)}if(v!==null)L=!0;else{var j=l(p);j!==null&&D(k,j.startTime-T),L=!1}}break e}finally{v=null,x=G,w=!1}L=void 0}}finally{L?te():A=!1}}}var te;if(typeof C=="function")te=function(){C(F)};else if(typeof MessageChannel<"u"){var ce=new MessageChannel,N=ce.port2;ce.port1.onmessage=F,te=function(){N.postMessage(null)}}else te=function(){z(F,0)};function D(T,L){B=z(function(){T(t.unstable_now())},L)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(T){T.callback=null},t.unstable_forceFrameRate=function(T){0>T||125<T?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):X=0<T?Math.floor(1e3/T):5},t.unstable_getCurrentPriorityLevel=function(){return x},t.unstable_next=function(T){switch(x){case 1:case 2:case 3:var L=3;break;default:L=x}var G=x;x=L;try{return T()}finally{x=G}},t.unstable_requestPaint=function(){R=!0},t.unstable_runWithPriority=function(T,L){switch(T){case 1:case 2:case 3:case 4:case 5:break;default:T=3}var G=x;x=T;try{return L()}finally{x=G}},t.unstable_scheduleCallback=function(T,L,G){var Z=t.unstable_now();switch(typeof G=="object"&&G!==null?(G=G.delay,G=typeof G=="number"&&0<G?Z+G:Z):G=Z,T){case 1:var ae=-1;break;case 2:ae=250;break;case 5:ae=1073741823;break;case 4:ae=1e4;break;default:ae=5e3}return ae=G+ae,T={id:g++,callback:L,priorityLevel:T,startTime:G,expirationTime:ae,sortIndex:-1},G>Z?(T.sortIndex=G,a(p,T),l(y)===null&&T===l(p)&&(M?(O(B),B=-1):M=!0,D(k,G-Z))):(T.sortIndex=ae,a(y,T),S||w||(S=!0,A||(A=!0,te()))),T},t.unstable_shouldYield=de,t.unstable_wrapCallback=function(T){var L=x;return function(){var G=x;x=L;try{return T.apply(this,arguments)}finally{x=G}}}})(Id)),Id}var kg;function f1(){return kg||(kg=1,Hd.exports=d1()),Hd.exports}var kd={exports:{}},vt={};var Bg;function h1(){if(Bg)return vt;Bg=1;var t=Go();function a(y){var p="https://react.dev/errors/"+y;if(1<arguments.length){p+="?args[]="+encodeURIComponent(arguments[1]);for(var g=2;g<arguments.length;g++)p+="&args[]="+encodeURIComponent(arguments[g])}return"Minified React error #"+y+"; visit "+p+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function l(){}var o={d:{f:l,r:function(){throw Error(a(522))},D:l,C:l,L:l,m:l,X:l,S:l,M:l},p:0,findDOMNode:null},r=Symbol.for("react.portal");function c(y,p,g){var v=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:r,key:v==null?null:""+v,children:y,containerInfo:p,implementation:g}}var d=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function m(y,p){if(y==="font")return"";if(typeof p=="string")return p==="use-credentials"?p:""}return vt.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=o,vt.createPortal=function(y,p){var g=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!p||p.nodeType!==1&&p.nodeType!==9&&p.nodeType!==11)throw Error(a(299));return c(y,p,null,g)},vt.flushSync=function(y){var p=d.T,g=o.p;try{if(d.T=null,o.p=2,y)return y()}finally{d.T=p,o.p=g,o.d.f()}},vt.preconnect=function(y,p){typeof y=="string"&&(p?(p=p.crossOrigin,p=typeof p=="string"?p==="use-credentials"?p:"":void 0):p=null,o.d.C(y,p))},vt.prefetchDNS=function(y){typeof y=="string"&&o.d.D(y)},vt.preinit=function(y,p){if(typeof y=="string"&&p&&typeof p.as=="string"){var g=p.as,v=m(g,p.crossOrigin),x=typeof p.integrity=="string"?p.integrity:void 0,w=typeof p.fetchPriority=="string"?p.fetchPriority:void 0;g==="style"?o.d.S(y,typeof p.precedence=="string"?p.precedence:void 0,{crossOrigin:v,integrity:x,fetchPriority:w}):g==="script"&&o.d.X(y,{crossOrigin:v,integrity:x,fetchPriority:w,nonce:typeof p.nonce=="string"?p.nonce:void 0})}},vt.preinitModule=function(y,p){if(typeof y=="string")if(typeof p=="object"&&p!==null){if(p.as==null||p.as==="script"){var g=m(p.as,p.crossOrigin);o.d.M(y,{crossOrigin:g,integrity:typeof p.integrity=="string"?p.integrity:void 0,nonce:typeof p.nonce=="string"?p.nonce:void 0})}}else p==null&&o.d.M(y)},vt.preload=function(y,p){if(typeof y=="string"&&typeof p=="object"&&p!==null&&typeof p.as=="string"){var g=p.as,v=m(g,p.crossOrigin);o.d.L(y,g,{crossOrigin:v,integrity:typeof p.integrity=="string"?p.integrity:void 0,nonce:typeof p.nonce=="string"?p.nonce:void 0,type:typeof p.type=="string"?p.type:void 0,fetchPriority:typeof p.fetchPriority=="string"?p.fetchPriority:void 0,referrerPolicy:typeof p.referrerPolicy=="string"?p.referrerPolicy:void 0,imageSrcSet:typeof p.imageSrcSet=="string"?p.imageSrcSet:void 0,imageSizes:typeof p.imageSizes=="string"?p.imageSizes:void 0,media:typeof p.media=="string"?p.media:void 0})}},vt.preloadModule=function(y,p){if(typeof y=="string")if(p){var g=m(p.as,p.crossOrigin);o.d.m(y,{as:typeof p.as=="string"&&p.as!=="script"?p.as:void 0,crossOrigin:g,integrity:typeof p.integrity=="string"?p.integrity:void 0})}else o.d.m(y)},vt.requestFormReset=function(y){o.d.r(y)},vt.unstable_batchedUpdates=function(y,p){return y(p)},vt.useFormState=function(y,p,g){return d.H.useFormState(y,p,g)},vt.useFormStatus=function(){return d.H.useHostTransitionStatus()},vt.version="19.2.5",vt}var Ug;function H0(){if(Ug)return kd.exports;Ug=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(a){console.error(a)}}return t(),kd.exports=h1(),kd.exports}var Gg;function m1(){if(Gg)return go;Gg=1;var t=f1(),a=Go(),l=H0();function o(e){var n="https://react.dev/errors/"+e;if(1<arguments.length){n+="?args[]="+encodeURIComponent(arguments[1]);for(var i=2;i<arguments.length;i++)n+="&args[]="+encodeURIComponent(arguments[i])}return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function c(e){var n=e,i=e;if(e.alternate)for(;n.return;)n=n.return;else{e=n;do n=e,(n.flags&4098)!==0&&(i=n.return),e=n.return;while(e)}return n.tag===3?i:null}function d(e){if(e.tag===13){var n=e.memoizedState;if(n===null&&(e=e.alternate,e!==null&&(n=e.memoizedState)),n!==null)return n.dehydrated}return null}function m(e){if(e.tag===31){var n=e.memoizedState;if(n===null&&(e=e.alternate,e!==null&&(n=e.memoizedState)),n!==null)return n.dehydrated}return null}function y(e){if(c(e)!==e)throw Error(o(188))}function p(e){var n=e.alternate;if(!n){if(n=c(e),n===null)throw Error(o(188));return n!==e?null:e}for(var i=e,s=n;;){var u=i.return;if(u===null)break;var h=u.alternate;if(h===null){if(s=u.return,s!==null){i=s;continue}break}if(u.child===h.child){for(h=u.child;h;){if(h===i)return y(u),e;if(h===s)return y(u),n;h=h.sibling}throw Error(o(188))}if(i.return!==s.return)i=u,s=h;else{for(var b=!1,E=u.child;E;){if(E===i){b=!0,i=u,s=h;break}if(E===s){b=!0,s=u,i=h;break}E=E.sibling}if(!b){for(E=h.child;E;){if(E===i){b=!0,i=h,s=u;break}if(E===s){b=!0,s=h,i=u;break}E=E.sibling}if(!b)throw Error(o(189))}}if(i.alternate!==s)throw Error(o(190))}if(i.tag!==3)throw Error(o(188));return i.stateNode.current===i?e:n}function g(e){var n=e.tag;if(n===5||n===26||n===27||n===6)return e;for(e=e.child;e!==null;){if(n=g(e),n!==null)return n;e=e.sibling}return null}var v=Object.assign,x=Symbol.for("react.element"),w=Symbol.for("react.transitional.element"),S=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),R=Symbol.for("react.strict_mode"),z=Symbol.for("react.profiler"),O=Symbol.for("react.consumer"),C=Symbol.for("react.context"),_=Symbol.for("react.forward_ref"),k=Symbol.for("react.suspense"),A=Symbol.for("react.suspense_list"),B=Symbol.for("react.memo"),X=Symbol.for("react.lazy"),K=Symbol.for("react.activity"),de=Symbol.for("react.memo_cache_sentinel"),F=Symbol.iterator;function te(e){return e===null||typeof e!="object"?null:(e=F&&e[F]||e["@@iterator"],typeof e=="function"?e:null)}var ce=Symbol.for("react.client.reference");function N(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ce?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case M:return"Fragment";case z:return"Profiler";case R:return"StrictMode";case k:return"Suspense";case A:return"SuspenseList";case K:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case S:return"Portal";case C:return e.displayName||"Context";case O:return(e._context.displayName||"Context")+".Consumer";case _:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case B:return n=e.displayName||null,n!==null?n:N(e.type)||"Memo";case X:n=e._payload,e=e._init;try{return N(e(n))}catch{}}return null}var D=Array.isArray,T=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,L=l.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,G={pending:!1,data:null,method:null,action:null},Z=[],ae=-1;function j(e){return{current:e}}function U(e){0>ae||(e.current=Z[ae],Z[ae]=null,ae--)}function Y(e,n){ae++,Z[ae]=e.current,e.current=n}var W=j(null),fe=j(null),$=j(null),le=j(null);function se(e,n){switch(Y($,n),Y(fe,e),Y(W,null),n.nodeType){case 9:case 11:e=(e=n.documentElement)&&(e=e.namespaceURI)?ng(e):0;break;default:if(e=n.tagName,n=n.namespaceURI)n=ng(n),e=ag(n,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}U(W),Y(W,e)}function ue(){U(W),U(fe),U($)}function be(e){e.memoizedState!==null&&Y(le,e);var n=W.current,i=ag(n,e.type);n!==i&&(Y(fe,e),Y(W,i))}function ve(e){fe.current===e&&(U(W),U(fe)),le.current===e&&(U(le),uo._currentValue=G)}var xe,_e;function je(e){if(xe===void 0)try{throw Error()}catch(i){var n=i.stack.trim().match(/\n( *(at )?)/);xe=n&&n[1]||"",_e=-1<i.stack.indexOf(`
|
|
2
|
+
at`)?" (<anonymous>)":-1<i.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
3
|
+
`+xe+e+_e}var Ge=!1;function ke(e,n){if(!e||Ge)return"";Ge=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var s={DetermineComponentFrameRoot:function(){try{if(n){var re=function(){throw Error()};if(Object.defineProperty(re.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(re,[])}catch(ne){var ee=ne}Reflect.construct(e,[],re)}else{try{re.call()}catch(ne){ee=ne}e.call(re.prototype)}}else{try{throw Error()}catch(ne){ee=ne}(re=e())&&typeof re.catch=="function"&&re.catch(function(){})}}catch(ne){if(ne&&ee&&typeof ne.stack=="string")return[ne.stack,ee.stack]}return[null,null]}};s.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var u=Object.getOwnPropertyDescriptor(s.DetermineComponentFrameRoot,"name");u&&u.configurable&&Object.defineProperty(s.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var h=s.DetermineComponentFrameRoot(),b=h[0],E=h[1];if(b&&E){var I=b.split(`
|
|
4
|
+
`),J=E.split(`
|
|
5
|
+
`);for(u=s=0;s<I.length&&!I[s].includes("DetermineComponentFrameRoot");)s++;for(;u<J.length&&!J[u].includes("DetermineComponentFrameRoot");)u++;if(s===I.length||u===J.length)for(s=I.length-1,u=J.length-1;1<=s&&0<=u&&I[s]!==J[u];)u--;for(;1<=s&&0<=u;s--,u--)if(I[s]!==J[u]){if(s!==1||u!==1)do if(s--,u--,0>u||I[s]!==J[u]){var ie=`
|
|
6
|
+
`+I[s].replace(" at new "," at ");return e.displayName&&ie.includes("<anonymous>")&&(ie=ie.replace("<anonymous>",e.displayName)),ie}while(1<=s&&0<=u);break}}}finally{Ge=!1,Error.prepareStackTrace=i}return(i=e?e.displayName||e.name:"")?je(i):""}function ut(e,n){switch(e.tag){case 26:case 27:case 5:return je(e.type);case 16:return je("Lazy");case 13:return e.child!==n&&n!==null?je("Suspense Fallback"):je("Suspense");case 19:return je("SuspenseList");case 0:case 15:return ke(e.type,!1);case 11:return ke(e.type.render,!1);case 1:return ke(e.type,!0);case 31:return je("Activity");default:return""}}function Zt(e){try{var n="",i=null;do n+=ut(e,i),i=e,e=e.return;while(e);return n}catch(s){return`
|
|
7
|
+
Error generating stack: `+s.message+`
|
|
8
|
+
`+s.stack}}var zt=Object.prototype.hasOwnProperty,Kt=t.unstable_scheduleCallback,xn=t.unstable_cancelCallback,Aa=t.unstable_shouldYield,Ma=t.unstable_requestPaint,ft=t.unstable_now,mi=t.unstable_getCurrentPriorityLevel,bn=t.unstable_ImmediatePriority,Xn=t.unstable_UserBlockingPriority,ja=t.unstable_NormalPriority,gc=t.unstable_LowPriority,pi=t.unstable_IdlePriority,yc=t.log,vc=t.unstable_setDisableYieldValue,za=null,xt=null;function rn(e){if(typeof yc=="function"&&vc(e),xt&&typeof xt.setStrictMode=="function")try{xt.setStrictMode(za,e)}catch{}}var bt=Math.clz32?Math.clz32:Sc,xc=Math.log,bc=Math.LN2;function Sc(e){return e>>>=0,e===0?32:31-(xc(e)/bc|0)|0}var gi=256,yi=262144,vi=4194304;function Sn(e){var n=e&42;if(n!==0)return n;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:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function xi(e,n,i){var s=e.pendingLanes;if(s===0)return 0;var u=0,h=e.suspendedLanes,b=e.pingedLanes;e=e.warmLanes;var E=s&134217727;return E!==0?(s=E&~h,s!==0?u=Sn(s):(b&=E,b!==0?u=Sn(b):i||(i=E&~e,i!==0&&(u=Sn(i))))):(E=s&~h,E!==0?u=Sn(E):b!==0?u=Sn(b):i||(i=s&~e,i!==0&&(u=Sn(i)))),u===0?0:n!==0&&n!==u&&(n&h)===0&&(h=u&-u,i=n&-n,h>=i||h===32&&(i&4194048)!==0)?n:u}function Ra(e,n){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&n)===0}function wc(e,n){switch(e){case 1:case 2:case 4:case 8:case 64:return n+250;case 16:case 32: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 n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Zo(){var e=vi;return vi<<=1,(vi&62914560)===0&&(vi=4194304),e}function Sl(e){for(var n=[],i=0;31>i;i++)n.push(e);return n}function Da(e,n){e.pendingLanes|=n,n!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Nc(e,n,i,s,u,h){var b=e.pendingLanes;e.pendingLanes=i,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=i,e.entangledLanes&=i,e.errorRecoveryDisabledLanes&=i,e.shellSuspendCounter=0;var E=e.entanglements,I=e.expirationTimes,J=e.hiddenUpdates;for(i=b&~i;0<i;){var ie=31-bt(i),re=1<<ie;E[ie]=0,I[ie]=-1;var ee=J[ie];if(ee!==null)for(J[ie]=null,ie=0;ie<ee.length;ie++){var ne=ee[ie];ne!==null&&(ne.lane&=-536870913)}i&=~re}s!==0&&Ko(e,s,0),h!==0&&u===0&&e.tag!==0&&(e.suspendedLanes|=h&~(b&~n))}function Ko(e,n,i){e.pendingLanes|=n,e.suspendedLanes&=~n;var s=31-bt(n);e.entangledLanes|=n,e.entanglements[s]=e.entanglements[s]|1073741824|i&261930}function Qo(e,n){var i=e.entangledLanes|=n;for(e=e.entanglements;i;){var s=31-bt(i),u=1<<s;u&n|e[s]&n&&(e[s]|=n),i&=~u}}function Jo(e,n){var i=n&-n;return i=(i&42)!==0?1:wl(i),(i&(e.suspendedLanes|n))!==0?0:i}function wl(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;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:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function Nl(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function Wo(){var e=L.p;return e!==0?e:(e=window.event,e===void 0?32:Cg(e.type))}function es(e,n){var i=L.p;try{return L.p=e,n()}finally{L.p=i}}var cn=Math.random().toString(36).slice(2),rt="__reactFiber$"+cn,yt="__reactProps$"+cn,wn="__reactContainer$"+cn,bi="__reactEvents$"+cn,ts="__reactListeners$"+cn,_c="__reactHandles$"+cn,ns="__reactResources$"+cn,Oa="__reactMarker$"+cn;function _l(e){delete e[rt],delete e[yt],delete e[bi],delete e[ts],delete e[_c]}function Pn(e){var n=e[rt];if(n)return n;for(var i=e.parentNode;i;){if(n=i[wn]||i[rt]){if(i=n.alternate,n.child!==null||i!==null&&i.child!==null)for(e=ug(e);e!==null;){if(i=e[rt])return i;e=ug(e)}return n}e=i,i=e.parentNode}return null}function Fn(e){if(e=e[rt]||e[wn]){var n=e.tag;if(n===5||n===6||n===13||n===31||n===26||n===27||n===3)return e}return null}function Zn(e){var n=e.tag;if(n===5||n===26||n===27||n===6)return e.stateNode;throw Error(o(33))}function Kn(e){var n=e[ns];return n||(n=e[ns]={hoistableStyles:new Map,hoistableScripts:new Map}),n}function nt(e){e[Oa]=!0}var as=new Set,is={};function Nn(e,n){Qn(e,n),Qn(e+"Capture",n)}function Qn(e,n){for(is[e]=n,e=0;e<n.length;e++)as.add(n[e])}var Ec=RegExp("^[: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]*$"),El={},ls={};function Cc(e){return zt.call(ls,e)?!0:zt.call(El,e)?!1:Ec.test(e)?ls[e]=!0:(El[e]=!0,!1)}function Si(e,n,i){if(Cc(n))if(i===null)e.removeAttribute(n);else{switch(typeof i){case"undefined":case"function":case"symbol":e.removeAttribute(n);return;case"boolean":var s=n.toLowerCase().slice(0,5);if(s!=="data-"&&s!=="aria-"){e.removeAttribute(n);return}}e.setAttribute(n,""+i)}}function wi(e,n,i){if(i===null)e.removeAttribute(n);else{switch(typeof i){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(n);return}e.setAttribute(n,""+i)}}function Qt(e,n,i,s){if(s===null)e.removeAttribute(i);else{switch(typeof s){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(i);return}e.setAttributeNS(n,i,""+s)}}function wt(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function os(e){var n=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function Tc(e,n,i){var s=Object.getOwnPropertyDescriptor(e.constructor.prototype,n);if(!e.hasOwnProperty(n)&&typeof s<"u"&&typeof s.get=="function"&&typeof s.set=="function"){var u=s.get,h=s.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return u.call(this)},set:function(b){i=""+b,h.call(this,b)}}),Object.defineProperty(e,n,{enumerable:s.enumerable}),{getValue:function(){return i},setValue:function(b){i=""+b},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}function Ni(e){if(!e._valueTracker){var n=os(e)?"checked":"value";e._valueTracker=Tc(e,n,""+e[n])}}function ss(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var i=n.getValue(),s="";return e&&(s=os(e)?e.checked?"true":"false":e.value),e=s,e!==i?(n.setValue(e),!0):!1}function La(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}}var Ac=/[\n"\\]/g;function Nt(e){return e.replace(Ac,function(n){return"\\"+n.charCodeAt(0).toString(16)+" "})}function Ha(e,n,i,s,u,h,b,E){e.name="",b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"?e.type=b:e.removeAttribute("type"),n!=null?b==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+wt(n)):e.value!==""+wt(n)&&(e.value=""+wt(n)):b!=="submit"&&b!=="reset"||e.removeAttribute("value"),n!=null?Cl(e,b,wt(n)):i!=null?Cl(e,b,wt(i)):s!=null&&e.removeAttribute("value"),u==null&&h!=null&&(e.defaultChecked=!!h),u!=null&&(e.checked=u&&typeof u!="function"&&typeof u!="symbol"),E!=null&&typeof E!="function"&&typeof E!="symbol"&&typeof E!="boolean"?e.name=""+wt(E):e.removeAttribute("name")}function rs(e,n,i,s,u,h,b,E){if(h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"&&(e.type=h),n!=null||i!=null){if(!(h!=="submit"&&h!=="reset"||n!=null)){Ni(e);return}i=i!=null?""+wt(i):"",n=n!=null?""+wt(n):i,E||n===e.value||(e.value=n),e.defaultValue=n}s=s??u,s=typeof s!="function"&&typeof s!="symbol"&&!!s,e.checked=E?e.checked:!!s,e.defaultChecked=!!s,b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"&&(e.name=b),Ni(e)}function Cl(e,n,i){n==="number"&&La(e.ownerDocument)===e||e.defaultValue===""+i||(e.defaultValue=""+i)}function _n(e,n,i,s){if(e=e.options,n){n={};for(var u=0;u<i.length;u++)n["$"+i[u]]=!0;for(i=0;i<e.length;i++)u=n.hasOwnProperty("$"+e[i].value),e[i].selected!==u&&(e[i].selected=u),u&&s&&(e[i].defaultSelected=!0)}else{for(i=""+wt(i),n=null,u=0;u<e.length;u++){if(e[u].value===i){e[u].selected=!0,s&&(e[u].defaultSelected=!0);return}n!==null||e[u].disabled||(n=e[u])}n!==null&&(n.selected=!0)}}function Qf(e,n,i){if(n!=null&&(n=""+wt(n),n!==e.value&&(e.value=n),i==null)){e.defaultValue!==n&&(e.defaultValue=n);return}e.defaultValue=i!=null?""+wt(i):""}function Jf(e,n,i,s){if(n==null){if(s!=null){if(i!=null)throw Error(o(92));if(D(s)){if(1<s.length)throw Error(o(93));s=s[0]}i=s}i==null&&(i=""),n=i}i=wt(n),e.defaultValue=i,s=e.textContent,s===i&&s!==""&&s!==null&&(e.value=s),Ni(e)}function _i(e,n){if(n){var i=e.firstChild;if(i&&i===e.lastChild&&i.nodeType===3){i.nodeValue=n;return}}e.textContent=n}var ab=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function Wf(e,n,i){var s=n.indexOf("--")===0;i==null||typeof i=="boolean"||i===""?s?e.setProperty(n,""):n==="float"?e.cssFloat="":e[n]="":s?e.setProperty(n,i):typeof i!="number"||i===0||ab.has(n)?n==="float"?e.cssFloat=i:e[n]=(""+i).trim():e[n]=i+"px"}function eh(e,n,i){if(n!=null&&typeof n!="object")throw Error(o(62));if(e=e.style,i!=null){for(var s in i)!i.hasOwnProperty(s)||n!=null&&n.hasOwnProperty(s)||(s.indexOf("--")===0?e.setProperty(s,""):s==="float"?e.cssFloat="":e[s]="");for(var u in n)s=n[u],n.hasOwnProperty(u)&&i[u]!==s&&Wf(e,u,s)}else for(var h in n)n.hasOwnProperty(h)&&Wf(e,h,n[h])}function Mc(e){if(e.indexOf("-")===-1)return!1;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 ib=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),lb=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function cs(e){return lb.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function En(){}var jc=null;function zc(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ei=null,Ci=null;function th(e){var n=Fn(e);if(n&&(e=n.stateNode)){var i=e[yt]||null;e:switch(e=n.stateNode,n.type){case"input":if(Ha(e,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name),n=i.name,i.type==="radio"&&n!=null){for(i=e;i.parentNode;)i=i.parentNode;for(i=i.querySelectorAll('input[name="'+Nt(""+n)+'"][type="radio"]'),n=0;n<i.length;n++){var s=i[n];if(s!==e&&s.form===e.form){var u=s[yt]||null;if(!u)throw Error(o(90));Ha(s,u.value,u.defaultValue,u.defaultValue,u.checked,u.defaultChecked,u.type,u.name)}}for(n=0;n<i.length;n++)s=i[n],s.form===e.form&&ss(s)}break e;case"textarea":Qf(e,i.value,i.defaultValue);break e;case"select":n=i.value,n!=null&&_n(e,!!i.multiple,n,!1)}}}var Rc=!1;function nh(e,n,i){if(Rc)return e(n,i);Rc=!0;try{var s=e(n);return s}finally{if(Rc=!1,(Ei!==null||Ci!==null)&&(Ks(),Ei&&(n=Ei,e=Ci,Ci=Ei=null,th(n),e)))for(n=0;n<e.length;n++)th(e[n])}}function Tl(e,n){var i=e.stateNode;if(i===null)return null;var s=i[yt]||null;if(s===null)return null;i=s[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(s=!s.disabled)||(e=e.type,s=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!s;break e;default:e=!1}if(e)return null;if(i&&typeof i!="function")throw Error(o(231,n,typeof i));return i}var Cn=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Dc=!1;if(Cn)try{var Al={};Object.defineProperty(Al,"passive",{get:function(){Dc=!0}}),window.addEventListener("test",Al,Al),window.removeEventListener("test",Al,Al)}catch{Dc=!1}var Jn=null,Oc=null,us=null;function ah(){if(us)return us;var e,n=Oc,i=n.length,s,u="value"in Jn?Jn.value:Jn.textContent,h=u.length;for(e=0;e<i&&n[e]===u[e];e++);var b=i-e;for(s=1;s<=b&&n[i-s]===u[h-s];s++);return us=u.slice(e,1<s?1-s:void 0)}function ds(e){var n=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&n===13&&(e=13)):e=n,e===10&&(e=13),32<=e||e===13?e:0}function fs(){return!0}function ih(){return!1}function _t(e){function n(i,s,u,h,b){this._reactName=i,this._targetInst=u,this.type=s,this.nativeEvent=h,this.target=b,this.currentTarget=null;for(var E in e)e.hasOwnProperty(E)&&(i=e[E],this[E]=i?i(h):h[E]);return this.isDefaultPrevented=(h.defaultPrevented!=null?h.defaultPrevented:h.returnValue===!1)?fs:ih,this.isPropagationStopped=ih,this}return v(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var i=this.nativeEvent;i&&(i.preventDefault?i.preventDefault():typeof i.returnValue!="unknown"&&(i.returnValue=!1),this.isDefaultPrevented=fs)},stopPropagation:function(){var i=this.nativeEvent;i&&(i.stopPropagation?i.stopPropagation():typeof i.cancelBubble!="unknown"&&(i.cancelBubble=!0),this.isPropagationStopped=fs)},persist:function(){},isPersistent:fs}),n}var Ia={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},hs=_t(Ia),Ml=v({},Ia,{view:0,detail:0}),ob=_t(Ml),Lc,Hc,jl,ms=v({},Ml,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:kc,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!==jl&&(jl&&e.type==="mousemove"?(Lc=e.screenX-jl.screenX,Hc=e.screenY-jl.screenY):Hc=Lc=0,jl=e),Lc)},movementY:function(e){return"movementY"in e?e.movementY:Hc}}),lh=_t(ms),sb=v({},ms,{dataTransfer:0}),rb=_t(sb),cb=v({},Ml,{relatedTarget:0}),Ic=_t(cb),ub=v({},Ia,{animationName:0,elapsedTime:0,pseudoElement:0}),db=_t(ub),fb=v({},Ia,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),hb=_t(fb),mb=v({},Ia,{data:0}),oh=_t(mb),pb={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},gb={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"},yb={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function vb(e){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(e):(e=yb[e])?!!n[e]:!1}function kc(){return vb}var xb=v({},Ml,{key:function(e){if(e.key){var n=pb[e.key]||e.key;if(n!=="Unidentified")return n}return e.type==="keypress"?(e=ds(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?gb[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:kc,charCode:function(e){return e.type==="keypress"?ds(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?ds(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),bb=_t(xb),Sb=v({},ms,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),sh=_t(Sb),wb=v({},Ml,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:kc}),Nb=_t(wb),_b=v({},Ia,{propertyName:0,elapsedTime:0,pseudoElement:0}),Eb=_t(_b),Cb=v({},ms,{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}),Tb=_t(Cb),Ab=v({},Ia,{newState:0,oldState:0}),Mb=_t(Ab),jb=[9,13,27,32],Bc=Cn&&"CompositionEvent"in window,zl=null;Cn&&"documentMode"in document&&(zl=document.documentMode);var zb=Cn&&"TextEvent"in window&&!zl,rh=Cn&&(!Bc||zl&&8<zl&&11>=zl),ch=" ",uh=!1;function dh(e,n){switch(e){case"keyup":return jb.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function fh(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ti=!1;function Rb(e,n){switch(e){case"compositionend":return fh(n);case"keypress":return n.which!==32?null:(uh=!0,ch);case"textInput":return e=n.data,e===ch&&uh?null:e;default:return null}}function Db(e,n){if(Ti)return e==="compositionend"||!Bc&&dh(e,n)?(e=ah(),us=Oc=Jn=null,Ti=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return rh&&n.locale!=="ko"?null:n.data;default:return null}}var Ob={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 hh(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n==="input"?!!Ob[e.type]:n==="textarea"}function mh(e,n,i,s){Ei?Ci?Ci.push(s):Ci=[s]:Ei=s,n=ar(n,"onChange"),0<n.length&&(i=new hs("onChange","change",null,i,s),e.push({event:i,listeners:n}))}var Rl=null,Dl=null;function Lb(e){Kp(e,0)}function ps(e){var n=Zn(e);if(ss(n))return e}function ph(e,n){if(e==="change")return n}var gh=!1;if(Cn){var Uc;if(Cn){var Gc="oninput"in document;if(!Gc){var yh=document.createElement("div");yh.setAttribute("oninput","return;"),Gc=typeof yh.oninput=="function"}Uc=Gc}else Uc=!1;gh=Uc&&(!document.documentMode||9<document.documentMode)}function vh(){Rl&&(Rl.detachEvent("onpropertychange",xh),Dl=Rl=null)}function xh(e){if(e.propertyName==="value"&&ps(Dl)){var n=[];mh(n,Dl,e,zc(e)),nh(Lb,n)}}function Hb(e,n,i){e==="focusin"?(vh(),Rl=n,Dl=i,Rl.attachEvent("onpropertychange",xh)):e==="focusout"&&vh()}function Ib(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return ps(Dl)}function kb(e,n){if(e==="click")return ps(n)}function Bb(e,n){if(e==="input"||e==="change")return ps(n)}function Ub(e,n){return e===n&&(e!==0||1/e===1/n)||e!==e&&n!==n}var Rt=typeof Object.is=="function"?Object.is:Ub;function Ol(e,n){if(Rt(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;var i=Object.keys(e),s=Object.keys(n);if(i.length!==s.length)return!1;for(s=0;s<i.length;s++){var u=i[s];if(!zt.call(n,u)||!Rt(e[u],n[u]))return!1}return!0}function bh(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Sh(e,n){var i=bh(e);e=0;for(var s;i;){if(i.nodeType===3){if(s=e+i.textContent.length,e<=n&&s>=n)return{node:i,offset:n-e};e=s}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=bh(i)}}function wh(e,n){return e&&n?e===n?!0:e&&e.nodeType===3?!1:n&&n.nodeType===3?wh(e,n.parentNode):"contains"in e?e.contains(n):e.compareDocumentPosition?!!(e.compareDocumentPosition(n)&16):!1:!1}function Nh(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var n=La(e.document);n instanceof e.HTMLIFrameElement;){try{var i=typeof n.contentWindow.location.href=="string"}catch{i=!1}if(i)e=n.contentWindow;else break;n=La(e.document)}return n}function qc(e){var n=e&&e.nodeName&&e.nodeName.toLowerCase();return n&&(n==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||n==="textarea"||e.contentEditable==="true")}var Gb=Cn&&"documentMode"in document&&11>=document.documentMode,Ai=null,Yc=null,Ll=null,Vc=!1;function _h(e,n,i){var s=i.window===i?i.document:i.nodeType===9?i:i.ownerDocument;Vc||Ai==null||Ai!==La(s)||(s=Ai,"selectionStart"in s&&qc(s)?s={start:s.selectionStart,end:s.selectionEnd}:(s=(s.ownerDocument&&s.ownerDocument.defaultView||window).getSelection(),s={anchorNode:s.anchorNode,anchorOffset:s.anchorOffset,focusNode:s.focusNode,focusOffset:s.focusOffset}),Ll&&Ol(Ll,s)||(Ll=s,s=ar(Yc,"onSelect"),0<s.length&&(n=new hs("onSelect","select",null,n,i),e.push({event:n,listeners:s}),n.target=Ai)))}function ka(e,n){var i={};return i[e.toLowerCase()]=n.toLowerCase(),i["Webkit"+e]="webkit"+n,i["Moz"+e]="moz"+n,i}var Mi={animationend:ka("Animation","AnimationEnd"),animationiteration:ka("Animation","AnimationIteration"),animationstart:ka("Animation","AnimationStart"),transitionrun:ka("Transition","TransitionRun"),transitionstart:ka("Transition","TransitionStart"),transitioncancel:ka("Transition","TransitionCancel"),transitionend:ka("Transition","TransitionEnd")},$c={},Eh={};Cn&&(Eh=document.createElement("div").style,"AnimationEvent"in window||(delete Mi.animationend.animation,delete Mi.animationiteration.animation,delete Mi.animationstart.animation),"TransitionEvent"in window||delete Mi.transitionend.transition);function Ba(e){if($c[e])return $c[e];if(!Mi[e])return e;var n=Mi[e],i;for(i in n)if(n.hasOwnProperty(i)&&i in Eh)return $c[e]=n[i];return e}var Ch=Ba("animationend"),Th=Ba("animationiteration"),Ah=Ba("animationstart"),qb=Ba("transitionrun"),Yb=Ba("transitionstart"),Vb=Ba("transitioncancel"),Mh=Ba("transitionend"),jh=new Map,Xc="abort auxClick beforeToggle 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(" ");Xc.push("scrollEnd");function Jt(e,n){jh.set(e,n),Nn(n,[e])}var gs=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var n=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(n))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Gt=[],ji=0,Pc=0;function ys(){for(var e=ji,n=Pc=ji=0;n<e;){var i=Gt[n];Gt[n++]=null;var s=Gt[n];Gt[n++]=null;var u=Gt[n];Gt[n++]=null;var h=Gt[n];if(Gt[n++]=null,s!==null&&u!==null){var b=s.pending;b===null?u.next=u:(u.next=b.next,b.next=u),s.pending=u}h!==0&&zh(i,u,h)}}function vs(e,n,i,s){Gt[ji++]=e,Gt[ji++]=n,Gt[ji++]=i,Gt[ji++]=s,Pc|=s,e.lanes|=s,e=e.alternate,e!==null&&(e.lanes|=s)}function Fc(e,n,i,s){return vs(e,n,i,s),xs(e)}function Ua(e,n){return vs(e,null,null,n),xs(e)}function zh(e,n,i){e.lanes|=i;var s=e.alternate;s!==null&&(s.lanes|=i);for(var u=!1,h=e.return;h!==null;)h.childLanes|=i,s=h.alternate,s!==null&&(s.childLanes|=i),h.tag===22&&(e=h.stateNode,e===null||e._visibility&1||(u=!0)),e=h,h=h.return;return e.tag===3?(h=e.stateNode,u&&n!==null&&(u=31-bt(i),e=h.hiddenUpdates,s=e[u],s===null?e[u]=[n]:s.push(n),n.lane=i|536870912),h):null}function xs(e){if(50<ao)throw ao=0,ad=null,Error(o(185));for(var n=e.return;n!==null;)e=n,n=e.return;return e.tag===3?e.stateNode:null}var zi={};function $b(e,n,i,s){this.tag=e,this.key=i,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=s,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Dt(e,n,i,s){return new $b(e,n,i,s)}function Zc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Tn(e,n){var i=e.alternate;return i===null?(i=Dt(e.tag,n,e.key,e.mode),i.elementType=e.elementType,i.type=e.type,i.stateNode=e.stateNode,i.alternate=e,e.alternate=i):(i.pendingProps=n,i.type=e.type,i.flags=0,i.subtreeFlags=0,i.deletions=null),i.flags=e.flags&65011712,i.childLanes=e.childLanes,i.lanes=e.lanes,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,n=e.dependencies,i.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},i.sibling=e.sibling,i.index=e.index,i.ref=e.ref,i.refCleanup=e.refCleanup,i}function Rh(e,n){e.flags&=65011714;var i=e.alternate;return i===null?(e.childLanes=0,e.lanes=n,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=i.childLanes,e.lanes=i.lanes,e.child=i.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=i.memoizedProps,e.memoizedState=i.memoizedState,e.updateQueue=i.updateQueue,e.type=i.type,n=i.dependencies,e.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext}),e}function bs(e,n,i,s,u,h){var b=0;if(s=e,typeof e=="function")Zc(e)&&(b=1);else if(typeof e=="string")b=KS(e,i,W.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case K:return e=Dt(31,i,n,u),e.elementType=K,e.lanes=h,e;case M:return Ga(i.children,u,h,n);case R:b=8,u|=24;break;case z:return e=Dt(12,i,n,u|2),e.elementType=z,e.lanes=h,e;case k:return e=Dt(13,i,n,u),e.elementType=k,e.lanes=h,e;case A:return e=Dt(19,i,n,u),e.elementType=A,e.lanes=h,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case C:b=10;break e;case O:b=9;break e;case _:b=11;break e;case B:b=14;break e;case X:b=16,s=null;break e}b=29,i=Error(o(130,e===null?"null":typeof e,"")),s=null}return n=Dt(b,i,n,u),n.elementType=e,n.type=s,n.lanes=h,n}function Ga(e,n,i,s){return e=Dt(7,e,s,n),e.lanes=i,e}function Kc(e,n,i){return e=Dt(6,e,null,n),e.lanes=i,e}function Dh(e){var n=Dt(18,null,null,0);return n.stateNode=e,n}function Qc(e,n,i){return n=Dt(4,e.children!==null?e.children:[],e.key,n),n.lanes=i,n.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},n}var Oh=new WeakMap;function qt(e,n){if(typeof e=="object"&&e!==null){var i=Oh.get(e);return i!==void 0?i:(n={value:e,source:n,stack:Zt(n)},Oh.set(e,n),n)}return{value:e,source:n,stack:Zt(n)}}var Ri=[],Di=0,Ss=null,Hl=0,Yt=[],Vt=0,Wn=null,un=1,dn="";function An(e,n){Ri[Di++]=Hl,Ri[Di++]=Ss,Ss=e,Hl=n}function Lh(e,n,i){Yt[Vt++]=un,Yt[Vt++]=dn,Yt[Vt++]=Wn,Wn=e;var s=un;e=dn;var u=32-bt(s)-1;s&=~(1<<u),i+=1;var h=32-bt(n)+u;if(30<h){var b=u-u%5;h=(s&(1<<b)-1).toString(32),s>>=b,u-=b,un=1<<32-bt(n)+u|i<<u|s,dn=h+e}else un=1<<h|i<<u|s,dn=e}function Jc(e){e.return!==null&&(An(e,1),Lh(e,1,0))}function Wc(e){for(;e===Ss;)Ss=Ri[--Di],Ri[Di]=null,Hl=Ri[--Di],Ri[Di]=null;for(;e===Wn;)Wn=Yt[--Vt],Yt[Vt]=null,dn=Yt[--Vt],Yt[Vt]=null,un=Yt[--Vt],Yt[Vt]=null}function Hh(e,n){Yt[Vt++]=un,Yt[Vt++]=dn,Yt[Vt++]=Wn,un=n.id,dn=n.overflow,Wn=e}var ht=null,Xe=null,De=!1,ea=null,$t=!1,eu=Error(o(519));function ta(e){var n=Error(o(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Il(qt(n,e)),eu}function Ih(e){var n=e.stateNode,i=e.type,s=e.memoizedProps;switch(n[rt]=e,n[yt]=s,i){case"dialog":Me("cancel",n),Me("close",n);break;case"iframe":case"object":case"embed":Me("load",n);break;case"video":case"audio":for(i=0;i<lo.length;i++)Me(lo[i],n);break;case"source":Me("error",n);break;case"img":case"image":case"link":Me("error",n),Me("load",n);break;case"details":Me("toggle",n);break;case"input":Me("invalid",n),rs(n,s.value,s.defaultValue,s.checked,s.defaultChecked,s.type,s.name,!0);break;case"select":Me("invalid",n);break;case"textarea":Me("invalid",n),Jf(n,s.value,s.defaultValue,s.children)}i=s.children,typeof i!="string"&&typeof i!="number"&&typeof i!="bigint"||n.textContent===""+i||s.suppressHydrationWarning===!0||eg(n.textContent,i)?(s.popover!=null&&(Me("beforetoggle",n),Me("toggle",n)),s.onScroll!=null&&Me("scroll",n),s.onScrollEnd!=null&&Me("scrollend",n),s.onClick!=null&&(n.onclick=En),n=!0):n=!1,n||ta(e,!0)}function kh(e){for(ht=e.return;ht;)switch(ht.tag){case 5:case 31:case 13:$t=!1;return;case 27:case 3:$t=!0;return;default:ht=ht.return}}function Oi(e){if(e!==ht)return!1;if(!De)return kh(e),De=!0,!1;var n=e.tag,i;if((i=n!==3&&n!==27)&&((i=n===5)&&(i=e.type,i=!(i!=="form"&&i!=="button")||vd(e.type,e.memoizedProps)),i=!i),i&&Xe&&ta(e),kh(e),n===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));Xe=cg(e)}else if(n===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(317));Xe=cg(e)}else n===27?(n=Xe,pa(e.type)?(e=Nd,Nd=null,Xe=e):Xe=n):Xe=ht?Pt(e.stateNode.nextSibling):null;return!0}function qa(){Xe=ht=null,De=!1}function tu(){var e=ea;return e!==null&&(At===null?At=e:At.push.apply(At,e),ea=null),e}function Il(e){ea===null?ea=[e]:ea.push(e)}var nu=j(null),Ya=null,Mn=null;function na(e,n,i){Y(nu,n._currentValue),n._currentValue=i}function jn(e){e._currentValue=nu.current,U(nu)}function au(e,n,i){for(;e!==null;){var s=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,s!==null&&(s.childLanes|=n)):s!==null&&(s.childLanes&n)!==n&&(s.childLanes|=n),e===i)break;e=e.return}}function iu(e,n,i,s){var u=e.child;for(u!==null&&(u.return=e);u!==null;){var h=u.dependencies;if(h!==null){var b=u.child;h=h.firstContext;e:for(;h!==null;){var E=h;h=u;for(var I=0;I<n.length;I++)if(E.context===n[I]){h.lanes|=i,E=h.alternate,E!==null&&(E.lanes|=i),au(h.return,i,e),s||(b=null);break e}h=E.next}}else if(u.tag===18){if(b=u.return,b===null)throw Error(o(341));b.lanes|=i,h=b.alternate,h!==null&&(h.lanes|=i),au(b,i,e),b=null}else b=u.child;if(b!==null)b.return=u;else for(b=u;b!==null;){if(b===e){b=null;break}if(u=b.sibling,u!==null){u.return=b.return,b=u;break}b=b.return}u=b}}function Li(e,n,i,s){e=null;for(var u=n,h=!1;u!==null;){if(!h){if((u.flags&524288)!==0)h=!0;else if((u.flags&262144)!==0)break}if(u.tag===10){var b=u.alternate;if(b===null)throw Error(o(387));if(b=b.memoizedProps,b!==null){var E=u.type;Rt(u.pendingProps.value,b.value)||(e!==null?e.push(E):e=[E])}}else if(u===le.current){if(b=u.alternate,b===null)throw Error(o(387));b.memoizedState.memoizedState!==u.memoizedState.memoizedState&&(e!==null?e.push(uo):e=[uo])}u=u.return}e!==null&&iu(n,e,i,s),n.flags|=262144}function ws(e){for(e=e.firstContext;e!==null;){if(!Rt(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Va(e){Ya=e,Mn=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function mt(e){return Bh(Ya,e)}function Ns(e,n){return Ya===null&&Va(e),Bh(e,n)}function Bh(e,n){var i=n._currentValue;if(n={context:n,memoizedValue:i,next:null},Mn===null){if(e===null)throw Error(o(308));Mn=n,e.dependencies={lanes:0,firstContext:n},e.flags|=524288}else Mn=Mn.next=n;return i}var Xb=typeof AbortController<"u"?AbortController:function(){var e=[],n=this.signal={aborted:!1,addEventListener:function(i,s){e.push(s)}};this.abort=function(){n.aborted=!0,e.forEach(function(i){return i()})}},Pb=t.unstable_scheduleCallback,Fb=t.unstable_NormalPriority,at={$$typeof:C,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function lu(){return{controller:new Xb,data:new Map,refCount:0}}function kl(e){e.refCount--,e.refCount===0&&Pb(Fb,function(){e.controller.abort()})}var Bl=null,ou=0,Hi=0,Ii=null;function Zb(e,n){if(Bl===null){var i=Bl=[];ou=0,Hi=cd(),Ii={status:"pending",value:void 0,then:function(s){i.push(s)}}}return ou++,n.then(Uh,Uh),n}function Uh(){if(--ou===0&&Bl!==null){Ii!==null&&(Ii.status="fulfilled");var e=Bl;Bl=null,Hi=0,Ii=null;for(var n=0;n<e.length;n++)(0,e[n])()}}function Kb(e,n){var i=[],s={status:"pending",value:null,reason:null,then:function(u){i.push(u)}};return e.then(function(){s.status="fulfilled",s.value=n;for(var u=0;u<i.length;u++)(0,i[u])(n)},function(u){for(s.status="rejected",s.reason=u,u=0;u<i.length;u++)(0,i[u])(void 0)}),s}var Gh=T.S;T.S=function(e,n){_p=ft(),typeof n=="object"&&n!==null&&typeof n.then=="function"&&Zb(e,n),Gh!==null&&Gh(e,n)};var $a=j(null);function su(){var e=$a.current;return e!==null?e:$e.pooledCache}function _s(e,n){n===null?Y($a,$a.current):Y($a,n.pool)}function qh(){var e=su();return e===null?null:{parent:at._currentValue,pool:e}}var ki=Error(o(460)),ru=Error(o(474)),Es=Error(o(542)),Cs={then:function(){}};function Yh(e){return e=e.status,e==="fulfilled"||e==="rejected"}function Vh(e,n,i){switch(i=e[i],i===void 0?e.push(n):i!==n&&(n.then(En,En),n=i),n.status){case"fulfilled":return n.value;case"rejected":throw e=n.reason,Xh(e),e;default:if(typeof n.status=="string")n.then(En,En);else{if(e=$e,e!==null&&100<e.shellSuspendCounter)throw Error(o(482));e=n,e.status="pending",e.then(function(s){if(n.status==="pending"){var u=n;u.status="fulfilled",u.value=s}},function(s){if(n.status==="pending"){var u=n;u.status="rejected",u.reason=s}})}switch(n.status){case"fulfilled":return n.value;case"rejected":throw e=n.reason,Xh(e),e}throw Pa=n,ki}}function Xa(e){try{var n=e._init;return n(e._payload)}catch(i){throw i!==null&&typeof i=="object"&&typeof i.then=="function"?(Pa=i,ki):i}}var Pa=null;function $h(){if(Pa===null)throw Error(o(459));var e=Pa;return Pa=null,e}function Xh(e){if(e===ki||e===Es)throw Error(o(483))}var Bi=null,Ul=0;function Ts(e){var n=Ul;return Ul+=1,Bi===null&&(Bi=[]),Vh(Bi,e,n)}function Gl(e,n){n=n.props.ref,e.ref=n!==void 0?n:null}function As(e,n){throw n.$$typeof===x?Error(o(525)):(e=Object.prototype.toString.call(n),Error(o(31,e==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":e)))}function Ph(e){function n(V,q){if(e){var Q=V.deletions;Q===null?(V.deletions=[q],V.flags|=16):Q.push(q)}}function i(V,q){if(!e)return null;for(;q!==null;)n(V,q),q=q.sibling;return null}function s(V){for(var q=new Map;V!==null;)V.key!==null?q.set(V.key,V):q.set(V.index,V),V=V.sibling;return q}function u(V,q){return V=Tn(V,q),V.index=0,V.sibling=null,V}function h(V,q,Q){return V.index=Q,e?(Q=V.alternate,Q!==null?(Q=Q.index,Q<q?(V.flags|=67108866,q):Q):(V.flags|=67108866,q)):(V.flags|=1048576,q)}function b(V){return e&&V.alternate===null&&(V.flags|=67108866),V}function E(V,q,Q,oe){return q===null||q.tag!==6?(q=Kc(Q,V.mode,oe),q.return=V,q):(q=u(q,Q),q.return=V,q)}function I(V,q,Q,oe){var ye=Q.type;return ye===M?ie(V,q,Q.props.children,oe,Q.key):q!==null&&(q.elementType===ye||typeof ye=="object"&&ye!==null&&ye.$$typeof===X&&Xa(ye)===q.type)?(q=u(q,Q.props),Gl(q,Q),q.return=V,q):(q=bs(Q.type,Q.key,Q.props,null,V.mode,oe),Gl(q,Q),q.return=V,q)}function J(V,q,Q,oe){return q===null||q.tag!==4||q.stateNode.containerInfo!==Q.containerInfo||q.stateNode.implementation!==Q.implementation?(q=Qc(Q,V.mode,oe),q.return=V,q):(q=u(q,Q.children||[]),q.return=V,q)}function ie(V,q,Q,oe,ye){return q===null||q.tag!==7?(q=Ga(Q,V.mode,oe,ye),q.return=V,q):(q=u(q,Q),q.return=V,q)}function re(V,q,Q){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return q=Kc(""+q,V.mode,Q),q.return=V,q;if(typeof q=="object"&&q!==null){switch(q.$$typeof){case w:return Q=bs(q.type,q.key,q.props,null,V.mode,Q),Gl(Q,q),Q.return=V,Q;case S:return q=Qc(q,V.mode,Q),q.return=V,q;case X:return q=Xa(q),re(V,q,Q)}if(D(q)||te(q))return q=Ga(q,V.mode,Q,null),q.return=V,q;if(typeof q.then=="function")return re(V,Ts(q),Q);if(q.$$typeof===C)return re(V,Ns(V,q),Q);As(V,q)}return null}function ee(V,q,Q,oe){var ye=q!==null?q.key:null;if(typeof Q=="string"&&Q!==""||typeof Q=="number"||typeof Q=="bigint")return ye!==null?null:E(V,q,""+Q,oe);if(typeof Q=="object"&&Q!==null){switch(Q.$$typeof){case w:return Q.key===ye?I(V,q,Q,oe):null;case S:return Q.key===ye?J(V,q,Q,oe):null;case X:return Q=Xa(Q),ee(V,q,Q,oe)}if(D(Q)||te(Q))return ye!==null?null:ie(V,q,Q,oe,null);if(typeof Q.then=="function")return ee(V,q,Ts(Q),oe);if(Q.$$typeof===C)return ee(V,q,Ns(V,Q),oe);As(V,Q)}return null}function ne(V,q,Q,oe,ye){if(typeof oe=="string"&&oe!==""||typeof oe=="number"||typeof oe=="bigint")return V=V.get(Q)||null,E(q,V,""+oe,ye);if(typeof oe=="object"&&oe!==null){switch(oe.$$typeof){case w:return V=V.get(oe.key===null?Q:oe.key)||null,I(q,V,oe,ye);case S:return V=V.get(oe.key===null?Q:oe.key)||null,J(q,V,oe,ye);case X:return oe=Xa(oe),ne(V,q,Q,oe,ye)}if(D(oe)||te(oe))return V=V.get(Q)||null,ie(q,V,oe,ye,null);if(typeof oe.then=="function")return ne(V,q,Q,Ts(oe),ye);if(oe.$$typeof===C)return ne(V,q,Q,Ns(q,oe),ye);As(q,oe)}return null}function he(V,q,Q,oe){for(var ye=null,Le=null,me=q,Te=q=0,Re=null;me!==null&&Te<Q.length;Te++){me.index>Te?(Re=me,me=null):Re=me.sibling;var He=ee(V,me,Q[Te],oe);if(He===null){me===null&&(me=Re);break}e&&me&&He.alternate===null&&n(V,me),q=h(He,q,Te),Le===null?ye=He:Le.sibling=He,Le=He,me=Re}if(Te===Q.length)return i(V,me),De&&An(V,Te),ye;if(me===null){for(;Te<Q.length;Te++)me=re(V,Q[Te],oe),me!==null&&(q=h(me,q,Te),Le===null?ye=me:Le.sibling=me,Le=me);return De&&An(V,Te),ye}for(me=s(me);Te<Q.length;Te++)Re=ne(me,V,Te,Q[Te],oe),Re!==null&&(e&&Re.alternate!==null&&me.delete(Re.key===null?Te:Re.key),q=h(Re,q,Te),Le===null?ye=Re:Le.sibling=Re,Le=Re);return e&&me.forEach(function(ba){return n(V,ba)}),De&&An(V,Te),ye}function Se(V,q,Q,oe){if(Q==null)throw Error(o(151));for(var ye=null,Le=null,me=q,Te=q=0,Re=null,He=Q.next();me!==null&&!He.done;Te++,He=Q.next()){me.index>Te?(Re=me,me=null):Re=me.sibling;var ba=ee(V,me,He.value,oe);if(ba===null){me===null&&(me=Re);break}e&&me&&ba.alternate===null&&n(V,me),q=h(ba,q,Te),Le===null?ye=ba:Le.sibling=ba,Le=ba,me=Re}if(He.done)return i(V,me),De&&An(V,Te),ye;if(me===null){for(;!He.done;Te++,He=Q.next())He=re(V,He.value,oe),He!==null&&(q=h(He,q,Te),Le===null?ye=He:Le.sibling=He,Le=He);return De&&An(V,Te),ye}for(me=s(me);!He.done;Te++,He=Q.next())He=ne(me,V,Te,He.value,oe),He!==null&&(e&&He.alternate!==null&&me.delete(He.key===null?Te:He.key),q=h(He,q,Te),Le===null?ye=He:Le.sibling=He,Le=He);return e&&me.forEach(function(s1){return n(V,s1)}),De&&An(V,Te),ye}function Ve(V,q,Q,oe){if(typeof Q=="object"&&Q!==null&&Q.type===M&&Q.key===null&&(Q=Q.props.children),typeof Q=="object"&&Q!==null){switch(Q.$$typeof){case w:e:{for(var ye=Q.key;q!==null;){if(q.key===ye){if(ye=Q.type,ye===M){if(q.tag===7){i(V,q.sibling),oe=u(q,Q.props.children),oe.return=V,V=oe;break e}}else if(q.elementType===ye||typeof ye=="object"&&ye!==null&&ye.$$typeof===X&&Xa(ye)===q.type){i(V,q.sibling),oe=u(q,Q.props),Gl(oe,Q),oe.return=V,V=oe;break e}i(V,q);break}else n(V,q);q=q.sibling}Q.type===M?(oe=Ga(Q.props.children,V.mode,oe,Q.key),oe.return=V,V=oe):(oe=bs(Q.type,Q.key,Q.props,null,V.mode,oe),Gl(oe,Q),oe.return=V,V=oe)}return b(V);case S:e:{for(ye=Q.key;q!==null;){if(q.key===ye)if(q.tag===4&&q.stateNode.containerInfo===Q.containerInfo&&q.stateNode.implementation===Q.implementation){i(V,q.sibling),oe=u(q,Q.children||[]),oe.return=V,V=oe;break e}else{i(V,q);break}else n(V,q);q=q.sibling}oe=Qc(Q,V.mode,oe),oe.return=V,V=oe}return b(V);case X:return Q=Xa(Q),Ve(V,q,Q,oe)}if(D(Q))return he(V,q,Q,oe);if(te(Q)){if(ye=te(Q),typeof ye!="function")throw Error(o(150));return Q=ye.call(Q),Se(V,q,Q,oe)}if(typeof Q.then=="function")return Ve(V,q,Ts(Q),oe);if(Q.$$typeof===C)return Ve(V,q,Ns(V,Q),oe);As(V,Q)}return typeof Q=="string"&&Q!==""||typeof Q=="number"||typeof Q=="bigint"?(Q=""+Q,q!==null&&q.tag===6?(i(V,q.sibling),oe=u(q,Q),oe.return=V,V=oe):(i(V,q),oe=Kc(Q,V.mode,oe),oe.return=V,V=oe),b(V)):i(V,q)}return function(V,q,Q,oe){try{Ul=0;var ye=Ve(V,q,Q,oe);return Bi=null,ye}catch(me){if(me===ki||me===Es)throw me;var Le=Dt(29,me,null,V.mode);return Le.lanes=oe,Le.return=V,Le}}}var Fa=Ph(!0),Fh=Ph(!1),aa=!1;function cu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function uu(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function ia(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function la(e,n,i){var s=e.updateQueue;if(s===null)return null;if(s=s.shared,(Ie&2)!==0){var u=s.pending;return u===null?n.next=n:(n.next=u.next,u.next=n),s.pending=n,n=xs(e),zh(e,null,i),n}return vs(e,s,n,i),xs(e)}function ql(e,n,i){if(n=n.updateQueue,n!==null&&(n=n.shared,(i&4194048)!==0)){var s=n.lanes;s&=e.pendingLanes,i|=s,n.lanes=i,Qo(e,i)}}function du(e,n){var i=e.updateQueue,s=e.alternate;if(s!==null&&(s=s.updateQueue,i===s)){var u=null,h=null;if(i=i.firstBaseUpdate,i!==null){do{var b={lane:i.lane,tag:i.tag,payload:i.payload,callback:null,next:null};h===null?u=h=b:h=h.next=b,i=i.next}while(i!==null);h===null?u=h=n:h=h.next=n}else u=h=n;i={baseState:s.baseState,firstBaseUpdate:u,lastBaseUpdate:h,shared:s.shared,callbacks:s.callbacks},e.updateQueue=i;return}e=i.lastBaseUpdate,e===null?i.firstBaseUpdate=n:e.next=n,i.lastBaseUpdate=n}var fu=!1;function Yl(){if(fu){var e=Ii;if(e!==null)throw e}}function Vl(e,n,i,s){fu=!1;var u=e.updateQueue;aa=!1;var h=u.firstBaseUpdate,b=u.lastBaseUpdate,E=u.shared.pending;if(E!==null){u.shared.pending=null;var I=E,J=I.next;I.next=null,b===null?h=J:b.next=J,b=I;var ie=e.alternate;ie!==null&&(ie=ie.updateQueue,E=ie.lastBaseUpdate,E!==b&&(E===null?ie.firstBaseUpdate=J:E.next=J,ie.lastBaseUpdate=I))}if(h!==null){var re=u.baseState;b=0,ie=J=I=null,E=h;do{var ee=E.lane&-536870913,ne=ee!==E.lane;if(ne?(ze&ee)===ee:(s&ee)===ee){ee!==0&&ee===Hi&&(fu=!0),ie!==null&&(ie=ie.next={lane:0,tag:E.tag,payload:E.payload,callback:null,next:null});e:{var he=e,Se=E;ee=n;var Ve=i;switch(Se.tag){case 1:if(he=Se.payload,typeof he=="function"){re=he.call(Ve,re,ee);break e}re=he;break e;case 3:he.flags=he.flags&-65537|128;case 0:if(he=Se.payload,ee=typeof he=="function"?he.call(Ve,re,ee):he,ee==null)break e;re=v({},re,ee);break e;case 2:aa=!0}}ee=E.callback,ee!==null&&(e.flags|=64,ne&&(e.flags|=8192),ne=u.callbacks,ne===null?u.callbacks=[ee]:ne.push(ee))}else ne={lane:ee,tag:E.tag,payload:E.payload,callback:E.callback,next:null},ie===null?(J=ie=ne,I=re):ie=ie.next=ne,b|=ee;if(E=E.next,E===null){if(E=u.shared.pending,E===null)break;ne=E,E=ne.next,ne.next=null,u.lastBaseUpdate=ne,u.shared.pending=null}}while(!0);ie===null&&(I=re),u.baseState=I,u.firstBaseUpdate=J,u.lastBaseUpdate=ie,h===null&&(u.shared.lanes=0),ua|=b,e.lanes=b,e.memoizedState=re}}function Zh(e,n){if(typeof e!="function")throw Error(o(191,e));e.call(n)}function Kh(e,n){var i=e.callbacks;if(i!==null)for(e.callbacks=null,e=0;e<i.length;e++)Zh(i[e],n)}var Ui=j(null),Ms=j(0);function Qh(e,n){e=Bn,Y(Ms,e),Y(Ui,n),Bn=e|n.baseLanes}function hu(){Y(Ms,Bn),Y(Ui,Ui.current)}function mu(){Bn=Ms.current,U(Ui),U(Ms)}var Ot=j(null),Xt=null;function oa(e){var n=e.alternate;Y(et,et.current&1),Y(Ot,e),Xt===null&&(n===null||Ui.current!==null||n.memoizedState!==null)&&(Xt=e)}function pu(e){Y(et,et.current),Y(Ot,e),Xt===null&&(Xt=e)}function Jh(e){e.tag===22?(Y(et,et.current),Y(Ot,e),Xt===null&&(Xt=e)):sa()}function sa(){Y(et,et.current),Y(Ot,Ot.current)}function Lt(e){U(Ot),Xt===e&&(Xt=null),U(et)}var et=j(0);function js(e){for(var n=e;n!==null;){if(n.tag===13){var i=n.memoizedState;if(i!==null&&(i=i.dehydrated,i===null||Sd(i)||wd(i)))return n}else if(n.tag===19&&(n.memoizedProps.revealOrder==="forwards"||n.memoizedProps.revealOrder==="backwards"||n.memoizedProps.revealOrder==="unstable_legacy-backwards"||n.memoizedProps.revealOrder==="together")){if((n.flags&128)!==0)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var zn=0,Ce=null,qe=null,it=null,zs=!1,Gi=!1,Za=!1,Rs=0,$l=0,qi=null,Qb=0;function Je(){throw Error(o(321))}function gu(e,n){if(n===null)return!1;for(var i=0;i<n.length&&i<e.length;i++)if(!Rt(e[i],n[i]))return!1;return!0}function yu(e,n,i,s,u,h){return zn=h,Ce=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,T.H=e===null||e.memoizedState===null?Lm:Ru,Za=!1,h=i(s,u),Za=!1,Gi&&(h=em(n,i,s,u)),Wh(e),h}function Wh(e){T.H=Fl;var n=qe!==null&&qe.next!==null;if(zn=0,it=qe=Ce=null,zs=!1,$l=0,qi=null,n)throw Error(o(300));e===null||lt||(e=e.dependencies,e!==null&&ws(e)&&(lt=!0))}function em(e,n,i,s){Ce=e;var u=0;do{if(Gi&&(qi=null),$l=0,Gi=!1,25<=u)throw Error(o(301));if(u+=1,it=qe=null,e.updateQueue!=null){var h=e.updateQueue;h.lastEffect=null,h.events=null,h.stores=null,h.memoCache!=null&&(h.memoCache.index=0)}T.H=Hm,h=n(i,s)}while(Gi);return h}function Jb(){var e=T.H,n=e.useState()[0];return n=typeof n.then=="function"?Xl(n):n,e=e.useState()[0],(qe!==null?qe.memoizedState:null)!==e&&(Ce.flags|=1024),n}function vu(){var e=Rs!==0;return Rs=0,e}function xu(e,n,i){n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~i}function bu(e){if(zs){for(e=e.memoizedState;e!==null;){var n=e.queue;n!==null&&(n.pending=null),e=e.next}zs=!1}zn=0,it=qe=Ce=null,Gi=!1,$l=Rs=0,qi=null}function St(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return it===null?Ce.memoizedState=it=e:it=it.next=e,it}function tt(){if(qe===null){var e=Ce.alternate;e=e!==null?e.memoizedState:null}else e=qe.next;var n=it===null?Ce.memoizedState:it.next;if(n!==null)it=n,qe=e;else{if(e===null)throw Ce.alternate===null?Error(o(467)):Error(o(310));qe=e,e={memoizedState:qe.memoizedState,baseState:qe.baseState,baseQueue:qe.baseQueue,queue:qe.queue,next:null},it===null?Ce.memoizedState=it=e:it=it.next=e}return it}function Ds(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Xl(e){var n=$l;return $l+=1,qi===null&&(qi=[]),e=Vh(qi,e,n),n=Ce,(it===null?n.memoizedState:it.next)===null&&(n=n.alternate,T.H=n===null||n.memoizedState===null?Lm:Ru),e}function Os(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return Xl(e);if(e.$$typeof===C)return mt(e)}throw Error(o(438,String(e)))}function Su(e){var n=null,i=Ce.updateQueue;if(i!==null&&(n=i.memoCache),n==null){var s=Ce.alternate;s!==null&&(s=s.updateQueue,s!==null&&(s=s.memoCache,s!=null&&(n={data:s.data.map(function(u){return u.slice()}),index:0})))}if(n==null&&(n={data:[],index:0}),i===null&&(i=Ds(),Ce.updateQueue=i),i.memoCache=n,i=n.data[n.index],i===void 0)for(i=n.data[n.index]=Array(e),s=0;s<e;s++)i[s]=de;return n.index++,i}function Rn(e,n){return typeof n=="function"?n(e):n}function Ls(e){var n=tt();return wu(n,qe,e)}function wu(e,n,i){var s=e.queue;if(s===null)throw Error(o(311));s.lastRenderedReducer=i;var u=e.baseQueue,h=s.pending;if(h!==null){if(u!==null){var b=u.next;u.next=h.next,h.next=b}n.baseQueue=u=h,s.pending=null}if(h=e.baseState,u===null)e.memoizedState=h;else{n=u.next;var E=b=null,I=null,J=n,ie=!1;do{var re=J.lane&-536870913;if(re!==J.lane?(ze&re)===re:(zn&re)===re){var ee=J.revertLane;if(ee===0)I!==null&&(I=I.next={lane:0,revertLane:0,gesture:null,action:J.action,hasEagerState:J.hasEagerState,eagerState:J.eagerState,next:null}),re===Hi&&(ie=!0);else if((zn&ee)===ee){J=J.next,ee===Hi&&(ie=!0);continue}else re={lane:0,revertLane:J.revertLane,gesture:null,action:J.action,hasEagerState:J.hasEagerState,eagerState:J.eagerState,next:null},I===null?(E=I=re,b=h):I=I.next=re,Ce.lanes|=ee,ua|=ee;re=J.action,Za&&i(h,re),h=J.hasEagerState?J.eagerState:i(h,re)}else ee={lane:re,revertLane:J.revertLane,gesture:J.gesture,action:J.action,hasEagerState:J.hasEagerState,eagerState:J.eagerState,next:null},I===null?(E=I=ee,b=h):I=I.next=ee,Ce.lanes|=re,ua|=re;J=J.next}while(J!==null&&J!==n);if(I===null?b=h:I.next=E,!Rt(h,e.memoizedState)&&(lt=!0,ie&&(i=Ii,i!==null)))throw i;e.memoizedState=h,e.baseState=b,e.baseQueue=I,s.lastRenderedState=h}return u===null&&(s.lanes=0),[e.memoizedState,s.dispatch]}function Nu(e){var n=tt(),i=n.queue;if(i===null)throw Error(o(311));i.lastRenderedReducer=e;var s=i.dispatch,u=i.pending,h=n.memoizedState;if(u!==null){i.pending=null;var b=u=u.next;do h=e(h,b.action),b=b.next;while(b!==u);Rt(h,n.memoizedState)||(lt=!0),n.memoizedState=h,n.baseQueue===null&&(n.baseState=h),i.lastRenderedState=h}return[h,s]}function tm(e,n,i){var s=Ce,u=tt(),h=De;if(h){if(i===void 0)throw Error(o(407));i=i()}else i=n();var b=!Rt((qe||u).memoizedState,i);if(b&&(u.memoizedState=i,lt=!0),u=u.queue,Cu(im.bind(null,s,u,e),[e]),u.getSnapshot!==n||b||it!==null&&it.memoizedState.tag&1){if(s.flags|=2048,Yi(9,{destroy:void 0},am.bind(null,s,u,i,n),null),$e===null)throw Error(o(349));h||(zn&127)!==0||nm(s,n,i)}return i}function nm(e,n,i){e.flags|=16384,e={getSnapshot:n,value:i},n=Ce.updateQueue,n===null?(n=Ds(),Ce.updateQueue=n,n.stores=[e]):(i=n.stores,i===null?n.stores=[e]:i.push(e))}function am(e,n,i,s){n.value=i,n.getSnapshot=s,lm(n)&&om(e)}function im(e,n,i){return i(function(){lm(n)&&om(e)})}function lm(e){var n=e.getSnapshot;e=e.value;try{var i=n();return!Rt(e,i)}catch{return!0}}function om(e){var n=Ua(e,2);n!==null&&Mt(n,e,2)}function _u(e){var n=St();if(typeof e=="function"){var i=e;if(e=i(),Za){rn(!0);try{i()}finally{rn(!1)}}}return n.memoizedState=n.baseState=e,n.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Rn,lastRenderedState:e},n}function sm(e,n,i,s){return e.baseState=i,wu(e,qe,typeof s=="function"?s:Rn)}function Wb(e,n,i,s,u){if(ks(e))throw Error(o(485));if(e=n.action,e!==null){var h={payload:u,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(b){h.listeners.push(b)}};T.T!==null?i(!0):h.isTransition=!1,s(h),i=n.pending,i===null?(h.next=n.pending=h,rm(n,h)):(h.next=i.next,n.pending=i.next=h)}}function rm(e,n){var i=n.action,s=n.payload,u=e.state;if(n.isTransition){var h=T.T,b={};T.T=b;try{var E=i(u,s),I=T.S;I!==null&&I(b,E),cm(e,n,E)}catch(J){Eu(e,n,J)}finally{h!==null&&b.types!==null&&(h.types=b.types),T.T=h}}else try{h=i(u,s),cm(e,n,h)}catch(J){Eu(e,n,J)}}function cm(e,n,i){i!==null&&typeof i=="object"&&typeof i.then=="function"?i.then(function(s){um(e,n,s)},function(s){return Eu(e,n,s)}):um(e,n,i)}function um(e,n,i){n.status="fulfilled",n.value=i,dm(n),e.state=i,n=e.pending,n!==null&&(i=n.next,i===n?e.pending=null:(i=i.next,n.next=i,rm(e,i)))}function Eu(e,n,i){var s=e.pending;if(e.pending=null,s!==null){s=s.next;do n.status="rejected",n.reason=i,dm(n),n=n.next;while(n!==s)}e.action=null}function dm(e){e=e.listeners;for(var n=0;n<e.length;n++)(0,e[n])()}function fm(e,n){return n}function hm(e,n){if(De){var i=$e.formState;if(i!==null){e:{var s=Ce;if(De){if(Xe){t:{for(var u=Xe,h=$t;u.nodeType!==8;){if(!h){u=null;break t}if(u=Pt(u.nextSibling),u===null){u=null;break t}}h=u.data,u=h==="F!"||h==="F"?u:null}if(u){Xe=Pt(u.nextSibling),s=u.data==="F!";break e}}ta(s)}s=!1}s&&(n=i[0])}}return i=St(),i.memoizedState=i.baseState=n,s={pending:null,lanes:0,dispatch:null,lastRenderedReducer:fm,lastRenderedState:n},i.queue=s,i=Rm.bind(null,Ce,s),s.dispatch=i,s=_u(!1),h=zu.bind(null,Ce,!1,s.queue),s=St(),u={state:n,dispatch:null,action:e,pending:null},s.queue=u,i=Wb.bind(null,Ce,u,h,i),u.dispatch=i,s.memoizedState=e,[n,i,!1]}function mm(e){var n=tt();return pm(n,qe,e)}function pm(e,n,i){if(n=wu(e,n,fm)[0],e=Ls(Rn)[0],typeof n=="object"&&n!==null&&typeof n.then=="function")try{var s=Xl(n)}catch(b){throw b===ki?Es:b}else s=n;n=tt();var u=n.queue,h=u.dispatch;return i!==n.memoizedState&&(Ce.flags|=2048,Yi(9,{destroy:void 0},eS.bind(null,u,i),null)),[s,h,e]}function eS(e,n){e.action=n}function gm(e){var n=tt(),i=qe;if(i!==null)return pm(n,i,e);tt(),n=n.memoizedState,i=tt();var s=i.queue.dispatch;return i.memoizedState=e,[n,s,!1]}function Yi(e,n,i,s){return e={tag:e,create:i,deps:s,inst:n,next:null},n=Ce.updateQueue,n===null&&(n=Ds(),Ce.updateQueue=n),i=n.lastEffect,i===null?n.lastEffect=e.next=e:(s=i.next,i.next=e,e.next=s,n.lastEffect=e),e}function ym(){return tt().memoizedState}function Hs(e,n,i,s){var u=St();Ce.flags|=e,u.memoizedState=Yi(1|n,{destroy:void 0},i,s===void 0?null:s)}function Is(e,n,i,s){var u=tt();s=s===void 0?null:s;var h=u.memoizedState.inst;qe!==null&&s!==null&&gu(s,qe.memoizedState.deps)?u.memoizedState=Yi(n,h,i,s):(Ce.flags|=e,u.memoizedState=Yi(1|n,h,i,s))}function vm(e,n){Hs(8390656,8,e,n)}function Cu(e,n){Is(2048,8,e,n)}function tS(e){Ce.flags|=4;var n=Ce.updateQueue;if(n===null)n=Ds(),Ce.updateQueue=n,n.events=[e];else{var i=n.events;i===null?n.events=[e]:i.push(e)}}function xm(e){var n=tt().memoizedState;return tS({ref:n,nextImpl:e}),function(){if((Ie&2)!==0)throw Error(o(440));return n.impl.apply(void 0,arguments)}}function bm(e,n){return Is(4,2,e,n)}function Sm(e,n){return Is(4,4,e,n)}function wm(e,n){if(typeof n=="function"){e=e();var i=n(e);return function(){typeof i=="function"?i():n(null)}}if(n!=null)return e=e(),n.current=e,function(){n.current=null}}function Nm(e,n,i){i=i!=null?i.concat([e]):null,Is(4,4,wm.bind(null,n,e),i)}function Tu(){}function _m(e,n){var i=tt();n=n===void 0?null:n;var s=i.memoizedState;return n!==null&&gu(n,s[1])?s[0]:(i.memoizedState=[e,n],e)}function Em(e,n){var i=tt();n=n===void 0?null:n;var s=i.memoizedState;if(n!==null&&gu(n,s[1]))return s[0];if(s=e(),Za){rn(!0);try{e()}finally{rn(!1)}}return i.memoizedState=[s,n],s}function Au(e,n,i){return i===void 0||(zn&1073741824)!==0&&(ze&261930)===0?e.memoizedState=n:(e.memoizedState=i,e=Cp(),Ce.lanes|=e,ua|=e,i)}function Cm(e,n,i,s){return Rt(i,n)?i:Ui.current!==null?(e=Au(e,i,s),Rt(e,n)||(lt=!0),e):(zn&42)===0||(zn&1073741824)!==0&&(ze&261930)===0?(lt=!0,e.memoizedState=i):(e=Cp(),Ce.lanes|=e,ua|=e,n)}function Tm(e,n,i,s,u){var h=L.p;L.p=h!==0&&8>h?h:8;var b=T.T,E={};T.T=E,zu(e,!1,n,i);try{var I=u(),J=T.S;if(J!==null&&J(E,I),I!==null&&typeof I=="object"&&typeof I.then=="function"){var ie=Kb(I,s);Pl(e,n,ie,kt(e))}else Pl(e,n,s,kt(e))}catch(re){Pl(e,n,{then:function(){},status:"rejected",reason:re},kt())}finally{L.p=h,b!==null&&E.types!==null&&(b.types=E.types),T.T=b}}function nS(){}function Mu(e,n,i,s){if(e.tag!==5)throw Error(o(476));var u=Am(e).queue;Tm(e,u,n,G,i===null?nS:function(){return Mm(e),i(s)})}function Am(e){var n=e.memoizedState;if(n!==null)return n;n={memoizedState:G,baseState:G,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Rn,lastRenderedState:G},next:null};var i={};return n.next={memoizedState:i,baseState:i,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Rn,lastRenderedState:i},next:null},e.memoizedState=n,e=e.alternate,e!==null&&(e.memoizedState=n),n}function Mm(e){var n=Am(e);n.next===null&&(n=e.alternate.memoizedState),Pl(e,n.next.queue,{},kt())}function ju(){return mt(uo)}function jm(){return tt().memoizedState}function zm(){return tt().memoizedState}function aS(e){for(var n=e.return;n!==null;){switch(n.tag){case 24:case 3:var i=kt();e=ia(i);var s=la(n,e,i);s!==null&&(Mt(s,n,i),ql(s,n,i)),n={cache:lu()},e.payload=n;return}n=n.return}}function iS(e,n,i){var s=kt();i={lane:s,revertLane:0,gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null},ks(e)?Dm(n,i):(i=Fc(e,n,i,s),i!==null&&(Mt(i,e,s),Om(i,n,s)))}function Rm(e,n,i){var s=kt();Pl(e,n,i,s)}function Pl(e,n,i,s){var u={lane:s,revertLane:0,gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null};if(ks(e))Dm(n,u);else{var h=e.alternate;if(e.lanes===0&&(h===null||h.lanes===0)&&(h=n.lastRenderedReducer,h!==null))try{var b=n.lastRenderedState,E=h(b,i);if(u.hasEagerState=!0,u.eagerState=E,Rt(E,b))return vs(e,n,u,0),$e===null&&ys(),!1}catch{}if(i=Fc(e,n,u,s),i!==null)return Mt(i,e,s),Om(i,n,s),!0}return!1}function zu(e,n,i,s){if(s={lane:2,revertLane:cd(),gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},ks(e)){if(n)throw Error(o(479))}else n=Fc(e,i,s,2),n!==null&&Mt(n,e,2)}function ks(e){var n=e.alternate;return e===Ce||n!==null&&n===Ce}function Dm(e,n){Gi=zs=!0;var i=e.pending;i===null?n.next=n:(n.next=i.next,i.next=n),e.pending=n}function Om(e,n,i){if((i&4194048)!==0){var s=n.lanes;s&=e.pendingLanes,i|=s,n.lanes=i,Qo(e,i)}}var Fl={readContext:mt,use:Os,useCallback:Je,useContext:Je,useEffect:Je,useImperativeHandle:Je,useLayoutEffect:Je,useInsertionEffect:Je,useMemo:Je,useReducer:Je,useRef:Je,useState:Je,useDebugValue:Je,useDeferredValue:Je,useTransition:Je,useSyncExternalStore:Je,useId:Je,useHostTransitionStatus:Je,useFormState:Je,useActionState:Je,useOptimistic:Je,useMemoCache:Je,useCacheRefresh:Je};Fl.useEffectEvent=Je;var Lm={readContext:mt,use:Os,useCallback:function(e,n){return St().memoizedState=[e,n===void 0?null:n],e},useContext:mt,useEffect:vm,useImperativeHandle:function(e,n,i){i=i!=null?i.concat([e]):null,Hs(4194308,4,wm.bind(null,n,e),i)},useLayoutEffect:function(e,n){return Hs(4194308,4,e,n)},useInsertionEffect:function(e,n){Hs(4,2,e,n)},useMemo:function(e,n){var i=St();n=n===void 0?null:n;var s=e();if(Za){rn(!0);try{e()}finally{rn(!1)}}return i.memoizedState=[s,n],s},useReducer:function(e,n,i){var s=St();if(i!==void 0){var u=i(n);if(Za){rn(!0);try{i(n)}finally{rn(!1)}}}else u=n;return s.memoizedState=s.baseState=u,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:u},s.queue=e,e=e.dispatch=iS.bind(null,Ce,e),[s.memoizedState,e]},useRef:function(e){var n=St();return e={current:e},n.memoizedState=e},useState:function(e){e=_u(e);var n=e.queue,i=Rm.bind(null,Ce,n);return n.dispatch=i,[e.memoizedState,i]},useDebugValue:Tu,useDeferredValue:function(e,n){var i=St();return Au(i,e,n)},useTransition:function(){var e=_u(!1);return e=Tm.bind(null,Ce,e.queue,!0,!1),St().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,n,i){var s=Ce,u=St();if(De){if(i===void 0)throw Error(o(407));i=i()}else{if(i=n(),$e===null)throw Error(o(349));(ze&127)!==0||nm(s,n,i)}u.memoizedState=i;var h={value:i,getSnapshot:n};return u.queue=h,vm(im.bind(null,s,h,e),[e]),s.flags|=2048,Yi(9,{destroy:void 0},am.bind(null,s,h,i,n),null),i},useId:function(){var e=St(),n=$e.identifierPrefix;if(De){var i=dn,s=un;i=(s&~(1<<32-bt(s)-1)).toString(32)+i,n="_"+n+"R_"+i,i=Rs++,0<i&&(n+="H"+i.toString(32)),n+="_"}else i=Qb++,n="_"+n+"r_"+i.toString(32)+"_";return e.memoizedState=n},useHostTransitionStatus:ju,useFormState:hm,useActionState:hm,useOptimistic:function(e){var n=St();n.memoizedState=n.baseState=e;var i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return n.queue=i,n=zu.bind(null,Ce,!0,i),i.dispatch=n,[e,n]},useMemoCache:Su,useCacheRefresh:function(){return St().memoizedState=aS.bind(null,Ce)},useEffectEvent:function(e){var n=St(),i={impl:e};return n.memoizedState=i,function(){if((Ie&2)!==0)throw Error(o(440));return i.impl.apply(void 0,arguments)}}},Ru={readContext:mt,use:Os,useCallback:_m,useContext:mt,useEffect:Cu,useImperativeHandle:Nm,useInsertionEffect:bm,useLayoutEffect:Sm,useMemo:Em,useReducer:Ls,useRef:ym,useState:function(){return Ls(Rn)},useDebugValue:Tu,useDeferredValue:function(e,n){var i=tt();return Cm(i,qe.memoizedState,e,n)},useTransition:function(){var e=Ls(Rn)[0],n=tt().memoizedState;return[typeof e=="boolean"?e:Xl(e),n]},useSyncExternalStore:tm,useId:jm,useHostTransitionStatus:ju,useFormState:mm,useActionState:mm,useOptimistic:function(e,n){var i=tt();return sm(i,qe,e,n)},useMemoCache:Su,useCacheRefresh:zm};Ru.useEffectEvent=xm;var Hm={readContext:mt,use:Os,useCallback:_m,useContext:mt,useEffect:Cu,useImperativeHandle:Nm,useInsertionEffect:bm,useLayoutEffect:Sm,useMemo:Em,useReducer:Nu,useRef:ym,useState:function(){return Nu(Rn)},useDebugValue:Tu,useDeferredValue:function(e,n){var i=tt();return qe===null?Au(i,e,n):Cm(i,qe.memoizedState,e,n)},useTransition:function(){var e=Nu(Rn)[0],n=tt().memoizedState;return[typeof e=="boolean"?e:Xl(e),n]},useSyncExternalStore:tm,useId:jm,useHostTransitionStatus:ju,useFormState:gm,useActionState:gm,useOptimistic:function(e,n){var i=tt();return qe!==null?sm(i,qe,e,n):(i.baseState=e,[e,i.queue.dispatch])},useMemoCache:Su,useCacheRefresh:zm};Hm.useEffectEvent=xm;function Du(e,n,i,s){n=e.memoizedState,i=i(s,n),i=i==null?n:v({},n,i),e.memoizedState=i,e.lanes===0&&(e.updateQueue.baseState=i)}var Ou={enqueueSetState:function(e,n,i){e=e._reactInternals;var s=kt(),u=ia(s);u.payload=n,i!=null&&(u.callback=i),n=la(e,u,s),n!==null&&(Mt(n,e,s),ql(n,e,s))},enqueueReplaceState:function(e,n,i){e=e._reactInternals;var s=kt(),u=ia(s);u.tag=1,u.payload=n,i!=null&&(u.callback=i),n=la(e,u,s),n!==null&&(Mt(n,e,s),ql(n,e,s))},enqueueForceUpdate:function(e,n){e=e._reactInternals;var i=kt(),s=ia(i);s.tag=2,n!=null&&(s.callback=n),n=la(e,s,i),n!==null&&(Mt(n,e,i),ql(n,e,i))}};function Im(e,n,i,s,u,h,b){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(s,h,b):n.prototype&&n.prototype.isPureReactComponent?!Ol(i,s)||!Ol(u,h):!0}function km(e,n,i,s){e=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(i,s),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(i,s),n.state!==e&&Ou.enqueueReplaceState(n,n.state,null)}function Ka(e,n){var i=n;if("ref"in n){i={};for(var s in n)s!=="ref"&&(i[s]=n[s])}if(e=e.defaultProps){i===n&&(i=v({},i));for(var u in e)i[u]===void 0&&(i[u]=e[u])}return i}function Bm(e){gs(e)}function Um(e){console.error(e)}function Gm(e){gs(e)}function Bs(e,n){try{var i=e.onUncaughtError;i(n.value,{componentStack:n.stack})}catch(s){setTimeout(function(){throw s})}}function qm(e,n,i){try{var s=e.onCaughtError;s(i.value,{componentStack:i.stack,errorBoundary:n.tag===1?n.stateNode:null})}catch(u){setTimeout(function(){throw u})}}function Lu(e,n,i){return i=ia(i),i.tag=3,i.payload={element:null},i.callback=function(){Bs(e,n)},i}function Ym(e){return e=ia(e),e.tag=3,e}function Vm(e,n,i,s){var u=i.type.getDerivedStateFromError;if(typeof u=="function"){var h=s.value;e.payload=function(){return u(h)},e.callback=function(){qm(n,i,s)}}var b=i.stateNode;b!==null&&typeof b.componentDidCatch=="function"&&(e.callback=function(){qm(n,i,s),typeof u!="function"&&(da===null?da=new Set([this]):da.add(this));var E=s.stack;this.componentDidCatch(s.value,{componentStack:E!==null?E:""})})}function lS(e,n,i,s,u){if(i.flags|=32768,s!==null&&typeof s=="object"&&typeof s.then=="function"){if(n=i.alternate,n!==null&&Li(n,i,u,!0),i=Ot.current,i!==null){switch(i.tag){case 31:case 13:return Xt===null?Qs():i.alternate===null&&We===0&&(We=3),i.flags&=-257,i.flags|=65536,i.lanes=u,s===Cs?i.flags|=16384:(n=i.updateQueue,n===null?i.updateQueue=new Set([s]):n.add(s),od(e,s,u)),!1;case 22:return i.flags|=65536,s===Cs?i.flags|=16384:(n=i.updateQueue,n===null?(n={transitions:null,markerInstances:null,retryQueue:new Set([s])},i.updateQueue=n):(i=n.retryQueue,i===null?n.retryQueue=new Set([s]):i.add(s)),od(e,s,u)),!1}throw Error(o(435,i.tag))}return od(e,s,u),Qs(),!1}if(De)return n=Ot.current,n!==null?((n.flags&65536)===0&&(n.flags|=256),n.flags|=65536,n.lanes=u,s!==eu&&(e=Error(o(422),{cause:s}),Il(qt(e,i)))):(s!==eu&&(n=Error(o(423),{cause:s}),Il(qt(n,i))),e=e.current.alternate,e.flags|=65536,u&=-u,e.lanes|=u,s=qt(s,i),u=Lu(e.stateNode,s,u),du(e,u),We!==4&&(We=2)),!1;var h=Error(o(520),{cause:s});if(h=qt(h,i),no===null?no=[h]:no.push(h),We!==4&&(We=2),n===null)return!0;s=qt(s,i),i=n;do{switch(i.tag){case 3:return i.flags|=65536,e=u&-u,i.lanes|=e,e=Lu(i.stateNode,s,e),du(i,e),!1;case 1:if(n=i.type,h=i.stateNode,(i.flags&128)===0&&(typeof n.getDerivedStateFromError=="function"||h!==null&&typeof h.componentDidCatch=="function"&&(da===null||!da.has(h))))return i.flags|=65536,u&=-u,i.lanes|=u,u=Ym(u),Vm(u,e,i,s),du(i,u),!1}i=i.return}while(i!==null);return!1}var Hu=Error(o(461)),lt=!1;function pt(e,n,i,s){n.child=e===null?Fh(n,null,i,s):Fa(n,e.child,i,s)}function $m(e,n,i,s,u){i=i.render;var h=n.ref;if("ref"in s){var b={};for(var E in s)E!=="ref"&&(b[E]=s[E])}else b=s;return Va(n),s=yu(e,n,i,b,h,u),E=vu(),e!==null&&!lt?(xu(e,n,u),Dn(e,n,u)):(De&&E&&Jc(n),n.flags|=1,pt(e,n,s,u),n.child)}function Xm(e,n,i,s,u){if(e===null){var h=i.type;return typeof h=="function"&&!Zc(h)&&h.defaultProps===void 0&&i.compare===null?(n.tag=15,n.type=h,Pm(e,n,h,s,u)):(e=bs(i.type,null,s,n,n.mode,u),e.ref=n.ref,e.return=n,n.child=e)}if(h=e.child,!Vu(e,u)){var b=h.memoizedProps;if(i=i.compare,i=i!==null?i:Ol,i(b,s)&&e.ref===n.ref)return Dn(e,n,u)}return n.flags|=1,e=Tn(h,s),e.ref=n.ref,e.return=n,n.child=e}function Pm(e,n,i,s,u){if(e!==null){var h=e.memoizedProps;if(Ol(h,s)&&e.ref===n.ref)if(lt=!1,n.pendingProps=s=h,Vu(e,u))(e.flags&131072)!==0&&(lt=!0);else return n.lanes=e.lanes,Dn(e,n,u)}return Iu(e,n,i,s,u)}function Fm(e,n,i,s){var u=s.children,h=e!==null?e.memoizedState:null;if(e===null&&n.stateNode===null&&(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),s.mode==="hidden"){if((n.flags&128)!==0){if(h=h!==null?h.baseLanes|i:i,e!==null){for(s=n.child=e.child,u=0;s!==null;)u=u|s.lanes|s.childLanes,s=s.sibling;s=u&~h}else s=0,n.child=null;return Zm(e,n,h,i,s)}if((i&536870912)!==0)n.memoizedState={baseLanes:0,cachePool:null},e!==null&&_s(n,h!==null?h.cachePool:null),h!==null?Qh(n,h):hu(),Jh(n);else return s=n.lanes=536870912,Zm(e,n,h!==null?h.baseLanes|i:i,i,s)}else h!==null?(_s(n,h.cachePool),Qh(n,h),sa(),n.memoizedState=null):(e!==null&&_s(n,null),hu(),sa());return pt(e,n,u,i),n.child}function Zl(e,n){return e!==null&&e.tag===22||n.stateNode!==null||(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.sibling}function Zm(e,n,i,s,u){var h=su();return h=h===null?null:{parent:at._currentValue,pool:h},n.memoizedState={baseLanes:i,cachePool:h},e!==null&&_s(n,null),hu(),Jh(n),e!==null&&Li(e,n,s,!0),n.childLanes=u,null}function Us(e,n){return n=qs({mode:n.mode,children:n.children},e.mode),n.ref=e.ref,e.child=n,n.return=e,n}function Km(e,n,i){return Fa(n,e.child,null,i),e=Us(n,n.pendingProps),e.flags|=2,Lt(n),n.memoizedState=null,e}function oS(e,n,i){var s=n.pendingProps,u=(n.flags&128)!==0;if(n.flags&=-129,e===null){if(De){if(s.mode==="hidden")return e=Us(n,s),n.lanes=536870912,Zl(null,e);if(pu(n),(e=Xe)?(e=rg(e,$t),e=e!==null&&e.data==="&"?e:null,e!==null&&(n.memoizedState={dehydrated:e,treeContext:Wn!==null?{id:un,overflow:dn}:null,retryLane:536870912,hydrationErrors:null},i=Dh(e),i.return=n,n.child=i,ht=n,Xe=null)):e=null,e===null)throw ta(n);return n.lanes=536870912,null}return Us(n,s)}var h=e.memoizedState;if(h!==null){var b=h.dehydrated;if(pu(n),u)if(n.flags&256)n.flags&=-257,n=Km(e,n,i);else if(n.memoizedState!==null)n.child=e.child,n.flags|=128,n=null;else throw Error(o(558));else if(lt||Li(e,n,i,!1),u=(i&e.childLanes)!==0,lt||u){if(s=$e,s!==null&&(b=Jo(s,i),b!==0&&b!==h.retryLane))throw h.retryLane=b,Ua(e,b),Mt(s,e,b),Hu;Qs(),n=Km(e,n,i)}else e=h.treeContext,Xe=Pt(b.nextSibling),ht=n,De=!0,ea=null,$t=!1,e!==null&&Hh(n,e),n=Us(n,s),n.flags|=4096;return n}return e=Tn(e.child,{mode:s.mode,children:s.children}),e.ref=n.ref,n.child=e,e.return=n,e}function Gs(e,n){var i=n.ref;if(i===null)e!==null&&e.ref!==null&&(n.flags|=4194816);else{if(typeof i!="function"&&typeof i!="object")throw Error(o(284));(e===null||e.ref!==i)&&(n.flags|=4194816)}}function Iu(e,n,i,s,u){return Va(n),i=yu(e,n,i,s,void 0,u),s=vu(),e!==null&&!lt?(xu(e,n,u),Dn(e,n,u)):(De&&s&&Jc(n),n.flags|=1,pt(e,n,i,u),n.child)}function Qm(e,n,i,s,u,h){return Va(n),n.updateQueue=null,i=em(n,s,i,u),Wh(e),s=vu(),e!==null&&!lt?(xu(e,n,h),Dn(e,n,h)):(De&&s&&Jc(n),n.flags|=1,pt(e,n,i,h),n.child)}function Jm(e,n,i,s,u){if(Va(n),n.stateNode===null){var h=zi,b=i.contextType;typeof b=="object"&&b!==null&&(h=mt(b)),h=new i(s,h),n.memoizedState=h.state!==null&&h.state!==void 0?h.state:null,h.updater=Ou,n.stateNode=h,h._reactInternals=n,h=n.stateNode,h.props=s,h.state=n.memoizedState,h.refs={},cu(n),b=i.contextType,h.context=typeof b=="object"&&b!==null?mt(b):zi,h.state=n.memoizedState,b=i.getDerivedStateFromProps,typeof b=="function"&&(Du(n,i,b,s),h.state=n.memoizedState),typeof i.getDerivedStateFromProps=="function"||typeof h.getSnapshotBeforeUpdate=="function"||typeof h.UNSAFE_componentWillMount!="function"&&typeof h.componentWillMount!="function"||(b=h.state,typeof h.componentWillMount=="function"&&h.componentWillMount(),typeof h.UNSAFE_componentWillMount=="function"&&h.UNSAFE_componentWillMount(),b!==h.state&&Ou.enqueueReplaceState(h,h.state,null),Vl(n,s,h,u),Yl(),h.state=n.memoizedState),typeof h.componentDidMount=="function"&&(n.flags|=4194308),s=!0}else if(e===null){h=n.stateNode;var E=n.memoizedProps,I=Ka(i,E);h.props=I;var J=h.context,ie=i.contextType;b=zi,typeof ie=="object"&&ie!==null&&(b=mt(ie));var re=i.getDerivedStateFromProps;ie=typeof re=="function"||typeof h.getSnapshotBeforeUpdate=="function",E=n.pendingProps!==E,ie||typeof h.UNSAFE_componentWillReceiveProps!="function"&&typeof h.componentWillReceiveProps!="function"||(E||J!==b)&&km(n,h,s,b),aa=!1;var ee=n.memoizedState;h.state=ee,Vl(n,s,h,u),Yl(),J=n.memoizedState,E||ee!==J||aa?(typeof re=="function"&&(Du(n,i,re,s),J=n.memoizedState),(I=aa||Im(n,i,I,s,ee,J,b))?(ie||typeof h.UNSAFE_componentWillMount!="function"&&typeof h.componentWillMount!="function"||(typeof h.componentWillMount=="function"&&h.componentWillMount(),typeof h.UNSAFE_componentWillMount=="function"&&h.UNSAFE_componentWillMount()),typeof h.componentDidMount=="function"&&(n.flags|=4194308)):(typeof h.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=s,n.memoizedState=J),h.props=s,h.state=J,h.context=b,s=I):(typeof h.componentDidMount=="function"&&(n.flags|=4194308),s=!1)}else{h=n.stateNode,uu(e,n),b=n.memoizedProps,ie=Ka(i,b),h.props=ie,re=n.pendingProps,ee=h.context,J=i.contextType,I=zi,typeof J=="object"&&J!==null&&(I=mt(J)),E=i.getDerivedStateFromProps,(J=typeof E=="function"||typeof h.getSnapshotBeforeUpdate=="function")||typeof h.UNSAFE_componentWillReceiveProps!="function"&&typeof h.componentWillReceiveProps!="function"||(b!==re||ee!==I)&&km(n,h,s,I),aa=!1,ee=n.memoizedState,h.state=ee,Vl(n,s,h,u),Yl();var ne=n.memoizedState;b!==re||ee!==ne||aa||e!==null&&e.dependencies!==null&&ws(e.dependencies)?(typeof E=="function"&&(Du(n,i,E,s),ne=n.memoizedState),(ie=aa||Im(n,i,ie,s,ee,ne,I)||e!==null&&e.dependencies!==null&&ws(e.dependencies))?(J||typeof h.UNSAFE_componentWillUpdate!="function"&&typeof h.componentWillUpdate!="function"||(typeof h.componentWillUpdate=="function"&&h.componentWillUpdate(s,ne,I),typeof h.UNSAFE_componentWillUpdate=="function"&&h.UNSAFE_componentWillUpdate(s,ne,I)),typeof h.componentDidUpdate=="function"&&(n.flags|=4),typeof h.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof h.componentDidUpdate!="function"||b===e.memoizedProps&&ee===e.memoizedState||(n.flags|=4),typeof h.getSnapshotBeforeUpdate!="function"||b===e.memoizedProps&&ee===e.memoizedState||(n.flags|=1024),n.memoizedProps=s,n.memoizedState=ne),h.props=s,h.state=ne,h.context=I,s=ie):(typeof h.componentDidUpdate!="function"||b===e.memoizedProps&&ee===e.memoizedState||(n.flags|=4),typeof h.getSnapshotBeforeUpdate!="function"||b===e.memoizedProps&&ee===e.memoizedState||(n.flags|=1024),s=!1)}return h=s,Gs(e,n),s=(n.flags&128)!==0,h||s?(h=n.stateNode,i=s&&typeof i.getDerivedStateFromError!="function"?null:h.render(),n.flags|=1,e!==null&&s?(n.child=Fa(n,e.child,null,u),n.child=Fa(n,null,i,u)):pt(e,n,i,u),n.memoizedState=h.state,e=n.child):e=Dn(e,n,u),e}function Wm(e,n,i,s){return qa(),n.flags|=256,pt(e,n,i,s),n.child}var ku={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Bu(e){return{baseLanes:e,cachePool:qh()}}function Uu(e,n,i){return e=e!==null?e.childLanes&~i:0,n&&(e|=It),e}function ep(e,n,i){var s=n.pendingProps,u=!1,h=(n.flags&128)!==0,b;if((b=h)||(b=e!==null&&e.memoizedState===null?!1:(et.current&2)!==0),b&&(u=!0,n.flags&=-129),b=(n.flags&32)!==0,n.flags&=-33,e===null){if(De){if(u?oa(n):sa(),(e=Xe)?(e=rg(e,$t),e=e!==null&&e.data!=="&"?e:null,e!==null&&(n.memoizedState={dehydrated:e,treeContext:Wn!==null?{id:un,overflow:dn}:null,retryLane:536870912,hydrationErrors:null},i=Dh(e),i.return=n,n.child=i,ht=n,Xe=null)):e=null,e===null)throw ta(n);return wd(e)?n.lanes=32:n.lanes=536870912,null}var E=s.children;return s=s.fallback,u?(sa(),u=n.mode,E=qs({mode:"hidden",children:E},u),s=Ga(s,u,i,null),E.return=n,s.return=n,E.sibling=s,n.child=E,s=n.child,s.memoizedState=Bu(i),s.childLanes=Uu(e,b,i),n.memoizedState=ku,Zl(null,s)):(oa(n),Gu(n,E))}var I=e.memoizedState;if(I!==null&&(E=I.dehydrated,E!==null)){if(h)n.flags&256?(oa(n),n.flags&=-257,n=qu(e,n,i)):n.memoizedState!==null?(sa(),n.child=e.child,n.flags|=128,n=null):(sa(),E=s.fallback,u=n.mode,s=qs({mode:"visible",children:s.children},u),E=Ga(E,u,i,null),E.flags|=2,s.return=n,E.return=n,s.sibling=E,n.child=s,Fa(n,e.child,null,i),s=n.child,s.memoizedState=Bu(i),s.childLanes=Uu(e,b,i),n.memoizedState=ku,n=Zl(null,s));else if(oa(n),wd(E)){if(b=E.nextSibling&&E.nextSibling.dataset,b)var J=b.dgst;b=J,s=Error(o(419)),s.stack="",s.digest=b,Il({value:s,source:null,stack:null}),n=qu(e,n,i)}else if(lt||Li(e,n,i,!1),b=(i&e.childLanes)!==0,lt||b){if(b=$e,b!==null&&(s=Jo(b,i),s!==0&&s!==I.retryLane))throw I.retryLane=s,Ua(e,s),Mt(b,e,s),Hu;Sd(E)||Qs(),n=qu(e,n,i)}else Sd(E)?(n.flags|=192,n.child=e.child,n=null):(e=I.treeContext,Xe=Pt(E.nextSibling),ht=n,De=!0,ea=null,$t=!1,e!==null&&Hh(n,e),n=Gu(n,s.children),n.flags|=4096);return n}return u?(sa(),E=s.fallback,u=n.mode,I=e.child,J=I.sibling,s=Tn(I,{mode:"hidden",children:s.children}),s.subtreeFlags=I.subtreeFlags&65011712,J!==null?E=Tn(J,E):(E=Ga(E,u,i,null),E.flags|=2),E.return=n,s.return=n,s.sibling=E,n.child=s,Zl(null,s),s=n.child,E=e.child.memoizedState,E===null?E=Bu(i):(u=E.cachePool,u!==null?(I=at._currentValue,u=u.parent!==I?{parent:I,pool:I}:u):u=qh(),E={baseLanes:E.baseLanes|i,cachePool:u}),s.memoizedState=E,s.childLanes=Uu(e,b,i),n.memoizedState=ku,Zl(e.child,s)):(oa(n),i=e.child,e=i.sibling,i=Tn(i,{mode:"visible",children:s.children}),i.return=n,i.sibling=null,e!==null&&(b=n.deletions,b===null?(n.deletions=[e],n.flags|=16):b.push(e)),n.child=i,n.memoizedState=null,i)}function Gu(e,n){return n=qs({mode:"visible",children:n},e.mode),n.return=e,e.child=n}function qs(e,n){return e=Dt(22,e,null,n),e.lanes=0,e}function qu(e,n,i){return Fa(n,e.child,null,i),e=Gu(n,n.pendingProps.children),e.flags|=2,n.memoizedState=null,e}function tp(e,n,i){e.lanes|=n;var s=e.alternate;s!==null&&(s.lanes|=n),au(e.return,n,i)}function Yu(e,n,i,s,u,h){var b=e.memoizedState;b===null?e.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:s,tail:i,tailMode:u,treeForkCount:h}:(b.isBackwards=n,b.rendering=null,b.renderingStartTime=0,b.last=s,b.tail=i,b.tailMode=u,b.treeForkCount=h)}function np(e,n,i){var s=n.pendingProps,u=s.revealOrder,h=s.tail;s=s.children;var b=et.current,E=(b&2)!==0;if(E?(b=b&1|2,n.flags|=128):b&=1,Y(et,b),pt(e,n,s,i),s=De?Hl:0,!E&&e!==null&&(e.flags&128)!==0)e:for(e=n.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&tp(e,i,n);else if(e.tag===19)tp(e,i,n);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===n)break e;for(;e.sibling===null;){if(e.return===null||e.return===n)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(u){case"forwards":for(i=n.child,u=null;i!==null;)e=i.alternate,e!==null&&js(e)===null&&(u=i),i=i.sibling;i=u,i===null?(u=n.child,n.child=null):(u=i.sibling,i.sibling=null),Yu(n,!1,u,i,h,s);break;case"backwards":case"unstable_legacy-backwards":for(i=null,u=n.child,n.child=null;u!==null;){if(e=u.alternate,e!==null&&js(e)===null){n.child=u;break}e=u.sibling,u.sibling=i,i=u,u=e}Yu(n,!0,i,null,h,s);break;case"together":Yu(n,!1,null,null,void 0,s);break;default:n.memoizedState=null}return n.child}function Dn(e,n,i){if(e!==null&&(n.dependencies=e.dependencies),ua|=n.lanes,(i&n.childLanes)===0)if(e!==null){if(Li(e,n,i,!1),(i&n.childLanes)===0)return null}else return null;if(e!==null&&n.child!==e.child)throw Error(o(153));if(n.child!==null){for(e=n.child,i=Tn(e,e.pendingProps),n.child=i,i.return=n;e.sibling!==null;)e=e.sibling,i=i.sibling=Tn(e,e.pendingProps),i.return=n;i.sibling=null}return n.child}function Vu(e,n){return(e.lanes&n)!==0?!0:(e=e.dependencies,!!(e!==null&&ws(e)))}function sS(e,n,i){switch(n.tag){case 3:se(n,n.stateNode.containerInfo),na(n,at,e.memoizedState.cache),qa();break;case 27:case 5:be(n);break;case 4:se(n,n.stateNode.containerInfo);break;case 10:na(n,n.type,n.memoizedProps.value);break;case 31:if(n.memoizedState!==null)return n.flags|=128,pu(n),null;break;case 13:var s=n.memoizedState;if(s!==null)return s.dehydrated!==null?(oa(n),n.flags|=128,null):(i&n.child.childLanes)!==0?ep(e,n,i):(oa(n),e=Dn(e,n,i),e!==null?e.sibling:null);oa(n);break;case 19:var u=(e.flags&128)!==0;if(s=(i&n.childLanes)!==0,s||(Li(e,n,i,!1),s=(i&n.childLanes)!==0),u){if(s)return np(e,n,i);n.flags|=128}if(u=n.memoizedState,u!==null&&(u.rendering=null,u.tail=null,u.lastEffect=null),Y(et,et.current),s)break;return null;case 22:return n.lanes=0,Fm(e,n,i,n.pendingProps);case 24:na(n,at,e.memoizedState.cache)}return Dn(e,n,i)}function ap(e,n,i){if(e!==null)if(e.memoizedProps!==n.pendingProps)lt=!0;else{if(!Vu(e,i)&&(n.flags&128)===0)return lt=!1,sS(e,n,i);lt=(e.flags&131072)!==0}else lt=!1,De&&(n.flags&1048576)!==0&&Lh(n,Hl,n.index);switch(n.lanes=0,n.tag){case 16:e:{var s=n.pendingProps;if(e=Xa(n.elementType),n.type=e,typeof e=="function")Zc(e)?(s=Ka(e,s),n.tag=1,n=Jm(null,n,e,s,i)):(n.tag=0,n=Iu(null,n,e,s,i));else{if(e!=null){var u=e.$$typeof;if(u===_){n.tag=11,n=$m(null,n,e,s,i);break e}else if(u===B){n.tag=14,n=Xm(null,n,e,s,i);break e}}throw n=N(e)||e,Error(o(306,n,""))}}return n;case 0:return Iu(e,n,n.type,n.pendingProps,i);case 1:return s=n.type,u=Ka(s,n.pendingProps),Jm(e,n,s,u,i);case 3:e:{if(se(n,n.stateNode.containerInfo),e===null)throw Error(o(387));s=n.pendingProps;var h=n.memoizedState;u=h.element,uu(e,n),Vl(n,s,null,i);var b=n.memoizedState;if(s=b.cache,na(n,at,s),s!==h.cache&&iu(n,[at],i,!0),Yl(),s=b.element,h.isDehydrated)if(h={element:s,isDehydrated:!1,cache:b.cache},n.updateQueue.baseState=h,n.memoizedState=h,n.flags&256){n=Wm(e,n,s,i);break e}else if(s!==u){u=qt(Error(o(424)),n),Il(u),n=Wm(e,n,s,i);break e}else for(e=n.stateNode.containerInfo,e.nodeType===9?e=e.body:e=e.nodeName==="HTML"?e.ownerDocument.body:e,Xe=Pt(e.firstChild),ht=n,De=!0,ea=null,$t=!0,i=Fh(n,null,s,i),n.child=i;i;)i.flags=i.flags&-3|4096,i=i.sibling;else{if(qa(),s===u){n=Dn(e,n,i);break e}pt(e,n,s,i)}n=n.child}return n;case 26:return Gs(e,n),e===null?(i=mg(n.type,null,n.pendingProps,null))?n.memoizedState=i:De||(i=n.type,e=n.pendingProps,s=ir($.current).createElement(i),s[rt]=n,s[yt]=e,gt(s,i,e),nt(s),n.stateNode=s):n.memoizedState=mg(n.type,e.memoizedProps,n.pendingProps,e.memoizedState),null;case 27:return be(n),e===null&&De&&(s=n.stateNode=dg(n.type,n.pendingProps,$.current),ht=n,$t=!0,u=Xe,pa(n.type)?(Nd=u,Xe=Pt(s.firstChild)):Xe=u),pt(e,n,n.pendingProps.children,i),Gs(e,n),e===null&&(n.flags|=4194304),n.child;case 5:return e===null&&De&&((u=s=Xe)&&(s=IS(s,n.type,n.pendingProps,$t),s!==null?(n.stateNode=s,ht=n,Xe=Pt(s.firstChild),$t=!1,u=!0):u=!1),u||ta(n)),be(n),u=n.type,h=n.pendingProps,b=e!==null?e.memoizedProps:null,s=h.children,vd(u,h)?s=null:b!==null&&vd(u,b)&&(n.flags|=32),n.memoizedState!==null&&(u=yu(e,n,Jb,null,null,i),uo._currentValue=u),Gs(e,n),pt(e,n,s,i),n.child;case 6:return e===null&&De&&((e=i=Xe)&&(i=kS(i,n.pendingProps,$t),i!==null?(n.stateNode=i,ht=n,Xe=null,e=!0):e=!1),e||ta(n)),null;case 13:return ep(e,n,i);case 4:return se(n,n.stateNode.containerInfo),s=n.pendingProps,e===null?n.child=Fa(n,null,s,i):pt(e,n,s,i),n.child;case 11:return $m(e,n,n.type,n.pendingProps,i);case 7:return pt(e,n,n.pendingProps,i),n.child;case 8:return pt(e,n,n.pendingProps.children,i),n.child;case 12:return pt(e,n,n.pendingProps.children,i),n.child;case 10:return s=n.pendingProps,na(n,n.type,s.value),pt(e,n,s.children,i),n.child;case 9:return u=n.type._context,s=n.pendingProps.children,Va(n),u=mt(u),s=s(u),n.flags|=1,pt(e,n,s,i),n.child;case 14:return Xm(e,n,n.type,n.pendingProps,i);case 15:return Pm(e,n,n.type,n.pendingProps,i);case 19:return np(e,n,i);case 31:return oS(e,n,i);case 22:return Fm(e,n,i,n.pendingProps);case 24:return Va(n),s=mt(at),e===null?(u=su(),u===null&&(u=$e,h=lu(),u.pooledCache=h,h.refCount++,h!==null&&(u.pooledCacheLanes|=i),u=h),n.memoizedState={parent:s,cache:u},cu(n),na(n,at,u)):((e.lanes&i)!==0&&(uu(e,n),Vl(n,null,null,i),Yl()),u=e.memoizedState,h=n.memoizedState,u.parent!==s?(u={parent:s,cache:s},n.memoizedState=u,n.lanes===0&&(n.memoizedState=n.updateQueue.baseState=u),na(n,at,s)):(s=h.cache,na(n,at,s),s!==u.cache&&iu(n,[at],i,!0))),pt(e,n,n.pendingProps.children,i),n.child;case 29:throw n.pendingProps}throw Error(o(156,n.tag))}function On(e){e.flags|=4}function $u(e,n,i,s,u){if((n=(e.mode&32)!==0)&&(n=!1),n){if(e.flags|=16777216,(u&335544128)===u)if(e.stateNode.complete)e.flags|=8192;else if(jp())e.flags|=8192;else throw Pa=Cs,ru}else e.flags&=-16777217}function ip(e,n){if(n.type!=="stylesheet"||(n.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!xg(n))if(jp())e.flags|=8192;else throw Pa=Cs,ru}function Ys(e,n){n!==null&&(e.flags|=4),e.flags&16384&&(n=e.tag!==22?Zo():536870912,e.lanes|=n,Pi|=n)}function Kl(e,n){if(!De)switch(e.tailMode){case"hidden":n=e.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?e.tail=null:i.sibling=null;break;case"collapsed":i=e.tail;for(var s=null;i!==null;)i.alternate!==null&&(s=i),i=i.sibling;s===null?n||e.tail===null?e.tail=null:e.tail.sibling=null:s.sibling=null}}function Pe(e){var n=e.alternate!==null&&e.alternate.child===e.child,i=0,s=0;if(n)for(var u=e.child;u!==null;)i|=u.lanes|u.childLanes,s|=u.subtreeFlags&65011712,s|=u.flags&65011712,u.return=e,u=u.sibling;else for(u=e.child;u!==null;)i|=u.lanes|u.childLanes,s|=u.subtreeFlags,s|=u.flags,u.return=e,u=u.sibling;return e.subtreeFlags|=s,e.childLanes=i,n}function rS(e,n,i){var s=n.pendingProps;switch(Wc(n),n.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Pe(n),null;case 1:return Pe(n),null;case 3:return i=n.stateNode,s=null,e!==null&&(s=e.memoizedState.cache),n.memoizedState.cache!==s&&(n.flags|=2048),jn(at),ue(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(e===null||e.child===null)&&(Oi(n)?On(n):e===null||e.memoizedState.isDehydrated&&(n.flags&256)===0||(n.flags|=1024,tu())),Pe(n),null;case 26:var u=n.type,h=n.memoizedState;return e===null?(On(n),h!==null?(Pe(n),ip(n,h)):(Pe(n),$u(n,u,null,s,i))):h?h!==e.memoizedState?(On(n),Pe(n),ip(n,h)):(Pe(n),n.flags&=-16777217):(e=e.memoizedProps,e!==s&&On(n),Pe(n),$u(n,u,e,s,i)),null;case 27:if(ve(n),i=$.current,u=n.type,e!==null&&n.stateNode!=null)e.memoizedProps!==s&&On(n);else{if(!s){if(n.stateNode===null)throw Error(o(166));return Pe(n),null}e=W.current,Oi(n)?Ih(n):(e=dg(u,s,i),n.stateNode=e,On(n))}return Pe(n),null;case 5:if(ve(n),u=n.type,e!==null&&n.stateNode!=null)e.memoizedProps!==s&&On(n);else{if(!s){if(n.stateNode===null)throw Error(o(166));return Pe(n),null}if(h=W.current,Oi(n))Ih(n);else{var b=ir($.current);switch(h){case 1:h=b.createElementNS("http://www.w3.org/2000/svg",u);break;case 2:h=b.createElementNS("http://www.w3.org/1998/Math/MathML",u);break;default:switch(u){case"svg":h=b.createElementNS("http://www.w3.org/2000/svg",u);break;case"math":h=b.createElementNS("http://www.w3.org/1998/Math/MathML",u);break;case"script":h=b.createElement("div"),h.innerHTML="<script><\/script>",h=h.removeChild(h.firstChild);break;case"select":h=typeof s.is=="string"?b.createElement("select",{is:s.is}):b.createElement("select"),s.multiple?h.multiple=!0:s.size&&(h.size=s.size);break;default:h=typeof s.is=="string"?b.createElement(u,{is:s.is}):b.createElement(u)}}h[rt]=n,h[yt]=s;e:for(b=n.child;b!==null;){if(b.tag===5||b.tag===6)h.appendChild(b.stateNode);else if(b.tag!==4&&b.tag!==27&&b.child!==null){b.child.return=b,b=b.child;continue}if(b===n)break e;for(;b.sibling===null;){if(b.return===null||b.return===n)break e;b=b.return}b.sibling.return=b.return,b=b.sibling}n.stateNode=h;e:switch(gt(h,u,s),u){case"button":case"input":case"select":case"textarea":s=!!s.autoFocus;break e;case"img":s=!0;break e;default:s=!1}s&&On(n)}}return Pe(n),$u(n,n.type,e===null?null:e.memoizedProps,n.pendingProps,i),null;case 6:if(e&&n.stateNode!=null)e.memoizedProps!==s&&On(n);else{if(typeof s!="string"&&n.stateNode===null)throw Error(o(166));if(e=$.current,Oi(n)){if(e=n.stateNode,i=n.memoizedProps,s=null,u=ht,u!==null)switch(u.tag){case 27:case 5:s=u.memoizedProps}e[rt]=n,e=!!(e.nodeValue===i||s!==null&&s.suppressHydrationWarning===!0||eg(e.nodeValue,i)),e||ta(n,!0)}else e=ir(e).createTextNode(s),e[rt]=n,n.stateNode=e}return Pe(n),null;case 31:if(i=n.memoizedState,e===null||e.memoizedState!==null){if(s=Oi(n),i!==null){if(e===null){if(!s)throw Error(o(318));if(e=n.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(o(557));e[rt]=n}else qa(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;Pe(n),e=!1}else i=tu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),e=!0;if(!e)return n.flags&256?(Lt(n),n):(Lt(n),null);if((n.flags&128)!==0)throw Error(o(558))}return Pe(n),null;case 13:if(s=n.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(u=Oi(n),s!==null&&s.dehydrated!==null){if(e===null){if(!u)throw Error(o(318));if(u=n.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(o(317));u[rt]=n}else qa(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;Pe(n),u=!1}else u=tu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=u),u=!0;if(!u)return n.flags&256?(Lt(n),n):(Lt(n),null)}return Lt(n),(n.flags&128)!==0?(n.lanes=i,n):(i=s!==null,e=e!==null&&e.memoizedState!==null,i&&(s=n.child,u=null,s.alternate!==null&&s.alternate.memoizedState!==null&&s.alternate.memoizedState.cachePool!==null&&(u=s.alternate.memoizedState.cachePool.pool),h=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(h=s.memoizedState.cachePool.pool),h!==u&&(s.flags|=2048)),i!==e&&i&&(n.child.flags|=8192),Ys(n,n.updateQueue),Pe(n),null);case 4:return ue(),e===null&&hd(n.stateNode.containerInfo),Pe(n),null;case 10:return jn(n.type),Pe(n),null;case 19:if(U(et),s=n.memoizedState,s===null)return Pe(n),null;if(u=(n.flags&128)!==0,h=s.rendering,h===null)if(u)Kl(s,!1);else{if(We!==0||e!==null&&(e.flags&128)!==0)for(e=n.child;e!==null;){if(h=js(e),h!==null){for(n.flags|=128,Kl(s,!1),e=h.updateQueue,n.updateQueue=e,Ys(n,e),n.subtreeFlags=0,e=i,i=n.child;i!==null;)Rh(i,e),i=i.sibling;return Y(et,et.current&1|2),De&&An(n,s.treeForkCount),n.child}e=e.sibling}s.tail!==null&&ft()>Fs&&(n.flags|=128,u=!0,Kl(s,!1),n.lanes=4194304)}else{if(!u)if(e=js(h),e!==null){if(n.flags|=128,u=!0,e=e.updateQueue,n.updateQueue=e,Ys(n,e),Kl(s,!0),s.tail===null&&s.tailMode==="hidden"&&!h.alternate&&!De)return Pe(n),null}else 2*ft()-s.renderingStartTime>Fs&&i!==536870912&&(n.flags|=128,u=!0,Kl(s,!1),n.lanes=4194304);s.isBackwards?(h.sibling=n.child,n.child=h):(e=s.last,e!==null?e.sibling=h:n.child=h,s.last=h)}return s.tail!==null?(e=s.tail,s.rendering=e,s.tail=e.sibling,s.renderingStartTime=ft(),e.sibling=null,i=et.current,Y(et,u?i&1|2:i&1),De&&An(n,s.treeForkCount),e):(Pe(n),null);case 22:case 23:return Lt(n),mu(),s=n.memoizedState!==null,e!==null?e.memoizedState!==null!==s&&(n.flags|=8192):s&&(n.flags|=8192),s?(i&536870912)!==0&&(n.flags&128)===0&&(Pe(n),n.subtreeFlags&6&&(n.flags|=8192)):Pe(n),i=n.updateQueue,i!==null&&Ys(n,i.retryQueue),i=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(i=e.memoizedState.cachePool.pool),s=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(s=n.memoizedState.cachePool.pool),s!==i&&(n.flags|=2048),e!==null&&U($a),null;case 24:return i=null,e!==null&&(i=e.memoizedState.cache),n.memoizedState.cache!==i&&(n.flags|=2048),jn(at),Pe(n),null;case 25:return null;case 30:return null}throw Error(o(156,n.tag))}function cS(e,n){switch(Wc(n),n.tag){case 1:return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 3:return jn(at),ue(),e=n.flags,(e&65536)!==0&&(e&128)===0?(n.flags=e&-65537|128,n):null;case 26:case 27:case 5:return ve(n),null;case 31:if(n.memoizedState!==null){if(Lt(n),n.alternate===null)throw Error(o(340));qa()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 13:if(Lt(n),e=n.memoizedState,e!==null&&e.dehydrated!==null){if(n.alternate===null)throw Error(o(340));qa()}return e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 19:return U(et),null;case 4:return ue(),null;case 10:return jn(n.type),null;case 22:case 23:return Lt(n),mu(),e!==null&&U($a),e=n.flags,e&65536?(n.flags=e&-65537|128,n):null;case 24:return jn(at),null;case 25:return null;default:return null}}function lp(e,n){switch(Wc(n),n.tag){case 3:jn(at),ue();break;case 26:case 27:case 5:ve(n);break;case 4:ue();break;case 31:n.memoizedState!==null&&Lt(n);break;case 13:Lt(n);break;case 19:U(et);break;case 10:jn(n.type);break;case 22:case 23:Lt(n),mu(),e!==null&&U($a);break;case 24:jn(at)}}function Ql(e,n){try{var i=n.updateQueue,s=i!==null?i.lastEffect:null;if(s!==null){var u=s.next;i=u;do{if((i.tag&e)===e){s=void 0;var h=i.create,b=i.inst;s=h(),b.destroy=s}i=i.next}while(i!==u)}}catch(E){Ue(n,n.return,E)}}function ra(e,n,i){try{var s=n.updateQueue,u=s!==null?s.lastEffect:null;if(u!==null){var h=u.next;s=h;do{if((s.tag&e)===e){var b=s.inst,E=b.destroy;if(E!==void 0){b.destroy=void 0,u=n;var I=i,J=E;try{J()}catch(ie){Ue(u,I,ie)}}}s=s.next}while(s!==h)}}catch(ie){Ue(n,n.return,ie)}}function op(e){var n=e.updateQueue;if(n!==null){var i=e.stateNode;try{Kh(n,i)}catch(s){Ue(e,e.return,s)}}}function sp(e,n,i){i.props=Ka(e.type,e.memoizedProps),i.state=e.memoizedState;try{i.componentWillUnmount()}catch(s){Ue(e,n,s)}}function Jl(e,n){try{var i=e.ref;if(i!==null){switch(e.tag){case 26:case 27:case 5:var s=e.stateNode;break;case 30:s=e.stateNode;break;default:s=e.stateNode}typeof i=="function"?e.refCleanup=i(s):i.current=s}}catch(u){Ue(e,n,u)}}function fn(e,n){var i=e.ref,s=e.refCleanup;if(i!==null)if(typeof s=="function")try{s()}catch(u){Ue(e,n,u)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof i=="function")try{i(null)}catch(u){Ue(e,n,u)}else i.current=null}function rp(e){var n=e.type,i=e.memoizedProps,s=e.stateNode;try{e:switch(n){case"button":case"input":case"select":case"textarea":i.autoFocus&&s.focus();break e;case"img":i.src?s.src=i.src:i.srcSet&&(s.srcset=i.srcSet)}}catch(u){Ue(e,e.return,u)}}function Xu(e,n,i){try{var s=e.stateNode;zS(s,e.type,i,n),s[yt]=n}catch(u){Ue(e,e.return,u)}}function cp(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&pa(e.type)||e.tag===4}function Pu(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||cp(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.tag===27&&pa(e.type)||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 Fu(e,n,i){var s=e.tag;if(s===5||s===6)e=e.stateNode,n?(i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i).insertBefore(e,n):(n=i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i,n.appendChild(e),i=i._reactRootContainer,i!=null||n.onclick!==null||(n.onclick=En));else if(s!==4&&(s===27&&pa(e.type)&&(i=e.stateNode,n=null),e=e.child,e!==null))for(Fu(e,n,i),e=e.sibling;e!==null;)Fu(e,n,i),e=e.sibling}function Vs(e,n,i){var s=e.tag;if(s===5||s===6)e=e.stateNode,n?i.insertBefore(e,n):i.appendChild(e);else if(s!==4&&(s===27&&pa(e.type)&&(i=e.stateNode),e=e.child,e!==null))for(Vs(e,n,i),e=e.sibling;e!==null;)Vs(e,n,i),e=e.sibling}function up(e){var n=e.stateNode,i=e.memoizedProps;try{for(var s=e.type,u=n.attributes;u.length;)n.removeAttributeNode(u[0]);gt(n,s,i),n[rt]=e,n[yt]=i}catch(h){Ue(e,e.return,h)}}var Ln=!1,ot=!1,Zu=!1,dp=typeof WeakSet=="function"?WeakSet:Set,dt=null;function uS(e,n){if(e=e.containerInfo,gd=dr,e=Nh(e),qc(e)){if("selectionStart"in e)var i={start:e.selectionStart,end:e.selectionEnd};else e:{i=(i=e.ownerDocument)&&i.defaultView||window;var s=i.getSelection&&i.getSelection();if(s&&s.rangeCount!==0){i=s.anchorNode;var u=s.anchorOffset,h=s.focusNode;s=s.focusOffset;try{i.nodeType,h.nodeType}catch{i=null;break e}var b=0,E=-1,I=-1,J=0,ie=0,re=e,ee=null;t:for(;;){for(var ne;re!==i||u!==0&&re.nodeType!==3||(E=b+u),re!==h||s!==0&&re.nodeType!==3||(I=b+s),re.nodeType===3&&(b+=re.nodeValue.length),(ne=re.firstChild)!==null;)ee=re,re=ne;for(;;){if(re===e)break t;if(ee===i&&++J===u&&(E=b),ee===h&&++ie===s&&(I=b),(ne=re.nextSibling)!==null)break;re=ee,ee=re.parentNode}re=ne}i=E===-1||I===-1?null:{start:E,end:I}}else i=null}i=i||{start:0,end:0}}else i=null;for(yd={focusedElem:e,selectionRange:i},dr=!1,dt=n;dt!==null;)if(n=dt,e=n.child,(n.subtreeFlags&1028)!==0&&e!==null)e.return=n,dt=e;else for(;dt!==null;){switch(n=dt,h=n.alternate,e=n.flags,n.tag){case 0:if((e&4)!==0&&(e=n.updateQueue,e=e!==null?e.events:null,e!==null))for(i=0;i<e.length;i++)u=e[i],u.ref.impl=u.nextImpl;break;case 11:case 15:break;case 1:if((e&1024)!==0&&h!==null){e=void 0,i=n,u=h.memoizedProps,h=h.memoizedState,s=i.stateNode;try{var he=Ka(i.type,u);e=s.getSnapshotBeforeUpdate(he,h),s.__reactInternalSnapshotBeforeUpdate=e}catch(Se){Ue(i,i.return,Se)}}break;case 3:if((e&1024)!==0){if(e=n.stateNode.containerInfo,i=e.nodeType,i===9)bd(e);else if(i===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":bd(e);break;default:e.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((e&1024)!==0)throw Error(o(163))}if(e=n.sibling,e!==null){e.return=n.return,dt=e;break}dt=n.return}}function fp(e,n,i){var s=i.flags;switch(i.tag){case 0:case 11:case 15:In(e,i),s&4&&Ql(5,i);break;case 1:if(In(e,i),s&4)if(e=i.stateNode,n===null)try{e.componentDidMount()}catch(b){Ue(i,i.return,b)}else{var u=Ka(i.type,n.memoizedProps);n=n.memoizedState;try{e.componentDidUpdate(u,n,e.__reactInternalSnapshotBeforeUpdate)}catch(b){Ue(i,i.return,b)}}s&64&&op(i),s&512&&Jl(i,i.return);break;case 3:if(In(e,i),s&64&&(e=i.updateQueue,e!==null)){if(n=null,i.child!==null)switch(i.child.tag){case 27:case 5:n=i.child.stateNode;break;case 1:n=i.child.stateNode}try{Kh(e,n)}catch(b){Ue(i,i.return,b)}}break;case 27:n===null&&s&4&&up(i);case 26:case 5:In(e,i),n===null&&s&4&&rp(i),s&512&&Jl(i,i.return);break;case 12:In(e,i);break;case 31:In(e,i),s&4&&pp(e,i);break;case 13:In(e,i),s&4&&gp(e,i),s&64&&(e=i.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(i=xS.bind(null,i),BS(e,i))));break;case 22:if(s=i.memoizedState!==null||Ln,!s){n=n!==null&&n.memoizedState!==null||ot,u=Ln;var h=ot;Ln=s,(ot=n)&&!h?kn(e,i,(i.subtreeFlags&8772)!==0):In(e,i),Ln=u,ot=h}break;case 30:break;default:In(e,i)}}function hp(e){var n=e.alternate;n!==null&&(e.alternate=null,hp(n)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(n=e.stateNode,n!==null&&_l(n)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var Ze=null,Et=!1;function Hn(e,n,i){for(i=i.child;i!==null;)mp(e,n,i),i=i.sibling}function mp(e,n,i){if(xt&&typeof xt.onCommitFiberUnmount=="function")try{xt.onCommitFiberUnmount(za,i)}catch{}switch(i.tag){case 26:ot||fn(i,n),Hn(e,n,i),i.memoizedState?i.memoizedState.count--:i.stateNode&&(i=i.stateNode,i.parentNode.removeChild(i));break;case 27:ot||fn(i,n);var s=Ze,u=Et;pa(i.type)&&(Ze=i.stateNode,Et=!1),Hn(e,n,i),so(i.stateNode),Ze=s,Et=u;break;case 5:ot||fn(i,n);case 6:if(s=Ze,u=Et,Ze=null,Hn(e,n,i),Ze=s,Et=u,Ze!==null)if(Et)try{(Ze.nodeType===9?Ze.body:Ze.nodeName==="HTML"?Ze.ownerDocument.body:Ze).removeChild(i.stateNode)}catch(h){Ue(i,n,h)}else try{Ze.removeChild(i.stateNode)}catch(h){Ue(i,n,h)}break;case 18:Ze!==null&&(Et?(e=Ze,og(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,i.stateNode),tl(e)):og(Ze,i.stateNode));break;case 4:s=Ze,u=Et,Ze=i.stateNode.containerInfo,Et=!0,Hn(e,n,i),Ze=s,Et=u;break;case 0:case 11:case 14:case 15:ra(2,i,n),ot||ra(4,i,n),Hn(e,n,i);break;case 1:ot||(fn(i,n),s=i.stateNode,typeof s.componentWillUnmount=="function"&&sp(i,n,s)),Hn(e,n,i);break;case 21:Hn(e,n,i);break;case 22:ot=(s=ot)||i.memoizedState!==null,Hn(e,n,i),ot=s;break;default:Hn(e,n,i)}}function pp(e,n){if(n.memoizedState===null&&(e=n.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{tl(e)}catch(i){Ue(n,n.return,i)}}}function gp(e,n){if(n.memoizedState===null&&(e=n.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{tl(e)}catch(i){Ue(n,n.return,i)}}function dS(e){switch(e.tag){case 31:case 13:case 19:var n=e.stateNode;return n===null&&(n=e.stateNode=new dp),n;case 22:return e=e.stateNode,n=e._retryCache,n===null&&(n=e._retryCache=new dp),n;default:throw Error(o(435,e.tag))}}function $s(e,n){var i=dS(e);n.forEach(function(s){if(!i.has(s)){i.add(s);var u=bS.bind(null,e,s);s.then(u,u)}})}function Ct(e,n){var i=n.deletions;if(i!==null)for(var s=0;s<i.length;s++){var u=i[s],h=e,b=n,E=b;e:for(;E!==null;){switch(E.tag){case 27:if(pa(E.type)){Ze=E.stateNode,Et=!1;break e}break;case 5:Ze=E.stateNode,Et=!1;break e;case 3:case 4:Ze=E.stateNode.containerInfo,Et=!0;break e}E=E.return}if(Ze===null)throw Error(o(160));mp(h,b,u),Ze=null,Et=!1,h=u.alternate,h!==null&&(h.return=null),u.return=null}if(n.subtreeFlags&13886)for(n=n.child;n!==null;)yp(n,e),n=n.sibling}var Wt=null;function yp(e,n){var i=e.alternate,s=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:Ct(n,e),Tt(e),s&4&&(ra(3,e,e.return),Ql(3,e),ra(5,e,e.return));break;case 1:Ct(n,e),Tt(e),s&512&&(ot||i===null||fn(i,i.return)),s&64&&Ln&&(e=e.updateQueue,e!==null&&(s=e.callbacks,s!==null&&(i=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=i===null?s:i.concat(s))));break;case 26:var u=Wt;if(Ct(n,e),Tt(e),s&512&&(ot||i===null||fn(i,i.return)),s&4){var h=i!==null?i.memoizedState:null;if(s=e.memoizedState,i===null)if(s===null)if(e.stateNode===null){e:{s=e.type,i=e.memoizedProps,u=u.ownerDocument||u;t:switch(s){case"title":h=u.getElementsByTagName("title")[0],(!h||h[Oa]||h[rt]||h.namespaceURI==="http://www.w3.org/2000/svg"||h.hasAttribute("itemprop"))&&(h=u.createElement(s),u.head.insertBefore(h,u.querySelector("head > title"))),gt(h,s,i),h[rt]=e,nt(h),s=h;break e;case"link":var b=yg("link","href",u).get(s+(i.href||""));if(b){for(var E=0;E<b.length;E++)if(h=b[E],h.getAttribute("href")===(i.href==null||i.href===""?null:i.href)&&h.getAttribute("rel")===(i.rel==null?null:i.rel)&&h.getAttribute("title")===(i.title==null?null:i.title)&&h.getAttribute("crossorigin")===(i.crossOrigin==null?null:i.crossOrigin)){b.splice(E,1);break t}}h=u.createElement(s),gt(h,s,i),u.head.appendChild(h);break;case"meta":if(b=yg("meta","content",u).get(s+(i.content||""))){for(E=0;E<b.length;E++)if(h=b[E],h.getAttribute("content")===(i.content==null?null:""+i.content)&&h.getAttribute("name")===(i.name==null?null:i.name)&&h.getAttribute("property")===(i.property==null?null:i.property)&&h.getAttribute("http-equiv")===(i.httpEquiv==null?null:i.httpEquiv)&&h.getAttribute("charset")===(i.charSet==null?null:i.charSet)){b.splice(E,1);break t}}h=u.createElement(s),gt(h,s,i),u.head.appendChild(h);break;default:throw Error(o(468,s))}h[rt]=e,nt(h),s=h}e.stateNode=s}else vg(u,e.type,e.stateNode);else e.stateNode=gg(u,s,e.memoizedProps);else h!==s?(h===null?i.stateNode!==null&&(i=i.stateNode,i.parentNode.removeChild(i)):h.count--,s===null?vg(u,e.type,e.stateNode):gg(u,s,e.memoizedProps)):s===null&&e.stateNode!==null&&Xu(e,e.memoizedProps,i.memoizedProps)}break;case 27:Ct(n,e),Tt(e),s&512&&(ot||i===null||fn(i,i.return)),i!==null&&s&4&&Xu(e,e.memoizedProps,i.memoizedProps);break;case 5:if(Ct(n,e),Tt(e),s&512&&(ot||i===null||fn(i,i.return)),e.flags&32){u=e.stateNode;try{_i(u,"")}catch(he){Ue(e,e.return,he)}}s&4&&e.stateNode!=null&&(u=e.memoizedProps,Xu(e,u,i!==null?i.memoizedProps:u)),s&1024&&(Zu=!0);break;case 6:if(Ct(n,e),Tt(e),s&4){if(e.stateNode===null)throw Error(o(162));s=e.memoizedProps,i=e.stateNode;try{i.nodeValue=s}catch(he){Ue(e,e.return,he)}}break;case 3:if(sr=null,u=Wt,Wt=lr(n.containerInfo),Ct(n,e),Wt=u,Tt(e),s&4&&i!==null&&i.memoizedState.isDehydrated)try{tl(n.containerInfo)}catch(he){Ue(e,e.return,he)}Zu&&(Zu=!1,vp(e));break;case 4:s=Wt,Wt=lr(e.stateNode.containerInfo),Ct(n,e),Tt(e),Wt=s;break;case 12:Ct(n,e),Tt(e);break;case 31:Ct(n,e),Tt(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,$s(e,s)));break;case 13:Ct(n,e),Tt(e),e.child.flags&8192&&e.memoizedState!==null!=(i!==null&&i.memoizedState!==null)&&(Ps=ft()),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,$s(e,s)));break;case 22:u=e.memoizedState!==null;var I=i!==null&&i.memoizedState!==null,J=Ln,ie=ot;if(Ln=J||u,ot=ie||I,Ct(n,e),ot=ie,Ln=J,Tt(e),s&8192)e:for(n=e.stateNode,n._visibility=u?n._visibility&-2:n._visibility|1,u&&(i===null||I||Ln||ot||Qa(e)),i=null,n=e;;){if(n.tag===5||n.tag===26){if(i===null){I=i=n;try{if(h=I.stateNode,u)b=h.style,typeof b.setProperty=="function"?b.setProperty("display","none","important"):b.display="none";else{E=I.stateNode;var re=I.memoizedProps.style,ee=re!=null&&re.hasOwnProperty("display")?re.display:null;E.style.display=ee==null||typeof ee=="boolean"?"":(""+ee).trim()}}catch(he){Ue(I,I.return,he)}}}else if(n.tag===6){if(i===null){I=n;try{I.stateNode.nodeValue=u?"":I.memoizedProps}catch(he){Ue(I,I.return,he)}}}else if(n.tag===18){if(i===null){I=n;try{var ne=I.stateNode;u?sg(ne,!0):sg(I.stateNode,!1)}catch(he){Ue(I,I.return,he)}}}else if((n.tag!==22&&n.tag!==23||n.memoizedState===null||n===e)&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===e)break e;for(;n.sibling===null;){if(n.return===null||n.return===e)break e;i===n&&(i=null),n=n.return}i===n&&(i=null),n.sibling.return=n.return,n=n.sibling}s&4&&(s=e.updateQueue,s!==null&&(i=s.retryQueue,i!==null&&(s.retryQueue=null,$s(e,i))));break;case 19:Ct(n,e),Tt(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,$s(e,s)));break;case 30:break;case 21:break;default:Ct(n,e),Tt(e)}}function Tt(e){var n=e.flags;if(n&2){try{for(var i,s=e.return;s!==null;){if(cp(s)){i=s;break}s=s.return}if(i==null)throw Error(o(160));switch(i.tag){case 27:var u=i.stateNode,h=Pu(e);Vs(e,h,u);break;case 5:var b=i.stateNode;i.flags&32&&(_i(b,""),i.flags&=-33);var E=Pu(e);Vs(e,E,b);break;case 3:case 4:var I=i.stateNode.containerInfo,J=Pu(e);Fu(e,J,I);break;default:throw Error(o(161))}}catch(ie){Ue(e,e.return,ie)}e.flags&=-3}n&4096&&(e.flags&=-4097)}function vp(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var n=e;vp(n),n.tag===5&&n.flags&1024&&n.stateNode.reset(),e=e.sibling}}function In(e,n){if(n.subtreeFlags&8772)for(n=n.child;n!==null;)fp(e,n.alternate,n),n=n.sibling}function Qa(e){for(e=e.child;e!==null;){var n=e;switch(n.tag){case 0:case 11:case 14:case 15:ra(4,n,n.return),Qa(n);break;case 1:fn(n,n.return);var i=n.stateNode;typeof i.componentWillUnmount=="function"&&sp(n,n.return,i),Qa(n);break;case 27:so(n.stateNode);case 26:case 5:fn(n,n.return),Qa(n);break;case 22:n.memoizedState===null&&Qa(n);break;case 30:Qa(n);break;default:Qa(n)}e=e.sibling}}function kn(e,n,i){for(i=i&&(n.subtreeFlags&8772)!==0,n=n.child;n!==null;){var s=n.alternate,u=e,h=n,b=h.flags;switch(h.tag){case 0:case 11:case 15:kn(u,h,i),Ql(4,h);break;case 1:if(kn(u,h,i),s=h,u=s.stateNode,typeof u.componentDidMount=="function")try{u.componentDidMount()}catch(J){Ue(s,s.return,J)}if(s=h,u=s.updateQueue,u!==null){var E=s.stateNode;try{var I=u.shared.hiddenCallbacks;if(I!==null)for(u.shared.hiddenCallbacks=null,u=0;u<I.length;u++)Zh(I[u],E)}catch(J){Ue(s,s.return,J)}}i&&b&64&&op(h),Jl(h,h.return);break;case 27:up(h);case 26:case 5:kn(u,h,i),i&&s===null&&b&4&&rp(h),Jl(h,h.return);break;case 12:kn(u,h,i);break;case 31:kn(u,h,i),i&&b&4&&pp(u,h);break;case 13:kn(u,h,i),i&&b&4&&gp(u,h);break;case 22:h.memoizedState===null&&kn(u,h,i),Jl(h,h.return);break;case 30:break;default:kn(u,h,i)}n=n.sibling}}function Ku(e,n){var i=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(i=e.memoizedState.cachePool.pool),e=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(e=n.memoizedState.cachePool.pool),e!==i&&(e!=null&&e.refCount++,i!=null&&kl(i))}function Qu(e,n){e=null,n.alternate!==null&&(e=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==e&&(n.refCount++,e!=null&&kl(e))}function en(e,n,i,s){if(n.subtreeFlags&10256)for(n=n.child;n!==null;)xp(e,n,i,s),n=n.sibling}function xp(e,n,i,s){var u=n.flags;switch(n.tag){case 0:case 11:case 15:en(e,n,i,s),u&2048&&Ql(9,n);break;case 1:en(e,n,i,s);break;case 3:en(e,n,i,s),u&2048&&(e=null,n.alternate!==null&&(e=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==e&&(n.refCount++,e!=null&&kl(e)));break;case 12:if(u&2048){en(e,n,i,s),e=n.stateNode;try{var h=n.memoizedProps,b=h.id,E=h.onPostCommit;typeof E=="function"&&E(b,n.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(I){Ue(n,n.return,I)}}else en(e,n,i,s);break;case 31:en(e,n,i,s);break;case 13:en(e,n,i,s);break;case 23:break;case 22:h=n.stateNode,b=n.alternate,n.memoizedState!==null?h._visibility&2?en(e,n,i,s):Wl(e,n):h._visibility&2?en(e,n,i,s):(h._visibility|=2,Vi(e,n,i,s,(n.subtreeFlags&10256)!==0||!1)),u&2048&&Ku(b,n);break;case 24:en(e,n,i,s),u&2048&&Qu(n.alternate,n);break;default:en(e,n,i,s)}}function Vi(e,n,i,s,u){for(u=u&&((n.subtreeFlags&10256)!==0||!1),n=n.child;n!==null;){var h=e,b=n,E=i,I=s,J=b.flags;switch(b.tag){case 0:case 11:case 15:Vi(h,b,E,I,u),Ql(8,b);break;case 23:break;case 22:var ie=b.stateNode;b.memoizedState!==null?ie._visibility&2?Vi(h,b,E,I,u):Wl(h,b):(ie._visibility|=2,Vi(h,b,E,I,u)),u&&J&2048&&Ku(b.alternate,b);break;case 24:Vi(h,b,E,I,u),u&&J&2048&&Qu(b.alternate,b);break;default:Vi(h,b,E,I,u)}n=n.sibling}}function Wl(e,n){if(n.subtreeFlags&10256)for(n=n.child;n!==null;){var i=e,s=n,u=s.flags;switch(s.tag){case 22:Wl(i,s),u&2048&&Ku(s.alternate,s);break;case 24:Wl(i,s),u&2048&&Qu(s.alternate,s);break;default:Wl(i,s)}n=n.sibling}}var eo=8192;function $i(e,n,i){if(e.subtreeFlags&eo)for(e=e.child;e!==null;)bp(e,n,i),e=e.sibling}function bp(e,n,i){switch(e.tag){case 26:$i(e,n,i),e.flags&eo&&e.memoizedState!==null&&QS(i,Wt,e.memoizedState,e.memoizedProps);break;case 5:$i(e,n,i);break;case 3:case 4:var s=Wt;Wt=lr(e.stateNode.containerInfo),$i(e,n,i),Wt=s;break;case 22:e.memoizedState===null&&(s=e.alternate,s!==null&&s.memoizedState!==null?(s=eo,eo=16777216,$i(e,n,i),eo=s):$i(e,n,i));break;default:$i(e,n,i)}}function Sp(e){var n=e.alternate;if(n!==null&&(e=n.child,e!==null)){n.child=null;do n=e.sibling,e.sibling=null,e=n;while(e!==null)}}function to(e){var n=e.deletions;if((e.flags&16)!==0){if(n!==null)for(var i=0;i<n.length;i++){var s=n[i];dt=s,Np(s,e)}Sp(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)wp(e),e=e.sibling}function wp(e){switch(e.tag){case 0:case 11:case 15:to(e),e.flags&2048&&ra(9,e,e.return);break;case 3:to(e);break;case 12:to(e);break;case 22:var n=e.stateNode;e.memoizedState!==null&&n._visibility&2&&(e.return===null||e.return.tag!==13)?(n._visibility&=-3,Xs(e)):to(e);break;default:to(e)}}function Xs(e){var n=e.deletions;if((e.flags&16)!==0){if(n!==null)for(var i=0;i<n.length;i++){var s=n[i];dt=s,Np(s,e)}Sp(e)}for(e=e.child;e!==null;){switch(n=e,n.tag){case 0:case 11:case 15:ra(8,n,n.return),Xs(n);break;case 22:i=n.stateNode,i._visibility&2&&(i._visibility&=-3,Xs(n));break;default:Xs(n)}e=e.sibling}}function Np(e,n){for(;dt!==null;){var i=dt;switch(i.tag){case 0:case 11:case 15:ra(8,i,n);break;case 23:case 22:if(i.memoizedState!==null&&i.memoizedState.cachePool!==null){var s=i.memoizedState.cachePool.pool;s!=null&&s.refCount++}break;case 24:kl(i.memoizedState.cache)}if(s=i.child,s!==null)s.return=i,dt=s;else e:for(i=e;dt!==null;){s=dt;var u=s.sibling,h=s.return;if(hp(s),s===i){dt=null;break e}if(u!==null){u.return=h,dt=u;break e}dt=h}}}var fS={getCacheForType:function(e){var n=mt(at),i=n.data.get(e);return i===void 0&&(i=e(),n.data.set(e,i)),i},cacheSignal:function(){return mt(at).controller.signal}},hS=typeof WeakMap=="function"?WeakMap:Map,Ie=0,$e=null,Ae=null,ze=0,Be=0,Ht=null,ca=!1,Xi=!1,Ju=!1,Bn=0,We=0,ua=0,Ja=0,Wu=0,It=0,Pi=0,no=null,At=null,ed=!1,Ps=0,_p=0,Fs=1/0,Zs=null,da=null,ct=0,fa=null,Fi=null,Un=0,td=0,nd=null,Ep=null,ao=0,ad=null;function kt(){return(Ie&2)!==0&&ze!==0?ze&-ze:T.T!==null?cd():Wo()}function Cp(){if(It===0)if((ze&536870912)===0||De){var e=yi;yi<<=1,(yi&3932160)===0&&(yi=262144),It=e}else It=536870912;return e=Ot.current,e!==null&&(e.flags|=32),It}function Mt(e,n,i){(e===$e&&(Be===2||Be===9)||e.cancelPendingCommit!==null)&&(Zi(e,0),ha(e,ze,It,!1)),Da(e,i),((Ie&2)===0||e!==$e)&&(e===$e&&((Ie&2)===0&&(Ja|=i),We===4&&ha(e,ze,It,!1)),hn(e))}function Tp(e,n,i){if((Ie&6)!==0)throw Error(o(327));var s=!i&&(n&127)===0&&(n&e.expiredLanes)===0||Ra(e,n),u=s?gS(e,n):ld(e,n,!0),h=s;do{if(u===0){Xi&&!s&&ha(e,n,0,!1);break}else{if(i=e.current.alternate,h&&!mS(i)){u=ld(e,n,!1),h=!1;continue}if(u===2){if(h=n,e.errorRecoveryDisabledLanes&h)var b=0;else b=e.pendingLanes&-536870913,b=b!==0?b:b&536870912?536870912:0;if(b!==0){n=b;e:{var E=e;u=no;var I=E.current.memoizedState.isDehydrated;if(I&&(Zi(E,b).flags|=256),b=ld(E,b,!1),b!==2){if(Ju&&!I){E.errorRecoveryDisabledLanes|=h,Ja|=h,u=4;break e}h=At,At=u,h!==null&&(At===null?At=h:At.push.apply(At,h))}u=b}if(h=!1,u!==2)continue}}if(u===1){Zi(e,0),ha(e,n,0,!0);break}e:{switch(s=e,h=u,h){case 0:case 1:throw Error(o(345));case 4:if((n&4194048)!==n)break;case 6:ha(s,n,It,!ca);break e;case 2:At=null;break;case 3:case 5:break;default:throw Error(o(329))}if((n&62914560)===n&&(u=Ps+300-ft(),10<u)){if(ha(s,n,It,!ca),xi(s,0,!0)!==0)break e;Un=n,s.timeoutHandle=ig(Ap.bind(null,s,i,At,Zs,ed,n,It,Ja,Pi,ca,h,"Throttled",-0,0),u);break e}Ap(s,i,At,Zs,ed,n,It,Ja,Pi,ca,h,null,-0,0)}}break}while(!0);hn(e)}function Ap(e,n,i,s,u,h,b,E,I,J,ie,re,ee,ne){if(e.timeoutHandle=-1,re=n.subtreeFlags,re&8192||(re&16785408)===16785408){re={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:En},bp(n,h,re);var he=(h&62914560)===h?Ps-ft():(h&4194048)===h?_p-ft():0;if(he=JS(re,he),he!==null){Un=h,e.cancelPendingCommit=he(Hp.bind(null,e,n,h,i,s,u,b,E,I,ie,re,null,ee,ne)),ha(e,h,b,!J);return}}Hp(e,n,h,i,s,u,b,E,I)}function mS(e){for(var n=e;;){var i=n.tag;if((i===0||i===11||i===15)&&n.flags&16384&&(i=n.updateQueue,i!==null&&(i=i.stores,i!==null)))for(var s=0;s<i.length;s++){var u=i[s],h=u.getSnapshot;u=u.value;try{if(!Rt(h(),u))return!1}catch{return!1}}if(i=n.child,n.subtreeFlags&16384&&i!==null)i.return=n,n=i;else{if(n===e)break;for(;n.sibling===null;){if(n.return===null||n.return===e)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function ha(e,n,i,s){n&=~Wu,n&=~Ja,e.suspendedLanes|=n,e.pingedLanes&=~n,s&&(e.warmLanes|=n),s=e.expirationTimes;for(var u=n;0<u;){var h=31-bt(u),b=1<<h;s[h]=-1,u&=~b}i!==0&&Ko(e,i,n)}function Ks(){return(Ie&6)===0?(io(0),!1):!0}function id(){if(Ae!==null){if(Be===0)var e=Ae.return;else e=Ae,Mn=Ya=null,bu(e),Bi=null,Ul=0,e=Ae;for(;e!==null;)lp(e.alternate,e),e=e.return;Ae=null}}function Zi(e,n){var i=e.timeoutHandle;i!==-1&&(e.timeoutHandle=-1,OS(i)),i=e.cancelPendingCommit,i!==null&&(e.cancelPendingCommit=null,i()),Un=0,id(),$e=e,Ae=i=Tn(e.current,null),ze=n,Be=0,Ht=null,ca=!1,Xi=Ra(e,n),Ju=!1,Pi=It=Wu=Ja=ua=We=0,At=no=null,ed=!1,(n&8)!==0&&(n|=n&32);var s=e.entangledLanes;if(s!==0)for(e=e.entanglements,s&=n;0<s;){var u=31-bt(s),h=1<<u;n|=e[u],s&=~h}return Bn=n,ys(),i}function Mp(e,n){Ce=null,T.H=Fl,n===ki||n===Es?(n=$h(),Be=3):n===ru?(n=$h(),Be=4):Be=n===Hu?8:n!==null&&typeof n=="object"&&typeof n.then=="function"?6:1,Ht=n,Ae===null&&(We=1,Bs(e,qt(n,e.current)))}function jp(){var e=Ot.current;return e===null?!0:(ze&4194048)===ze?Xt===null:(ze&62914560)===ze||(ze&536870912)!==0?e===Xt:!1}function zp(){var e=T.H;return T.H=Fl,e===null?Fl:e}function Rp(){var e=T.A;return T.A=fS,e}function Qs(){We=4,ca||(ze&4194048)!==ze&&Ot.current!==null||(Xi=!0),(ua&134217727)===0&&(Ja&134217727)===0||$e===null||ha($e,ze,It,!1)}function ld(e,n,i){var s=Ie;Ie|=2;var u=zp(),h=Rp();($e!==e||ze!==n)&&(Zs=null,Zi(e,n)),n=!1;var b=We;e:do try{if(Be!==0&&Ae!==null){var E=Ae,I=Ht;switch(Be){case 8:id(),b=6;break e;case 3:case 2:case 9:case 6:Ot.current===null&&(n=!0);var J=Be;if(Be=0,Ht=null,Ki(e,E,I,J),i&&Xi){b=0;break e}break;default:J=Be,Be=0,Ht=null,Ki(e,E,I,J)}}pS(),b=We;break}catch(ie){Mp(e,ie)}while(!0);return n&&e.shellSuspendCounter++,Mn=Ya=null,Ie=s,T.H=u,T.A=h,Ae===null&&($e=null,ze=0,ys()),b}function pS(){for(;Ae!==null;)Dp(Ae)}function gS(e,n){var i=Ie;Ie|=2;var s=zp(),u=Rp();$e!==e||ze!==n?(Zs=null,Fs=ft()+500,Zi(e,n)):Xi=Ra(e,n);e:do try{if(Be!==0&&Ae!==null){n=Ae;var h=Ht;t:switch(Be){case 1:Be=0,Ht=null,Ki(e,n,h,1);break;case 2:case 9:if(Yh(h)){Be=0,Ht=null,Op(n);break}n=function(){Be!==2&&Be!==9||$e!==e||(Be=7),hn(e)},h.then(n,n);break e;case 3:Be=7;break e;case 4:Be=5;break e;case 7:Yh(h)?(Be=0,Ht=null,Op(n)):(Be=0,Ht=null,Ki(e,n,h,7));break;case 5:var b=null;switch(Ae.tag){case 26:b=Ae.memoizedState;case 5:case 27:var E=Ae;if(b?xg(b):E.stateNode.complete){Be=0,Ht=null;var I=E.sibling;if(I!==null)Ae=I;else{var J=E.return;J!==null?(Ae=J,Js(J)):Ae=null}break t}}Be=0,Ht=null,Ki(e,n,h,5);break;case 6:Be=0,Ht=null,Ki(e,n,h,6);break;case 8:id(),We=6;break e;default:throw Error(o(462))}}yS();break}catch(ie){Mp(e,ie)}while(!0);return Mn=Ya=null,T.H=s,T.A=u,Ie=i,Ae!==null?0:($e=null,ze=0,ys(),We)}function yS(){for(;Ae!==null&&!Aa();)Dp(Ae)}function Dp(e){var n=ap(e.alternate,e,Bn);e.memoizedProps=e.pendingProps,n===null?Js(e):Ae=n}function Op(e){var n=e,i=n.alternate;switch(n.tag){case 15:case 0:n=Qm(i,n,n.pendingProps,n.type,void 0,ze);break;case 11:n=Qm(i,n,n.pendingProps,n.type.render,n.ref,ze);break;case 5:bu(n);default:lp(i,n),n=Ae=Rh(n,Bn),n=ap(i,n,Bn)}e.memoizedProps=e.pendingProps,n===null?Js(e):Ae=n}function Ki(e,n,i,s){Mn=Ya=null,bu(n),Bi=null,Ul=0;var u=n.return;try{if(lS(e,u,n,i,ze)){We=1,Bs(e,qt(i,e.current)),Ae=null;return}}catch(h){if(u!==null)throw Ae=u,h;We=1,Bs(e,qt(i,e.current)),Ae=null;return}n.flags&32768?(De||s===1?e=!0:Xi||(ze&536870912)!==0?e=!1:(ca=e=!0,(s===2||s===9||s===3||s===6)&&(s=Ot.current,s!==null&&s.tag===13&&(s.flags|=16384))),Lp(n,e)):Js(n)}function Js(e){var n=e;do{if((n.flags&32768)!==0){Lp(n,ca);return}e=n.return;var i=rS(n.alternate,n,Bn);if(i!==null){Ae=i;return}if(n=n.sibling,n!==null){Ae=n;return}Ae=n=e}while(n!==null);We===0&&(We=5)}function Lp(e,n){do{var i=cS(e.alternate,e);if(i!==null){i.flags&=32767,Ae=i;return}if(i=e.return,i!==null&&(i.flags|=32768,i.subtreeFlags=0,i.deletions=null),!n&&(e=e.sibling,e!==null)){Ae=e;return}Ae=e=i}while(e!==null);We=6,Ae=null}function Hp(e,n,i,s,u,h,b,E,I){e.cancelPendingCommit=null;do Ws();while(ct!==0);if((Ie&6)!==0)throw Error(o(327));if(n!==null){if(n===e.current)throw Error(o(177));if(h=n.lanes|n.childLanes,h|=Pc,Nc(e,i,h,b,E,I),e===$e&&(Ae=$e=null,ze=0),Fi=n,fa=e,Un=i,td=h,nd=u,Ep=s,(n.subtreeFlags&10256)!==0||(n.flags&10256)!==0?(e.callbackNode=null,e.callbackPriority=0,SS(ja,function(){return Gp(),null})):(e.callbackNode=null,e.callbackPriority=0),s=(n.flags&13878)!==0,(n.subtreeFlags&13878)!==0||s){s=T.T,T.T=null,u=L.p,L.p=2,b=Ie,Ie|=4;try{uS(e,n,i)}finally{Ie=b,L.p=u,T.T=s}}ct=1,Ip(),kp(),Bp()}}function Ip(){if(ct===1){ct=0;var e=fa,n=Fi,i=(n.flags&13878)!==0;if((n.subtreeFlags&13878)!==0||i){i=T.T,T.T=null;var s=L.p;L.p=2;var u=Ie;Ie|=4;try{yp(n,e);var h=yd,b=Nh(e.containerInfo),E=h.focusedElem,I=h.selectionRange;if(b!==E&&E&&E.ownerDocument&&wh(E.ownerDocument.documentElement,E)){if(I!==null&&qc(E)){var J=I.start,ie=I.end;if(ie===void 0&&(ie=J),"selectionStart"in E)E.selectionStart=J,E.selectionEnd=Math.min(ie,E.value.length);else{var re=E.ownerDocument||document,ee=re&&re.defaultView||window;if(ee.getSelection){var ne=ee.getSelection(),he=E.textContent.length,Se=Math.min(I.start,he),Ve=I.end===void 0?Se:Math.min(I.end,he);!ne.extend&&Se>Ve&&(b=Ve,Ve=Se,Se=b);var V=Sh(E,Se),q=Sh(E,Ve);if(V&&q&&(ne.rangeCount!==1||ne.anchorNode!==V.node||ne.anchorOffset!==V.offset||ne.focusNode!==q.node||ne.focusOffset!==q.offset)){var Q=re.createRange();Q.setStart(V.node,V.offset),ne.removeAllRanges(),Se>Ve?(ne.addRange(Q),ne.extend(q.node,q.offset)):(Q.setEnd(q.node,q.offset),ne.addRange(Q))}}}}for(re=[],ne=E;ne=ne.parentNode;)ne.nodeType===1&&re.push({element:ne,left:ne.scrollLeft,top:ne.scrollTop});for(typeof E.focus=="function"&&E.focus(),E=0;E<re.length;E++){var oe=re[E];oe.element.scrollLeft=oe.left,oe.element.scrollTop=oe.top}}dr=!!gd,yd=gd=null}finally{Ie=u,L.p=s,T.T=i}}e.current=n,ct=2}}function kp(){if(ct===2){ct=0;var e=fa,n=Fi,i=(n.flags&8772)!==0;if((n.subtreeFlags&8772)!==0||i){i=T.T,T.T=null;var s=L.p;L.p=2;var u=Ie;Ie|=4;try{fp(e,n.alternate,n)}finally{Ie=u,L.p=s,T.T=i}}ct=3}}function Bp(){if(ct===4||ct===3){ct=0,Ma();var e=fa,n=Fi,i=Un,s=Ep;(n.subtreeFlags&10256)!==0||(n.flags&10256)!==0?ct=5:(ct=0,Fi=fa=null,Up(e,e.pendingLanes));var u=e.pendingLanes;if(u===0&&(da=null),Nl(i),n=n.stateNode,xt&&typeof xt.onCommitFiberRoot=="function")try{xt.onCommitFiberRoot(za,n,void 0,(n.current.flags&128)===128)}catch{}if(s!==null){n=T.T,u=L.p,L.p=2,T.T=null;try{for(var h=e.onRecoverableError,b=0;b<s.length;b++){var E=s[b];h(E.value,{componentStack:E.stack})}}finally{T.T=n,L.p=u}}(Un&3)!==0&&Ws(),hn(e),u=e.pendingLanes,(i&261930)!==0&&(u&42)!==0?e===ad?ao++:(ao=0,ad=e):ao=0,io(0)}}function Up(e,n){(e.pooledCacheLanes&=n)===0&&(n=e.pooledCache,n!=null&&(e.pooledCache=null,kl(n)))}function Ws(){return Ip(),kp(),Bp(),Gp()}function Gp(){if(ct!==5)return!1;var e=fa,n=td;td=0;var i=Nl(Un),s=T.T,u=L.p;try{L.p=32>i?32:i,T.T=null,i=nd,nd=null;var h=fa,b=Un;if(ct=0,Fi=fa=null,Un=0,(Ie&6)!==0)throw Error(o(331));var E=Ie;if(Ie|=4,wp(h.current),xp(h,h.current,b,i),Ie=E,io(0,!1),xt&&typeof xt.onPostCommitFiberRoot=="function")try{xt.onPostCommitFiberRoot(za,h)}catch{}return!0}finally{L.p=u,T.T=s,Up(e,n)}}function qp(e,n,i){n=qt(i,n),n=Lu(e.stateNode,n,2),e=la(e,n,2),e!==null&&(Da(e,2),hn(e))}function Ue(e,n,i){if(e.tag===3)qp(e,e,i);else for(;n!==null;){if(n.tag===3){qp(n,e,i);break}else if(n.tag===1){var s=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof s.componentDidCatch=="function"&&(da===null||!da.has(s))){e=qt(i,e),i=Ym(2),s=la(n,i,2),s!==null&&(Vm(i,s,n,e),Da(s,2),hn(s));break}}n=n.return}}function od(e,n,i){var s=e.pingCache;if(s===null){s=e.pingCache=new hS;var u=new Set;s.set(n,u)}else u=s.get(n),u===void 0&&(u=new Set,s.set(n,u));u.has(i)||(Ju=!0,u.add(i),e=vS.bind(null,e,n,i),n.then(e,e))}function vS(e,n,i){var s=e.pingCache;s!==null&&s.delete(n),e.pingedLanes|=e.suspendedLanes&i,e.warmLanes&=~i,$e===e&&(ze&i)===i&&(We===4||We===3&&(ze&62914560)===ze&&300>ft()-Ps?(Ie&2)===0&&Zi(e,0):Wu|=i,Pi===ze&&(Pi=0)),hn(e)}function Yp(e,n){n===0&&(n=Zo()),e=Ua(e,n),e!==null&&(Da(e,n),hn(e))}function xS(e){var n=e.memoizedState,i=0;n!==null&&(i=n.retryLane),Yp(e,i)}function bS(e,n){var i=0;switch(e.tag){case 31:case 13:var s=e.stateNode,u=e.memoizedState;u!==null&&(i=u.retryLane);break;case 19:s=e.stateNode;break;case 22:s=e.stateNode._retryCache;break;default:throw Error(o(314))}s!==null&&s.delete(n),Yp(e,i)}function SS(e,n){return Kt(e,n)}var er=null,Qi=null,sd=!1,tr=!1,rd=!1,ma=0;function hn(e){e!==Qi&&e.next===null&&(Qi===null?er=Qi=e:Qi=Qi.next=e),tr=!0,sd||(sd=!0,NS())}function io(e,n){if(!rd&&tr){rd=!0;do for(var i=!1,s=er;s!==null;){if(e!==0){var u=s.pendingLanes;if(u===0)var h=0;else{var b=s.suspendedLanes,E=s.pingedLanes;h=(1<<31-bt(42|e)+1)-1,h&=u&~(b&~E),h=h&201326741?h&201326741|1:h?h|2:0}h!==0&&(i=!0,Pp(s,h))}else h=ze,h=xi(s,s===$e?h:0,s.cancelPendingCommit!==null||s.timeoutHandle!==-1),(h&3)===0||Ra(s,h)||(i=!0,Pp(s,h));s=s.next}while(i);rd=!1}}function wS(){Vp()}function Vp(){tr=sd=!1;var e=0;ma!==0&&DS()&&(e=ma);for(var n=ft(),i=null,s=er;s!==null;){var u=s.next,h=$p(s,n);h===0?(s.next=null,i===null?er=u:i.next=u,u===null&&(Qi=i)):(i=s,(e!==0||(h&3)!==0)&&(tr=!0)),s=u}ct!==0&&ct!==5||io(e),ma!==0&&(ma=0)}function $p(e,n){for(var i=e.suspendedLanes,s=e.pingedLanes,u=e.expirationTimes,h=e.pendingLanes&-62914561;0<h;){var b=31-bt(h),E=1<<b,I=u[b];I===-1?((E&i)===0||(E&s)!==0)&&(u[b]=wc(E,n)):I<=n&&(e.expiredLanes|=E),h&=~E}if(n=$e,i=ze,i=xi(e,e===n?i:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),s=e.callbackNode,i===0||e===n&&(Be===2||Be===9)||e.cancelPendingCommit!==null)return s!==null&&s!==null&&xn(s),e.callbackNode=null,e.callbackPriority=0;if((i&3)===0||Ra(e,i)){if(n=i&-i,n===e.callbackPriority)return n;switch(s!==null&&xn(s),Nl(i)){case 2:case 8:i=Xn;break;case 32:i=ja;break;case 268435456:i=pi;break;default:i=ja}return s=Xp.bind(null,e),i=Kt(i,s),e.callbackPriority=n,e.callbackNode=i,n}return s!==null&&s!==null&&xn(s),e.callbackPriority=2,e.callbackNode=null,2}function Xp(e,n){if(ct!==0&&ct!==5)return e.callbackNode=null,e.callbackPriority=0,null;var i=e.callbackNode;if(Ws()&&e.callbackNode!==i)return null;var s=ze;return s=xi(e,e===$e?s:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),s===0?null:(Tp(e,s,n),$p(e,ft()),e.callbackNode!=null&&e.callbackNode===i?Xp.bind(null,e):null)}function Pp(e,n){if(Ws())return null;Tp(e,n,!0)}function NS(){LS(function(){(Ie&6)!==0?Kt(bn,wS):Vp()})}function cd(){if(ma===0){var e=Hi;e===0&&(e=gi,gi<<=1,(gi&261888)===0&&(gi=256)),ma=e}return ma}function Fp(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:cs(""+e)}function Zp(e,n){var i=n.ownerDocument.createElement("input");return i.name=n.name,i.value=n.value,e.id&&i.setAttribute("form",e.id),n.parentNode.insertBefore(i,n),e=new FormData(e),i.parentNode.removeChild(i),e}function _S(e,n,i,s,u){if(n==="submit"&&i&&i.stateNode===u){var h=Fp((u[yt]||null).action),b=s.submitter;b&&(n=(n=b[yt]||null)?Fp(n.formAction):b.getAttribute("formAction"),n!==null&&(h=n,b=null));var E=new hs("action","action",null,s,u);e.push({event:E,listeners:[{instance:null,listener:function(){if(s.defaultPrevented){if(ma!==0){var I=b?Zp(u,b):new FormData(u);Mu(i,{pending:!0,data:I,method:u.method,action:h},null,I)}}else typeof h=="function"&&(E.preventDefault(),I=b?Zp(u,b):new FormData(u),Mu(i,{pending:!0,data:I,method:u.method,action:h},h,I))},currentTarget:u}]})}}for(var ud=0;ud<Xc.length;ud++){var dd=Xc[ud],ES=dd.toLowerCase(),CS=dd[0].toUpperCase()+dd.slice(1);Jt(ES,"on"+CS)}Jt(Ch,"onAnimationEnd"),Jt(Th,"onAnimationIteration"),Jt(Ah,"onAnimationStart"),Jt("dblclick","onDoubleClick"),Jt("focusin","onFocus"),Jt("focusout","onBlur"),Jt(qb,"onTransitionRun"),Jt(Yb,"onTransitionStart"),Jt(Vb,"onTransitionCancel"),Jt(Mh,"onTransitionEnd"),Qn("onMouseEnter",["mouseout","mouseover"]),Qn("onMouseLeave",["mouseout","mouseover"]),Qn("onPointerEnter",["pointerout","pointerover"]),Qn("onPointerLeave",["pointerout","pointerover"]),Nn("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Nn("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Nn("onBeforeInput",["compositionend","keypress","textInput","paste"]),Nn("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Nn("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Nn("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var lo="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(" "),TS=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(lo));function Kp(e,n){n=(n&4)!==0;for(var i=0;i<e.length;i++){var s=e[i],u=s.event;s=s.listeners;e:{var h=void 0;if(n)for(var b=s.length-1;0<=b;b--){var E=s[b],I=E.instance,J=E.currentTarget;if(E=E.listener,I!==h&&u.isPropagationStopped())break e;h=E,u.currentTarget=J;try{h(u)}catch(ie){gs(ie)}u.currentTarget=null,h=I}else for(b=0;b<s.length;b++){if(E=s[b],I=E.instance,J=E.currentTarget,E=E.listener,I!==h&&u.isPropagationStopped())break e;h=E,u.currentTarget=J;try{h(u)}catch(ie){gs(ie)}u.currentTarget=null,h=I}}}}function Me(e,n){var i=n[bi];i===void 0&&(i=n[bi]=new Set);var s=e+"__bubble";i.has(s)||(Qp(n,e,2,!1),i.add(s))}function fd(e,n,i){var s=0;n&&(s|=4),Qp(i,e,s,n)}var nr="_reactListening"+Math.random().toString(36).slice(2);function hd(e){if(!e[nr]){e[nr]=!0,as.forEach(function(i){i!=="selectionchange"&&(TS.has(i)||fd(i,!1,e),fd(i,!0,e))});var n=e.nodeType===9?e:e.ownerDocument;n===null||n[nr]||(n[nr]=!0,fd("selectionchange",!1,n))}}function Qp(e,n,i,s){switch(Cg(n)){case 2:var u=t1;break;case 8:u=n1;break;default:u=Ad}i=u.bind(null,n,i,e),u=void 0,!Dc||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(u=!0),s?u!==void 0?e.addEventListener(n,i,{capture:!0,passive:u}):e.addEventListener(n,i,!0):u!==void 0?e.addEventListener(n,i,{passive:u}):e.addEventListener(n,i,!1)}function md(e,n,i,s,u){var h=s;if((n&1)===0&&(n&2)===0&&s!==null)e:for(;;){if(s===null)return;var b=s.tag;if(b===3||b===4){var E=s.stateNode.containerInfo;if(E===u)break;if(b===4)for(b=s.return;b!==null;){var I=b.tag;if((I===3||I===4)&&b.stateNode.containerInfo===u)return;b=b.return}for(;E!==null;){if(b=Pn(E),b===null)return;if(I=b.tag,I===5||I===6||I===26||I===27){s=h=b;continue e}E=E.parentNode}}s=s.return}nh(function(){var J=h,ie=zc(i),re=[];e:{var ee=jh.get(e);if(ee!==void 0){var ne=hs,he=e;switch(e){case"keypress":if(ds(i)===0)break e;case"keydown":case"keyup":ne=bb;break;case"focusin":he="focus",ne=Ic;break;case"focusout":he="blur",ne=Ic;break;case"beforeblur":case"afterblur":ne=Ic;break;case"click":if(i.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ne=lh;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ne=rb;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ne=Nb;break;case Ch:case Th:case Ah:ne=db;break;case Mh:ne=Eb;break;case"scroll":case"scrollend":ne=ob;break;case"wheel":ne=Tb;break;case"copy":case"cut":case"paste":ne=hb;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ne=sh;break;case"toggle":case"beforetoggle":ne=Mb}var Se=(n&4)!==0,Ve=!Se&&(e==="scroll"||e==="scrollend"),V=Se?ee!==null?ee+"Capture":null:ee;Se=[];for(var q=J,Q;q!==null;){var oe=q;if(Q=oe.stateNode,oe=oe.tag,oe!==5&&oe!==26&&oe!==27||Q===null||V===null||(oe=Tl(q,V),oe!=null&&Se.push(oo(q,oe,Q))),Ve)break;q=q.return}0<Se.length&&(ee=new ne(ee,he,null,i,ie),re.push({event:ee,listeners:Se}))}}if((n&7)===0){e:{if(ee=e==="mouseover"||e==="pointerover",ne=e==="mouseout"||e==="pointerout",ee&&i!==jc&&(he=i.relatedTarget||i.fromElement)&&(Pn(he)||he[wn]))break e;if((ne||ee)&&(ee=ie.window===ie?ie:(ee=ie.ownerDocument)?ee.defaultView||ee.parentWindow:window,ne?(he=i.relatedTarget||i.toElement,ne=J,he=he?Pn(he):null,he!==null&&(Ve=c(he),Se=he.tag,he!==Ve||Se!==5&&Se!==27&&Se!==6)&&(he=null)):(ne=null,he=J),ne!==he)){if(Se=lh,oe="onMouseLeave",V="onMouseEnter",q="mouse",(e==="pointerout"||e==="pointerover")&&(Se=sh,oe="onPointerLeave",V="onPointerEnter",q="pointer"),Ve=ne==null?ee:Zn(ne),Q=he==null?ee:Zn(he),ee=new Se(oe,q+"leave",ne,i,ie),ee.target=Ve,ee.relatedTarget=Q,oe=null,Pn(ie)===J&&(Se=new Se(V,q+"enter",he,i,ie),Se.target=Q,Se.relatedTarget=Ve,oe=Se),Ve=oe,ne&&he)t:{for(Se=AS,V=ne,q=he,Q=0,oe=V;oe;oe=Se(oe))Q++;oe=0;for(var ye=q;ye;ye=Se(ye))oe++;for(;0<Q-oe;)V=Se(V),Q--;for(;0<oe-Q;)q=Se(q),oe--;for(;Q--;){if(V===q||q!==null&&V===q.alternate){Se=V;break t}V=Se(V),q=Se(q)}Se=null}else Se=null;ne!==null&&Jp(re,ee,ne,Se,!1),he!==null&&Ve!==null&&Jp(re,Ve,he,Se,!0)}}e:{if(ee=J?Zn(J):window,ne=ee.nodeName&&ee.nodeName.toLowerCase(),ne==="select"||ne==="input"&&ee.type==="file")var Le=ph;else if(hh(ee))if(gh)Le=Bb;else{Le=Ib;var me=Hb}else ne=ee.nodeName,!ne||ne.toLowerCase()!=="input"||ee.type!=="checkbox"&&ee.type!=="radio"?J&&Mc(J.elementType)&&(Le=ph):Le=kb;if(Le&&(Le=Le(e,J))){mh(re,Le,i,ie);break e}me&&me(e,ee,J),e==="focusout"&&J&&ee.type==="number"&&J.memoizedProps.value!=null&&Cl(ee,"number",ee.value)}switch(me=J?Zn(J):window,e){case"focusin":(hh(me)||me.contentEditable==="true")&&(Ai=me,Yc=J,Ll=null);break;case"focusout":Ll=Yc=Ai=null;break;case"mousedown":Vc=!0;break;case"contextmenu":case"mouseup":case"dragend":Vc=!1,_h(re,i,ie);break;case"selectionchange":if(Gb)break;case"keydown":case"keyup":_h(re,i,ie)}var Te;if(Bc)e:{switch(e){case"compositionstart":var Re="onCompositionStart";break e;case"compositionend":Re="onCompositionEnd";break e;case"compositionupdate":Re="onCompositionUpdate";break e}Re=void 0}else Ti?dh(e,i)&&(Re="onCompositionEnd"):e==="keydown"&&i.keyCode===229&&(Re="onCompositionStart");Re&&(rh&&i.locale!=="ko"&&(Ti||Re!=="onCompositionStart"?Re==="onCompositionEnd"&&Ti&&(Te=ah()):(Jn=ie,Oc="value"in Jn?Jn.value:Jn.textContent,Ti=!0)),me=ar(J,Re),0<me.length&&(Re=new oh(Re,e,null,i,ie),re.push({event:Re,listeners:me}),Te?Re.data=Te:(Te=fh(i),Te!==null&&(Re.data=Te)))),(Te=zb?Rb(e,i):Db(e,i))&&(Re=ar(J,"onBeforeInput"),0<Re.length&&(me=new oh("onBeforeInput","beforeinput",null,i,ie),re.push({event:me,listeners:Re}),me.data=Te)),_S(re,e,J,i,ie)}Kp(re,n)})}function oo(e,n,i){return{instance:e,listener:n,currentTarget:i}}function ar(e,n){for(var i=n+"Capture",s=[];e!==null;){var u=e,h=u.stateNode;if(u=u.tag,u!==5&&u!==26&&u!==27||h===null||(u=Tl(e,i),u!=null&&s.unshift(oo(e,u,h)),u=Tl(e,n),u!=null&&s.push(oo(e,u,h))),e.tag===3)return s;e=e.return}return[]}function AS(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Jp(e,n,i,s,u){for(var h=n._reactName,b=[];i!==null&&i!==s;){var E=i,I=E.alternate,J=E.stateNode;if(E=E.tag,I!==null&&I===s)break;E!==5&&E!==26&&E!==27||J===null||(I=J,u?(J=Tl(i,h),J!=null&&b.unshift(oo(i,J,I))):u||(J=Tl(i,h),J!=null&&b.push(oo(i,J,I)))),i=i.return}b.length!==0&&e.push({event:n,listeners:b})}var MS=/\r\n?/g,jS=/\u0000|\uFFFD/g;function Wp(e){return(typeof e=="string"?e:""+e).replace(MS,`
|
|
9
|
+
`).replace(jS,"")}function eg(e,n){return n=Wp(n),Wp(e)===n}function Ye(e,n,i,s,u,h){switch(i){case"children":typeof s=="string"?n==="body"||n==="textarea"&&s===""||_i(e,s):(typeof s=="number"||typeof s=="bigint")&&n!=="body"&&_i(e,""+s);break;case"className":wi(e,"class",s);break;case"tabIndex":wi(e,"tabindex",s);break;case"dir":case"role":case"viewBox":case"width":case"height":wi(e,i,s);break;case"style":eh(e,s,h);break;case"data":if(n!=="object"){wi(e,"data",s);break}case"src":case"href":if(s===""&&(n!=="a"||i!=="href")){e.removeAttribute(i);break}if(s==null||typeof s=="function"||typeof s=="symbol"||typeof s=="boolean"){e.removeAttribute(i);break}s=cs(""+s),e.setAttribute(i,s);break;case"action":case"formAction":if(typeof s=="function"){e.setAttribute(i,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof h=="function"&&(i==="formAction"?(n!=="input"&&Ye(e,n,"name",u.name,u,null),Ye(e,n,"formEncType",u.formEncType,u,null),Ye(e,n,"formMethod",u.formMethod,u,null),Ye(e,n,"formTarget",u.formTarget,u,null)):(Ye(e,n,"encType",u.encType,u,null),Ye(e,n,"method",u.method,u,null),Ye(e,n,"target",u.target,u,null)));if(s==null||typeof s=="symbol"||typeof s=="boolean"){e.removeAttribute(i);break}s=cs(""+s),e.setAttribute(i,s);break;case"onClick":s!=null&&(e.onclick=En);break;case"onScroll":s!=null&&Me("scroll",e);break;case"onScrollEnd":s!=null&&Me("scrollend",e);break;case"dangerouslySetInnerHTML":if(s!=null){if(typeof s!="object"||!("__html"in s))throw Error(o(61));if(i=s.__html,i!=null){if(u.children!=null)throw Error(o(60));e.innerHTML=i}}break;case"multiple":e.multiple=s&&typeof s!="function"&&typeof s!="symbol";break;case"muted":e.muted=s&&typeof s!="function"&&typeof s!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(s==null||typeof s=="function"||typeof s=="boolean"||typeof s=="symbol"){e.removeAttribute("xlink:href");break}i=cs(""+s),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",i);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":s!=null&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(i,""+s):e.removeAttribute(i);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":s&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(i,""):e.removeAttribute(i);break;case"capture":case"download":s===!0?e.setAttribute(i,""):s!==!1&&s!=null&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(i,s):e.removeAttribute(i);break;case"cols":case"rows":case"size":case"span":s!=null&&typeof s!="function"&&typeof s!="symbol"&&!isNaN(s)&&1<=s?e.setAttribute(i,s):e.removeAttribute(i);break;case"rowSpan":case"start":s==null||typeof s=="function"||typeof s=="symbol"||isNaN(s)?e.removeAttribute(i):e.setAttribute(i,s);break;case"popover":Me("beforetoggle",e),Me("toggle",e),Si(e,"popover",s);break;case"xlinkActuate":Qt(e,"http://www.w3.org/1999/xlink","xlink:actuate",s);break;case"xlinkArcrole":Qt(e,"http://www.w3.org/1999/xlink","xlink:arcrole",s);break;case"xlinkRole":Qt(e,"http://www.w3.org/1999/xlink","xlink:role",s);break;case"xlinkShow":Qt(e,"http://www.w3.org/1999/xlink","xlink:show",s);break;case"xlinkTitle":Qt(e,"http://www.w3.org/1999/xlink","xlink:title",s);break;case"xlinkType":Qt(e,"http://www.w3.org/1999/xlink","xlink:type",s);break;case"xmlBase":Qt(e,"http://www.w3.org/XML/1998/namespace","xml:base",s);break;case"xmlLang":Qt(e,"http://www.w3.org/XML/1998/namespace","xml:lang",s);break;case"xmlSpace":Qt(e,"http://www.w3.org/XML/1998/namespace","xml:space",s);break;case"is":Si(e,"is",s);break;case"innerText":case"textContent":break;default:(!(2<i.length)||i[0]!=="o"&&i[0]!=="O"||i[1]!=="n"&&i[1]!=="N")&&(i=ib.get(i)||i,Si(e,i,s))}}function pd(e,n,i,s,u,h){switch(i){case"style":eh(e,s,h);break;case"dangerouslySetInnerHTML":if(s!=null){if(typeof s!="object"||!("__html"in s))throw Error(o(61));if(i=s.__html,i!=null){if(u.children!=null)throw Error(o(60));e.innerHTML=i}}break;case"children":typeof s=="string"?_i(e,s):(typeof s=="number"||typeof s=="bigint")&&_i(e,""+s);break;case"onScroll":s!=null&&Me("scroll",e);break;case"onScrollEnd":s!=null&&Me("scrollend",e);break;case"onClick":s!=null&&(e.onclick=En);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!is.hasOwnProperty(i))e:{if(i[0]==="o"&&i[1]==="n"&&(u=i.endsWith("Capture"),n=i.slice(2,u?i.length-7:void 0),h=e[yt]||null,h=h!=null?h[i]:null,typeof h=="function"&&e.removeEventListener(n,h,u),typeof s=="function")){typeof h!="function"&&h!==null&&(i in e?e[i]=null:e.hasAttribute(i)&&e.removeAttribute(i)),e.addEventListener(n,s,u);break e}i in e?e[i]=s:s===!0?e.setAttribute(i,""):Si(e,i,s)}}}function gt(e,n,i){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Me("error",e),Me("load",e);var s=!1,u=!1,h;for(h in i)if(i.hasOwnProperty(h)){var b=i[h];if(b!=null)switch(h){case"src":s=!0;break;case"srcSet":u=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(o(137,n));default:Ye(e,n,h,b,i,null)}}u&&Ye(e,n,"srcSet",i.srcSet,i,null),s&&Ye(e,n,"src",i.src,i,null);return;case"input":Me("invalid",e);var E=h=b=u=null,I=null,J=null;for(s in i)if(i.hasOwnProperty(s)){var ie=i[s];if(ie!=null)switch(s){case"name":u=ie;break;case"type":b=ie;break;case"checked":I=ie;break;case"defaultChecked":J=ie;break;case"value":h=ie;break;case"defaultValue":E=ie;break;case"children":case"dangerouslySetInnerHTML":if(ie!=null)throw Error(o(137,n));break;default:Ye(e,n,s,ie,i,null)}}rs(e,h,E,I,J,b,u,!1);return;case"select":Me("invalid",e),s=b=h=null;for(u in i)if(i.hasOwnProperty(u)&&(E=i[u],E!=null))switch(u){case"value":h=E;break;case"defaultValue":b=E;break;case"multiple":s=E;default:Ye(e,n,u,E,i,null)}n=h,i=b,e.multiple=!!s,n!=null?_n(e,!!s,n,!1):i!=null&&_n(e,!!s,i,!0);return;case"textarea":Me("invalid",e),h=u=s=null;for(b in i)if(i.hasOwnProperty(b)&&(E=i[b],E!=null))switch(b){case"value":s=E;break;case"defaultValue":u=E;break;case"children":h=E;break;case"dangerouslySetInnerHTML":if(E!=null)throw Error(o(91));break;default:Ye(e,n,b,E,i,null)}Jf(e,s,u,h);return;case"option":for(I in i)i.hasOwnProperty(I)&&(s=i[I],s!=null)&&(I==="selected"?e.selected=s&&typeof s!="function"&&typeof s!="symbol":Ye(e,n,I,s,i,null));return;case"dialog":Me("beforetoggle",e),Me("toggle",e),Me("cancel",e),Me("close",e);break;case"iframe":case"object":Me("load",e);break;case"video":case"audio":for(s=0;s<lo.length;s++)Me(lo[s],e);break;case"image":Me("error",e),Me("load",e);break;case"details":Me("toggle",e);break;case"embed":case"source":case"link":Me("error",e),Me("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(J in i)if(i.hasOwnProperty(J)&&(s=i[J],s!=null))switch(J){case"children":case"dangerouslySetInnerHTML":throw Error(o(137,n));default:Ye(e,n,J,s,i,null)}return;default:if(Mc(n)){for(ie in i)i.hasOwnProperty(ie)&&(s=i[ie],s!==void 0&&pd(e,n,ie,s,i,void 0));return}}for(E in i)i.hasOwnProperty(E)&&(s=i[E],s!=null&&Ye(e,n,E,s,i,null))}function zS(e,n,i,s){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var u=null,h=null,b=null,E=null,I=null,J=null,ie=null;for(ne in i){var re=i[ne];if(i.hasOwnProperty(ne)&&re!=null)switch(ne){case"checked":break;case"value":break;case"defaultValue":I=re;default:s.hasOwnProperty(ne)||Ye(e,n,ne,null,s,re)}}for(var ee in s){var ne=s[ee];if(re=i[ee],s.hasOwnProperty(ee)&&(ne!=null||re!=null))switch(ee){case"type":h=ne;break;case"name":u=ne;break;case"checked":J=ne;break;case"defaultChecked":ie=ne;break;case"value":b=ne;break;case"defaultValue":E=ne;break;case"children":case"dangerouslySetInnerHTML":if(ne!=null)throw Error(o(137,n));break;default:ne!==re&&Ye(e,n,ee,ne,s,re)}}Ha(e,b,E,I,J,ie,h,u);return;case"select":ne=b=E=ee=null;for(h in i)if(I=i[h],i.hasOwnProperty(h)&&I!=null)switch(h){case"value":break;case"multiple":ne=I;default:s.hasOwnProperty(h)||Ye(e,n,h,null,s,I)}for(u in s)if(h=s[u],I=i[u],s.hasOwnProperty(u)&&(h!=null||I!=null))switch(u){case"value":ee=h;break;case"defaultValue":E=h;break;case"multiple":b=h;default:h!==I&&Ye(e,n,u,h,s,I)}n=E,i=b,s=ne,ee!=null?_n(e,!!i,ee,!1):!!s!=!!i&&(n!=null?_n(e,!!i,n,!0):_n(e,!!i,i?[]:"",!1));return;case"textarea":ne=ee=null;for(E in i)if(u=i[E],i.hasOwnProperty(E)&&u!=null&&!s.hasOwnProperty(E))switch(E){case"value":break;case"children":break;default:Ye(e,n,E,null,s,u)}for(b in s)if(u=s[b],h=i[b],s.hasOwnProperty(b)&&(u!=null||h!=null))switch(b){case"value":ee=u;break;case"defaultValue":ne=u;break;case"children":break;case"dangerouslySetInnerHTML":if(u!=null)throw Error(o(91));break;default:u!==h&&Ye(e,n,b,u,s,h)}Qf(e,ee,ne);return;case"option":for(var he in i)ee=i[he],i.hasOwnProperty(he)&&ee!=null&&!s.hasOwnProperty(he)&&(he==="selected"?e.selected=!1:Ye(e,n,he,null,s,ee));for(I in s)ee=s[I],ne=i[I],s.hasOwnProperty(I)&&ee!==ne&&(ee!=null||ne!=null)&&(I==="selected"?e.selected=ee&&typeof ee!="function"&&typeof ee!="symbol":Ye(e,n,I,ee,s,ne));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var Se in i)ee=i[Se],i.hasOwnProperty(Se)&&ee!=null&&!s.hasOwnProperty(Se)&&Ye(e,n,Se,null,s,ee);for(J in s)if(ee=s[J],ne=i[J],s.hasOwnProperty(J)&&ee!==ne&&(ee!=null||ne!=null))switch(J){case"children":case"dangerouslySetInnerHTML":if(ee!=null)throw Error(o(137,n));break;default:Ye(e,n,J,ee,s,ne)}return;default:if(Mc(n)){for(var Ve in i)ee=i[Ve],i.hasOwnProperty(Ve)&&ee!==void 0&&!s.hasOwnProperty(Ve)&&pd(e,n,Ve,void 0,s,ee);for(ie in s)ee=s[ie],ne=i[ie],!s.hasOwnProperty(ie)||ee===ne||ee===void 0&&ne===void 0||pd(e,n,ie,ee,s,ne);return}}for(var V in i)ee=i[V],i.hasOwnProperty(V)&&ee!=null&&!s.hasOwnProperty(V)&&Ye(e,n,V,null,s,ee);for(re in s)ee=s[re],ne=i[re],!s.hasOwnProperty(re)||ee===ne||ee==null&&ne==null||Ye(e,n,re,ee,s,ne)}function tg(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function RS(){if(typeof performance.getEntriesByType=="function"){for(var e=0,n=0,i=performance.getEntriesByType("resource"),s=0;s<i.length;s++){var u=i[s],h=u.transferSize,b=u.initiatorType,E=u.duration;if(h&&E&&tg(b)){for(b=0,E=u.responseEnd,s+=1;s<i.length;s++){var I=i[s],J=I.startTime;if(J>E)break;var ie=I.transferSize,re=I.initiatorType;ie&&tg(re)&&(I=I.responseEnd,b+=ie*(I<E?1:(E-J)/(I-J)))}if(--s,n+=8*(h+b)/(u.duration/1e3),e++,10<e)break}}if(0<e)return n/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var gd=null,yd=null;function ir(e){return e.nodeType===9?e:e.ownerDocument}function ng(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function ag(e,n){if(e===0)switch(n){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&n==="foreignObject"?0:e}function vd(e,n){return e==="textarea"||e==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.children=="bigint"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var xd=null;function DS(){var e=window.event;return e&&e.type==="popstate"?e===xd?!1:(xd=e,!0):(xd=null,!1)}var ig=typeof setTimeout=="function"?setTimeout:void 0,OS=typeof clearTimeout=="function"?clearTimeout:void 0,lg=typeof Promise=="function"?Promise:void 0,LS=typeof queueMicrotask=="function"?queueMicrotask:typeof lg<"u"?function(e){return lg.resolve(null).then(e).catch(HS)}:ig;function HS(e){setTimeout(function(){throw e})}function pa(e){return e==="head"}function og(e,n){var i=n,s=0;do{var u=i.nextSibling;if(e.removeChild(i),u&&u.nodeType===8)if(i=u.data,i==="/$"||i==="/&"){if(s===0){e.removeChild(u),tl(n);return}s--}else if(i==="$"||i==="$?"||i==="$~"||i==="$!"||i==="&")s++;else if(i==="html")so(e.ownerDocument.documentElement);else if(i==="head"){i=e.ownerDocument.head,so(i);for(var h=i.firstChild;h;){var b=h.nextSibling,E=h.nodeName;h[Oa]||E==="SCRIPT"||E==="STYLE"||E==="LINK"&&h.rel.toLowerCase()==="stylesheet"||i.removeChild(h),h=b}}else i==="body"&&so(e.ownerDocument.body);i=u}while(i);tl(n)}function sg(e,n){var i=e;e=0;do{var s=i.nextSibling;if(i.nodeType===1?n?(i._stashedDisplay=i.style.display,i.style.display="none"):(i.style.display=i._stashedDisplay||"",i.getAttribute("style")===""&&i.removeAttribute("style")):i.nodeType===3&&(n?(i._stashedText=i.nodeValue,i.nodeValue=""):i.nodeValue=i._stashedText||""),s&&s.nodeType===8)if(i=s.data,i==="/$"){if(e===0)break;e--}else i!=="$"&&i!=="$?"&&i!=="$~"&&i!=="$!"||e++;i=s}while(i)}function bd(e){var n=e.firstChild;for(n&&n.nodeType===10&&(n=n.nextSibling);n;){var i=n;switch(n=n.nextSibling,i.nodeName){case"HTML":case"HEAD":case"BODY":bd(i),_l(i);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(i.rel.toLowerCase()==="stylesheet")continue}e.removeChild(i)}}function IS(e,n,i,s){for(;e.nodeType===1;){var u=i;if(e.nodeName.toLowerCase()!==n.toLowerCase()){if(!s&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(s){if(!e[Oa])switch(n){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(h=e.getAttribute("rel"),h==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(h!==u.rel||e.getAttribute("href")!==(u.href==null||u.href===""?null:u.href)||e.getAttribute("crossorigin")!==(u.crossOrigin==null?null:u.crossOrigin)||e.getAttribute("title")!==(u.title==null?null:u.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(h=e.getAttribute("src"),(h!==(u.src==null?null:u.src)||e.getAttribute("type")!==(u.type==null?null:u.type)||e.getAttribute("crossorigin")!==(u.crossOrigin==null?null:u.crossOrigin))&&h&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(n==="input"&&e.type==="hidden"){var h=u.name==null?null:""+u.name;if(u.type==="hidden"&&e.getAttribute("name")===h)return e}else return e;if(e=Pt(e.nextSibling),e===null)break}return null}function kS(e,n,i){if(n==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!i||(e=Pt(e.nextSibling),e===null))return null;return e}function rg(e,n){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!n||(e=Pt(e.nextSibling),e===null))return null;return e}function Sd(e){return e.data==="$?"||e.data==="$~"}function wd(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function BS(e,n){var i=e.ownerDocument;if(e.data==="$~")e._reactRetry=n;else if(e.data!=="$?"||i.readyState!=="loading")n();else{var s=function(){n(),i.removeEventListener("DOMContentLoaded",s)};i.addEventListener("DOMContentLoaded",s),e._reactRetry=s}}function Pt(e){for(;e!=null;e=e.nextSibling){var n=e.nodeType;if(n===1||n===3)break;if(n===8){if(n=e.data,n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"||n==="F!"||n==="F")break;if(n==="/$"||n==="/&")return null}}return e}var Nd=null;function cg(e){e=e.nextSibling;for(var n=0;e;){if(e.nodeType===8){var i=e.data;if(i==="/$"||i==="/&"){if(n===0)return Pt(e.nextSibling);n--}else i!=="$"&&i!=="$!"&&i!=="$?"&&i!=="$~"&&i!=="&"||n++}e=e.nextSibling}return null}function ug(e){e=e.previousSibling;for(var n=0;e;){if(e.nodeType===8){var i=e.data;if(i==="$"||i==="$!"||i==="$?"||i==="$~"||i==="&"){if(n===0)return e;n--}else i!=="/$"&&i!=="/&"||n++}e=e.previousSibling}return null}function dg(e,n,i){switch(n=ir(i),e){case"html":if(e=n.documentElement,!e)throw Error(o(452));return e;case"head":if(e=n.head,!e)throw Error(o(453));return e;case"body":if(e=n.body,!e)throw Error(o(454));return e;default:throw Error(o(451))}}function so(e){for(var n=e.attributes;n.length;)e.removeAttributeNode(n[0]);_l(e)}var Ft=new Map,fg=new Set;function lr(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Gn=L.d;L.d={f:US,r:GS,D:qS,C:YS,L:VS,m:$S,X:PS,S:XS,M:FS};function US(){var e=Gn.f(),n=Ks();return e||n}function GS(e){var n=Fn(e);n!==null&&n.tag===5&&n.type==="form"?Mm(n):Gn.r(e)}var Ji=typeof document>"u"?null:document;function hg(e,n,i){var s=Ji;if(s&&typeof n=="string"&&n){var u=Nt(n);u='link[rel="'+e+'"][href="'+u+'"]',typeof i=="string"&&(u+='[crossorigin="'+i+'"]'),fg.has(u)||(fg.add(u),e={rel:e,crossOrigin:i,href:n},s.querySelector(u)===null&&(n=s.createElement("link"),gt(n,"link",e),nt(n),s.head.appendChild(n)))}}function qS(e){Gn.D(e),hg("dns-prefetch",e,null)}function YS(e,n){Gn.C(e,n),hg("preconnect",e,n)}function VS(e,n,i){Gn.L(e,n,i);var s=Ji;if(s&&e&&n){var u='link[rel="preload"][as="'+Nt(n)+'"]';n==="image"&&i&&i.imageSrcSet?(u+='[imagesrcset="'+Nt(i.imageSrcSet)+'"]',typeof i.imageSizes=="string"&&(u+='[imagesizes="'+Nt(i.imageSizes)+'"]')):u+='[href="'+Nt(e)+'"]';var h=u;switch(n){case"style":h=Wi(e);break;case"script":h=el(e)}Ft.has(h)||(e=v({rel:"preload",href:n==="image"&&i&&i.imageSrcSet?void 0:e,as:n},i),Ft.set(h,e),s.querySelector(u)!==null||n==="style"&&s.querySelector(ro(h))||n==="script"&&s.querySelector(co(h))||(n=s.createElement("link"),gt(n,"link",e),nt(n),s.head.appendChild(n)))}}function $S(e,n){Gn.m(e,n);var i=Ji;if(i&&e){var s=n&&typeof n.as=="string"?n.as:"script",u='link[rel="modulepreload"][as="'+Nt(s)+'"][href="'+Nt(e)+'"]',h=u;switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":h=el(e)}if(!Ft.has(h)&&(e=v({rel:"modulepreload",href:e},n),Ft.set(h,e),i.querySelector(u)===null)){switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(i.querySelector(co(h)))return}s=i.createElement("link"),gt(s,"link",e),nt(s),i.head.appendChild(s)}}}function XS(e,n,i){Gn.S(e,n,i);var s=Ji;if(s&&e){var u=Kn(s).hoistableStyles,h=Wi(e);n=n||"default";var b=u.get(h);if(!b){var E={loading:0,preload:null};if(b=s.querySelector(ro(h)))E.loading=5;else{e=v({rel:"stylesheet",href:e,"data-precedence":n},i),(i=Ft.get(h))&&_d(e,i);var I=b=s.createElement("link");nt(I),gt(I,"link",e),I._p=new Promise(function(J,ie){I.onload=J,I.onerror=ie}),I.addEventListener("load",function(){E.loading|=1}),I.addEventListener("error",function(){E.loading|=2}),E.loading|=4,or(b,n,s)}b={type:"stylesheet",instance:b,count:1,state:E},u.set(h,b)}}}function PS(e,n){Gn.X(e,n);var i=Ji;if(i&&e){var s=Kn(i).hoistableScripts,u=el(e),h=s.get(u);h||(h=i.querySelector(co(u)),h||(e=v({src:e,async:!0},n),(n=Ft.get(u))&&Ed(e,n),h=i.createElement("script"),nt(h),gt(h,"link",e),i.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},s.set(u,h))}}function FS(e,n){Gn.M(e,n);var i=Ji;if(i&&e){var s=Kn(i).hoistableScripts,u=el(e),h=s.get(u);h||(h=i.querySelector(co(u)),h||(e=v({src:e,async:!0,type:"module"},n),(n=Ft.get(u))&&Ed(e,n),h=i.createElement("script"),nt(h),gt(h,"link",e),i.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},s.set(u,h))}}function mg(e,n,i,s){var u=(u=$.current)?lr(u):null;if(!u)throw Error(o(446));switch(e){case"meta":case"title":return null;case"style":return typeof i.precedence=="string"&&typeof i.href=="string"?(n=Wi(i.href),i=Kn(u).hoistableStyles,s=i.get(n),s||(s={type:"style",instance:null,count:0,state:null},i.set(n,s)),s):{type:"void",instance:null,count:0,state:null};case"link":if(i.rel==="stylesheet"&&typeof i.href=="string"&&typeof i.precedence=="string"){e=Wi(i.href);var h=Kn(u).hoistableStyles,b=h.get(e);if(b||(u=u.ownerDocument||u,b={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},h.set(e,b),(h=u.querySelector(ro(e)))&&!h._p&&(b.instance=h,b.state.loading=5),Ft.has(e)||(i={rel:"preload",as:"style",href:i.href,crossOrigin:i.crossOrigin,integrity:i.integrity,media:i.media,hrefLang:i.hrefLang,referrerPolicy:i.referrerPolicy},Ft.set(e,i),h||ZS(u,e,i,b.state))),n&&s===null)throw Error(o(528,""));return b}if(n&&s!==null)throw Error(o(529,""));return null;case"script":return n=i.async,i=i.src,typeof i=="string"&&n&&typeof n!="function"&&typeof n!="symbol"?(n=el(i),i=Kn(u).hoistableScripts,s=i.get(n),s||(s={type:"script",instance:null,count:0,state:null},i.set(n,s)),s):{type:"void",instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Wi(e){return'href="'+Nt(e)+'"'}function ro(e){return'link[rel="stylesheet"]['+e+"]"}function pg(e){return v({},e,{"data-precedence":e.precedence,precedence:null})}function ZS(e,n,i,s){e.querySelector('link[rel="preload"][as="style"]['+n+"]")?s.loading=1:(n=e.createElement("link"),s.preload=n,n.addEventListener("load",function(){return s.loading|=1}),n.addEventListener("error",function(){return s.loading|=2}),gt(n,"link",i),nt(n),e.head.appendChild(n))}function el(e){return'[src="'+Nt(e)+'"]'}function co(e){return"script[async]"+e}function gg(e,n,i){if(n.count++,n.instance===null)switch(n.type){case"style":var s=e.querySelector('style[data-href~="'+Nt(i.href)+'"]');if(s)return n.instance=s,nt(s),s;var u=v({},i,{"data-href":i.href,"data-precedence":i.precedence,href:null,precedence:null});return s=(e.ownerDocument||e).createElement("style"),nt(s),gt(s,"style",u),or(s,i.precedence,e),n.instance=s;case"stylesheet":u=Wi(i.href);var h=e.querySelector(ro(u));if(h)return n.state.loading|=4,n.instance=h,nt(h),h;s=pg(i),(u=Ft.get(u))&&_d(s,u),h=(e.ownerDocument||e).createElement("link"),nt(h);var b=h;return b._p=new Promise(function(E,I){b.onload=E,b.onerror=I}),gt(h,"link",s),n.state.loading|=4,or(h,i.precedence,e),n.instance=h;case"script":return h=el(i.src),(u=e.querySelector(co(h)))?(n.instance=u,nt(u),u):(s=i,(u=Ft.get(h))&&(s=v({},i),Ed(s,u)),e=e.ownerDocument||e,u=e.createElement("script"),nt(u),gt(u,"link",s),e.head.appendChild(u),n.instance=u);case"void":return null;default:throw Error(o(443,n.type))}else n.type==="stylesheet"&&(n.state.loading&4)===0&&(s=n.instance,n.state.loading|=4,or(s,i.precedence,e));return n.instance}function or(e,n,i){for(var s=i.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),u=s.length?s[s.length-1]:null,h=u,b=0;b<s.length;b++){var E=s[b];if(E.dataset.precedence===n)h=E;else if(h!==u)break}h?h.parentNode.insertBefore(e,h.nextSibling):(n=i.nodeType===9?i.head:i,n.insertBefore(e,n.firstChild))}function _d(e,n){e.crossOrigin==null&&(e.crossOrigin=n.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=n.referrerPolicy),e.title==null&&(e.title=n.title)}function Ed(e,n){e.crossOrigin==null&&(e.crossOrigin=n.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=n.referrerPolicy),e.integrity==null&&(e.integrity=n.integrity)}var sr=null;function yg(e,n,i){if(sr===null){var s=new Map,u=sr=new Map;u.set(i,s)}else u=sr,s=u.get(i),s||(s=new Map,u.set(i,s));if(s.has(e))return s;for(s.set(e,null),i=i.getElementsByTagName(e),u=0;u<i.length;u++){var h=i[u];if(!(h[Oa]||h[rt]||e==="link"&&h.getAttribute("rel")==="stylesheet")&&h.namespaceURI!=="http://www.w3.org/2000/svg"){var b=h.getAttribute(n)||"";b=e+b;var E=s.get(b);E?E.push(h):s.set(b,[h])}}return s}function vg(e,n,i){e=e.ownerDocument||e,e.head.insertBefore(i,n==="title"?e.querySelector("head > title"):null)}function KS(e,n,i){if(i===1||n.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof n.precedence!="string"||typeof n.href!="string"||n.href==="")break;return!0;case"link":if(typeof n.rel!="string"||typeof n.href!="string"||n.href===""||n.onLoad||n.onError)break;return n.rel==="stylesheet"?(e=n.disabled,typeof n.precedence=="string"&&e==null):!0;case"script":if(n.async&&typeof n.async!="function"&&typeof n.async!="symbol"&&!n.onLoad&&!n.onError&&n.src&&typeof n.src=="string")return!0}return!1}function xg(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function QS(e,n,i,s){if(i.type==="stylesheet"&&(typeof s.media!="string"||matchMedia(s.media).matches!==!1)&&(i.state.loading&4)===0){if(i.instance===null){var u=Wi(s.href),h=n.querySelector(ro(u));if(h){n=h._p,n!==null&&typeof n=="object"&&typeof n.then=="function"&&(e.count++,e=rr.bind(e),n.then(e,e)),i.state.loading|=4,i.instance=h,nt(h);return}h=n.ownerDocument||n,s=pg(s),(u=Ft.get(u))&&_d(s,u),h=h.createElement("link"),nt(h);var b=h;b._p=new Promise(function(E,I){b.onload=E,b.onerror=I}),gt(h,"link",s),i.instance=h}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(i,n),(n=i.state.preload)&&(i.state.loading&3)===0&&(e.count++,i=rr.bind(e),n.addEventListener("load",i),n.addEventListener("error",i))}}var Cd=0;function JS(e,n){return e.stylesheets&&e.count===0&&ur(e,e.stylesheets),0<e.count||0<e.imgCount?function(i){var s=setTimeout(function(){if(e.stylesheets&&ur(e,e.stylesheets),e.unsuspend){var h=e.unsuspend;e.unsuspend=null,h()}},6e4+n);0<e.imgBytes&&Cd===0&&(Cd=62500*RS());var u=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&ur(e,e.stylesheets),e.unsuspend)){var h=e.unsuspend;e.unsuspend=null,h()}},(e.imgBytes>Cd?50:800)+n);return e.unsuspend=i,function(){e.unsuspend=null,clearTimeout(s),clearTimeout(u)}}:null}function rr(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ur(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var cr=null;function ur(e,n){e.stylesheets=null,e.unsuspend!==null&&(e.count++,cr=new Map,n.forEach(WS,e),cr=null,rr.call(e))}function WS(e,n){if(!(n.state.loading&4)){var i=cr.get(e);if(i)var s=i.get(null);else{i=new Map,cr.set(e,i);for(var u=e.querySelectorAll("link[data-precedence],style[data-precedence]"),h=0;h<u.length;h++){var b=u[h];(b.nodeName==="LINK"||b.getAttribute("media")!=="not all")&&(i.set(b.dataset.precedence,b),s=b)}s&&i.set(null,s)}u=n.instance,b=u.getAttribute("data-precedence"),h=i.get(b)||s,h===s&&i.set(null,u),i.set(b,u),this.count++,s=rr.bind(this),u.addEventListener("load",s),u.addEventListener("error",s),h?h.parentNode.insertBefore(u,h.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(u,e.firstChild)),n.state.loading|=4}}var uo={$$typeof:C,Provider:null,Consumer:null,_currentValue:G,_currentValue2:G,_threadCount:0};function e1(e,n,i,s,u,h,b,E,I){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Sl(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Sl(0),this.hiddenUpdates=Sl(null),this.identifierPrefix=s,this.onUncaughtError=u,this.onCaughtError=h,this.onRecoverableError=b,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=I,this.incompleteTransitions=new Map}function bg(e,n,i,s,u,h,b,E,I,J,ie,re){return e=new e1(e,n,i,b,I,J,ie,re,E),n=1,h===!0&&(n|=24),h=Dt(3,null,null,n),e.current=h,h.stateNode=e,n=lu(),n.refCount++,e.pooledCache=n,n.refCount++,h.memoizedState={element:s,isDehydrated:i,cache:n},cu(h),e}function Sg(e){return e?(e=zi,e):zi}function wg(e,n,i,s,u,h){u=Sg(u),s.context===null?s.context=u:s.pendingContext=u,s=ia(n),s.payload={element:i},h=h===void 0?null:h,h!==null&&(s.callback=h),i=la(e,s,n),i!==null&&(Mt(i,e,n),ql(i,e,n))}function Ng(e,n){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var i=e.retryLane;e.retryLane=i!==0&&i<n?i:n}}function Td(e,n){Ng(e,n),(e=e.alternate)&&Ng(e,n)}function _g(e){if(e.tag===13||e.tag===31){var n=Ua(e,67108864);n!==null&&Mt(n,e,67108864),Td(e,67108864)}}function Eg(e){if(e.tag===13||e.tag===31){var n=kt();n=wl(n);var i=Ua(e,n);i!==null&&Mt(i,e,n),Td(e,n)}}var dr=!0;function t1(e,n,i,s){var u=T.T;T.T=null;var h=L.p;try{L.p=2,Ad(e,n,i,s)}finally{L.p=h,T.T=u}}function n1(e,n,i,s){var u=T.T;T.T=null;var h=L.p;try{L.p=8,Ad(e,n,i,s)}finally{L.p=h,T.T=u}}function Ad(e,n,i,s){if(dr){var u=Md(s);if(u===null)md(e,n,s,fr,i),Tg(e,s);else if(i1(u,e,n,i,s))s.stopPropagation();else if(Tg(e,s),n&4&&-1<a1.indexOf(e)){for(;u!==null;){var h=Fn(u);if(h!==null)switch(h.tag){case 3:if(h=h.stateNode,h.current.memoizedState.isDehydrated){var b=Sn(h.pendingLanes);if(b!==0){var E=h;for(E.pendingLanes|=2,E.entangledLanes|=2;b;){var I=1<<31-bt(b);E.entanglements[1]|=I,b&=~I}hn(h),(Ie&6)===0&&(Fs=ft()+500,io(0))}}break;case 31:case 13:E=Ua(h,2),E!==null&&Mt(E,h,2),Ks(),Td(h,2)}if(h=Md(s),h===null&&md(e,n,s,fr,i),h===u)break;u=h}u!==null&&s.stopPropagation()}else md(e,n,s,null,i)}}function Md(e){return e=zc(e),jd(e)}var fr=null;function jd(e){if(fr=null,e=Pn(e),e!==null){var n=c(e);if(n===null)e=null;else{var i=n.tag;if(i===13){if(e=d(n),e!==null)return e;e=null}else if(i===31){if(e=m(n),e!==null)return e;e=null}else if(i===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;e=null}else n!==e&&(e=null)}}return fr=e,null}function Cg(e){switch(e){case"beforetoggle":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"toggle":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 2;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"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(mi()){case bn:return 2;case Xn:return 8;case ja:case gc:return 32;case pi:return 268435456;default:return 32}default:return 32}}var zd=!1,ga=null,ya=null,va=null,fo=new Map,ho=new Map,xa=[],a1="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".split(" ");function Tg(e,n){switch(e){case"focusin":case"focusout":ga=null;break;case"dragenter":case"dragleave":ya=null;break;case"mouseover":case"mouseout":va=null;break;case"pointerover":case"pointerout":fo.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":ho.delete(n.pointerId)}}function mo(e,n,i,s,u,h){return e===null||e.nativeEvent!==h?(e={blockedOn:n,domEventName:i,eventSystemFlags:s,nativeEvent:h,targetContainers:[u]},n!==null&&(n=Fn(n),n!==null&&_g(n)),e):(e.eventSystemFlags|=s,n=e.targetContainers,u!==null&&n.indexOf(u)===-1&&n.push(u),e)}function i1(e,n,i,s,u){switch(n){case"focusin":return ga=mo(ga,e,n,i,s,u),!0;case"dragenter":return ya=mo(ya,e,n,i,s,u),!0;case"mouseover":return va=mo(va,e,n,i,s,u),!0;case"pointerover":var h=u.pointerId;return fo.set(h,mo(fo.get(h)||null,e,n,i,s,u)),!0;case"gotpointercapture":return h=u.pointerId,ho.set(h,mo(ho.get(h)||null,e,n,i,s,u)),!0}return!1}function Ag(e){var n=Pn(e.target);if(n!==null){var i=c(n);if(i!==null){if(n=i.tag,n===13){if(n=d(i),n!==null){e.blockedOn=n,es(e.priority,function(){Eg(i)});return}}else if(n===31){if(n=m(i),n!==null){e.blockedOn=n,es(e.priority,function(){Eg(i)});return}}else if(n===3&&i.stateNode.current.memoizedState.isDehydrated){e.blockedOn=i.tag===3?i.stateNode.containerInfo:null;return}}}e.blockedOn=null}function hr(e){if(e.blockedOn!==null)return!1;for(var n=e.targetContainers;0<n.length;){var i=Md(e.nativeEvent);if(i===null){i=e.nativeEvent;var s=new i.constructor(i.type,i);jc=s,i.target.dispatchEvent(s),jc=null}else return n=Fn(i),n!==null&&_g(n),e.blockedOn=i,!1;n.shift()}return!0}function Mg(e,n,i){hr(e)&&i.delete(n)}function l1(){zd=!1,ga!==null&&hr(ga)&&(ga=null),ya!==null&&hr(ya)&&(ya=null),va!==null&&hr(va)&&(va=null),fo.forEach(Mg),ho.forEach(Mg)}function mr(e,n){e.blockedOn===n&&(e.blockedOn=null,zd||(zd=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,l1)))}var pr=null;function jg(e){pr!==e&&(pr=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){pr===e&&(pr=null);for(var n=0;n<e.length;n+=3){var i=e[n],s=e[n+1],u=e[n+2];if(typeof s!="function"){if(jd(s||i)===null)continue;break}var h=Fn(i);h!==null&&(e.splice(n,3),n-=3,Mu(h,{pending:!0,data:u,method:i.method,action:s},s,u))}}))}function tl(e){function n(I){return mr(I,e)}ga!==null&&mr(ga,e),ya!==null&&mr(ya,e),va!==null&&mr(va,e),fo.forEach(n),ho.forEach(n);for(var i=0;i<xa.length;i++){var s=xa[i];s.blockedOn===e&&(s.blockedOn=null)}for(;0<xa.length&&(i=xa[0],i.blockedOn===null);)Ag(i),i.blockedOn===null&&xa.shift();if(i=(e.ownerDocument||e).$$reactFormReplay,i!=null)for(s=0;s<i.length;s+=3){var u=i[s],h=i[s+1],b=u[yt]||null;if(typeof h=="function")b||jg(i);else if(b){var E=null;if(h&&h.hasAttribute("formAction")){if(u=h,b=h[yt]||null)E=b.formAction;else if(jd(u)!==null)continue}else E=b.action;typeof E=="function"?i[s+1]=E:(i.splice(s,3),s-=3),jg(i)}}}function zg(){function e(h){h.canIntercept&&h.info==="react-transition"&&h.intercept({handler:function(){return new Promise(function(b){return u=b})},focusReset:"manual",scroll:"manual"})}function n(){u!==null&&(u(),u=null),s||setTimeout(i,20)}function i(){if(!s&&!navigation.transition){var h=navigation.currentEntry;h&&h.url!=null&&navigation.navigate(h.url,{state:h.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var s=!1,u=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",n),navigation.addEventListener("navigateerror",n),setTimeout(i,100),function(){s=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",n),navigation.removeEventListener("navigateerror",n),u!==null&&(u(),u=null)}}}function Rd(e){this._internalRoot=e}gr.prototype.render=Rd.prototype.render=function(e){var n=this._internalRoot;if(n===null)throw Error(o(409));var i=n.current,s=kt();wg(i,s,e,n,null,null)},gr.prototype.unmount=Rd.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var n=e.containerInfo;wg(e.current,2,null,e,null,null),Ks(),n[wn]=null}};function gr(e){this._internalRoot=e}gr.prototype.unstable_scheduleHydration=function(e){if(e){var n=Wo();e={blockedOn:null,target:e,priority:n};for(var i=0;i<xa.length&&n!==0&&n<xa[i].priority;i++);xa.splice(i,0,e),i===0&&Ag(e)}};var Rg=a.version;if(Rg!=="19.2.5")throw Error(o(527,Rg,"19.2.5"));L.findDOMNode=function(e){var n=e._reactInternals;if(n===void 0)throw typeof e.render=="function"?Error(o(188)):(e=Object.keys(e).join(","),Error(o(268,e)));return e=p(n),e=e!==null?g(e):null,e=e===null?null:e.stateNode,e};var o1={bundleType:0,version:"19.2.5",rendererPackageName:"react-dom",currentDispatcherRef:T,reconcilerVersion:"19.2.5"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var yr=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!yr.isDisabled&&yr.supportsFiber)try{za=yr.inject(o1),xt=yr}catch{}}return go.createRoot=function(e,n){if(!r(e))throw Error(o(299));var i=!1,s="",u=Bm,h=Um,b=Gm;return n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onUncaughtError!==void 0&&(u=n.onUncaughtError),n.onCaughtError!==void 0&&(h=n.onCaughtError),n.onRecoverableError!==void 0&&(b=n.onRecoverableError)),n=bg(e,1,!1,null,null,i,s,null,u,h,b,zg),e[wn]=n.current,hd(e),new Rd(n)},go.hydrateRoot=function(e,n,i){if(!r(e))throw Error(o(299));var s=!1,u="",h=Bm,b=Um,E=Gm,I=null;return i!=null&&(i.unstable_strictMode===!0&&(s=!0),i.identifierPrefix!==void 0&&(u=i.identifierPrefix),i.onUncaughtError!==void 0&&(h=i.onUncaughtError),i.onCaughtError!==void 0&&(b=i.onCaughtError),i.onRecoverableError!==void 0&&(E=i.onRecoverableError),i.formState!==void 0&&(I=i.formState)),n=bg(e,1,!0,n,i??null,s,u,I,h,b,E,zg),n.context=Sg(null),i=n.current,s=kt(),s=wl(s),u=ia(s),u.callback=null,la(i,u,s),i=s,n.current.lanes=i,Da(n,i),hn(n),e[wn]=n.current,hd(e),new gr(n)},go.version="19.2.5",go}var qg;function p1(){if(qg)return Ld.exports;qg=1;function t(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(a){console.error(a)}}return t(),Ld.exports=m1(),Ld.exports}var g1=p1();const Yg=t=>{let a;const l=new Set,o=(p,g)=>{const v=typeof p=="function"?p(a):p;if(!Object.is(v,a)){const x=a;a=g??(typeof v!="object"||v===null)?v:Object.assign({},a,v),l.forEach(w=>w(a,x))}},r=()=>a,m={setState:o,getState:r,getInitialState:()=>y,subscribe:p=>(l.add(p),()=>l.delete(p))},y=a=t(o,r,m);return m},y1=(t=>t?Yg(t):Yg),v1=t=>t;function x1(t,a=v1){const l=No.useSyncExternalStore(t.subscribe,No.useCallback(()=>a(t.getState()),[t,a]),No.useCallback(()=>a(t.getInitialState()),[t,a]));return No.useDebugValue(l),l}const Vg=t=>{const a=y1(t),l=o=>x1(a,o);return Object.assign(l,a),l},I0=(t=>t?Vg(t):Vg),k0=["default","gpt","claude","gemini","grok"];function $g(t){return Array.isArray(t.images)}function b1(t){let a="message";const l=[];for(const r of t.split(`
|
|
10
|
+
`))r.startsWith("event:")&&(a=r.slice(6).trim()),r.startsWith("data:")&&l.push(r.slice(5).trimStart());if(l.length===0)return null;const o=l.join(`
|
|
11
|
+
`);return!o||o==="[DONE]"?null:{event:a,data:JSON.parse(o)}}async function S1(t,a={}){const l=await fetch("/api/node/generate",{method:"POST",headers:{"Content-Type":"application/json",Accept:"text/event-stream"},body:JSON.stringify(t)});if(!(l.headers.get("content-type")??"").includes("text/event-stream")){const y=await l.json().catch(()=>({}));if(!l.ok){const p=y,g=p?.error?.message??`Request failed: ${l.status}`,v=new Error(g);throw v.code=p?.error?.code,v.status=p?.status??l.status,v}return y}if(!l.ok||!l.body)throw new Error(`Request failed: ${l.status}`);const r=l.body.getReader(),c=new TextDecoder;let d="",m=null;for(;;){const{done:y,value:p}=await r.read();if(y)break;d+=c.decode(p,{stream:!0});let g=d.indexOf(`
|
|
12
|
+
|
|
13
|
+
`);for(;g!==-1;){const v=d.slice(0,g);d=d.slice(g+2);const x=b1(v);if(x){if(x.event==="partial")a.onPartial?.(x.data);else if(x.event==="phase")a.onPhase?.(x.data);else if(x.event==="done")m=x.data;else if(x.event==="error"){const w=x.data,S=w?.error?.message??"Node generation failed",M=new Error(S);throw M.code=w?.error?.code,M.status=w?.status,M}}g=d.indexOf(`
|
|
14
|
+
|
|
15
|
+
`)}}if(!m)throw new Error("Node stream ended without a final image");return m}async function Fe(t,a){const l=await fetch(t,a),o=await l.json().catch(()=>({}));if(!l.ok){const r=o.error,c=o.code,d=typeof r=="string"?r:r?.message??`Request failed: ${l.status}`,m=new Error(d);throw m.status=l.status,typeof r!="string"&&r?.code?m.code=r.code:c&&(m.code=c),typeof o.currentVersion=="number"&&(m.currentVersion=o.currentVersion),m}return o}function Bd(t){const a=new URLSearchParams;t?.kind&&a.set("kind",t.kind),t?.sessionId&&a.set("sessionId",t.sessionId),t?.includeTerminal&&a.set("includeTerminal","1");const l=a.size>0?`?${a.toString()}`:"";return Fe(`/api/inflight${l}`)}async function Xg(t){await fetch(`/api/inflight/${encodeURIComponent(t)}`,{method:"DELETE"}).catch(()=>{})}function w1(){return Fe("/api/oauth/status")}function N1(){return Fe("/api/billing")}function _1(t){return Fe("/api/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}let yo=null;function B0(){if(!yo){const t=localStorage.getItem("ima2.browserId");t?yo=t:(yo=`${Date.now().toString(36)}_${Math.random().toString(36).slice(2,9)}`,localStorage.setItem("ima2.browserId",yo))}return yo}function Af(t,a){const l={...a?.headers,"X-Ima2-Browser-Id":B0()};return Fe(t,{...a,headers:l})}function df(t={}){const a=new URLSearchParams;return a.set("limit",String(t.limit??50)),t.since!=null&&a.set("since",String(t.since)),t.cursor&&(a.set("before",String(t.cursor.before)),a.set("beforeFilename",t.cursor.beforeFilename)),t.sessionId&&a.set("sessionId",t.sessionId),Af(`/api/history?${a.toString()}`)}function E1(t={}){const a=new URLSearchParams;return a.set("groupBy","session"),a.set("limit",String(t.limit??200)),t.cursor&&(a.set("before",String(t.cursor.before)),a.set("beforeFilename",t.cursor.beforeFilename)),Af(`/api/history?${a.toString()}`)}function C1(t){return Af("/api/history/favorite",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({filename:t})})}async function T1(){return(await Fe("/api/storage/status")).data}function A1(){return Fe("/api/storage/open-generated-dir",{method:"POST"})}function M1(t){return Fe(`/api/history/${encodeURIComponent(t)}`,{method:"DELETE"})}function j1(t,a){return Fe(`/api/history/${encodeURIComponent(t)}/restore`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({trashId:a})})}function z1(t){return Fe("/api/metadata/read",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}function R1(){return Fe("/api/sessions")}function D1(t){return Fe("/api/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:t})})}function U0(t){return Fe(`/api/sessions/${encodeURIComponent(t)}`)}function O1(t,a){return Fe(`/api/sessions/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:a})})}function L1(t){return Fe(`/api/sessions/${encodeURIComponent(t)}`,{method:"DELETE"})}function H1(t,a,l,o,r={}){const c={"Content-Type":"application/json","If-Match":String(a)};return r.saveId&&(c["X-Ima2-Graph-Save-Id"]=r.saveId),r.saveReason&&(c["X-Ima2-Graph-Save-Reason"]=r.saveReason),r.tabId&&(c["X-Ima2-Tab-Id"]=r.tabId),Fe(`/api/sessions/${encodeURIComponent(t)}/graph`,{method:"PUT",headers:c,body:JSON.stringify({nodes:l,edges:o})})}function I1(t){return Fe(`/api/sessions/${encodeURIComponent(t)}/style-sheet`)}function k1(t,a,l){return Fe(`/api/sessions/${encodeURIComponent(t)}/style-sheet`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({styleSheet:a,enabled:l})})}function B1(t,a){return Fe(`/api/sessions/${encodeURIComponent(t)}/style-sheet/enabled`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:a})})}function U1(t,a,l){return Fe(`/api/sessions/${encodeURIComponent(t)}/style-sheet/extract`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:a,referenceDataUrl:l})})}function G1(t){const a=new URLSearchParams;return Fe(`/api/prompts?${a.toString()}`)}function q1(t){return Fe("/api/prompts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}function Y1(t){return Fe(`/api/prompts/${encodeURIComponent(t)}`,{method:"DELETE"})}function V1(t){return Fe(`/api/prompts/${encodeURIComponent(t)}/favorite`,{method:"POST"})}function $1(t){return Fe("/api/prompts/import",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}function X1(t){return new Promise((a,l)=>{const o=new FileReader;o.onload=()=>a(String(o.result)),o.onerror=()=>l(o.error),o.readAsDataURL(t)})}function P1(t,a=256){return new Promise(l=>{const o=new Image;o.onload=()=>{const r=Math.min(1,a/Math.max(o.width,o.height)),c=document.createElement("canvas");c.width=o.width*r,c.height=o.height*r;const d=c.getContext("2d");if(!d)return l(t);d.drawImage(o,0,0,c.width,c.height),l(c.toDataURL("image/jpeg",.6))},o.onerror=()=>l(t),o.src=t})}const F1={maxB64Bytes:6e6,preserveTransparency:!1,maxEdge:4096,qualityLadder:[.85,.7,.55]},Pg=16777216;function Z1(t,a,l){let o=t,r=a;if(o<=0||r<=0)return{w:1,h:1};const c=Math.max(o,r);if(c>l){const d=l/c;o=Math.round(o*d),r=Math.round(r*d)}if(o*r>Pg){const d=Math.sqrt(Pg/(o*r));o=Math.max(1,Math.floor(o*d)),r=Math.max(1,Math.floor(r*d))}return{w:o,h:r}}function Ud(t){return new Promise((a,l)=>{const o=new FileReader;o.onload=()=>{typeof o.result=="string"?a(o.result):l(new Error("FileReader returned non-string"))},o.onerror=()=>l(o.error??new Error("FileReader failed")),o.readAsDataURL(t)})}function Fg(t,a,l){return new Promise((o,r)=>{t.toBlob(c=>c?o(c):r(new Error("canvas.toBlob returned null")),a,l)})}function Gd(t){const a=t.indexOf(",");return a<0?t.length:t.length-a-1}async function ff(t,a={}){const l={...F1,...a},o=await Ud(t);if(Gd(o)<=l.maxB64Bytes)return o;let r;try{r=await createImageBitmap(t)}catch(c){throw new Error("이미지 디코드 실패. JPEG/PNG로 변환 후 다시 시도해 주세요.",{cause:c})}try{const{w:c,h:d}=Z1(r.width,r.height,l.maxEdge),m=document.createElement("canvas");m.width=c,m.height=d;const y=m.getContext("2d");if(!y)throw new Error("canvas 2d context unavailable");if(y.drawImage(r,0,0,c,d),l.preserveTransparency){const p=await Fg(m,"image/png"),g=await Ud(p);if(Gd(g)>l.maxB64Bytes)throw new Error("이미지 압축 실패. JPEG/PNG로 미리 변환 후 다시 시도해 주세요.");return g}for(const p of l.qualityLadder){const g=await Fg(m,"image/jpeg",p),v=await Ud(g);if(Gd(v)<=l.maxB64Bytes)return v}throw new Error("이미지 압축 실패. JPEG/PNG로 미리 변환 후 다시 시도해 주세요.")}finally{r.close?.()}}function vr(t){const a=(t.type||"").toLowerCase();if(a.includes("heic")||a.includes("heif"))return!0;const l=(t.name||"").toLowerCase();return l.endsWith(".heic")||l.endsWith(".heif")}function Zg(t){return(t.type||"").toLowerCase()==="image/png"}const K1={ok:"확인",cancel:"취소",delete:"삭제",close:"닫기",saving:"저장 중...",loading:"불러오는 중..."},Q1={localStorageFull:"로컬 저장소가 가득 차서 최근 상태가 저장되지 않을 수 있습니다.",refLimitExceeded:"참조 이미지는 최대 5장까지 추가할 수 있습니다. 초과한 이미지는 제외되었습니다.",refTooLarge:"이미지가 너무 큽니다. JPEG/PNG로 미리 변환하거나 해상도를 낮춰 다시 시도해 주세요.",refNotBase64:"이미지 파일이 손상되었거나 지원하지 않는 형식입니다.",refEmpty:"빈 이미지 파일입니다. 다른 파일을 선택해 주세요.",refHeicUnsupported:"HEIC/HEIF는 지원하지 않습니다. JPEG 또는 PNG로 변환 후 다시 시도해 주세요.",noCurrentImageForRef:"참조로 사용할 현재 이미지가 없습니다.",refSlotFull:"참조 이미지 슬롯이 가득 찼습니다. 최대 5장까지 가능합니다.",currentImageLoadFailed:"현재 이미지를 불러오지 못했습니다.",addedCurrentAsRef:"현재 이미지를 참조에 추가했습니다.",sessionLoadFailed:"세션을 불러오지 못했습니다.",sessionCreateFailed:"세션을 만들지 못했습니다.",sessionRenameFailed:"세션 이름을 바꾸지 못했습니다.",sessionDeleteFailed:"세션을 삭제하지 못했습니다.",promptRequired:"프롬프트를 입력하세요.",nodeCreated:"노드 {id} 생성 완료 ({elapsed}초)",nodeCreateFailed:"노드 생성에 실패했습니다.",generatedBatch:"{count}장을 {elapsed}초 만에 생성했습니다.",generatedSingle:"{elapsed}초 만에 생성했습니다.",generateFailed:"생성에 실패했습니다.",sessionReloadedElsewhere:"그래프 버전이 달라져 최신 그래프를 다시 불러왔습니다.",promptCopied:"프롬프트를 복사했습니다",imageCopied:"클립보드에 복사했습니다",copyFailed:"복사에 실패했습니다",openGeneratedDirFailed:"이미지 폴더를 열지 못했습니다. ima2 doctor로 저장 경로를 확인해 주세요.",openGeneratedDirOpened:"생성 이미지 폴더를 열었습니다.",noPromptToFork:"가져올 프롬프트가 없습니다",forkStarted:"이 이미지의 프롬프트를 가져왔습니다. 수정 후 다시 생성하세요"},J1={queued:"대기 중",streaming:"생성 중",decoding:"마무리 중"},W1={title:"크기",width:"가로",height:"세로",hint:"16px 단위, 최대 변 3840, 비율 3:1 이하, 65.5만-829만 픽셀",autoLabel:"자동",autoSub:"모델 추천",customLabel:"직접 입력",customSub:"자유 설정",customPlus:"+ 직접",customSlots:"저장 크기",customSlot:"커스텀",customSlotLimit:"커스텀 크기는 최대 3개",saveCustomSlot:"커스텀 크기 저장",replaceCustomSlot:"슬롯 교체",ratioFree:"자유",ratio21x9:"21:9",normalizedPreview:"전송 크기",noAdjustment:"조정 없음",squareMaxHint:"829만 픽셀 제한 때문에 정사각형 최대는 {size}입니다.",adjustedReasons:{snap:"16px 보정",maxEdge:"최대 변",ratio:"비율 제한",minPixels:"최소 픽셀",maxPixels:"최대 픽셀",min:"최소 변",max:"최대 변",pixels:"픽셀 제한"}},ew={title:"크기 조정이 필요합니다",body:"입력한 크기가 이미지 생성 제한을 벗어나 자동 조정이 필요합니다.",requested:"요청한 크기",adjusted:"조정될 크기",approve:"승인 후 생성",cancel:"취소",reasonRatio:"비율 제한 3:1을 초과했습니다.",reasonPixels:"최대 픽셀 수 제한을 초과했습니다.",reasonMinPixels:"요청한 이미지의 픽셀 수가 너무 적습니다.",reasonMin:"최소 크기보다 작습니다.",reasonMax:"최대 크기보다 큽니다.",reasonSnap:"16px 단위에 맞춰야 합니다."},tw={title:"품질",lowLabel:"낮음",lowSub:"빠름",mediumLabel:"중간",mediumSub:"균형",highLabel:"높음",highSub:"최상"},nw={title:"모더레이션",autoLabel:"자동",autoSub:"표준 필터",lowLabel:"낮음",lowSub:"완화 필터",explain:"자동은 표준 안전 필터를 사용합니다. 낮음은 제한을 조금 완화해 경계선 프롬프트가 더 통과할 수 있습니다."},aw={title:"포맷"},iw={title:"개수",customPlus:"+n",customLabel:"직접 입력 개수",highCountHint:"고품질이나 참조 이미지에서는 시간이 더 걸릴 수 있습니다.",minMaxHint:"1-8장까지 가능합니다.",decrease:"개수 줄이기",increase:"개수 늘리기"},lw={restoreTitle:"이미지 설정 복원",restoreBody:"이 이미지에 ima2 생성 정보가 있습니다. 프롬프트와 설정을 적용하거나 참조 이미지만 추가할 수 있습니다.",applySettings:"설정 적용",useAsReferenceOnly:"참조만 추가",noMetadata:"ima2 메타데이터가 없습니다.",invalidMetadata:"이미지 메타데이터가 올바르지 않습니다.",unsupportedFormat:"PNG, JPEG, WebP 메타데이터만 복원할 수 있습니다.",readFailed:"메타데이터를 읽지 못했습니다.",applied:"이미지 설정을 복원했습니다.",sourceXmp:"XMP",sourcePngComment:"PNG comment",imageAlt:"드롭한 이미지 미리보기",prompt:"프롬프트",size:"크기",quality:"품질",model:"모델",source:"출처"},ow={button:"생성",buttonLoading:"생성 중 ({n})"},sw={label:"API 상태",checking:"확인 중...",offline:"오프라인",remaining:"${remaining} 남음",thisMonth:"이번 달 ${amount}",oauthFree:"OAuth 무료 사용 가능",apiDisabled:"API 키 비활성화됨 (OAuth 전용)",oauthMode:"OAuth 모드"},rw={openGalleryAria:"갤러리 열기",openGalleryTitle:"전체 갤러리 열기"},cw={closeSettings:"설정 닫기",detailSettings:"세부 설정",toggleShow:"세부 설정 보기",toggleHide:"세부 설정 숨기기",open:"열기",close:"닫기"},uw={label:"프롬프트",refCount:"참조 {count}/{max}",refChipTitle:"참조 이미지 {n}",refChipAlt:"참조 이미지 {n}",refRemoveAria:"참조 이미지 {n} 제거",placeholder:"원하는 이미지를 설명하고, 드래그 앤 드롭이나 붙여넣기로 참조 이미지를 추가할 수 있어요...",placeholderWithRefs:"첨부한 이미지로 무엇을 만들지 설명해 주세요...",attach:"첨부",attachTitle:"참조 이미지 첨부",useCurrent:"현재 결과 사용",useCurrentTitle:"현재 결과를 참조로 사용",style:"스타일",styleTitle:"스타일 일관성 설정 열기",directMode:"Direct",directModeTitle:"프롬프트를 원문 그대로 전달 (Direct 모드)",hint:"Ctrl + Enter로 생성",dropHere:"놓아서 참조 이미지로 추가 ({max}장까지)"},dw={resultAlt:"생성 결과",imageViewerAria:"생성 이미지 뷰어. 좌우 방향키로 이전 또는 다음 이미지를 볼 수 있습니다.",tokens:"{n} 토큰"},fw={today:"오늘",yesterday:"어제",thisWeek:"이번 주",earlier:"이전",imageAltFallback:"생성 이미지",deleteTitle:"삭제 (10초 내 복구 가능)",deleteAria:"이미지 삭제",ariaLabel:"이미지 갤러리",title:"갤러리",total:"총 {n}장",totalFiltered:" / 전체 {n}장",sortByAria:"정렬 기준",sortByDate:"날짜",sortBySession:"세션",searchPlaceholder:"프롬프트나 파일명을 검색",searchDisabledPlaceholder:"세션 보기에서는 검색이 비활성화됩니다",closeAria:"갤러리 닫기",closeTitle:"닫기 (Esc)",sessionLabel:"세션 {name}",standalone:"독립 이미지",emptySessions:"아직 저장된 세션이 없습니다.",emptyAll:"아직 생성된 이미지가 없습니다. 먼저 하나 만들어보세요.",noResults:"검색 결과가 없습니다.",storageNoticeTitle:"저장 위치 안내",storageNoticeRecoverable:"놀라게 해드려 죄송합니다. 최근 버전에서 갤러리 저장 위치가 설치 폴더에서 사용자 데이터 폴더로 바뀌었습니다. 예전 이미지가 이전 generated 폴더에 남아 있을 수 있어요. ima2 doctor를 실행하거나 복구 안내를 확인해 주세요.",storageNoticeNotFound:"놀라게 해드려 죄송합니다. 현재 이 컴퓨터에서 이전 generated 폴더를 찾지 못했습니다. 업데이트 중 예전 전역 설치 폴더가 교체된 경우 자동 복구가 어려울 수 있습니다. ima2 doctor와 복구 안내의 수동 검색 방법을 확인해 주세요.",storageNoticeUnknown:"저장 위치 상태를 확인하지 못했습니다. 업데이트 후 갤러리가 비어 보인다면 ima2 doctor로 이미지 폴더를 확인해 주세요.",openGeneratedDir:"폴더 열기",openGeneratedDirTitle:"생성 이미지 폴더 열기",cardNewsSet:"카드뉴스 세트",cardNewsCard:"카드뉴스 카드",openCardNewsSet:"세트 열기",openCardNewsSetFailed:"카드뉴스 세트를 열지 못했습니다.",copyCardNewsSetPath:"경로 복사",cardNewsPathCopied:"카드뉴스 세트 경로를 복사했습니다.",downloadCardNewsManifest:"매니페스트",cardNewsCount:"{n}장",deleted:"삭제됨: {filename}",undo:"되돌리기",secondsSuffix:"{n}초",favoriteTitle:"즐겨찾기 추가",unfavoriteTitle:"즐겨찾기 해제",favoriteAria:"즐겨찾기 추가",unfavoriteAria:"즐겨찾기 해제"},hw={empty:"비어 있음",pending:"생성 중",reconciling:"동기화 중",reconcilingPhase:"동기화 중 · {phase}",ready:"완료 · {elapsed}s",readyWithSearch:"완료 · {elapsed}s · 검색 {searches}",stale:"오래된 상태",staleWithError:"오래된 상태: {error}",assetMissing:"에셋 누락",assetMissingWithError:"에셋 누락: {error}",error:"오류: {error}",errorUnknown:"알 수 없음",nodeImageAlt:"노드 이미지",partialImageAlt:"노드 중간 이미지 미리보기",noAsset:"에셋 없음",stateStale:"상태 오래됨",noImage:"이미지 없음",editPromptPlaceholder:"수정 프롬프트...",promptPlaceholder:"프롬프트...",regenerate:"재생성",newVariation:"새 변형",generate:"생성",generateTitle:"노드 이미지 생성",addChild:"자식",addChildTitle:"자식 노드 추가",duplicateBranch:"복제",duplicateBranchTitle:"새 브랜치 루트로 복제",deleteTitle:"삭제",regenerateTitle:"현재 노드 이미지를 제자리에서 다시 생성",newVariationTitle:"같은 부모 아래 새 변형 노드를 생성",parentImageRequired:"부모 이미지를 먼저 생성해야 합니다.",attachRef:"첨부",attachRefTitle:"노드 참조 이미지 첨부",refAlt:"노드 참조 이미지 {n}",removeRef:"참조 이미지 {n} 제거",dropRefs:"이미지를 여기에 놓기",nodeRefsUnsupportedForEdit:"추가 참조 이미지는 현재 루트 노드에서만 지원합니다.",nodeRefsUsedWithParent:"부모 이미지와 함께 참조로 사용됩니다.",classicRefsParkedTitle:"클래식 참조 이미지가 보관 중입니다",classicRefsParkedBody:"이 이미지는 클래식 작성창용이라 노드 모드 생성에는 사용되지 않습니다.",clearParkedRefs:"보관된 참조 비우기",styleSheetActive:"세션 스타일 시트 적용 중"},mw={selectionOn:"선택중",selectionOff:"선택",selectAll:"전체",summary:"선택 {selected} · 미생성 {missing} · 영향 {stale}",generateMissing:"미생성",regenerateSelected:"재생성",stopRemaining:"중단",stopping:"중단중",clear:"해제",noneSelected:"선택된 노드가 없습니다.",parentRequired:"부모 이미지가 준비되지 않은 선택 노드가 {count}개 있습니다.",nothingToRun:"생성할 선택 노드가 없습니다.",stopQueued:"현재 노드가 끝나면 남은 작업을 중단합니다.",failed:"{done}/{total} 완료 후 중단되었습니다.",finished:"{done}/{total} 노드 작업 완료",staleBecauseParentChanged:"상위 노드가 재생성되어 다시 확인이 필요합니다."},pw={disconnect:"끊기",disconnectTitle:"선택한 연결선 끊기",disconnected:"연결선을 끊었습니다.",parentConflict:"한 노드에는 부모 연결을 하나만 둘 수 있습니다."},gw={authTitle:"인증 방식",apiLabel:"API 키",oauthNotReady:"OAuth 프록시가 아직 준비되지 않았습니다.",codexLoginRequired:"Codex 로그인이 필요합니다.",codexLoginHint:"터미널에서 `codex login`을 실행한 뒤 이 페이지를 새로고침하세요.",oauthStarting:"OAuth 프록시가 시작 중입니다. 몇 초 후 다시 시도하세요.",serverUnreachable:"서버에 연결할 수 없습니다. 백엔드가 실행 중인지 확인하세요.",apiInvalid:"API 키가 없거나 유효하지 않습니다. 서버의 .env 파일에서 OPENAI_API_KEY를 확인하세요.",availableTitle:"{name} 사용 가능",availableAria:"{name}: 사용 가능",unavailableAria:"{name}: 사용 불가",availableSr:"(사용 가능)",unavailableSr:"(사용 불가)"},yw={free:"무료",approx:"약 ${amount}",label:"예상 비용"},vw={download:"다운로드",copyImage:"이미지 복사",copyPrompt:"프롬프트 복사",continueHere:"여기서 이어서",continueHereTitle:"이 이미지의 프롬프트를 가져와 이어서 작업"},xw={switchTitle:"세션 전환",loading:"불러오는 중...",newSession:"새 세션",newSessionTitle:"새 세션",renameTitle:"이름 변경",renamePrompt:"세션 이름",deleteTitle:"삭제",deleteConfirm:'"{title}" 세션을 삭제할까요? 이 작업은 되돌릴 수 없습니다.',empty:"아직 세션이 없습니다",firstGraph:"첫 번째 그래프",untitled:"제목 없는 세션",assetAbortedError:"생성이 정상적으로 끝나지 않았습니다. 이 노드에서 다시 시도하세요."},bw={ariaLabel:"UI 모드",classic:"기본",node:"노드",cardNews:"카드뉴스"},Sw={workspace:"카드뉴스 작업공간",composer:"카드뉴스",composerHint:"템플릿은 스냅샷 기준이고, 출력 크기는 별도로 지정합니다.",topic:"주제",topicPlaceholder:"예: 중간고사 역전 플랜",audience:"대상",audiencePlaceholder:"예: 학부모",goal:"목표",goalPlaceholder:"예: 상담 신청",brief:"내용",briefPlaceholder:"카드뉴스에 들어갈 핵심 내용과 금지사항을 적어주세요.",outputSize:"출력 크기",customSize:"직접",draft:"초안 만들기",drafting:"초안 작성 중...",generateSet:"세트 생성",batchGenerate:"일괄 생성",generating:"생성 중...",generated:"{count}장 생성 완료.",missingGeneratedCard:"생성 응답에 이 카드가 포함되지 않았습니다.",error:"카드 생성에 실패했습니다.",imageTemplate:"이미지 템플릿",roleTemplate:"카드 구조",newTemplateLater:"커스텀 템플릿은 dev MVP 이후에 지원합니다",emptyTitle:"초안 대기 중",emptyBody:"왼쪽 설정으로 카드 덱을 준비합니다.",inspector:"카드 편집",cardTitle:"카드 제목",headline:"제목",body:"본문",visualPrompt:"이미지 프롬프트",summaryCopy:"요약 문구",designPrompt:"장면 / 디자인 프롬프트",textFields:"텍스트 박스",addTextField:"텍스트 박스 추가",removeTextField:"삭제",noTextFields:"아직 텍스트 박스가 없습니다.",textFieldText:"텍스트",textKind:"종류",placement:"위치",renderMode:"표시 방식",hierarchyLabel:"위계",textTooLong:"권장 길이를 초과했습니다.",selectTextField:"텍스트 박스 선택: {text}",textKinds:{headline:"제목",body:"설명 텍스트",caption:"캡션",cta:"행동 유도",badge:"배지",number:"숫자"},renderModes:{"in-image":"이미지에 표시","ui-only":"메모만"},hierarchy:{primary:"주요",secondary:"보조",supporting:"부가"},placements:{"top-left":"좌측 상단","top-center":"상단 중앙","top-right":"우측 상단","center-left":"좌측 중앙",center:"중앙","center-right":"우측 중앙","bottom-left":"좌측 하단","bottom-center":"하단 중앙","bottom-right":"우측 하단",free:"직접 지정"},roles:{cover:"표지",hook:"후킹",problem:"문제",insight:"인사이트",example:"예시",data:"데이터",summary:"요약",cta:"행동 유도"},locked:"잠김",unlocked:"열림",noCard:"선택된 카드 없음",generatedMeta:"생성 메타데이터",lockedHelp:"잠긴 카드는 일괄 생성과 재시도에서 제외됩니다.",retryCard:"이 카드 재시도",actions:{copyPrompt:"프롬프트 복사",copyCopy:"문구 복사",openImage:"이미지 열기",downloadCard:"다운로드"},status:{draft:"초안",queued:"대기",generating:"생성 중",generated:"완료",error:"오류",skipped:"제외",locked:"잠김"},progress:{generating:"생성 중 {done}/{total}",summary:"완료 {done}/{total}",detail:"대기 {queued} · 오류 {errors} · 제외 {skipped}",cardGenerating:"이 카드를 생성 중입니다."},planner:{structured:"구조화 JSON",jsonMode:"JSON 모드",repaired:"보정됨",fallback:"기본 초안",jsonOnlyHelp:"초안은 JSON만 만들고 이미지는 나중에 생성합니다.",error:"초안 생성 실패"}},ww={appName:"이미지 생성기",imageModelLabel:"모델",imageModelAria:"이미지 모델 선택",nodeModeHint:"노드 모드에서는 노드를 눌러 프롬프트를 수정한 뒤 생성하세요. 오른쪽 패널의 설정 (품질/크기)은 새로 만드는 모든 결과에 적용됩니다."},Nw={openAria:"설정 열기",openTitle:"설정",closeAria:"설정 닫기",closeTitle:"캔버스로 돌아가기",navAria:"설정 섹션",contentAria:"설정 내용",jumpTo:"{section} 섹션으로 이동",eyebrow:"작업공간 설정",title:"설정",subtitle:"계정, 화면, 앞으로 늘어날 작업공간 옵션을 이곳에 모아 생성 흐름은 가볍게 유지합니다.",sections:{account:{title:"계정",hint:"OAuth 상태"},generation:{title:"생성",hint:"모델 기본값"},appearance:{title:"화면",hint:"라이트/다크"},language:{title:"언어",hint:"UI 문구"},future:{title:"예정",hint:"확장 공간"}},account:{primaryEyebrow:"현재 공급자",oauthTitle:"OAuth 사용 중",oauthBody:"현재 생성은 Codex OAuth 세션으로 실행됩니다. 이 빌드에서는 API-Key 생성 모드가 비활성화되어 있습니다.",apiSourceEnv:"OPENAI_API_KEY 감지됨",apiSourceConfig:"config.json API 키 감지됨",apiTitle:"Configured but disabled",apiBody:"env/config에서 API 키를 찾았지만, 지금 ima2-gen은 OAuth 전용으로 동작합니다. 이 상태 표시를 숨기고 싶을 때만 키를 제거하세요.",apiDisabled:"비활성화",apiUnknown:"상태 불명"},imageModel:{title:"이미지 모델",body:"앞으로 생성 요청에 사용할 OAuth 이미지 모델을 선택합니다.",gpt54Mini:"GPT-5.4 Mini",gpt54:"GPT-5.4",gpt55:"GPT-5.5",gpt53CodexSpark:"GPT-5.3 Codex Spark — 이미지 생성 미지원",unsupportedHelp:"기본값은 GPT-5.4 Mini입니다. GPT-5.3 Codex Spark는 OAuth 모델 상태에 보일 수 있지만 image_generation 도구를 지원하지 않습니다."},appearance:{themeTitle:"테마",themeBody:"이 기기에서 사용할 테마 스타일과 밝기를 선택합니다."},language:{title:"언어",body:"생성 프롬프트와 무관하게 인터페이스 언어만 바꿉니다."},future:{title:"나중을 위한 자리",body:"OAuth 복구 도구나 작업공간 옵션이 실제로 필요해지면 이곳에 추가합니다."}},_w={loading:"세션 불러오는 중...",addFirst:"+ 첫 노드 추가",addRootTitle:"루트 노드 추가",hint:"핸들을 빈 공간으로 드래그하면 새 브랜치가 생깁니다. Delete 또는 Backspace로 삭제할 수 있습니다."},Ew={title:"{provider} 사용 불가",ariaLabel:"{provider} 사용 불가"},Cw={label:"언어",ko:"한국어",en:"English"},Tw={label:"테마",modeLabel:"밝기",styleLabel:"테마 스타일",system:"시스템",dark:"다크",light:"라이트",family:{default:"기본",gpt:"GPT",claude:"Claude",gemini:"Gemini",grok:"Grok"}},Aw={toggle:"스타일 일관성 적용",extract:"프롬프트에서 추출",extracting:"추출 중…",edit:"편집",save:"저장",cancel:"취소",emptyHint:"아직 스타일 시트가 없어요. 현재 프롬프트에서 추출해서 룩을 고정하세요.",noPrompt:"먼저 프롬프트를 입력하세요",extracted:"스타일 시트가 추출됐어요",editorTitle:"스타일 시트 편집",saved:"스타일 시트를 저장했어요",errNoKey:"스타일 시트 추출에는 OpenAI API 키가 필요해요. setup에서 연결해주세요.",errBadOutput:"모델이 사용 가능한 시트를 못 만들었어요 — 프롬프트를 더 구체적으로 적어주세요.",placeholderMedium:"예: 유화, 시네마틱 사진",placeholderComposition:"예: 중앙 인물, 와이드 풍경",placeholderMood:"예: 시네마틱, 몽환적",placeholderSubject:"예: 빨간 재킷 입은 젊은 여성",placeholderPalette:"#0a0a0a, #f97316, 따뜻한 앰버",placeholderNegative:"blur, 워터마크, 텍스트",fields:{medium:"매체",composition:"구도",mood:"분위기",subject:"피사체 디테일",palette:"팔레트 (쉼표로 구분된 hex 또는 이름)",negative:"네거티브 (쉼표로 구분)"}},Mw={close:"닫기",details:"자세한 원본 오류 보기",unknown:{title:"알 수 없는 오류가 발생했어요",body:"잠시 후 다시 시도해 주세요. 문제가 계속되면 원본 오류 메시지를 복사해 제보해 주세요."},moderationRefused:{title:"프롬프트가 모더레이션에 걸렸어요",body:"표현 수위를 낮추거나 다른 문구로 바꿔 보세요. 레퍼런스 이미지의 선정적/폭력적 요소도 영향을 줄 수 있어요.",cta:"프롬프트 수정"},emptyResponse:{title:"이미지가 돌아오지 않았어요",body:"Codex가 응답을 보냈지만 이미지 데이터가 비어 있었어요. 모더레이션 문제가 아니라 일시적 오류이거나 지원되지 않는 옵션 조합일 수 있어요. 다시 시도하거나 크기·품질·모델을 바꿔 보세요.",cta:"다시 시도"},upstream5xx:{title:"OpenAI 서버가 혼잡합니다",body:"잠시 후 다시 시도하면 대부분 해결돼요. 상태 페이지(status.openai.com)도 확인해 보세요.",cta:"다시 시도"},authChatgptExpired:{title:"Codex ChatGPT 로그인이 만료됐어요",body:"터미널에서 `npx @openai/codex login`을 다시 실행한 뒤 앱을 새로고침해 주세요.",cta:"새로고침"},authApiKeyInvalid:{title:"API 키 인증 실패",body:"키가 잘못됐거나 한도/조직 권한 문제예요. 본 앱은 API-Key 모드가 비활성화되어 있어 OAuth(ChatGPT 로그인)로 전환하는 편이 좋아요.",cta:"확인"},networkFailed:{title:"네트워크 연결 실패",body:"OpenAI 또는 로컬 런타임 서비스에 연결하지 못했어요. 먼저 새로고침하고, 계속되면 VPN/방화벽과 `ima2 doctor`에 표시되는 포트를 확인해 주세요.",cta:"새로고침"},oauthUnavailable:{title:"OAuth 프록시를 사용할 수 없어요",body:"OAuth 프록시가 아직 시작 중이거나, 사용할 수 없거나, fallback 포트로 이동했을 수 있어요. 먼저 새로고침하고, 계속되면 `ima2 doctor`의 OAuth URL을 확인해 주세요.",cta:"새로고침"},invalidRequest:{title:"이미지 요청을 수정해야 해요",body:"생성 요청의 일부 값이 올바르지 않습니다. 아래 원본 오류를 확인한 뒤 프롬프트나 크기를 수정해 다시 시도해 주세요.",cta:"입력 수정"},apikeyDisabled:{title:"API-Key 모드가 비활성화되어 있어요",body:"본 앱은 OAuth(ChatGPT 로그인) 전용으로 동작합니다. 공급자를 OAuth로 전환해 주세요.",cta:"확인"}},jw={title:"프롬프트 라이브러리",saveTitle:"프롬프트 라이브러리에 저장",save:"저장",saved:"프롬프트를 저장했습니다",saveFailed:"저장에 실패했습니다",name:"이름",tags:"태그",search:"프롬프트 검색...",favorites:"즐겨찾기",load:"불러오기",insert:"삽입",inserted:"프롬프트를 삽입했습니다",removeInserted:"삽입한 프롬프트 {name} 제거",favorite:"즐겨찾기",unfavorite:"즐겨찾기 해제",empty:"저장된 프롬프트가 없어요.",content:"내용",copy:"복사",untitled:"제목 없음",addNew:"새 프롬프트 추가",import:"불러오기",importFiles:".txt 또는 .md 파일 불러오기",dropImport:".txt 또는 .md 파일을 놓으면 프롬프트로 가져옵니다",imported:"프롬프트 {count}개를 가져왔습니다",importFailed:"가져오기에 실패했습니다",importNoValidFiles:".txt 또는 .md 프롬프트 파일이 없습니다."},zw={common:K1,toast:Q1,inflight:J1,size:W1,sizeConfirm:ew,quality:tw,moderation:nw,format:aw,count:iw,metadata:lw,generate:ow,billing:sw,history:rw,panel:cw,prompt:uw,canvas:dw,gallery:fw,node:hw,nodeBatch:mw,edge:pw,provider:gw,cost:yw,result:vw,session:xw,uiMode:bw,cardNews:Sw,sidebar:ww,settings:Nw,nodeCanvas:_w,apiDisabled:Ew,language:Cw,theme:Tw,styleSheet:Aw,errorCard:Mw,promptLibrary:jw},Rw={ok:"OK",cancel:"Cancel",delete:"Delete",close:"Close",saving:"Saving...",loading:"Loading..."},Dw={localStorageFull:"Local storage is full — recent state may not persist.",refLimitExceeded:"References are capped at 5. Extra images were dropped.",refTooLarge:"Image is too large. Convert to JPEG/PNG or lower the resolution and try again.",refNotBase64:"Image file is corrupted or uses an unsupported encoding.",refEmpty:"Empty image file. Please pick a different file.",refHeicUnsupported:"HEIC/HEIF is not supported. Convert to JPEG or PNG and try again.",noCurrentImageForRef:"No current image to use as reference.",refSlotFull:"Reference slots are full (max 5).",currentImageLoadFailed:"Failed to load current image.",addedCurrentAsRef:"Added current image as a reference.",sessionLoadFailed:"Failed to load session.",sessionCreateFailed:"Failed to create session.",sessionRenameFailed:"Failed to rename session.",sessionDeleteFailed:"Failed to delete session.",promptRequired:"Enter a prompt.",nodeCreated:"Node {id} created ({elapsed}s)",nodeCreateFailed:"Node generation failed.",generatedBatch:"Generated {count} images in {elapsed}s.",generatedSingle:"Generated in {elapsed}s.",generateFailed:"Generation failed.",sessionReloadedElsewhere:"Graph version changed, so the latest graph was reloaded.",promptCopied:"Prompt copied",imageCopied:"Copied to clipboard",copyFailed:"Copy failed",openGeneratedDirFailed:"Could not open the image folder. Run ima2 doctor to check the storage path.",openGeneratedDirOpened:"Opened the generated image folder.",noPromptToFork:"No prompt to fork",forkStarted:"Prompt imported. Edit and generate again."},Ow={queued:"Queued",streaming:"Generating",decoding:"Finalizing"},Lw={title:"Size",width:"Width",height:"Height",hint:"16px steps, max edge 3840, ratio up to 3:1, 655K–8.29M pixels",autoLabel:"Auto",autoSub:"Model pick",customLabel:"Custom",customSub:"Free form",customPlus:"+ Custom",customSlots:"Saved sizes",customSlot:"Custom",customSlotLimit:"Up to 3 custom sizes",saveCustomSlot:"Save custom size",replaceCustomSlot:"Replace slot",ratioFree:"Free",ratio21x9:"21:9",normalizedPreview:"Will send",noAdjustment:"No adjustment",squareMaxHint:"Square maximum is {size} because of the 8.29M pixel limit.",adjustedReasons:{snap:"snapped to 16px",maxEdge:"max edge",ratio:"ratio limit",minPixels:"minimum pixels",maxPixels:"maximum pixels",min:"minimum edge",max:"maximum edge",pixels:"pixel limit"}},Hw={title:"Size adjustment required",body:"The requested size is outside the image generation limits.",requested:"Requested size",adjusted:"Adjusted size",approve:"Approve and generate",cancel:"Cancel",reasonRatio:"The ratio exceeds the 3:1 limit.",reasonPixels:"The maximum pixel limit is exceeded.",reasonMinPixels:"The requested image has too few pixels.",reasonMin:"The size is below the minimum.",reasonMax:"The size is above the maximum.",reasonSnap:"The size must align to 16px increments."},Iw={title:"Quality",lowLabel:"Low",lowSub:"Fast",mediumLabel:"Medium",mediumSub:"Balanced",highLabel:"High",highSub:"Best"},kw={title:"Moderation",autoLabel:"Auto",autoSub:"Standard filter",lowLabel:"Low",lowSub:"Relaxed filter",explain:"Auto uses the standard safety filter. Low relaxes limits so borderline prompts may pass through."},Bw={title:"Format"},Uw={title:"Count",customPlus:"+n",customLabel:"Custom count",highCountHint:"Higher counts can take longer with references or high quality.",minMaxHint:"Use 1–8 images.",decrease:"Decrease count",increase:"Increase count"},Gw={restoreTitle:"Restore image settings",restoreBody:"This image contains ima2 generation metadata. Apply its prompt and settings, or attach it as a reference only.",applySettings:"Apply settings",useAsReferenceOnly:"Reference only",noMetadata:"No ima2 metadata found.",invalidMetadata:"Invalid image metadata.",unsupportedFormat:"Only PNG, JPEG, and WebP metadata can be restored.",readFailed:"Could not read image metadata.",applied:"Image settings restored.",sourceXmp:"XMP",sourcePngComment:"PNG comment",imageAlt:"Dropped image preview",prompt:"Prompt",size:"Size",quality:"Quality",model:"Model",source:"Source"},qw={button:"Generate",buttonLoading:"Generating ({n})"},Yw={label:"API Status",checking:"Checking...",offline:"Offline",remaining:"${remaining} remaining",thisMonth:"${amount} this month",oauthFree:"OAuth · free via codex",apiDisabled:"API key disabled (OAuth only)",oauthMode:"OAuth mode"},Vw={openGalleryAria:"Open gallery",openGalleryTitle:"Open full gallery"},$w={closeSettings:"Close settings",detailSettings:"Settings",toggleShow:"Show settings",toggleHide:"Hide settings",open:"Open",close:"Close"},Xw={label:"Prompt",refCount:"Refs {count}/{max}",refChipTitle:"Reference {n}",refChipAlt:"Reference {n}",refRemoveAria:"Remove reference {n}",placeholder:"Describe the image you want. Drag & drop or paste to attach reference images...",placeholderWithRefs:"Describe what to do with the attached images...",attach:"Attach",attachTitle:"Attach reference images",useCurrent:"Use current",useCurrentTitle:"Use current result as a reference",style:"Style",styleTitle:"Open style consistency settings",directMode:"Direct",directModeTitle:"Pass prompt through verbatim (Direct mode)",hint:"Ctrl + Enter to generate",dropHere:"Drop to attach as reference (up to {max})"},Pw={resultAlt:"result",imageViewerAria:"Generated image viewer. Use left and right arrow keys to move between images.",tokens:"{n} tokens"},Fw={today:"Today",yesterday:"Yesterday",thisWeek:"This week",earlier:"Earlier",imageAltFallback:"Generated image",deleteTitle:"Delete (10s undo)",deleteAria:"Delete image",ariaLabel:"Image gallery",title:"Gallery",total:"{n} total",totalFiltered:" / {n} total",sortByAria:"Sort by",sortByDate:"Date",sortBySession:"Session",searchPlaceholder:"Search prompts or filenames",searchDisabledPlaceholder:"Search is disabled in session view",closeAria:"Close gallery",closeTitle:"Close (Esc)",sessionLabel:"Session {name}",standalone:"Standalone images",emptySessions:"No sessions saved yet.",emptyAll:"No images yet. Create one first.",noResults:"No results.",storageNoticeTitle:"Storage notice",storageNoticeRecoverable:"Sorry for the scare. Recent versions moved the gallery folder from the installed package to your user data folder. Your old images may still be in the previous generated folder. Run ima2 doctor or open the recovery guide.",storageNoticeNotFound:"Sorry for the scare. We could not find a previous generated folder on this machine. If the old global install folder was replaced during update, automatic recovery may not be possible. Run ima2 doctor and check the recovery guide for manual search steps.",storageNoticeUnknown:"Storage status could not be checked. If the gallery looks empty after an update, run ima2 doctor to inspect the image folder.",openGeneratedDir:"Open folder",openGeneratedDirTitle:"Open generated image folder",cardNewsSet:"Card News set",cardNewsCard:"Card News card",openCardNewsSet:"Open set",openCardNewsSetFailed:"Could not open the Card News set.",copyCardNewsSetPath:"Copy path",cardNewsPathCopied:"Card News set path copied.",downloadCardNewsManifest:"Manifest",cardNewsCount:"{n} cards",deleted:"Deleted: {filename}",undo:"Undo",secondsSuffix:"{n}s",favoriteTitle:"Add to favorites",unfavoriteTitle:"Remove from favorites",favoriteAria:"Add to favorites",unfavoriteAria:"Remove from favorites"},Zw={empty:"Empty",pending:"Generating",reconciling:"Syncing",reconcilingPhase:"Syncing · {phase}",ready:"Done · {elapsed}s",readyWithSearch:"Done · {elapsed}s · searched {searches}",stale:"Stale",staleWithError:"Stale: {error}",assetMissing:"Asset missing",assetMissingWithError:"Asset missing: {error}",error:"Error: {error}",errorUnknown:"unknown",nodeImageAlt:"Node image",partialImageAlt:"Partial node image preview",noAsset:"No asset",stateStale:"State stale",noImage:"No image",editPromptPlaceholder:"Edit prompt...",promptPlaceholder:"Prompt...",regenerate:"Regen",newVariation:"New variant",generate:"Gen",generateTitle:"Generate node image",addChild:"Child",addChildTitle:"Add child node",duplicateBranch:"Branch",duplicateBranchTitle:"Duplicate as a new branch root",deleteTitle:"Delete",regenerateTitle:"Regenerate this node in place",newVariationTitle:"Create a new sibling variant under the same parent",parentImageRequired:"Generate the parent image first.",attachRef:"Attach",attachRefTitle:"Attach node reference images",refAlt:"Node reference {n}",removeRef:"Remove reference {n}",dropRefs:"Drop images here",nodeRefsUnsupportedForEdit:"Extra references are only supported on root nodes for now.",nodeRefsUsedWithParent:"Used together with the parent image.",classicRefsParkedTitle:"Classic references are parked",classicRefsParkedBody:"These images belong to the classic composer and are inactive in node mode.",clearParkedRefs:"Clear parked references",styleSheetActive:"Session style sheet active"},Kw={selectionOn:"Selecting",selectionOff:"Select",selectAll:"Select all",summary:"{selected} selected · {missing} missing · {stale} affected",generateMissing:"Generate missing",regenerateSelected:"Regenerate selected",stopRemaining:"Stop remaining",stopping:"Stopping",clear:"Clear",noneSelected:"No nodes selected.",parentRequired:"{count} selected node(s) need a ready parent image first.",nothingToRun:"No selected nodes need generation.",stopQueued:"The current node will finish, then the remaining queue will stop.",failed:"Stopped after {done}/{total} node(s).",finished:"Finished {done}/{total} node(s).",staleBecauseParentChanged:"An upstream node was regenerated; refresh this node when needed."},Qw={disconnect:"Disconnect",disconnectTitle:"Disconnect selected edge",disconnected:"Connection removed.",parentConflict:"A node can only have one parent connection."},Jw={authTitle:"Authentication",apiLabel:"API Key",oauthNotReady:"OAuth proxy is not ready yet.",codexLoginRequired:"Codex login required.",codexLoginHint:"Run `codex login` in your terminal, then refresh this page.",oauthStarting:"OAuth proxy is starting. Try again in a few seconds.",serverUnreachable:"Cannot reach the server. Make sure the backend is running.",apiInvalid:"API key is missing or invalid. Check OPENAI_API_KEY in the server's .env.",availableTitle:"{name} available",availableAria:"{name}: available",unavailableAria:"{name}: unavailable",availableSr:"(available)",unavailableSr:"(unavailable)"},Ww={free:"free",approx:"~${amount}",label:"Est. cost"},eN={download:"Download",copyImage:"Copy image",copyPrompt:"Copy prompt",continueHere:"Continue here",continueHereTitle:"Import this image's prompt and keep working"},tN={switchTitle:"Switch session",loading:"Loading...",newSession:"New session",newSessionTitle:"New session",renameTitle:"Rename",renamePrompt:"Session name",deleteTitle:"Delete",deleteConfirm:'Delete session "{title}"? This cannot be undone.',empty:"No sessions yet",firstGraph:"My first graph",untitled:"Untitled session",assetAbortedError:"Generation did not finish cleanly. Retry from this node."},nN={ariaLabel:"UI mode",classic:"Classic",node:"Node",cardNews:"Card News"},aN={workspace:"Card News workspace",composer:"Card News",composerHint:"Templates are visual snapshots; output size is set separately.",topic:"Topic",topicPlaceholder:"e.g. Exam comeback plan",audience:"Audience",audiencePlaceholder:"e.g. Parents",goal:"Goal",goalPlaceholder:"e.g. Book a consultation",brief:"Brief",briefPlaceholder:"Describe the card news content, required points, and exclusions.",outputSize:"Output size",customSize:"Custom",draft:"Draft outline",drafting:"Drafting...",generateSet:"Generate set",batchGenerate:"Batch generate",generating:"Generating...",generated:"Generated {count} cards.",missingGeneratedCard:"The generation response did not include this card.",error:"Card generation failed.",imageTemplate:"Image template",roleTemplate:"Card structure",newTemplateLater:"Custom templates are planned after the dev MVP",emptyTitle:"Waiting for a draft",emptyBody:"Use the left setup panel to prepare the card deck.",inspector:"Card inspector",cardTitle:"Card title",headline:"Headline",body:"Body",visualPrompt:"Image prompt",summaryCopy:"Summary copy",designPrompt:"Scene / design prompt",textFields:"Text boxes",addTextField:"Add text box",removeTextField:"Remove",noTextFields:"No text boxes yet.",textFieldText:"Text",textKind:"Kind",placement:"Placement",renderMode:"Render mode",hierarchyLabel:"Hierarchy",textTooLong:"Text exceeds the suggested length.",selectTextField:"Select text box: {text}",textKinds:{headline:"Headline",body:"Supporting text",caption:"Caption",cta:"CTA",badge:"Badge",number:"Number"},renderModes:{"in-image":"In image","ui-only":"UI only"},hierarchy:{primary:"Primary",secondary:"Secondary",supporting:"Supporting"},placements:{"top-left":"Top-left","top-center":"Top-center","top-right":"Top-right","center-left":"Center-left",center:"Center","center-right":"Center-right","bottom-left":"Bottom-left","bottom-center":"Bottom-center","bottom-right":"Bottom-right",free:"Free"},roles:{cover:"Cover",hook:"Hook",problem:"Problem",insight:"Insight",example:"Example",data:"Data",summary:"Summary",cta:"CTA"},locked:"Locked",unlocked:"Unlocked",noCard:"No card selected",generatedMeta:"Generated metadata",lockedHelp:"Locked cards are excluded from batch generation and retry.",retryCard:"Retry this card",actions:{copyPrompt:"Copy prompt",copyCopy:"Copy copy",openImage:"Open image",downloadCard:"Download"},status:{draft:"Draft",queued:"Queued",generating:"Generating",generated:"Done",error:"Error",skipped:"Skipped",locked:"Locked"},progress:{generating:"Generating {done}/{total}",summary:"Done {done}/{total}",detail:"{queued} queued · {errors} errors · {skipped} skipped",cardGenerating:"Generating this card."},planner:{structured:"Structured JSON",jsonMode:"JSON mode",repaired:"Repaired",fallback:"Fallback draft",jsonOnlyHelp:"Draft creates JSON only. Images are generated later.",error:"Draft failed"}},iN={appName:"Image Generator",imageModelLabel:"Model",imageModelAria:"Choose image model",nodeModeHint:"In node mode, click a node to edit its prompt and generate. Settings on the right panel (quality/size) apply to every new result."},lN={openAria:"Open settings",openTitle:"Settings",closeAria:"Close settings",closeTitle:"Return to canvas",navAria:"Settings sections",contentAria:"Settings content",jumpTo:"Jump to {section}",eyebrow:"Workspace settings",title:"Settings",subtitle:"Account, display, and future workspace controls live here so the generator stays focused.",sections:{account:{title:"Account",hint:"OAuth status"},generation:{title:"Generation",hint:"Model defaults"},appearance:{title:"Appearance",hint:"Light and dark"},language:{title:"Language",hint:"Interface copy"},future:{title:"Future",hint:"Reserved"}},account:{primaryEyebrow:"Active provider",oauthTitle:"OAuth is active",oauthBody:"Generation currently runs through your Codex OAuth session. API-key generation remains disabled in this build.",apiSourceEnv:"OPENAI_API_KEY detected",apiSourceConfig:"config.json API key detected",apiTitle:"Configured but disabled",apiBody:"ima2-gen found an API key in env/config, but the app is OAuth-only right now. Remove the key only if you do not want this status shown.",apiDisabled:"Disabled",apiUnknown:"Status unknown"},imageModel:{title:"Image model",body:"Choose the OAuth model used for future image generations.",gpt54Mini:"GPT-5.4 Mini",gpt54:"GPT-5.4",gpt55:"GPT-5.5",gpt53CodexSpark:"GPT-5.3 Codex Spark — unsupported for images",unsupportedHelp:"Default is GPT-5.4 Mini. GPT-5.3 Codex Spark may appear in OAuth model status, but it does not support the image_generation tool."},appearance:{themeTitle:"Theme",themeBody:"Pick a theme style and brightness for this device."},language:{title:"Language",body:"Switch the UI language without changing generated content."},future:{title:"Reserved for later",body:"Future provider repair and workspace controls will appear here when they become useful."}},oN={loading:"Loading session...",addFirst:"+ Add first node",addRootTitle:"Add root node",hint:"Drag a handle into empty space to branch. Press Delete or Backspace to remove."},sN={title:"{provider} unavailable",ariaLabel:"{provider} unavailable"},rN={label:"Language",ko:"한국어",en:"English"},cN={label:"Theme",modeLabel:"Brightness",styleLabel:"Theme style",system:"System",dark:"Dark",light:"Light",family:{default:"Default",gpt:"GPT",claude:"Claude",gemini:"Gemini",grok:"Grok"}},uN={toggle:"Apply style consistency",extract:"Extract from prompt",extracting:"Extracting…",edit:"Edit",save:"Save",cancel:"Cancel",emptyHint:"No style sheet yet. Extract from the current prompt to lock in a look.",noPrompt:"Enter a prompt first",extracted:"Style sheet extracted",editorTitle:"Edit style sheet",saved:"Style sheet saved",errNoKey:"Style-sheet extraction needs an OpenAI API key. Connect one via setup.",errBadOutput:"Model returned an unusable sheet — try a more specific prompt.",placeholderMedium:"e.g. oil painting, cinematic photo",placeholderComposition:"e.g. centered portrait, wide landscape",placeholderMood:"e.g. cinematic, dreamlike",placeholderSubject:"e.g. young woman in red jacket",placeholderPalette:"#0a0a0a, #f97316, warm amber",placeholderNegative:"blur, watermark, text",fields:{medium:"Medium",composition:"Composition",mood:"Mood",subject:"Subject details",palette:"Palette (comma-separated hex or names)",negative:"Negative (comma-separated)"}},dN={close:"Close",details:"Show raw error details",unknown:{title:"An unexpected error occurred",body:"Please try again shortly. If it persists, copy the raw error message below and report it."},moderationRefused:{title:"Prompt blocked by moderation",body:"Soften the wording or rephrase. Sensitive/violent content in reference images can also trigger this.",cta:"Edit prompt"},emptyResponse:{title:"No image was returned",body:"Codex responded but didn't include image data. This isn't a moderation block — it's likely a transient hiccup or an unsupported size/quality/model combination. Retry, or try a different size or model.",cta:"Retry"},upstream5xx:{title:"OpenAI is currently busy",body:"Retrying usually resolves this. Check status.openai.com if it persists.",cta:"Retry"},authChatgptExpired:{title:"Codex ChatGPT session expired",body:"Run `npx @openai/codex login` in your terminal, then reload this app.",cta:"Reload"},authApiKeyInvalid:{title:"API key authentication failed",body:"The key is invalid, revoked, out of quota, or tied to the wrong org. This app runs in OAuth mode, so switch to ChatGPT login.",cta:"OK"},networkFailed:{title:"Network connection failed",body:"Could not reach OpenAI or the local runtime service. Reload first; if it persists, check VPN/firewall and the port shown by `ima2 doctor`.",cta:"Reload"},oauthUnavailable:{title:"OAuth proxy unavailable",body:"The OAuth proxy is starting, unavailable, or moved to a fallback port. Reload first; if it persists, run `ima2 doctor` and check the reported OAuth URL.",cta:"Reload"},invalidRequest:{title:"Image request needs changes",body:"One or more generation parameters are invalid. Check the raw error details below, then edit the prompt or size and try again.",cta:"Edit input"},apikeyDisabled:{title:"API-key mode is disabled",body:"This app is OAuth-only (ChatGPT login). Switch the provider to OAuth.",cta:"OK"}},fN={title:"Prompt Library",saveTitle:"Save to Prompt Library",save:"Save",saved:"Prompt saved",saveFailed:"Save failed",name:"Name",tags:"Tags",search:"Search prompts...",favorites:"Favorites",load:"Load",insert:"Insert",inserted:"Prompt inserted",removeInserted:"Remove inserted prompt {name}",favorite:"Favorite",unfavorite:"Unfavorite",empty:"No saved prompts yet.",content:"Content",copy:"Copy",untitled:"Untitled",addNew:"Add new prompt",import:"Import",importFiles:"Import .txt or .md files",dropImport:"Drop .txt or .md files to import prompts",imported:"Imported {count} prompt(s)",importFailed:"Import failed",importNoValidFiles:"No .txt or .md prompt files found."},hN={common:Rw,toast:Dw,inflight:Ow,size:Lw,sizeConfirm:Hw,quality:Iw,moderation:kw,format:Bw,count:Uw,metadata:Gw,generate:qw,billing:Yw,history:Vw,panel:$w,prompt:Xw,canvas:Pw,gallery:Fw,node:Zw,nodeBatch:Kw,edge:Qw,provider:Jw,cost:Ww,result:eN,session:tN,uiMode:nN,cardNews:aN,sidebar:iN,settings:lN,nodeCanvas:oN,apiDisabled:sN,language:rN,theme:cN,styleSheet:uN,errorCard:dN,promptLibrary:fN},Kg={ko:zw,en:hN};function Qg(t,a){return a.split(".").reduce((l,o)=>{if(l!=null)return l[o]},t)}function mN(t,a){return t.replace(/\{(\w+)\}/g,(l,o)=>o in a?String(a[o]):`{${o}}`)}function pe(t,a){const l=P.getState().locale;return G0(l,t,a)}function G0(t,a,l){const o=Qg(Kg[t],a),r=typeof o=="string"?o:Qg(Kg.en,a),c=typeof r=="string"?r:a;return l?mN(c,l):c}function Ne(){const t=P(a=>a.locale);return{locale:t,t:(a,l)=>G0(t,a,l)}}const pN=["ko","en"];function gN(){try{const t=localStorage.getItem("ima2.locale");if(t==="ko"||t==="en")return t}catch{}return typeof navigator<"u"&&(navigator.language||"").toLowerCase().startsWith("ko")?"ko":"en"}function yN(t){try{localStorage.setItem("ima2.locale",t)}catch{}}function vN(t){return Math.round(t/16)*16}const ni=16,Mf=3840,qd=655360,Or=8294400,xN=3,ol=3,Jg=Math.floor(Math.sqrt(Or)/ni)*ni,q0=ni,bN=Mf,xr=xN;function Wg(t){return Math.floor(t/16)*16}function Vr(t){return Math.ceil(t/16)*16}function tn(t){return Math.min(bN,Math.max(q0,t))}function Ta(t,a){const l=typeof t=="number"?t:Number.parseInt(t,10);return Number.isFinite(l)?l:a}function si(t,a){t.includes(a)||t.push(a)}function ey(t,a){const l=vN(t);return l!==t&&si(a,"snap"),l}function ty(t,a){return t<q0&&si(a,"min"),t>Mf&&si(a,"maxEdge"),tn(t)}function ny(t,a,l){return t>a*xr?(si(l,"ratio"),{w:t,h:tn(Vr(t/xr))}):a>t*xr?(si(l,"ratio"),{w:tn(Vr(a/xr)),h:a}):{w:t,h:a}}function SN(t,a,l){if(t*a<qd){si(l,"minPixels");const d=Math.sqrt(qd/(t*a));let m=tn(Vr(t*d)),y=tn(Vr(a*d));for(;m*y<qd;)m<=y?m=tn(m+ni):y=tn(y+ni);return{w:m,h:y}}if(t*a<=Or)return{w:t,h:a};si(l,"maxPixels");const o=Math.sqrt(Or/(t*a));let r=tn(Wg(t*o)),c=tn(Wg(a*o));for(;r*c>Or;)r>=c?r=tn(r-ni):c=tn(c-ni);return{w:r,h:c}}function jf(t,a,l,o){const r=[],c=Ta(t,l),d=Ta(a,o);let m=ty(ey(c,r),r),y=ty(ey(d,r),r);return{w:m,h:y}=ny(m,y,r),{w:m,h:y}=SN(m,y,r),{w:m,h:y}=ny(m,y,r),{requestedW:c,requestedH:d,w:m,h:y,adjusted:m!==c||y!==d,reasons:r}}function Y0(t,a,l,o){const r=jf(t,a,l,o);return{w:r.w,h:r.h}}const wN=[{id:"free",label:"Free",w:0,h:0},{id:"1:1",label:"1:1",w:1,h:1},{id:"3:2",label:"3:2",w:3,h:2},{id:"2:3",label:"2:3",w:2,h:3},{id:"16:9",label:"16:9",w:16,h:9},{id:"9:16",label:"9:16",w:9,h:16},{id:"21:9",label:"21:9",w:21,h:9},{id:"9:21",label:"9:21",w:9,h:21}];function NN(t,a){return`${t}x${a}`}function _N(t,a=1024){if(t.id==="free")return null;const l=a,o=t.w>=t.h,r=o?Math.round(l*t.w/t.h):l,c=o?l:Math.round(l*t.h/t.w);return Y0(r,c,r,c)}function ac(t){const a=Y0(t.w,t.h,2400,1024);return{...t,w:a.w,h:a.h,label:t.label||`${a.w}×${a.h}`}}function dl(t){return t.slice(0,ol).map(ac)}function EN(t,a){const l=ac(a),o=t.findIndex(r=>r.id===l.id);return o>=0?dl(t.map((r,c)=>c===o?l:r)):t.length>=ol?dl(t):dl([...t,l])}function CN(t,a,l){const o=ac({...l,id:a});return dl(t.map(r=>r.id===a?o:r))}const TN=[{value:"1024x1024",label:"1024×1024",sub:"1:1"},{value:"1536x1024",label:"1536×1024",sub:"3:2"},{value:"1024x1536",label:"1024×1536",sub:"2:3"}],AN=[{value:"1360x1024",label:"1360×1024",sub:"4:3"},{value:"1024x1360",label:"1024×1360",sub:"3:4"},{value:"1824x1024",label:"1824×1024",sub:"16:9"}],MN=[{value:"1024x1824",label:"1024×1824",sub:"9:16"},{value:"2048x2048",label:"2048×2048",sub:"2K 1:1"},{value:"2048x1152",label:"2048×1152",sub:"2K 16:9"}],jN=[{value:"1152x2048",label:"1152×2048",sub:"2K 9:16"},{value:"3840x2160",label:"3840×2160",sub:"4K 16:9"},{value:"2160x3840",label:"2160×3840",sub:"4K 9:16"}];function zN(){return[{value:"auto",label:pe("size.autoLabel"),sub:pe("size.autoSub")},{value:"custom",label:pe("size.customLabel"),sub:pe("size.customSub")}]}const RN="gpt-5.4-mini",V0="ima2.imageModel",sl=[{value:"gpt-5.4-mini",shortLabel:"5.4m",fullLabelKey:"settings.imageModel.gpt54Mini"},{value:"gpt-5.4",shortLabel:"5.4",fullLabelKey:"settings.imageModel.gpt54"},{value:"gpt-5.5",shortLabel:"5.5",fullLabelKey:"settings.imageModel.gpt55"}],DN=[{value:"gpt-5.3-codex-spark",fullLabelKey:"settings.imageModel.gpt53CodexSpark"}];function $0(t){return sl.some(a=>a.value===t)}function X0(t){return t?sl.find(a=>a.value===t)?.shortLabel??t:null}const nl=()=>"nc_"+Math.random().toString(36).slice(2,10);function ay(t,a){return{x:t*360,y:a*320}}function ON(t,a){return t.find(l=>l.target===a)??null}function LN(t,a,l){return t.some(o=>o.target===l&&o.source!==a)}function _a(t,a){const l=new Map(t.map(o=>[o.id,o]));return t.map(o=>{const r=ON(a,o.id),d=(r?l.get(r.source):null)?.data.serverNodeId??null;return o.data.parentServerNodeId===d?o:{...o,data:{...o.data,parentServerNodeId:d}}})}const HN=360,P0=320;function IN(t,a,l){const o=new Set(l.filter(r=>r.source===t).map(r=>r.target));return a.filter(r=>o.has(r.id))}function iy(t){const a=t.filter(o=>!o.data.parentServerNodeId);if(a.length===0)return ay(0,0);const l=Math.max(...a.map(o=>o.position.y));return{x:ay(0,0).x,y:l+P0}}function ly(t,a,l){const o=IN(t.id,a,l),r=t.position.x+HN;if(o.length===0)return{x:r,y:t.position.y};const c=Math.max(...o.map(d=>d.position.y));return{x:r,y:c+P0}}const F0="ima2.nodeRefs.v1";function zf(){try{const t=localStorage.getItem(F0);if(!t)return{};const a=JSON.parse(t);return a&&typeof a=="object"?a:{}}catch{return{}}}function Z0(t){try{localStorage.setItem(F0,JSON.stringify(t))}catch{}}function kN(t,a){if(!t)return[];const l=zf()[t]?.[a];return Array.isArray(l)?l.filter(o=>typeof o=="string"):[]}function Lr(t,a,l){if(!t)return;const o=zf(),r={...o[t]??{}};l.length===0?delete r[a]:r[a]=l,o[t]=r,Z0(o)}function Yd(t,a){Lr(t,a,[])}function BN(t,a){if(!t)return;const l=zf(),o=l[t];if(!o)return;const r=new Set(a);for(const c of Object.keys(o))r.has(c)||delete o[c];l[t]=o,Z0(l)}function UN(t,a,l){const o=new Set(t.map(m=>m.id));if(!o.has(l))return[];const r=new Map;for(const m of o)r.set(m,new Set);for(const m of a)!o.has(m.source)||!o.has(m.target)||(r.get(m.source)?.add(m.target),r.get(m.target)?.add(m.source));const c=new Set,d=[l];for(let m=0;m<d.length;m++){const y=d[m];if(!c.has(y)){c.add(y);for(const p of r.get(y)??[])c.has(p)||d.push(p)}}return t.filter(m=>c.has(m.id)).map(m=>m.id)}function K0(t){return t.filter(a=>a.selected).map(a=>a.id)}function To(t,a){const l=new Set(a);return t.map(o=>({...o,selected:l.has(o.id)}))}function GN(t,a,l,o){const r=new Set(UN(t,a,l));if(!r.size)return t;if(!o)return To(t,r);const c=t.find(y=>y.id===l),d=t.some(y=>r.has(y.id)&&y.selected),m=new Set(K0(t));if(d)c?.selected?m.delete(l):m.add(l);else for(const y of r)m.add(y);return To(t,m)}function Q0(t){return t.data.status==="ready"&&!!t.data.imageUrl}function qN(t,a,l){const o=new Set(l),r=new Set(t.map(v=>v.id)),c=new Map,d=new Map;for(const v of o)r.has(v)&&(c.set(v,0),d.set(v,[]));for(const v of a)!o.has(v.source)||!o.has(v.target)||(d.get(v.source)?.push(v.target),c.set(v.target,(c.get(v.target)??0)+1));const m=t.map(v=>v.id),y=m.filter(v=>o.has(v)&&(c.get(v)??0)===0),p=[];for(let v=0;v<y.length;v++){const x=y[v];p.push(x);for(const w of d.get(x)??[])c.set(w,(c.get(w)??0)-1),(c.get(w)??0)===0&&y.push(w)}const g=new Set(p);return p.concat(m.filter(v=>o.has(v)&&!g.has(v)))}function J0(t,a){const l=new Set(a),o=new Set,r=new Map;for(const d of t){const m=r.get(d.source)??[];m.push(d.target),r.set(d.source,m)}const c=[...l];for(let d=0;d<c.length;d++)for(const m of r.get(c[d])??[])l.has(m)||o.has(m)||(o.add(m),c.push(m));return[...o]}function YN(t,a,l){const o=new Set(l);return t.filter(r=>r.source===a&&!o.has(r.target)).map(r=>r.target)}function VN(t,a,l){const o=new Set(l),r=new Map(t.map(d=>[d.id,d])),c=[];for(const d of a){if(!o.has(d.target)||o.has(d.source))continue;r.get(d.source)?.data.serverNodeId||c.push(d.target)}return c}const Ao={REF_TOO_LARGE:{surface:"toast",toastKey:"toast.refTooLarge"},REF_NOT_BASE64:{surface:"toast",toastKey:"toast.refNotBase64"},REF_EMPTY:{surface:"toast",toastKey:"toast.refEmpty"},REF_TOO_MANY:{surface:"toast",toastKey:"toast.refLimitExceeded"},MODERATION_REFUSED:{surface:"card",cardKey:"errorCard.moderationRefused",cta:"dismiss"},SAFETY_REFUSAL:{surface:"card",cardKey:"errorCard.moderationRefused",cta:"dismiss"},EMPTY_RESPONSE:{surface:"card",cardKey:"errorCard.emptyResponse",cta:"dismiss"},UPSTREAM_5XX:{surface:"card",cardKey:"errorCard.upstream5xx",cta:"retry"},AUTH_CHATGPT_EXPIRED:{surface:"card",cardKey:"errorCard.authChatgptExpired",cta:"reauth"},AUTH_API_KEY_INVALID:{surface:"card",cardKey:"errorCard.authApiKeyInvalid",cta:"dismiss"},NETWORK_FAILED:{surface:"card",cardKey:"errorCard.networkFailed",cta:"reload"},OAUTH_UNAVAILABLE:{surface:"card",cardKey:"errorCard.oauthUnavailable",cta:"reload"},INVALID_REQUEST:{surface:"card",cardKey:"errorCard.invalidRequest",cta:"dismiss"},INVALID_MODERATION:{surface:"toast",toastKey:"toast.generateFailed"},APIKEY_DISABLED:{surface:"card",cardKey:"errorCard.apikeyDisabled",cta:"dismiss"},DB_ERROR:{surface:"toast",toastKey:"toast.generateFailed"},UNKNOWN:{surface:"toast",toastKey:"toast.generateFailed"}};function $N(t){const a=(t||"").toLowerCase();return a?a.includes("moderation_blocked")||a.includes("moderation refused")?"MODERATION_REFUSED":a.includes("no image data returned")?"EMPTY_RESPONSE":a.includes("token is expired")||a.includes("sign in again")||a.includes("access token")&&a.includes("expired")||a.includes("token")&&a.includes("expired")&&!a.includes("api key")?"AUTH_CHATGPT_EXPIRED":a.includes("incorrect api key")||a.includes("invalid authentication")||a.includes("exceeded your current quota")||a.includes("incorrect organization")?"AUTH_API_KEY_INVALID":a.includes("failed to fetch")||a.includes("econnrefused")||a.includes("econnreset")||a.includes("enotfound")||a.includes("etimedout")||a.includes("network error")?"NETWORK_FAILED":a.includes("oauth")&&(a.includes("not running")||a.includes("unavailable")||a.includes("not ready"))?"OAUTH_UNAVAILABLE":a.includes("invalid_request_error")||a.includes("invalid_value")||a.includes("invalid size")||a.includes("invalid request")||a.includes("requested resolution")||a.includes("minimum pixel budget")||a.includes("unsupported value")?"INVALID_REQUEST":a.includes("an error occurred while processing")||/\b5\d\d\b/.test(a)?"UPSTREAM_5XX":"UNKNOWN":"UNKNOWN"}function XN(t){const a=t,l=typeof a?.message=="string"?a.message:String(t??""),o=typeof a?.code=="string"?a.code:"",r=o&&o in Ao?o:$N(l),c=Ao[r]??Ao.UNKNOWN;return{code:r,spec:c,message:l}}function oy(t,a){const{code:l,spec:o,message:r}=XN(t);if(o.surface==="card")a.showErrorCard(l,{fallbackMessage:r});else{const c=o.toastKey?pe(o.toastKey):r||pe("toast.generateFailed");a.showToast(c,!0)}return{code:l,message:r}}const Rf=!0,W0=!1;function PN(){try{const t=localStorage.getItem("ima2.rightPanelOpen");return t===null?!0:JSON.parse(t)===!0}catch{return!0}}function FN(){try{const t=localStorage.getItem("ima2.uiMode");if(t==="card-news")return W0?t:"classic";if(t==="node")return Rf?t:"classic";if(t==="classic")return t}catch{}return"classic"}function Vd(){try{const t=localStorage.getItem("ima2:theme");if(t==="system"||t==="dark"||t==="light")return t}catch{}return"system"}function sy(){try{const t=localStorage.getItem("ima2:themeFamily");if(t&&k0.includes(t))return t}catch{}return"default"}function ry(){try{const t=localStorage.getItem(V0);if($0(t))return t}catch{}return RN}function cy(t){try{localStorage.setItem(V0,t)}catch{}}function br(t){return t==="dark"||t==="light"?t:typeof window>"u"||typeof window.matchMedia!="function"?"dark":window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}const ev=18e4;function uy(t,a){return[...a.map(l=>l.text.trim()).filter(Boolean),t.trim()].filter(Boolean).join(`
|
|
16
|
+
|
|
17
|
+
`)}function $d(t){const a=t.meta??{},l=t.kind==="classic"||t.kind==="node"?t.kind:a.kind==="classic"||a.kind==="node"?a.kind:void 0;return{id:t.requestId,prompt:typeof t.prompt=="string"?t.prompt:"",startedAt:t.startedAt,phase:typeof t.phase=="string"?t.phase:void 0,sessionId:typeof a.sessionId=="string"?a.sessionId:null,parentNodeId:typeof a.parentNodeId=="string"?a.parentNodeId:null,clientNodeId:typeof a.clientNodeId=="string"?a.clientNodeId:null,kind:l}}function Xd(){try{const t=localStorage.getItem("ima2.inFlight");if(!t)return[];const a=JSON.parse(t);if(!Array.isArray(a))return[];const l=Date.now();return a.filter(o=>o&&typeof o.id=="string"&&typeof o.prompt=="string"&&typeof o.startedAt=="number"&&l-o.startedAt<ev).map(o=>({id:o.id,prompt:o.prompt,startedAt:o.startedAt,phase:typeof o.phase=="string"?o.phase:void 0,sessionId:typeof o.sessionId=="string"?o.sessionId:null,parentNodeId:typeof o.parentNodeId=="string"?o.parentNodeId:null,clientNodeId:typeof o.clientNodeId=="string"?o.clientNodeId:null,kind:o.kind==="classic"||o.kind==="node"?o.kind:void 0}))}catch{return[]}}function Wa(t){try{localStorage.setItem("ima2.inFlight",JSON.stringify(t))}catch(a){const l=window;if(!l.__ima2QuotaWarned){l.__ima2QuotaWarned=!0,console.warn("[ima2] localStorage write failed:",a);try{P.getState().showToast(pe("toast.localStorageFull"),!0)}catch{}}}}function dy(){try{const t=localStorage.getItem("ima2.selectedFilename");return typeof t=="string"&&t.length>0?t:null}catch{return null}}function _o(t){try{t?localStorage.setItem("ima2.selectedFilename",t):localStorage.removeItem("ima2.selectedFilename")}catch{}}function ZN(){try{const t=localStorage.getItem("ima2.activeSessionId");return typeof t=="string"&&t.length>0?t:null}catch{return null}}function Pd(t){try{t?localStorage.setItem("ima2.activeSessionId",t):localStorage.removeItem("ima2.activeSessionId")}catch{}}const rl=500,Sa=5;function KN(t){return t==="classic"||t==="edit"||t==="generate"||t==="card-news-card"||t==="card-news-set"?t:null}function fy(t){return{image:t.url,url:t.url,filename:t.filename,thumb:t.url,prompt:t.prompt??void 0,size:t.size??void 0,quality:t.quality??void 0,format:t.format,model:t.model??void 0,provider:t.provider,usage:t.usage??void 0,createdAt:t.createdAt,sessionId:t.sessionId??null,nodeId:t.nodeId??null,clientNodeId:t.clientNodeId??null,requestId:t.requestId??null,kind:KN(t.kind),setId:t.setId??null,cardId:t.cardId??null,cardOrder:t.cardOrder??null,headline:t.headline??null,body:t.body??null,cards:t.cards,refsCount:t.refsCount??0,isFavorite:t.isFavorite??!1}}function hy(t){return t.replace(/^data:[^;]+;base64,/,"")}async function my(t,a="reference.png"){const l=await fetch(t);if(!l.ok)throw new Error(`reference fetch failed: ${l.status}`);const o=await l.blob(),r=new File([o],a,{type:o.type||"image/png"});return ff(r,{preserveTransparency:!1})}const al="source-right",vo="target-left";function Sr(t,a,l,o){return`${t}:${l??"auto"}->${a}:${o??"auto"}`}function QN(t,a){return t&&t.startsWith(`${a}-`)?t:null}function JN(t){switch(t){case"source-top":return"target-bottom";case"source-right":return"target-left";case"source-bottom":return"target-top";case"source-left":return"target-right";default:return null}}function tv(t){const a=t.nodes.map(o=>{const r=o.data??{},c=typeof r.imageUrl=="string"&&r.imageUrl.length>0?r.imageUrl:null,d=typeof r.serverNodeId=="string"&&r.serverNodeId.length>0?`/generated/${r.serverNodeId}.png`:null,m=c??d,y={clientId:o.id,serverNodeId:r.serverNodeId??null,parentServerNodeId:r.parentServerNodeId??null,prompt:typeof r.prompt=="string"?r.prompt:"",imageUrl:m,status:r.status??(m?"ready":"empty"),pendingRequestId:r.pendingRequestId??null,recoveryRequestId:r.recoveryRequestId??null,pendingPhase:r.pendingPhase??null,pendingStartedAt:typeof r.pendingStartedAt=="number"?r.pendingStartedAt:null,partialImageUrl:null,error:r.error,elapsed:r.elapsed,webSearchCalls:r.webSearchCalls,model:r.model??null,size:r.size??null,referenceImages:kN(t.id,o.id)};return{id:o.id,type:"imageNode",position:{x:o.x,y:o.y},data:y}}),l=t.edges.map(o=>{const r=o.data??{};return{id:o.id,source:o.source,target:o.target,sourceHandle:typeof r.sourceHandle=="string"?r.sourceHandle:null,targetHandle:typeof r.targetHandle=="string"?r.targetHandle:null}});return{graphNodes:_a(a,l),graphEdges:l,graphVersion:t.graphVersion}}function WN(t,a){return`${t}x${a}`}function e_(t){return Math.min(8,Math.max(1,Math.trunc(t||1)))}const t_=new Set(["1024x1024","1536x1024","1024x1536","1360x1024","1024x1360","1824x1024","1024x1824","2048x2048","2048x1152","1152x2048","3840x2160","2160x3840","auto","custom"]);function n_(t){if(typeof t!="string")return{};if(t_.has(t))return{preset:t};const a=/^(\d+)x(\d+)$/.exec(t);if(!a)return{};const l=Number(a[1]),o=Number(a[2]);return!Number.isFinite(l)||!Number.isFinite(o)?{}:{preset:"custom",w:l,h:o}}function a_(t){return t==="low"||t==="medium"||t==="high"}function i_(t){return t==="png"||t==="jpeg"||t==="webp"}function l_(t){return t==="low"||t==="auto"}function o_(t,a){const l={},o=a.userPrompt||a.prompt;typeof o=="string"&&(l.prompt=o),a_(a.quality)&&(l.quality=a.quality),i_(a.format)&&(l.format=a.format),l_(a.moderation)&&(l.moderation=a.moderation),(a.promptMode==="auto"||a.promptMode==="direct")&&(l.promptMode=a.promptMode),a.model&&$0(a.model)&&(l.imageModel=a.model);const r=n_(a.size);return r.preset&&(l.sizePreset=r.preset),r.preset==="custom"&&r.w&&r.h&&(l.customW=Ta(r.w,t.customW),l.customH=Ta(r.h,t.customH)),l}function wr(t,a){if(t.sizePreset!=="custom")return null;const l=jf(t.customW,t.customH,t.customW,t.customH);return l.adjusted?{requestedW:l.requestedW,requestedH:l.requestedH,adjustedW:l.w,adjustedH:l.h,reasons:l.reasons,continuation:a}:null}const P=I0((t,a)=>({provider:"oauth",quality:"medium",sizePreset:"1024x1024",customW:1920,customH:1088,format:"png",moderation:"low",count:1,promptMode:"auto",prompt:"",insertedPrompts:[],referenceImages:[],promptLibraryOpen:!1,promptLibrary:{prompts:[],folders:[]},promptLibraryLoading:!1,galleryFavorites:new Set,browserId:B0(),addReferences:async l=>{const o=Sa-a().referenceImages.length,r=l.slice(0,Math.max(0,o)),c=r.filter(vr),d=r.filter(g=>!vr(g)),y=(await Promise.all(d.map(async g=>{try{return await ff(g,{preserveTransparency:Zg(g)})}catch(v){return console.warn("[addReferences] compress failed",v),null}}))).filter(g=>!!g);t(g=>({referenceImages:[...g.referenceImages,...y].slice(0,Sa)})),c.length>0&&a().showToast(pe("toast.refHeicUnsupported"),!0),d.length-y.length>0&&a().showToast(pe("toast.refTooLarge"),!0),l.length>o&&a().showToast(pe("toast.refLimitExceeded"),!0)},addReferenceDataUrl:l=>{t(o=>o.referenceImages.length>=Sa?o:{referenceImages:[...o.referenceImages,l]})},metadataRestore:null,readDroppedImageMetadata:async(l,o=null)=>{if(!l.type.startsWith("image/"))return!1;let r="";try{r=await X1(l);const c=await z1({filename:l.name,dataUrl:r});return c.metadata?(t({metadataRestore:{filename:l.name,image:r,metadata:c.metadata,source:c.source??"xmp",targetNodeId:o}}),!0):!1}catch{return a().showToast(pe("metadata.readFailed"),!0),!1}},applyMetadataRestore:()=>{const l=a().metadataRestore;if(!l)return;const o=o_(a(),l.metadata);if(o.imageModel&&cy(o.imageModel),l.targetNodeId&&typeof o.prompt=="string"){const r=o.prompt;t({...o,metadataRestore:null,graphNodes:a().graphNodes.map(c=>c.id===l.targetNodeId?{...c,data:{...c.data,prompt:r}}:c)}),a().scheduleGraphSave()}else t({...o,metadataRestore:null});a().showToast(pe("metadata.applied"))},cancelMetadataRestore:()=>t({metadataRestore:null}),addMetadataRestoreAsReference:()=>{const l=a().metadataRestore;l&&(l.targetNodeId?a().addNodeReferenceDataUrl(l.targetNodeId,l.image):a().addReferenceDataUrl(l.image),t({metadataRestore:null}))},removeReference:l=>{t(o=>({referenceImages:o.referenceImages.filter((r,c)=>c!==l)}))},clearReferences:()=>t({referenceImages:[]}),useCurrentAsReference:async()=>{const l=a().currentImage;if(!l){a().showToast(pe("toast.noCurrentImageForRef"),!0);return}if(a().referenceImages.length>=Sa){a().showToast(pe("toast.refSlotFull"),!0);return}let o;try{o=await my(l.image,l.filename||"current-reference.png")}catch{a().showToast(pe("toast.currentImageLoadFailed"),!0);return}t(r=>({referenceImages:[...r.referenceImages,o].slice(0,Sa)})),a().showToast(pe("toast.addedCurrentAsRef"))},activeGenerations:Xd().length,inFlight:Xd(),startInFlightPolling:()=>{if(typeof window>"u")return;const l=window;if(l.__ima2InflightTimer)return;const o=async()=>{if(a().inFlight.length===0){l.__ima2InflightTimer&&(clearInterval(l.__ima2InflightTimer),l.__ima2InflightTimer=void 0);return}try{const c=a().uiMode==="node"?"node":"classic",d=c==="node"?a().activeSessionId??void 0:void 0,{jobs:m}=await Bd({kind:c,sessionId:d}),y=new Map(m.map(w=>[w.requestId,w]));let p=!1;const g=Date.now(),v=5e3,x=[];for(const w of a().inFlight){if(!((w.kind??"classic")===c&&(c!=="node"||(w.sessionId??null)===(d??null)))){x.push(w);continue}if(!y.has(w.id)&&g-w.startedAt>v){p=!0;continue}const R=y.get(w.id);if(R){const z=$d(R),O={...w,phase:z.phase,sessionId:z.sessionId,parentNodeId:z.parentNodeId,clientNodeId:z.clientNodeId,kind:z.kind};(O.phase!==w.phase||O.sessionId!==w.sessionId||O.parentNodeId!==w.parentNodeId||O.clientNodeId!==w.clientNodeId||O.kind!==w.kind)&&(p=!0),x.push(O)}else x.push(w)}p&&(Wa(x),t({inFlight:x,activeGenerations:x.length}))}catch{}try{const c=a().history.reduce((x,w)=>w.createdAt&&w.createdAt>x?w.createdAt:x,0),{items:d}=await df({limit:rl,since:c}),m=d.map(fy),y=a().history,p=m.filter(x=>!y.some(w=>w.filename===x.filename));p.length>0&&t(x=>{const w=x.currentImage??p[0];return!x.currentImage&&p[0]?.filename&&_o(p[0].filename),{history:[...p,...x.history].slice(0,rl),currentImage:w}});const g=Date.now(),v=a().inFlight.filter(x=>g-x.startedAt<ev);v.length!==a().inFlight.length&&(Wa(v),t({inFlight:v,activeGenerations:v.length}))}catch{}};l.__ima2InflightTimer=window.setInterval(o,1500)},reconcileInflight:async()=>{try{const l=a().uiMode==="node"?"node":"classic",o=l==="node"?a().activeSessionId??void 0:void 0,{jobs:r}=await Bd({kind:l,sessionId:o}),c=new Map(r.map(g=>[g.requestId,g])),d=Date.now(),y=a().inFlight.flatMap(g=>{const v=c.get(g.id);if(v){const S=$d(v);return[{...g,...S,prompt:g.prompt||S.prompt}]}return(g.kind??"classic")===l&&(l!=="node"||(g.sessionId??null)===(o??null))?d-g.startedAt<1e4?[g]:[]:[g]}),p=new Set(y.map(g=>g.id));for(const g of r)p.has(g.requestId)||y.push($d(g));Wa(y),t({inFlight:y,activeGenerations:y.length}),y.length>0&&a().startInFlightPolling()}catch{}},syncFromStorage:()=>{const l=Xd(),o=dy(),r=ry();t(c=>({inFlight:l,activeGenerations:l.length,imageModel:r,currentImage:o&&c.currentImage?.filename!==o?c.history.find(d=>d.filename===o)??c.currentImage:c.currentImage})),l.length>0&&a().startInFlightPolling()},currentImage:null,history:[],toast:null,customSizeConfirm:null,errorCard:null,rightPanelOpen:PN(),toggleRightPanel:()=>t(l=>{const o=!l.rightPanelOpen;try{localStorage.setItem("ima2.rightPanelOpen",JSON.stringify(o))}catch{}return{rightPanelOpen:o}}),galleryOpen:!1,openGallery:()=>t({galleryOpen:!0}),closeGallery:()=>t({galleryOpen:!1}),imageModel:ry(),settingsOpen:!1,activeSettingsSection:"account",openSettings:(l="account")=>t({settingsOpen:!0,activeSettingsSection:l}),closeSettings:()=>t({settingsOpen:!1}),toggleSettings:()=>t(l=>({settingsOpen:!l.settingsOpen,activeSettingsSection:l.settingsOpen?l.activeSettingsSection:"account"})),setActiveSettingsSection:l=>t({activeSettingsSection:l}),uiMode:FN(),setUIMode:l=>{const o=l==="card-news"&&!W0?"classic":l;try{localStorage.setItem("ima2.uiMode",o)}catch{}t({uiMode:o})},theme:Vd(),resolvedTheme:br(Vd()),themeFamily:sy(),setTheme:l=>{try{localStorage.setItem("ima2:theme",l)}catch{}t({theme:l,resolvedTheme:br(l)})},setThemeFamily:l=>{try{localStorage.setItem("ima2:themeFamily",l)}catch{}t({themeFamily:l})},syncThemeFromStorage:()=>{const l=Vd();t({theme:l,resolvedTheme:br(l)})},syncThemeFamilyFromStorage:()=>{t({themeFamily:sy()})},refreshResolvedTheme:()=>{t(l=>({resolvedTheme:br(l.theme)}))},locale:gN(),setLocale:l=>{yN(l),t({locale:l})},graphNodes:[],graphEdges:[],setGraphNodes:l=>{t({graphNodes:_a(l,a().graphEdges)}),a().scheduleGraphSave()},setGraphEdges:l=>{t({graphEdges:l,graphNodes:_a(a().graphNodes,l)}),a().scheduleGraphSave()},disconnectEdge:l=>{a().disconnectEdges([l])},disconnectEdges:l=>{const o=new Set(l);if(o.size===0)return;const r=a().graphEdges.filter(y=>o.has(y.id));if(r.length===0)return;const c=a().graphEdges.filter(y=>!o.has(y.id)),d=new Set(r.map(y=>y.target)),m=a().graphNodes.map(y=>{if(!d.has(y.id))return y;const p=c.find(v=>v.target===y.id),g=p?a().graphNodes.find(v=>v.id===p.source):null;return{...y,data:{...y.data,parentServerNodeId:g?.data.serverNodeId??null}}});t({graphNodes:_a(m,c),graphEdges:c}),a().scheduleGraphSave(),a().flushGraphSave("edge-disconnect"),a().showToast(pe("edge.disconnected"))},nodeSelectionMode:!1,nodeBatchRunning:!1,nodeBatchStopping:!1,toggleNodeSelectionMode:()=>{const l=!a().nodeSelectionMode;t({nodeSelectionMode:l,...l?{}:{graphNodes:To(a().graphNodes,[])}})},selectAllGraphNodes:()=>{t({graphNodes:To(a().graphNodes,a().graphNodes.map(l=>l.id))})},selectNodeGraph:(l,o)=>{t({graphNodes:GN(a().graphNodes,a().graphEdges,l,o)})},clearNodeSelection:()=>{t({graphNodes:To(a().graphNodes,[])})},cancelNodeBatch:()=>{a().nodeBatchRunning&&(t({nodeBatchStopping:!0}),a().showToast(pe("nodeBatch.stopQueued")))},sessions:[],activeSessionId:null,activeSessionGraphVersion:null,sessionLoading:!1,styleSheet:null,styleSheetEnabled:!1,styleSheetExtracting:!1,async loadStyleSheet(){const l=a().activeSessionId;if(!l){t({styleSheet:null,styleSheetEnabled:!1});return}try{const o=await I1(l);if(a().activeSessionId!==l)return;t({styleSheet:o.styleSheet,styleSheetEnabled:!!o.enabled})}catch(o){console.warn("[styleSheet] load failed:",o)}},async saveStyleSheet(l,o){const r=a().activeSessionId;if(r)try{if(await k1(r,l,o),a().activeSessionId!==r)return;t({styleSheet:l,...typeof o=="boolean"?{styleSheetEnabled:o}:{}}),a().showToast(pe("styleSheet.saved"))}catch(c){console.warn("[styleSheet] save failed:",c),a().showToast(c.message,!0)}},async toggleStyleSheetEnabled(){const l=a().activeSessionId;if(!l)return;const o=!a().styleSheetEnabled;try{if(await B1(l,o),a().activeSessionId!==l)return;t({styleSheetEnabled:o})}catch(r){console.warn("[styleSheet] toggle failed:",r),a().showToast(r.message,!0)}},async extractStyleSheet(){const l=a().activeSessionId;if(!l)return;const o=a().prompt.trim();if(!o){a().showToast(pe("styleSheet.noPrompt"),!0);return}const r=a().referenceImages[0];t({styleSheetExtracting:!0});try{const{styleSheet:c}=await U1(l,o,r);if(a().activeSessionId!==l){t({styleSheetExtracting:!1});return}t({styleSheet:c,styleSheetEnabled:!0,styleSheetExtracting:!1}),a().showToast(pe("styleSheet.extracted"))}catch(c){t({styleSheetExtracting:!1}),console.warn("[styleSheet] extract failed:",c);const d=c.code,m=d==="STYLE_SHEET_NO_KEY"?pe("styleSheet.errNoKey"):d==="STYLE_SHEET_EMPTY"||d==="STYLE_SHEET_PARSE"||d==="STYLE_SHEET_SHAPE"?pe("styleSheet.errBadOutput"):c.message;a().showToast(m,!0)}},async loadSessions(){try{const{sessions:l}=await R1();if(t({sessions:l}),!a().activeSessionId){const r=ZN(),c=r?l.some(d=>d.id===r):!1;r&&c?await a().switchSession(r):await a().createAndSwitchSession(pe("session.firstGraph"))}}catch(l){console.warn("[sessions] load failed:",l)}},async switchSession(l){t({sessionLoading:!0}),await a().flushGraphSave("switch-session");try{const{session:o}=await U0(l),{graphNodes:r,graphEdges:c,graphVersion:d}=tv(o);t({activeSessionId:l,activeSessionGraphVersion:d,graphNodes:r,graphEdges:c,sessionLoading:!1}),Pd(l),await a().reconcileGraphPending().catch(()=>{}),a().loadStyleSheet().catch(()=>{})}catch(o){console.warn("[sessions] switch failed:",o),t({sessionLoading:!1}),a().showToast(pe("toast.sessionLoadFailed"),!0)}},async reconcileGraphPending(){const l=a().activeSessionId;if(!l)return;if(a().graphNodes.filter(r=>r.data?.pendingRequestId&&(r.data.status==="pending"||r.data.status==="reconciling")).length>0){let r=[];try{r=(await Bd({kind:"node",sessionId:l})).jobs}catch{r=[]}const c=new Map(r.map(p=>[p.requestId,p.phase])),d=Date.now(),m=1e4,y=a().graphNodes.map(p=>{const g=p.data?.pendingRequestId;if(!g||p.data.status!=="pending"&&p.data.status!=="reconciling")return p;if(c.has(g)){const w=c.get(g)??null;return{...p,data:{...p.data,status:"reconciling",pendingPhase:w}}}const v=p.data.pendingStartedAt??0;if(v&&d-v<m)return{...p,data:{...p.data,status:"reconciling"}};const x=!!p.data.imageUrl||!!p.data.serverNodeId;return{...p,data:{...p.data,pendingRequestId:null,pendingPhase:null,pendingStartedAt:null,partialImageUrl:null,status:x?"ready":"stale",error:x?void 0:pe("session.assetAbortedError")}}});t({graphNodes:y})}await ov(a,t).catch(()=>{})},async createAndSwitchSession(l){l==null&&(l=pe("session.untitled"));try{const{session:o}=await D1(l);t({sessions:[o,...a().sessions],activeSessionId:o.id,activeSessionGraphVersion:o.graphVersion,graphNodes:[],graphEdges:[]}),Pd(o.id)}catch(o){console.warn("[sessions] create failed:",o),a().showToast(pe("toast.sessionCreateFailed"),!0)}},async renameCurrentSession(l){const o=a().activeSessionId;if(o)try{await O1(o,l),t({sessions:a().sessions.map(r=>r.id===o?{...r,title:l,updatedAt:Date.now()}:r)})}catch{a().showToast(pe("toast.sessionRenameFailed"),!0)}},async deleteSessionById(l){try{await L1(l);const o=a().sessions.filter(r=>r.id!==l);t({sessions:o}),a().activeSessionId===l&&(t({activeSessionId:null,activeSessionGraphVersion:null,graphNodes:[],graphEdges:[]}),Pd(null),o.length>0?await a().switchSession(o[0].id):await a().createAndSwitchSession(pe("session.firstGraph")))}catch{a().showToast(pe("toast.sessionDeleteFailed"),!0)}},scheduleGraphSave(){rv(a,t)},async flushGraphSave(l="manual"){await u_(a,t,l)},addRootNode:()=>{const l=nl(),o={id:l,type:"imageNode",position:iy(a().graphNodes),data:{clientId:l,serverNodeId:null,parentServerNodeId:null,prompt:"",imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}};return t({graphNodes:[...a().graphNodes,o]}),a().scheduleGraphSave(),l},addChildNode:l=>{const o=a().graphNodes.find(m=>m.id===l);if(!o)return l;const r=nl(),c={id:r,type:"imageNode",position:ly(o,a().graphNodes,a().graphEdges),data:{clientId:r,serverNodeId:null,parentServerNodeId:o.data.serverNodeId,prompt:"",imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}},d={id:Sr(l,r,al,vo),source:l,target:r,sourceHandle:al,targetHandle:vo};return t({graphNodes:[...a().graphNodes,c],graphEdges:[...a().graphEdges,d]}),a().scheduleGraphSave(),r},addSiblingNode:l=>{const o=a().graphNodes.find(g=>g.id===l);if(!o)return l;const r=a().graphEdges.find(g=>g.target===l);if(!r){const g=nl(),v={id:g,type:"imageNode",position:iy(a().graphNodes),data:{clientId:g,serverNodeId:null,parentServerNodeId:null,prompt:o.data.prompt,imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}};return t({graphNodes:[...a().graphNodes,v]}),a().scheduleGraphSave(),g}const c=r.source,d=a().graphNodes.find(g=>g.id===c);if(!d)return l;const m=nl(),y={id:m,type:"imageNode",position:ly(d,a().graphNodes,a().graphEdges),data:{clientId:m,serverNodeId:null,parentServerNodeId:o.data.parentServerNodeId,prompt:o.data.prompt,imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}},p={id:Sr(c,m,al,vo),source:c,target:m,sourceHandle:al,targetHandle:vo};return t({graphNodes:[...a().graphNodes,y],graphEdges:[...a().graphEdges,p]}),a().scheduleGraphSave(),m},updateNodePrompt:(l,o)=>{t({graphNodes:a().graphNodes.map(r=>r.id===l?{...r,data:{...r.data,prompt:o}}:r)}),a().scheduleGraphSave()},addNodeReferences:async(l,o)=>{const r=a().graphNodes.find(w=>w.id===l);if(!r)return;const c=r.data.referenceImages??[],d=Sa-c.length;if(d<=0){a().showToast(pe("toast.refLimitExceeded"),!0);return}const m=o.slice(0,Math.max(0,d)),y=m.filter(vr),p=m.filter(w=>!vr(w)),v=(await Promise.all(p.map(async w=>{try{return await ff(w,{preserveTransparency:Zg(w)})}catch(S){return console.warn("[addNodeReferences] compress failed",S),null}}))).filter(w=>!!w);if(v.length>0){const w=a().activeSessionId;t({graphNodes:a().graphNodes.map(S=>{if(S.id!==l)return S;const M=[...S.data.referenceImages??[],...v].slice(0,Sa);return Lr(w,l,M),{...S,data:{...S.data,referenceImages:M}}})}),a().scheduleGraphSave()}y.length>0&&a().showToast(pe("toast.refHeicUnsupported"),!0),p.length-v.length>0&&a().showToast(pe("toast.refTooLarge"),!0),o.length>d&&a().showToast(pe("toast.refLimitExceeded"),!0)},addNodeReferenceDataUrl:(l,o)=>{a().graphNodes.find(c=>c.id===l)&&(t({graphNodes:a().graphNodes.map(c=>{if(c.id!==l)return c;const d=c.data.referenceImages??[];if(d.length>=Sa)return c;const m=[...d,o];return Lr(a().activeSessionId,l,m),{...c,data:{...c.data,referenceImages:m}}})}),a().scheduleGraphSave())},removeNodeReference:(l,o)=>{t({graphNodes:a().graphNodes.map(r=>{if(r.id!==l)return r;const c=(r.data.referenceImages??[]).filter((d,m)=>m!==o);return Lr(a().activeSessionId,l,c),{...r,data:{...r.data,referenceImages:c}}})}),a().scheduleGraphSave()},clearNodeReferences:l=>{Yd(a().activeSessionId,l),t({graphNodes:a().graphNodes.map(o=>o.id===l?{...o,data:{...o.data,referenceImages:void 0}}:o)}),a().scheduleGraphSave()},duplicateBranchRoot:l=>{const o=a().graphNodes.find(d=>d.id===l);if(!o)return l;const r=nl();a().graphNodes.filter(d=>!d.data.parentServerNodeId).length;const c={id:r,type:"imageNode",position:{x:o.position.x+420,y:o.position.y+40},data:{clientId:r,serverNodeId:null,parentServerNodeId:null,prompt:o.data.prompt,imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}};if(t({graphNodes:[...a().graphNodes,c]}),a().scheduleGraphSave(),o.data.imageUrl){const d=o.data.imageUrl;(async()=>{try{const m=await my(d,"node-reference.png");t({graphNodes:a().graphNodes.map(y=>y.id===r?{...y,data:{...y.data,referenceImages:[m]}}:y)})}catch{}})()}return r},async generateNode(l){const o=a().graphNodes.find(d=>d.id===l);if(!o)return;const{prompt:r}=o.data;if(!r.trim()){a().showToast(pe("toast.promptRequired"),!0);return}const c=wr(a(),{kind:"node",clientId:l});if(c){t({customSizeConfirm:c});return}await a().runGenerateNode(l)},async generateNodeInPlace(l){const o=a().graphNodes.find(c=>c.id===l);if(!o)return;if(!o.data.prompt.trim()){a().showToast(pe("toast.promptRequired"),!0);return}const r=wr(a(),{kind:"node-in-place",clientId:l});if(r){t({customSizeConfirm:r});return}await a().runGenerateNodeInPlace(l)},async generateNodeVariation(l,o){const r=a().graphNodes.find(d=>d.id===l);if(!r)return;if(!r.data.prompt.trim()){a().showToast(pe("toast.promptRequired"),!0);return}if(!o){const d=wr(a(),{kind:"node-variation",clientId:l});if(d){t({customSizeConfirm:d});return}}const c=a().addSiblingNode(l);await a().runGenerateNodeInPlace(c,{sizeOverride:o})},async runGenerateNode(l,o){const c=a().graphNodes.find(d=>d.id===l)?.data.status==="ready"?a().addSiblingNode(l):l;await a().runGenerateNodeInPlace(c,{sizeOverride:o})},async runGenerateNodeInPlace(l,o={}){const r=a().graphNodes,c=_a(r,a().graphEdges);c.some((_,k)=>_.data.parentServerNodeId!==r[k]?.data.parentServerNodeId)&&t({graphNodes:c});const d=c.find(_=>_.id===l);if(!d)return null;const{prompt:m,parentServerNodeId:y}=d.data;if(!m.trim())return a().showToast(pe("toast.promptRequired"),!0),null;const p=d.data.referenceImages??[],g=a(),v=o.sizeOverride??g.getResolvedSize(),x=o.parentServerNodeIdOverride!==void 0?o.parentServerNodeIdOverride:y;if(a().graphEdges.find(_=>_.target===l)&&!x)return a().showToast(pe("node.parentImageRequired"),!0),null;const S=g.activeSessionId,M=Date.now(),R=Math.random().toString(36).slice(2,6),z=`fn_${l}_${M}_${R}`,O=[...g.inFlight,{id:z,prompt:m,startedAt:M,kind:"node",sessionId:S,clientNodeId:l}];Wa(O),t({graphNodes:a().graphNodes.map(_=>_.id===l?{..._,data:{..._.data,status:"pending",pendingRequestId:z,recoveryRequestId:z,pendingPhase:"queued",pendingStartedAt:M,partialImageUrl:null,error:void 0,size:v}}:_),activeGenerations:g.activeGenerations+1,inFlight:O}),a().startInFlightPolling();let C=!0;try{const _=await S1({parentNodeId:x,prompt:m,quality:g.quality,size:v,format:g.format,moderation:g.moderation,model:g.imageModel,requestId:z,sessionId:S,clientNodeId:l,contextMode:"parent-plus-refs",searchMode:"off",...p.length?{references:p.map(hy)}:{}},{onPartial:k=>{a().activeSessionId===S&&t({graphNodes:a().graphNodes.map(A=>A.id===l?{...A,data:{...A.data,status:"pending",partialImageUrl:k.image,pendingPhase:"partial"}}:A)})},onPhase:k=>{a().activeSessionId===S&&k.phase&&t({graphNodes:a().graphNodes.map(A=>A.id===l?{...A,data:{...A.data,pendingPhase:k.phase??A.data.pendingPhase}}:A)})}});return a().activeSessionId===S&&(t({graphNodes:a().graphNodes.map(k=>{if(k.id!==l)return k;const A={...k.data};return delete A.partialImageUrl,{...k,data:{...A,serverNodeId:_.nodeId,imageUrl:_.url,status:"ready",pendingRequestId:null,recoveryRequestId:null,pendingPhase:null,pendingStartedAt:null,elapsed:_.elapsed,webSearchCalls:_.webSearchCalls,model:_.model??null,size:_.size??v}}})}),C=!0,o.suppressToast||a().showToast(pe("toast.nodeCreated",{id:_.nodeId.slice(0,8),elapsed:_.elapsed}))),_.nodeId}catch(_){const k=_ instanceof Error?_.message:pe("toast.nodeCreateFailed");return a().activeSessionId===S&&(t({graphNodes:a().graphNodes.map(A=>A.id===l?{...A,data:{...A.data,status:"error",pendingRequestId:null,pendingPhase:null,pendingStartedAt:null,partialImageUrl:null,error:k}}:A)}),C=!0,oy(_,a())),null}finally{const _=a().inFlight.filter(k=>k.id!==z);Wa(_),t({activeGenerations:Math.max(0,a().activeGenerations-1),inFlight:_}),a().activeSessionId===S&&C&&(a().scheduleGraphSave(),a().flushGraphSave("node-complete"))}},async runNodeBatch(l){if(a().nodeBatchRunning)return;const o=K0(a().graphNodes);if(o.length===0){a().showToast(pe("nodeBatch.noneSelected"),!0);return}const r=VN(a().graphNodes,a().graphEdges,o);if(r.length>0){a().showToast(pe("nodeBatch.parentRequired",{count:r.length}),!0);return}const c=qN(a().graphNodes,a().graphEdges,o),d=new Set(o),m=c.filter(g=>{if(l==="regenerate-all")return!0;const v=a().graphNodes.find(x=>x.id===g);return v?!Q0(v):!1});if(m.length===0){a().showToast(pe("nodeBatch.nothingToRun"));return}t({nodeBatchRunning:!0,nodeBatchStopping:!1});const y=new Map;let p=0;try{for(const g of m){if(a().nodeBatchStopping)break;const v=a().graphEdges.find(R=>R.target===g),x=v?y.get(v.source)??a().graphNodes.find(R=>R.id===g)?.data.parentServerNodeId??null:null,w=await a().runGenerateNodeInPlace(g,{parentServerNodeIdOverride:x,suppressToast:!0});if(!w){a().showToast(pe("nodeBatch.failed",{done:p,total:m.length}),!0);break}p+=1,y.set(g,w);const S=YN(a().graphEdges,g,d),M=new Set(J0(a().graphEdges,d));t({graphNodes:a().graphNodes.map(R=>M.has(R.id)?{...R,data:{...R.data,status:"stale",parentServerNodeId:S.includes(R.id)?w:R.data.parentServerNodeId,error:pe("nodeBatch.staleBecauseParentChanged")}}:R)})}a().showToast(pe("nodeBatch.finished",{done:p,total:m.length})),a().scheduleGraphSave()}finally{t({nodeBatchRunning:!1,nodeBatchStopping:!1})}},deleteNode:l=>{const r=a().graphNodes.find(m=>m.id===l)?.data?.pendingRequestId;r&&Xg(r),Yd(a().activeSessionId,l);const c=a().graphNodes.filter(m=>m.id!==l),d=a().graphEdges.filter(m=>m.source!==l&&m.target!==l);t({graphNodes:_a(c,d),graphEdges:d}),a().scheduleGraphSave()},deleteNodes:l=>{const o=new Set(l);for(const d of o)Yd(a().activeSessionId,d);for(const d of a().graphNodes)o.has(d.id)&&d.data?.pendingRequestId&&Xg(d.data.pendingRequestId);const r=a().graphNodes.filter(d=>!o.has(d.id)),c=a().graphEdges.filter(d=>!o.has(d.source)&&!o.has(d.target));t({graphNodes:_a(r,c),graphEdges:c}),a().scheduleGraphSave()},addChildNodeAt:(l,o,r=al)=>{const c=a().graphNodes.find(v=>v.id===l);if(!c)return l;const d=nl(),m=QN(r,"source")??al,y=JN(m)??vo,p={id:d,type:"imageNode",position:o,data:{clientId:d,serverNodeId:null,parentServerNodeId:c.data.serverNodeId,prompt:"",imageUrl:null,status:"empty",pendingRequestId:null,pendingPhase:null}},g={id:Sr(l,d,m,y),source:l,target:d,sourceHandle:m,targetHandle:y};return t({graphNodes:[...a().graphNodes,p],graphEdges:[...a().graphEdges,g]}),a().scheduleGraphSave(),d},connectNodes:(l,o,r=null,c=null)=>{if(l===o||a().graphEdges.find(p=>p.source===l&&p.target===o))return;if(LN(a().graphEdges,l,o)){a().showToast(pe("edge.parentConflict"),!0);return}if(!a().graphNodes.find(p=>p.id===l))return;const y=[...a().graphEdges,{id:Sr(l,o,r,c),source:l,target:o,sourceHandle:r,targetHandle:c}];t({graphNodes:_a(a().graphNodes,y),graphEdges:y}),a().scheduleGraphSave()},setProvider:l=>t({provider:l}),setQuality:l=>t({quality:l}),setSizePreset:l=>t({sizePreset:l}),setCustomSize:(l,o)=>t(r=>({customW:Ta(l,r.customW),customH:Ta(o,r.customH)})),setFormat:l=>t({format:l}),setModeration:l=>t({moderation:l}),setImageModel:l=>{cy(l),t({imageModel:l})},setCount:l=>t({count:e_(l)}),setPromptMode:l=>t({promptMode:l}),setPrompt:l=>t({prompt:l}),insertPromptToComposer:l=>t(o=>({insertedPrompts:o.insertedPrompts.some(c=>c.id===l.id)?o.insertedPrompts:[...o.insertedPrompts,l]})),removeInsertedPromptFromComposer:l=>t(o=>({insertedPrompts:o.insertedPrompts.filter(r=>r.id!==l)})),clearInsertedPrompts:()=>t({insertedPrompts:[]}),selectHistory:l=>{_o(l.filename??null),t({currentImage:l})},removeFromHistory:l=>{const o=a(),r=o.history.filter(d=>d.filename!==l),c=o.currentImage&&o.currentImage.filename===l?null:o.currentImage;t({history:r,currentImage:c}),c===null&&_o(null)},addHistoryItem:l=>{const o=a();if(o.history.some(d=>l.filename&&d.filename===l.filename))return;const c={...l,createdAt:l.createdAt||Date.now()};t({history:[c,...o.history].slice(0,rl)})},getResolvedSize:()=>{const{sizePreset:l,customW:o,customH:r}=a();return l==="custom"?`${o}x${r}`:l},async generate(){const l=a();if(!uy(l.prompt,l.insertedPrompts))return;const r=wr(l,{kind:"classic"});if(r){t({customSizeConfirm:r});return}await a().runGenerate()},async runGenerate(l){const o=a(),r=uy(o.prompt,o.insertedPrompts);if(!r)return;const c=l??o.getResolvedSize(),d=`f_${Date.now()}_${Math.random().toString(36).slice(2,7)}`,m=Date.now(),y=[...o.inFlight,{id:d,prompt:r,startedAt:m}];Wa(y),t({activeGenerations:o.activeGenerations+1,inFlight:y}),a().startInFlightPolling();try{const p={prompt:r,quality:o.quality,size:c,format:o.format,moderation:o.moderation,provider:o.provider,n:o.count,model:o.imageModel,requestId:d,mode:o.promptMode,...o.referenceImages.length?{references:o.referenceImages.map(hy)}:{}},g=await _1(p);if($g(g)&&g.images.length>1){for(const v of g.images){const x={image:v.image,filename:v.filename,prompt:r,elapsed:g.elapsed,provider:g.provider,usage:g.usage,quality:g.quality??o.quality,size:g.size??c,model:g.model??o.imageModel};await gy(x,t,a)}a().showToast(pe("toast.generatedBatch",{count:g.images.length,elapsed:g.elapsed}))}else{let v;if($g(g)){const x=g.images[0];v={image:x.image,filename:x.filename,prompt:r,elapsed:g.elapsed,provider:g.provider,usage:g.usage,quality:g.quality??o.quality,size:g.size??c,model:g.model??o.imageModel}}else v={image:g.image,filename:g.filename,prompt:r,elapsed:g.elapsed,provider:g.provider,usage:g.usage,quality:g.quality??o.quality,size:g.size??c,model:g.model??o.imageModel};await gy(v,t,a),a().showToast(pe("toast.generatedSingle",{elapsed:g.elapsed}))}}catch(p){oy(p,a())}finally{const p=a().inFlight.filter(g=>g.id!==d);Wa(p),t({activeGenerations:Math.max(0,a().activeGenerations-1),inFlight:p})}},async confirmCustomSizeAdjustment(){const l=a().customSizeConfirm;if(!l)return;const o=WN(l.adjustedW,l.adjustedH);if(t({customW:l.adjustedW,customH:l.adjustedH,customSizeConfirm:null}),l.continuation.kind==="classic"){await a().runGenerate(o);return}if(l.continuation.kind==="node-in-place"){await a().runGenerateNodeInPlace(l.continuation.clientId,{sizeOverride:o});return}if(l.continuation.kind==="node-variation"){await a().generateNodeVariation(l.continuation.clientId,o);return}await a().runGenerateNode(l.continuation.clientId,o)},cancelCustomSizeAdjustment:()=>t({customSizeConfirm:null}),hydrateHistory(){(async()=>{try{const o=(await df({limit:rl})).items.map(fy);if(o.length>0){const r=dy(),c=r?o.find(d=>d.filename===r):null;t({history:o,currentImage:c??o[0]}),c||_o(o[0]?.filename??null)}}catch(l){console.warn("[history] load failed:",l)}})()},showToast(l,o=!1){t({toast:{message:l,error:o,id:Date.now()+Math.random()}})},showErrorCard(l,o){t({errorCard:{code:l,fallbackMessage:o?.fallbackMessage,id:Date.now()+Math.random()}})},dismissErrorCard(){t({errorCard:null})},togglePromptLibrary(){t(l=>({promptLibraryOpen:!l.promptLibraryOpen}))},async loadPromptLibrary(){t({promptLibraryLoading:!0});try{const l=await G1();t({promptLibrary:{prompts:l.prompts,folders:l.folders},promptLibraryLoading:!1})}catch(l){console.error("[PromptLibrary] load failed",l),t({promptLibraryLoading:!1})}},async savePromptToLibrary(l){try{await q1(l),await a().loadPromptLibrary(),a().showToast(pe("promptLibrary.saved"))}catch(o){console.error("[PromptLibrary] save failed",o),a().showToast(pe("promptLibrary.saveFailed"),!0)}},async deletePromptFromLibrary(l){try{await Y1(l),await a().loadPromptLibrary()}catch(o){console.error("[PromptLibrary] delete failed",o)}},async togglePromptFavorite(l){try{await V1(l),await a().loadPromptLibrary()}catch(o){console.error("[PromptLibrary] favorite toggle failed",o)}},async importPromptsToLibrary(l){try{const o=[];for(const c of l){if(!/\.(txt|md)$/i.test(c.name))continue;const d=await c.text();if(!d.trim())continue;const m=c.name.replace(/\.(txt|md)$/i,"");o.push({name:m.trim()||pe("promptLibrary.untitled"),text:d.trim(),tags:[]})}if(o.length===0){a().showToast(pe("promptLibrary.importNoValidFiles"),!0);return}const r=await $1({prompts:o});await a().loadPromptLibrary(),a().showToast(pe("promptLibrary.imported",{count:r.promptsImported}))}catch(o){console.error("[PromptLibrary] import failed",o),a().showToast(pe("promptLibrary.importFailed"),!0)}},async toggleGalleryFavorite(l){try{const o=await C1(l);t(r=>{const c=new Set(r.galleryFavorites);return o.isFavorite?c.add(l):c.delete(l),{galleryFavorites:c}}),t(r=>({history:r.history.map(c=>c.filename===l?{...c,isFavorite:o.isFavorite}:c)}))}catch(o){console.error("[GalleryFavorite] toggle failed",o)}}})),s_=800,py="ima2.graphTabId";let pn=null,Hr=!1,Ir=!1,ti=null,nv=0;function av(){try{const t=sessionStorage.getItem(py);if(t)return t;const a=`tab_${Date.now().toString(36)}_${Math.random().toString(36).slice(2,8)}`;return sessionStorage.setItem(py,a),a}catch{return"tab_unavailable"}}function iv(t){const a={...t};return delete a.referenceImages,delete a.partialImageUrl,t.status==="pending"||t.status==="reconciling"?{...a,status:"empty",pendingRequestId:null,recoveryRequestId:t.pendingRequestId??t.recoveryRequestId??null,pendingPhase:null,pendingStartedAt:null,error:void 0}:a}function lv(t){return t.map(a=>({id:a.id,source:a.source,target:a.target,data:{sourceHandle:a.sourceHandle??null,targetHandle:a.targetHandle??null}}))}async function ov(t,a){const l=t().activeSessionId;if(!l||t().graphNodes.filter(m=>!m.data.imageUrl&&!m.data.serverNodeId).length===0)return;let r=[];try{r=(await df({sessionId:l,limit:rl})).items}catch{return}let c=!1;const d=t().graphNodes.map(m=>{if(m.data.imageUrl||m.data.serverNodeId)return m;const y=m.data.pendingStartedAt??0,p=m.data.pendingRequestId??m.data.recoveryRequestId??null,v=(p?r.find(x=>(x.sessionId??null)===l&&(x.requestId??null)===p):null)??r.find(x=>(x.sessionId??null)===l&&(x.clientNodeId??null)===m.id&&(!y||(x.createdAt??0)>=y));return v?(c=!0,{...m,data:{...m.data,status:"ready",imageUrl:v.url,serverNodeId:v.nodeId??m.data.serverNodeId,size:v.size??m.data.size??null,pendingRequestId:null,recoveryRequestId:null,pendingPhase:null,pendingStartedAt:null,partialImageUrl:null,error:void 0}}):m});c&&(a({graphNodes:d}),rv(t,a,"recovery"))}async function r_(t,a){const l=t().activeSessionId;if(!l)return;const{session:o}=await U0(l),{graphNodes:r,graphEdges:c,graphVersion:d}=tv(o);a({graphNodes:r,graphEdges:c,activeSessionGraphVersion:d}),t().showToast(pe("toast.sessionReloadedElsewhere"),!0),await ov(t,a).catch(()=>{})}async function c_(t,a,l){const o=t().activeSessionId,r=t().activeSessionGraphVersion;if(!o||r==null)return"skipped";const{graphNodes:c,graphEdges:d}=t(),m=c.map(g=>({id:g.id,x:g.position.x,y:g.position.y,data:iv(g.data)})),y=lv(d),p=`gs_${Date.now().toString(36)}_${++nv}`;try{const g=await H1(o,r,m,y,{saveId:p,saveReason:l,tabId:av()});return t().activeSessionId!==o?"skipped":(BN(o,t().graphNodes.map(v=>v.id)),a({activeSessionGraphVersion:g.graphVersion}),"saved")}catch(g){return g.status===409?(await r_(t,a),"conflict"):(console.warn("[sessions] save failed:",g),"failed")}}async function sv(t,a,l){if(Hr){Ir=!0,ti&&await ti;return}Hr=!0,ti=(async()=>{let o=l;do{Ir=!1;const r=await c_(t,a,o);if(r==="conflict"||r==="failed")break;o="queued"}while(Ir)})().finally(()=>{Hr=!1,ti=null}),await ti}function rv(t,a,l="debounced"){const o=t();o.activeSessionId&&(o.sessionLoading||(pn&&clearTimeout(pn),pn=setTimeout(()=>{pn=null,sv(t,a,l)},s_)))}async function u_(t,a,l="manual"){let o=!1;if(pn&&(clearTimeout(pn),pn=null,o=!0),Hr){Ir=!0,ti&&await ti;return}o&&await sv(t,a,l)}function d_(t){const a=t();if(!a.activeSessionId||a.activeSessionGraphVersion==null)return;pn&&(clearTimeout(pn),pn=null);const l=a.graphNodes.map(d=>({id:d.id,x:d.position.x,y:d.position.y,data:iv(d.data)})),o=lv(a.graphEdges),r=`/api/sessions/${encodeURIComponent(a.activeSessionId)}/graph`,c=JSON.stringify({nodes:l,edges:o});try{fetch(r,{method:"PUT",headers:{"Content-Type":"application/json","If-Match":String(a.activeSessionGraphVersion),"X-Ima2-Graph-Save-Id":`gs_${Date.now().toString(36)}_${++nv}`,"X-Ima2-Graph-Save-Reason":"beforeunload","X-Ima2-Tab-Id":av()},body:c,keepalive:!0})}catch{}}async function gy(t,a,l){const o=await P1(t.image).catch(()=>t.image),r=t.filename?`/generated/${t.filename}`:t.image,c={...t,thumb:o,url:r,createdAt:t.createdAt||Date.now()},d=[c,...l().history].slice(0,rl);_o(c.filename??null),a({history:d,currentImage:c})}function f_(){const{t}=Ne(),a=P(o=>o.uiMode),l=P(o=>o.setUIMode);return f.jsxs("div",{className:"ui-mode-switch",role:"tablist","aria-label":t("uiMode.ariaLabel"),children:[f.jsx("button",{type:"button",role:"tab","aria-selected":a==="classic",className:`ui-mode-switch__tab${a==="classic"?" active":""}`,onClick:()=>l("classic"),children:t("uiMode.classic")}),f.jsx("button",{type:"button",role:"tab","aria-selected":a==="node",className:`ui-mode-switch__tab${a==="node"?" active":""}`,onClick:()=>l("node"),children:t("uiMode.node")}),null]})}const yy={palette:[],composition:"",mood:"",medium:"",subject_details:"",negative:[]};function cv({open:t,onClose:a}){const{t:l}=Ne(),o=P(A=>A.styleSheet),r=P(A=>A.styleSheetEnabled),c=P(A=>A.styleSheetExtracting),d=P(A=>A.activeSessionId),m=P(A=>A.toggleStyleSheetEnabled),y=P(A=>A.extractStyleSheet),p=P(A=>A.saveStyleSheet),[g,v]=H.useState(!1),[x,w]=H.useState(o??yy),[S,M]=H.useState(!1),[R,z]=H.useState(!1);if(H.useEffect(()=>{t?w(o??yy):(v(!1),M(!1))},[t,o]),H.useEffect(()=>{if(!t)return;const A=B=>{B.key==="Escape"&&!S&&a()};return window.addEventListener("keydown",A),()=>window.removeEventListener("keydown",A)},[t,S,a]),!t||!d)return null;const O=!!o&&(o.composition||o.mood||o.medium||o.subject_details||o.palette.length>0),C=async()=>{if(!S){M(!0);try{await p(x,r),v(!1)}finally{M(!1)}}},_=async()=>{if(!R){z(!0);try{await m()}finally{z(!1)}}},k=A=>w(B=>({...B,...A}));return f.jsx("div",{className:"style-sheet-editor__backdrop",onClick:S?void 0:a,role:"presentation",children:f.jsxs("div",{className:"style-sheet-editor",role:"dialog","aria-modal":"true","aria-label":l("styleSheet.editorTitle"),onClick:A=>A.stopPropagation(),children:[f.jsxs("div",{className:"style-sheet-panel__header",children:[f.jsx("h3",{style:{margin:0,fontSize:16},children:l("styleSheet.editorTitle")}),f.jsxs("label",{className:"style-sheet-panel__toggle",style:{marginLeft:"auto"},children:[f.jsx("input",{type:"checkbox",checked:r,disabled:!O||R,onChange:()=>{_()}}),f.jsx("span",{children:l("styleSheet.toggle")})]})]}),!g&&f.jsxs(f.Fragment,{children:[O?f.jsxs("div",{className:"style-sheet-panel__summary",children:[o.medium&&f.jsxs("div",{children:[f.jsxs("b",{children:[l("styleSheet.fields.medium"),":"]})," ",o.medium]}),o.palette.length>0&&f.jsx("div",{className:"style-sheet-panel__chips",children:o.palette.slice(0,6).map((A,B)=>f.jsx("span",{className:"style-sheet-panel__chip",title:A,children:A},B))}),o.mood&&f.jsxs("div",{className:"style-sheet-panel__muted",children:[l("styleSheet.fields.mood"),": ",o.mood]})]}):f.jsx("div",{className:"style-sheet-panel__muted",children:l("styleSheet.emptyHint")}),f.jsxs("div",{className:"style-sheet-panel__actions",children:[f.jsx("button",{type:"button",className:"btn btn--secondary btn--sm",onClick:()=>{y()},disabled:c,children:l(c?"styleSheet.extracting":"styleSheet.extract")}),f.jsx("button",{type:"button",className:"btn btn--ghost btn--sm",onClick:()=>v(!0),disabled:c,children:l("styleSheet.edit")}),f.jsx("button",{type:"button",className:"btn btn--ghost btn--sm",style:{marginLeft:"auto"},onClick:a,children:l("styleSheet.cancel")})]})]}),g&&f.jsxs(f.Fragment,{children:[f.jsxs("label",{children:[l("styleSheet.fields.medium"),f.jsx("input",{value:x.medium,onChange:A=>k({medium:A.target.value}),placeholder:l("styleSheet.placeholderMedium")})]}),f.jsxs("label",{children:[l("styleSheet.fields.composition"),f.jsx("textarea",{rows:2,value:x.composition,onChange:A=>k({composition:A.target.value}),placeholder:l("styleSheet.placeholderComposition")})]}),f.jsxs("label",{children:[l("styleSheet.fields.mood"),f.jsx("input",{value:x.mood,onChange:A=>k({mood:A.target.value}),placeholder:l("styleSheet.placeholderMood")})]}),f.jsxs("label",{children:[l("styleSheet.fields.subject"),f.jsx("textarea",{rows:2,value:x.subject_details,onChange:A=>k({subject_details:A.target.value}),placeholder:l("styleSheet.placeholderSubject")})]}),f.jsxs("label",{children:[l("styleSheet.fields.palette"),f.jsx("input",{value:x.palette.join(", "),onChange:A=>k({palette:A.target.value.split(",").map(B=>B.trim()).filter(Boolean).slice(0,6)}),placeholder:l("styleSheet.placeholderPalette")})]}),f.jsxs("label",{children:[l("styleSheet.fields.negative"),f.jsx("input",{value:x.negative.join(", "),onChange:A=>k({negative:A.target.value.split(",").map(B=>B.trim()).filter(Boolean).slice(0,4)}),placeholder:l("styleSheet.placeholderNegative")})]}),f.jsxs("div",{className:"style-sheet-editor__actions",children:[f.jsx("button",{type:"button",className:"btn btn--ghost",onClick:()=>v(!1),disabled:S,children:l("styleSheet.cancel")}),f.jsx("button",{type:"button",className:"btn btn--primary",onClick:()=>{C()},disabled:S,children:l(S?"styleSheet.extracting":"styleSheet.save")})]})]})]})})}function Df({text:t,mode:a,onClose:l}){const{t:o}=Ne(),r=P(S=>S.savePromptToLibrary),[c,d]=H.useState(t.slice(0,30)),[m,y]=H.useState(t),[p,g]=H.useState(""),[v,x]=H.useState(!1),w=async()=>{m.trim()&&(x(!0),await r({name:c.trim()||m.slice(0,30),text:m.trim(),tags:p.split(",").map(S=>S.trim()).filter(Boolean),mode:a||void 0}),x(!1),l())};return f.jsxs("div",{className:"save-prompt-popover",onClick:S=>S.stopPropagation(),children:[f.jsxs("div",{className:"save-prompt-popover__header",children:[f.jsx("span",{children:o("promptLibrary.saveTitle")}),f.jsx("button",{className:"save-prompt-popover__close",onClick:l,"aria-label":o("common.close"),children:"×"})]}),f.jsxs("div",{className:"save-prompt-popover__body",children:[f.jsxs("label",{children:[o("promptLibrary.name"),f.jsx("input",{type:"text",value:c,onChange:S=>d(S.target.value),placeholder:m.slice(0,30)})]}),f.jsxs("label",{children:[o("promptLibrary.content"),f.jsx("textarea",{value:m,onChange:S=>y(S.target.value),placeholder:"Enter prompt...",rows:4,autoFocus:!0})]}),f.jsxs("label",{children:[o("promptLibrary.tags"),f.jsx("input",{type:"text",value:p,onChange:S=>g(S.target.value),placeholder:"cta, product, summer"})]})]}),f.jsx("div",{className:"save-prompt-popover__footer",children:f.jsx("button",{onClick:w,disabled:v||!m.trim(),className:"save-prompt-popover__save",children:o(v?"common.saving":"promptLibrary.save")})})]})}const il=5;function h_(){const t=P(N=>N.prompt),a=P(N=>N.setPrompt),l=P(N=>N.insertedPrompts),o=P(N=>N.removeInsertedPromptFromComposer),r=P(N=>N.generate),{t:c}=Ne(),d=P(N=>N.referenceImages),m=P(N=>N.addReferences),y=P(N=>N.readDroppedImageMetadata),p=P(N=>N.removeReference),g=P(N=>N.useCurrentAsReference),v=P(N=>N.currentImage),x=H.useRef(null),[w,S]=H.useState(!1),[M,R]=H.useState(!1),[z,O]=H.useState(!1),C=P(N=>N.activeSessionId),_=P(N=>N.styleSheetEnabled),k=P(N=>N.promptMode),A=P(N=>N.setPromptMode),B=d.length<il,X=async N=>{N.length!==0&&(N.length===1&&await y(N[0])||await m(N))},K=N=>{N.preventDefault(),S(!1);const D=Array.from(N.dataTransfer.files).filter(T=>T.type.startsWith("image/"));D.length>0&&X(D)},de=N=>{N.preventDefault(),w||S(!0)},F=N=>{N.currentTarget.contains(N.relatedTarget)||S(!1)},te=N=>{if(!N)return[];const D=[];for(const T of Array.from(N)){if(T.kind!=="file"||!T.type.startsWith("image/"))continue;const L=T.getAsFile();L&&D.push(L)}return D},ce=N=>{if(!B)return;const D=te(N.clipboardData?.items??null);if(D.length===0)return;N.preventDefault();const T=il-d.length;m(D.slice(0,T))};return H.useEffect(()=>{const N=D=>{const T=D.target,L=T?.tagName;if(L==="INPUT"||L==="TEXTAREA"||T?.isContentEditable)return;const G=te(D.clipboardData?.items??null);if(G.length===0||d.length>=il)return;D.preventDefault();const Z=il-d.length;m(G.slice(0,Z))};return window.addEventListener("paste",N),()=>window.removeEventListener("paste",N)},[d.length,m]),f.jsxs("div",{className:`composer${w?" composer--drag":""}`,onDrop:K,onDragOver:de,onDragLeave:F,onPaste:ce,children:[f.jsxs("div",{className:"composer__header",children:[f.jsx("span",{className:"section-title composer__label",children:c("prompt.label")}),d.length>0&&f.jsx("span",{className:"composer__count",children:c("prompt.refCount",{count:d.length,max:il})})]}),d.length>0&&f.jsx("div",{className:"composer__chips",children:d.map((N,D)=>f.jsxs("div",{className:"composer__chip",title:c("prompt.refChipTitle",{n:D+1}),children:[f.jsx("img",{src:N,alt:c("prompt.refChipAlt",{n:D+1})}),f.jsx("button",{type:"button",className:"composer__chip-remove",onClick:()=>p(D),"aria-label":c("prompt.refRemoveAria",{n:D+1}),children:"×"})]},D))}),l.length>0&&f.jsx("div",{className:"composer__prompt-chips",children:l.map(N=>f.jsxs("div",{className:"composer__prompt-chip",title:N.name,children:[f.jsx("span",{className:"composer__prompt-chip-plus","aria-hidden":"true",children:"+"}),f.jsx("span",{className:"composer__prompt-chip-title",children:N.name}),f.jsx("button",{type:"button",className:"composer__prompt-chip-remove",onClick:()=>o(N.id),"aria-label":c("promptLibrary.removeInserted",{name:N.name}),children:"×"})]},N.id))}),f.jsx("textarea",{className:"prompt-area composer__textarea",value:t,placeholder:d.length>0?c("prompt.placeholderWithRefs"):c("prompt.placeholder"),onChange:N=>a(N.target.value),onKeyDown:N=>{N.key==="Enter"&&(N.metaKey||N.ctrlKey)&&(N.preventDefault(),r())}}),f.jsxs("div",{className:"composer__toolbar",children:[f.jsxs("button",{type:"button",className:"composer__tool",onClick:()=>B&&x.current?.click(),disabled:!B,title:c("prompt.attachTitle"),"aria-label":c("prompt.attachTitle"),children:[f.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:f.jsx("path",{d:"M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"})}),f.jsx("span",{children:c("prompt.attach")})]}),f.jsxs("button",{type:"button",className:"composer__tool",onClick:()=>{g()},disabled:!v||!B,title:c("prompt.useCurrentTitle"),children:[f.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[f.jsx("polyline",{points:"23 4 23 10 17 10"}),f.jsx("path",{d:"M20.49 15a9 9 0 1 1-2.12-9.36L23 10"})]}),f.jsx("span",{children:c("prompt.useCurrent")})]}),C&&f.jsxs("button",{type:"button",className:`composer__tool${_?" composer__tool--on":""}`,onClick:()=>R(!0),title:c("prompt.styleTitle"),"aria-label":c("prompt.styleTitle"),"aria-pressed":_,children:[f.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[f.jsx("circle",{cx:"12",cy:"12",r:"9"}),f.jsx("circle",{cx:"8",cy:"10",r:"1",fill:"currentColor"}),f.jsx("circle",{cx:"12",cy:"8",r:"1",fill:"currentColor"}),f.jsx("circle",{cx:"16",cy:"10",r:"1",fill:"currentColor"}),f.jsx("path",{d:"M14 14c2 0 3 1 3 3 0 1-1 2-2 2-2 0-3-2-5-2"})]}),f.jsx("span",{children:c("prompt.style")})]}),f.jsxs("button",{type:"button",className:`composer__tool${k==="direct"?" composer__tool--on":""}`,onClick:()=>A(k==="direct"?"auto":"direct"),title:c("prompt.directModeTitle"),"aria-label":c("prompt.directModeTitle"),"aria-pressed":k==="direct",children:[f.jsx("span",{"aria-hidden":"true",style:{fontWeight:700,fontSize:11},children:"1:1"}),f.jsx("span",{children:c("prompt.directMode")})]}),f.jsxs("div",{style:{position:"relative"},children:[f.jsxs("button",{type:"button",className:"composer__tool",onClick:()=>O(N=>!N),disabled:!t.trim(),title:c("promptLibrary.saveTitle"),"aria-label":c("promptLibrary.saveTitle"),children:[f.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:f.jsx("path",{d:"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"})}),f.jsx("span",{children:c("promptLibrary.save")})]}),z&&f.jsx(Df,{text:t,mode:k,onClose:()=>O(!1)})]}),f.jsx("span",{className:"composer__hint",children:c("prompt.hint")})]}),w&&f.jsx("div",{className:"composer__dropzone","aria-hidden":"true",children:c("prompt.dropHere",{max:il})}),f.jsx("input",{ref:x,type:"file",accept:"image/*",multiple:!0,hidden:!0,onChange:N=>{const D=Array.from(N.target.files??[]);D.length>0&&X(D),N.target.value=""}}),f.jsx(cv,{open:M,onClose:()=>R(!1)})]})}function m_(){const t=P(c=>c.activeGenerations),a=P(c=>c.generate),{t:l}=Ne(),o=t>0,r=o?l("generate.buttonLoading",{n:t}):l("generate.button");return f.jsx("button",{type:"button",className:`generate-btn${o?" loading":""}`,onClick:()=>{a()},children:r})}function p_(t,a=28){const l=t.trim().replace(/\s+/g," ");return l.length>a?`${l.slice(0,a)}...`:l}function vy(){const t=P(o=>o.inFlight),{t:a}=Ne(),l={queued:a("inflight.queued"),streaming:a("inflight.streaming"),decoding:a("inflight.decoding")};return t.length===0?null:f.jsx("ul",{className:"in-flight-list",children:t.map(o=>{const r=o.phase?l[o.phase]??o.phase:a("inflight.queued");return f.jsxs("li",{className:"in-flight-item","data-phase":o.phase??"queued",children:[f.jsx("span",{className:"in-flight-prompt",children:p_(o.prompt)}),f.jsx("span",{className:"in-flight-phase",children:r}),f.jsx("span",{className:"in-flight-spinner","aria-hidden":"true"})]},o.id)})})}function g_(){const{t}=Ne(),a=P(x=>x.sessions),l=P(x=>x.activeSessionId),o=P(x=>x.switchSession),r=P(x=>x.createAndSwitchSession),c=P(x=>x.renameCurrentSession),d=P(x=>x.deleteSessionById),[m,y]=H.useState(!1),p=a.find(x=>x.id===l),g=()=>{const x=window.prompt(t("session.renamePrompt"),p?.title??t("session.newSession"));x&&x.trim()&&c(x.trim())},v=(x,w)=>{window.confirm(t("session.deleteConfirm",{title:w}))&&d(x)};return f.jsxs("div",{className:"session-picker",children:[f.jsxs("div",{className:"session-picker-row",children:[f.jsxs("button",{type:"button",className:"session-current",onClick:()=>y(x=>!x),title:t("session.switchTitle"),children:[f.jsx("span",{className:"session-title",children:p?.title??t("session.loading")}),f.jsx("span",{className:"session-caret",children:m?"▴":"▾"})]}),f.jsx("button",{type:"button",className:"session-btn",onClick:()=>{r(t("session.newSession"))},title:t("session.newSessionTitle"),children:"+"}),f.jsx("button",{type:"button",className:"session-btn",onClick:g,title:t("session.renameTitle"),disabled:!p,children:"✎"})]}),m&&f.jsxs("ul",{className:"session-list",children:[a.map(x=>f.jsxs("li",{className:x.id===l?"is-active":"",children:[f.jsxs("button",{type:"button",className:"session-item",onClick:()=>{y(!1),o(x.id)},children:[f.jsx("span",{className:"session-item-title",children:x.title}),f.jsx("span",{className:"session-item-count",children:x.nodeCount})]}),f.jsx("button",{type:"button",className:"session-del",onClick:()=>v(x.id,x.title),title:t("session.deleteTitle"),children:"×"})]},x.id)),a.length===0&&f.jsx("li",{className:"session-empty",children:t("session.empty")})]})]})}function y_(){const{t}=Ne(),a=P(c=>c.activeSessionId),l=P(c=>c.styleSheetEnabled),[o,r]=H.useState(!1);return a?f.jsxs(f.Fragment,{children:[f.jsx("button",{type:"button",className:`btn btn--secondary btn--sm${l?" is-on":""}`,onClick:()=>r(!0),"aria-pressed":l,title:t("prompt.styleTitle"),children:t("prompt.style")}),f.jsx(cv,{open:o,onClose:()=>r(!1)})]}):null}function v_(){const{t}=Ne(),a=P(o=>o.settingsOpen),l=P(o=>o.toggleSettings);return f.jsx("button",{type:"button",className:`settings-button${a?" is-active":""}`,onClick:l,"aria-label":t("settings.openAria"),"aria-pressed":a,title:t("settings.openTitle"),children:f.jsxs("svg",{viewBox:"0 0 24 24","aria-hidden":"true",children:[f.jsx("path",{d:"M12 8.2a3.8 3.8 0 1 0 0 7.6 3.8 3.8 0 0 0 0-7.6Zm0 5.7a1.9 1.9 0 1 1 0-3.8 1.9 1.9 0 0 1 0 3.8Z"}),f.jsx("path",{d:"m20.3 13.4.1-1.4-.1-1.4-2.2-.5a6.9 6.9 0 0 0-.6-1.3l1.2-1.9a9.6 9.6 0 0 0-2-2l-1.9 1.2c-.4-.2-.9-.4-1.3-.6L13 3.3a9.5 9.5 0 0 0-2.8 0l-.5 2.2c-.5.2-.9.3-1.3.6L6.5 4.9a9.6 9.6 0 0 0-2 2l1.2 1.9c-.2.4-.4.9-.6 1.3l-2.2.5a9.5 9.5 0 0 0 0 2.8l2.2.5c.2.5.3.9.6 1.3l-1.2 1.9a9.6 9.6 0 0 0 2 2l1.9-1.2c.4.2.9.4 1.3.6l.5 2.2a9.5 9.5 0 0 0 2.8 0l.5-2.2c.5-.2.9-.3 1.3-.6l1.9 1.2a9.6 9.6 0 0 0 2-2l-1.2-1.9c.2-.4.4-.9.6-1.3l2.2-.5Z"})]})})}function uv({variant:t}){const{t:a}=Ne(),[l,o]=H.useState(!1),r=H.useRef(null),c=P(g=>g.imageModel),d=P(g=>g.setImageModel),m=t==="settings"?"settings-image-model":"sidebar-image-model",y=sl.find(g=>g.value===c)??sl[0],p=g=>{d(g.target.value)};return H.useEffect(()=>{if(t!=="sidebar"||!l)return;const g=x=>{const w=x.target;w instanceof Node&&(r.current?.contains(w)||o(!1))},v=x=>{x.key==="Escape"&&o(!1)};return document.addEventListener("pointerdown",g),document.addEventListener("keydown",v),()=>{document.removeEventListener("pointerdown",g),document.removeEventListener("keydown",v)}},[l,t]),t==="sidebar"?f.jsxs("div",{ref:r,className:"image-model-select image-model-select--sidebar",children:[f.jsx("button",{id:m,type:"button",className:"image-model-select__trigger","aria-haspopup":"listbox","aria-expanded":l,"aria-label":a("sidebar.imageModelAria"),onClick:()=>o(g=>!g),children:y.shortLabel}),l?f.jsx("div",{className:"image-model-select__menu",role:"listbox","aria-label":a("sidebar.imageModelAria"),children:sl.map(g=>f.jsxs("button",{type:"button",className:`image-model-select__item${g.value===c?" is-active":""}`,role:"option","aria-selected":g.value===c,onClick:()=>{d(g.value),o(!1)},children:[f.jsx("span",{children:g.shortLabel}),f.jsx("small",{children:a(g.fullLabelKey)})]},g.value))}):null]}):f.jsx("div",{className:"image-model-select image-model-select--settings",children:f.jsxs("select",{id:m,value:c,onChange:p,children:[sl.map(g=>f.jsx("option",{value:g.value,children:a(g.fullLabelKey)},g.value)),DN.map(g=>f.jsx("option",{value:g.value,disabled:!0,children:a(g.fullLabelKey)},g.value))]})})}function dv(t){return{...t,textFields:Array.isArray(t.textFields)?t.textFields:[]}}function Mo(t){return{...t,cards:Array.isArray(t.cards)?t.cards.map(dv):[]}}async function hi(t,a){const l=await fetch(t,a),o=await l.json().catch(()=>({}));if(!l.ok){const r=o,c=typeof r.error=="string"?r.error:r.error?.message||`Request failed: ${l.status}`,d=new Error(c);throw typeof r.error!="string"&&(d.code=r.error?.code),d}return o}function x_(){return hi("/api/cardnews/image-templates")}function b_(){return hi("/api/cardnews/role-templates")}async function S_(t){const a=await hi("/api/cardnews/draft",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});return{...a,plan:Mo(a.plan)}}function w_(t){return hi("/api/cardnews/jobs",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}function N_(t){return hi(`/api/cardnews/jobs/${encodeURIComponent(t)}`)}async function __(t){const l=(await hi(`/api/cardnews/cards/${encodeURIComponent(t.card.id)}/regenerate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...t,cards:[t.card]})})).cards.find(o=>o.id===t.card.id);if(!l)throw new Error("Regenerated card not found");return{card:l}}function xy(t){return hi(`/api/cardnews/sets/${encodeURIComponent(t)}`).then(a=>({...a,plan:Mo(a.plan)}))}function E_(t){return`/api/cardnews/sets/${encodeURIComponent(t)}/manifest?download=1`}function C_(t){return t[0]?.id||"academy-lesson-square"}function T_(t){return t.find(a=>a.id==="mid-5")?.id||t[0]?.id||"mid-5"}function A_(t){return Math.round(t/16)*16}function $r(t){return Math.min(Mf,Math.max(1024,A_(t)))}function by(t){return t.outputSizePreset!=="custom"?t.outputSizePreset:`${$r(t.customW)}x${$r(t.customH)}`}function fv(t){if(t){if(typeof t=="string")return t;if(typeof t=="object"&&"message"in t){const a=t.message;return typeof a=="string"?a:void 0}return String(t)}}function M_(t,a){const l=a.status||"generated";return{...t,...a,textFields:Array.isArray(a.textFields)?a.textFields:t.textFields,status:l,error:l==="error"?fv(a.error)||pe("cardNews.error"):void 0}}function j_(t){return new Promise(a=>setTimeout(a,t))}function Fd(t,a){const l=new Map(a.cards.map(o=>[o.id,o]));return{...t,cards:t.cards.map(o=>{const r=l.get(o.id);return r?{...o,...r,textFields:Array.isArray(r.textFields)?r.textFields:o.textFields,status:r.status||o.status,error:fv(r.error)}:o})}}const we=I0((t,a)=>({templates:[],roleTemplates:[],activePlan:null,selectedCardId:null,selectedTextFieldId:null,topic:"",audience:"",goal:"",contentBrief:"",imageTemplateId:"academy-lesson-square",roleTemplateId:"mid-5",outputSizePreset:"2048x2048",customW:2048,customH:2048,loading:!1,generating:!1,error:null,draftError:null,plannerMeta:null,async hydrate(){if(!(a().loading||a().templates.length>0)){t({loading:!0,error:null});try{const[l,o]=await Promise.all([x_(),b_()]);t({templates:l.templates,roleTemplates:o.templates,imageTemplateId:C_(l.templates),roleTemplateId:T_(o.templates),loading:!1})}catch(l){t({loading:!1,error:l instanceof Error?l.message:String(l)})}}},setBriefField(l,o){t({[l]:o})},setImageTemplate(l){t({imageTemplateId:l})},setRoleTemplate(l){t({roleTemplateId:l})},setOutputSizePreset(l){t({outputSizePreset:l})},setCustomSize(l,o){t({customW:$r(l),customH:$r(o)})},async draft(){const l=a();t({loading:!0,error:null,draftError:null});try{const{plan:o,planner:r}=await S_({topic:l.topic,audience:l.audience,goal:l.goal,contentBrief:l.contentBrief,imageTemplateId:l.imageTemplateId,roleTemplateId:l.roleTemplateId,size:by(l)});t({activePlan:Mo(o),selectedCardId:o.cards[0]?.id||null,selectedTextFieldId:null,plannerMeta:r||null,loading:!1})}catch(o){const r=o instanceof Error?o.message:String(o);t({loading:!1,draftError:r,error:r})}},updateCard(l,o){t(r=>({activePlan:r.activePlan?{...r.activePlan,cards:r.activePlan.cards.map(c=>c.id===l?{...c,...o}:c)}:null}))},updateTextField(l,o,r){t(c=>({activePlan:c.activePlan?{...c.activePlan,cards:c.activePlan.cards.map(d=>d.id!==l||d.locked?d:{...d,textFields:d.textFields.map(m=>m.id===o?{...m,...r,source:r.source||"user"}:m)})}:null}))},addTextField(l,o){t(r=>({activePlan:r.activePlan?{...r.activePlan,cards:r.activePlan.cards.map(c=>c.id===l&&!c.locked?{...c,textFields:[...c.textFields,{...o,source:"user"}]}:c)}:null,selectedTextFieldId:o.id}))},removeTextField(l,o){t(r=>({activePlan:r.activePlan?{...r.activePlan,cards:r.activePlan.cards.map(c=>c.id===l&&!c.locked?{...c,textFields:c.textFields.filter(d=>d.id!==o)}:c)}:null,selectedTextFieldId:r.selectedTextFieldId===o?null:r.selectedTextFieldId}))},selectCard(l){t({selectedCardId:l,selectedTextFieldId:null})},selectTextField(l){t({selectedTextFieldId:l})},getGenerationSummary(){const l=a().activePlan?.cards||[];return{total:l.length,done:l.filter(o=>o.status==="generated").length,queued:l.filter(o=>o.status==="queued").length,generating:l.filter(o=>o.status==="generating").length,errors:l.filter(o=>o.status==="error").length,skipped:l.filter(o=>o.locked||o.status==="skipped").length}},async generateSet(){const l=a();if(!l.activePlan)return;const o=P.getState();t({generating:!0,error:null,activePlan:{...l.activePlan,cards:l.activePlan.cards.map(r=>r.locked?{...r,status:"skipped"}:{...r,status:"queued",error:void 0})}});try{const r=a().activePlan||l.activePlan;let d=await w_({...r,size:by(l),quality:o.quality,moderation:o.moderation,model:o.imageModel,sessionId:o.activeSessionId});for(t(y=>({activePlan:y.activePlan?Fd(y.activePlan,d):y.activePlan}));["queued","running"].includes(d.status);)await j_(900),d=await N_(d.jobId),t(y=>({activePlan:y.activePlan?Fd(y.activePlan,d):y.activePlan}));const m=await xy(d.setId).catch(()=>null);t(y=>({generating:!1,activePlan:m?.plan?Mo(m.plan):y.activePlan?Fd(y.activePlan,d):y.activePlan,selectedTextFieldId:null})),o.showToast(pe("cardNews.generated",{count:d.generated}))}catch(r){const c=r instanceof Error?r.message:String(r);t(d=>({generating:!1,error:c,activePlan:d.activePlan?{...d.activePlan,cards:d.activePlan.cards.map(m=>m.status==="queued"||m.status==="generating"?{...m,status:"error",error:c}:m)}:d.activePlan}))}},async retryCard(l){const r=a().activePlan,c=r?.cards.find(m=>m.id===l);if(!r||!c||c.locked||!["draft","error"].includes(c.status))return;const d=P.getState();t({error:null,activePlan:{...r,cards:r.cards.map(m=>m.id===l?{...m,status:"generating",error:void 0}:m)}});try{const{card:m}=await __({setId:r.setId,card:c,quality:d.quality,moderation:d.moderation,model:d.imageModel});t(y=>({activePlan:y.activePlan?{...y.activePlan,cards:y.activePlan.cards.map(p=>p.id===l?M_(p,dv(m)):p)}:y.activePlan}))}catch(m){const y=m instanceof Error?m.message:String(m);t(p=>({error:y,activePlan:p.activePlan?{...p.activePlan,cards:p.activePlan.cards.map(g=>g.id===l?{...g,status:"error",error:y}:g)}:p.activePlan}))}},async loadSet(l){t({loading:!0,error:null,selectedTextFieldId:null});try{const{plan:o}=await xy(l);t({activePlan:Mo(o),selectedCardId:o.cards[0]?.id||null,selectedTextFieldId:null,loading:!1})}catch(o){t({loading:!1,error:o instanceof Error?o.message:String(o)})}}}));function z_(){const{t}=Ne(),a=we(_=>_.hydrate),l=we(_=>_.topic),o=we(_=>_.audience),r=we(_=>_.goal),c=we(_=>_.contentBrief),d=we(_=>_.outputSizePreset),m=we(_=>_.customW),y=we(_=>_.customH),p=we(_=>_.setBriefField),g=we(_=>_.setOutputSizePreset),v=we(_=>_.setCustomSize),x=we(_=>_.draft),w=we(_=>_.loading),S=we(_=>_.generating),M=we(_=>_.draftError),R=we(_=>_.generateSet),z=we(_=>_.activePlan),O=z?.cards||[],C={total:O.length,done:O.filter(_=>_.status==="generated").length};return H.useEffect(()=>{a()},[a]),f.jsxs("section",{className:"card-news-composer","aria-label":t("cardNews.composer"),children:[f.jsx("div",{className:"card-news-composer__head",children:f.jsxs("div",{children:[f.jsx("div",{className:"section-title",children:t("cardNews.composer")}),f.jsx("p",{children:t("cardNews.composerHint")})]})}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:t("cardNews.topic")}),f.jsx("input",{value:l,placeholder:t("cardNews.topicPlaceholder"),onChange:_=>p("topic",_.target.value)})]}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:t("cardNews.audience")}),f.jsx("input",{value:o,placeholder:t("cardNews.audiencePlaceholder"),onChange:_=>p("audience",_.target.value)})]}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:t("cardNews.goal")}),f.jsx("input",{value:r,placeholder:t("cardNews.goalPlaceholder"),onChange:_=>p("goal",_.target.value)})]}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:t("cardNews.brief")}),f.jsx("textarea",{value:c,placeholder:t("cardNews.briefPlaceholder"),onChange:_=>p("contentBrief",_.target.value)})]}),f.jsxs("div",{className:"card-news-field",children:[f.jsx("span",{children:t("cardNews.outputSize")}),f.jsx("div",{className:"card-news-size-row",role:"group","aria-label":t("cardNews.outputSize"),children:["1024x1024","2048x2048","custom"].map(_=>f.jsx("button",{type:"button",className:`option-btn${d===_?" active":""}`,onClick:()=>g(_),children:_==="custom"?t("cardNews.customSize"):_==="1024x1024"?"1024²":"2048²"},_))}),d==="custom"?f.jsxs("div",{className:"card-news-custom-size",children:[f.jsx("input",{className:"custom-size-input",type:"text",inputMode:"numeric",value:m,onChange:_=>v(Number.parseInt(_.target.value,10)||m,y),"aria-label":t("size.width")}),f.jsx("span",{children:"×"}),f.jsx("input",{className:"custom-size-input",type:"text",inputMode:"numeric",value:y,onChange:_=>v(m,Number.parseInt(_.target.value,10)||y),"aria-label":t("size.height")})]}):null]}),f.jsxs("button",{type:"button",className:"generate-btn card-news-draft-btn",onClick:()=>{x()},disabled:w||!l.trim(),children:[w?f.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}):null,t(w?"cardNews.drafting":"cardNews.draft")]}),M?f.jsx("div",{className:"card-news-error",role:"alert",children:M}):null,w?f.jsxs("div",{className:"card-news-inline-status",role:"status",children:[f.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}),f.jsx("span",{children:t("cardNews.drafting")})]}):null,f.jsxs("button",{type:"button",className:"composer__tool card-news-generate-btn",onClick:()=>{R()},disabled:!z||S||z.cards.every(_=>_.locked),children:[S?f.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}):null,S?t("cardNews.progress.generating",{done:C.done,total:C.total}):t("cardNews.batchGenerate")]})]})}function R_(){const{t}=Ne(),a=P(d=>d.uiMode),l=P(d=>d.referenceImages),o=P(d=>d.clearReferences),r=P(d=>d.styleSheetEnabled),c=a==="node"&&Rf?"node":"classic";return f.jsx("aside",{className:"sidebar",children:f.jsxs("div",{className:"sidebar__scroll",children:[f.jsxs("div",{className:"logo",children:[f.jsx("div",{className:"logo-mark","aria-hidden":"true"}),f.jsxs("div",{className:"logo-copy",children:[f.jsx("div",{className:"logo-title",children:"ima2-gen"}),f.jsx("div",{className:"logo-subtitle",children:"gpt-image-2 studio"})]}),f.jsxs("div",{className:"logo-actions",children:[f.jsx(D_,{}),f.jsx(uv,{variant:"sidebar"}),f.jsx(v_,{})]})]}),f.jsx(f_,{}),c==="classic"?f.jsxs(f.Fragment,{children:[f.jsx(h_,{}),f.jsx(m_,{}),f.jsx(vy,{})]}):c==="card-news"?f.jsx(f.Fragment,{children:f.jsx(z_,{})}):f.jsxs(f.Fragment,{children:[f.jsx(g_,{}),f.jsx(y_,{}),l.length>0?f.jsxs("div",{className:"node-mode-ref-warning",role:"status",children:[f.jsx("strong",{children:t("node.classicRefsParkedTitle")}),f.jsx("span",{children:t("node.classicRefsParkedBody")}),f.jsx("button",{type:"button",onClick:o,children:t("node.clearParkedRefs")})]}):null,r?f.jsx("div",{className:"node-mode-style-badge",role:"status",children:t("node.styleSheetActive")}):null,f.jsx("div",{className:"sidebar__node-hint",children:t("sidebar.nodeModeHint")}),f.jsx(vy,{})]})]})})}function D_(){const{t}=Ne(),a=P(l=>l.togglePromptLibrary);return f.jsx("button",{type:"button",className:"settings-button",onClick:a,title:t("promptLibrary.title"),"aria-label":t("promptLibrary.title"),children:f.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:f.jsx("path",{d:"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"})})})}function O_(){const{t}=Ne(),a=P(y=>y.currentImage),l=P(y=>y.showToast),o=P(y=>y.setPrompt);if(!a)return null;const r=()=>{const y=document.createElement("a");y.href=a.image,y.download=a.filename||"generated.png",y.click()},c=async()=>{try{const p=await(await fetch(a.image)).blob();await navigator.clipboard.write([new ClipboardItem({[p.type]:p})]),l(t("toast.imageCopied"))}catch{l(t("toast.copyFailed"),!0)}},d=()=>{a.prompt&&(navigator.clipboard.writeText(a.prompt),l(t("toast.promptCopied")))},m=async()=>{if(!a.prompt){l(t("toast.noPromptToFork"),!0);return}o(a.prompt);try{await P.getState().useCurrentAsReference()}catch{}const y=document.querySelector('textarea[name="prompt"], textarea#prompt, .sidebar textarea');y&&(y.focus(),y.setSelectionRange(y.value.length,y.value.length)),l(t("toast.forkStarted"))};return f.jsxs("div",{className:"result-actions",children:[f.jsx("button",{type:"button",className:"action-btn",onClick:r,children:t("result.download")}),f.jsx("button",{type:"button",className:"action-btn",onClick:c,children:t("result.copyImage")}),f.jsx("button",{type:"button",className:"action-btn",onClick:d,children:t("result.copyPrompt")}),f.jsx("button",{type:"button",className:"action-btn action-btn--primary",onClick:m,title:t("result.continueHereTitle"),children:t("result.continueHere")})]})}function L_(t){return t instanceof HTMLElement?t instanceof HTMLInputElement||t instanceof HTMLTextAreaElement||t instanceof HTMLSelectElement||t.isContentEditable:!1}function H_(t){return t==="low"?"l":t==="medium"?"m":t==="high"?"h":t??null}function I_(t){if(!t)return null;const a=t.match(/^(\d+)x\1$/);return a?`${a[1]}²`:t.replace("x","×")}function Sy(){const t=P(w=>w.currentImage),a=P(w=>w.history),l=P(w=>w.selectHistory),o=P(w=>w.activeGenerations),r=P(w=>w.quality),c=P(w=>w.getResolvedSize),d=P(w=>w.showToast),{t:m}=Ne(),y=()=>{t?.prompt&&(navigator.clipboard.writeText(t.prompt),d(m("toast.promptCopied")))},p=H_(t?.quality??r),g=I_(t?.size??c()),v=X0(t?.model),x=w=>{if(w.key!=="ArrowLeft"&&w.key!=="ArrowRight"||w.target!==w.currentTarget||L_(w.target))return;const S=a.findIndex(z=>t?.filename?z.filename===t.filename:z.image===t?.image);if(S<0)return;const M=w.key==="ArrowLeft"?S-1:S+1,R=a[M];R&&(w.preventDefault(),l(R))};return f.jsxs("main",{className:"canvas",children:[f.jsx("div",{className:`progress-bar${o>0?" active":""}`}),t?f.jsxs("div",{className:"result-container visible",tabIndex:0,onKeyDown:x,"aria-label":m("canvas.imageViewerAria"),children:[f.jsx("img",{className:"result-img",src:t.url??t.image,alt:m("canvas.resultAlt")},t.filename??t.url??t.image),t.prompt?f.jsx("div",{className:"result-prompt",onClick:y,children:t.prompt}):null,f.jsx("div",{className:"result-meta",children:[t.elapsed!=null?`${t.elapsed}s`:null,t.usage?m("canvas.tokens",{n:t.usage.total_tokens??"?"}):null,p,g,v,t.provider??null].filter(w=>!!w).join(" · ")}),f.jsx(O_,{})]}):null]})}function st(t){if(typeof t=="string"||typeof t=="number")return""+t;let a="";if(Array.isArray(t))for(let l=0,o;l<t.length;l++)(o=st(t[l]))!==""&&(a+=(a&&" ")+o);else for(let l in t)t[l]&&(a+=(a&&" ")+l);return a}var k_={value:()=>{}};function ic(){for(var t=0,a=arguments.length,l={},o;t<a;++t){if(!(o=arguments[t]+"")||o in l||/[\s.]/.test(o))throw new Error("illegal type: "+o);l[o]=[]}return new kr(l)}function kr(t){this._=t}function B_(t,a){return t.trim().split(/^|\s+/).map(function(l){var o="",r=l.indexOf(".");if(r>=0&&(o=l.slice(r+1),l=l.slice(0,r)),l&&!a.hasOwnProperty(l))throw new Error("unknown type: "+l);return{type:l,name:o}})}kr.prototype=ic.prototype={constructor:kr,on:function(t,a){var l=this._,o=B_(t+"",l),r,c=-1,d=o.length;if(arguments.length<2){for(;++c<d;)if((r=(t=o[c]).type)&&(r=U_(l[r],t.name)))return r;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++c<d;)if(r=(t=o[c]).type)l[r]=wy(l[r],t.name,a);else if(a==null)for(r in l)l[r]=wy(l[r],t.name,null);return this},copy:function(){var t={},a=this._;for(var l in a)t[l]=a[l].slice();return new kr(t)},call:function(t,a){if((r=arguments.length-2)>0)for(var l=new Array(r),o=0,r,c;o<r;++o)l[o]=arguments[o+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(c=this._[t],o=0,r=c.length;o<r;++o)c[o].value.apply(a,l)},apply:function(t,a,l){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var o=this._[t],r=0,c=o.length;r<c;++r)o[r].value.apply(a,l)}};function U_(t,a){for(var l=0,o=t.length,r;l<o;++l)if((r=t[l]).name===a)return r.value}function wy(t,a,l){for(var o=0,r=t.length;o<r;++o)if(t[o].name===a){t[o]=k_,t=t.slice(0,o).concat(t.slice(o+1));break}return l!=null&&t.push({name:a,value:l}),t}var hf="http://www.w3.org/1999/xhtml";const Ny={svg:"http://www.w3.org/2000/svg",xhtml:hf,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function lc(t){var a=t+="",l=a.indexOf(":");return l>=0&&(a=t.slice(0,l))!=="xmlns"&&(t=t.slice(l+1)),Ny.hasOwnProperty(a)?{space:Ny[a],local:t}:t}function G_(t){return function(){var a=this.ownerDocument,l=this.namespaceURI;return l===hf&&a.documentElement.namespaceURI===hf?a.createElement(t):a.createElementNS(l,t)}}function q_(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function hv(t){var a=lc(t);return(a.local?q_:G_)(a)}function Y_(){}function Of(t){return t==null?Y_:function(){return this.querySelector(t)}}function V_(t){typeof t!="function"&&(t=Of(t));for(var a=this._groups,l=a.length,o=new Array(l),r=0;r<l;++r)for(var c=a[r],d=c.length,m=o[r]=new Array(d),y,p,g=0;g<d;++g)(y=c[g])&&(p=t.call(y,y.__data__,g,c))&&("__data__"in y&&(p.__data__=y.__data__),m[g]=p);return new Ut(o,this._parents)}function $_(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function X_(){return[]}function mv(t){return t==null?X_:function(){return this.querySelectorAll(t)}}function P_(t){return function(){return $_(t.apply(this,arguments))}}function F_(t){typeof t=="function"?t=P_(t):t=mv(t);for(var a=this._groups,l=a.length,o=[],r=[],c=0;c<l;++c)for(var d=a[c],m=d.length,y,p=0;p<m;++p)(y=d[p])&&(o.push(t.call(y,y.__data__,p,d)),r.push(y));return new Ut(o,r)}function pv(t){return function(){return this.matches(t)}}function gv(t){return function(a){return a.matches(t)}}var Z_=Array.prototype.find;function K_(t){return function(){return Z_.call(this.children,t)}}function Q_(){return this.firstElementChild}function J_(t){return this.select(t==null?Q_:K_(typeof t=="function"?t:gv(t)))}var W_=Array.prototype.filter;function eE(){return Array.from(this.children)}function tE(t){return function(){return W_.call(this.children,t)}}function nE(t){return this.selectAll(t==null?eE:tE(typeof t=="function"?t:gv(t)))}function aE(t){typeof t!="function"&&(t=pv(t));for(var a=this._groups,l=a.length,o=new Array(l),r=0;r<l;++r)for(var c=a[r],d=c.length,m=o[r]=[],y,p=0;p<d;++p)(y=c[p])&&t.call(y,y.__data__,p,c)&&m.push(y);return new Ut(o,this._parents)}function yv(t){return new Array(t.length)}function iE(){return new Ut(this._enter||this._groups.map(yv),this._parents)}function Xr(t,a){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=a}Xr.prototype={constructor:Xr,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,a){return this._parent.insertBefore(t,a)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function lE(t){return function(){return t}}function oE(t,a,l,o,r,c){for(var d=0,m,y=a.length,p=c.length;d<p;++d)(m=a[d])?(m.__data__=c[d],o[d]=m):l[d]=new Xr(t,c[d]);for(;d<y;++d)(m=a[d])&&(r[d]=m)}function sE(t,a,l,o,r,c,d){var m,y,p=new Map,g=a.length,v=c.length,x=new Array(g),w;for(m=0;m<g;++m)(y=a[m])&&(x[m]=w=d.call(y,y.__data__,m,a)+"",p.has(w)?r[m]=y:p.set(w,y));for(m=0;m<v;++m)w=d.call(t,c[m],m,c)+"",(y=p.get(w))?(o[m]=y,y.__data__=c[m],p.delete(w)):l[m]=new Xr(t,c[m]);for(m=0;m<g;++m)(y=a[m])&&p.get(x[m])===y&&(r[m]=y)}function rE(t){return t.__data__}function cE(t,a){if(!arguments.length)return Array.from(this,rE);var l=a?sE:oE,o=this._parents,r=this._groups;typeof t!="function"&&(t=lE(t));for(var c=r.length,d=new Array(c),m=new Array(c),y=new Array(c),p=0;p<c;++p){var g=o[p],v=r[p],x=v.length,w=uE(t.call(g,g&&g.__data__,p,o)),S=w.length,M=m[p]=new Array(S),R=d[p]=new Array(S),z=y[p]=new Array(x);l(g,v,M,R,z,w,a);for(var O=0,C=0,_,k;O<S;++O)if(_=M[O]){for(O>=C&&(C=O+1);!(k=R[C])&&++C<S;);_._next=k||null}}return d=new Ut(d,o),d._enter=m,d._exit=y,d}function uE(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function dE(){return new Ut(this._exit||this._groups.map(yv),this._parents)}function fE(t,a,l){var o=this.enter(),r=this,c=this.exit();return typeof t=="function"?(o=t(o),o&&(o=o.selection())):o=o.append(t+""),a!=null&&(r=a(r),r&&(r=r.selection())),l==null?c.remove():l(c),o&&r?o.merge(r).order():r}function hE(t){for(var a=t.selection?t.selection():t,l=this._groups,o=a._groups,r=l.length,c=o.length,d=Math.min(r,c),m=new Array(r),y=0;y<d;++y)for(var p=l[y],g=o[y],v=p.length,x=m[y]=new Array(v),w,S=0;S<v;++S)(w=p[S]||g[S])&&(x[S]=w);for(;y<r;++y)m[y]=l[y];return new Ut(m,this._parents)}function mE(){for(var t=this._groups,a=-1,l=t.length;++a<l;)for(var o=t[a],r=o.length-1,c=o[r],d;--r>=0;)(d=o[r])&&(c&&d.compareDocumentPosition(c)^4&&c.parentNode.insertBefore(d,c),c=d);return this}function pE(t){t||(t=gE);function a(v,x){return v&&x?t(v.__data__,x.__data__):!v-!x}for(var l=this._groups,o=l.length,r=new Array(o),c=0;c<o;++c){for(var d=l[c],m=d.length,y=r[c]=new Array(m),p,g=0;g<m;++g)(p=d[g])&&(y[g]=p);y.sort(a)}return new Ut(r,this._parents).order()}function gE(t,a){return t<a?-1:t>a?1:t>=a?0:NaN}function yE(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function vE(){return Array.from(this)}function xE(){for(var t=this._groups,a=0,l=t.length;a<l;++a)for(var o=t[a],r=0,c=o.length;r<c;++r){var d=o[r];if(d)return d}return null}function bE(){let t=0;for(const a of this)++t;return t}function SE(){return!this.node()}function wE(t){for(var a=this._groups,l=0,o=a.length;l<o;++l)for(var r=a[l],c=0,d=r.length,m;c<d;++c)(m=r[c])&&t.call(m,m.__data__,c,r);return this}function NE(t){return function(){this.removeAttribute(t)}}function _E(t){return function(){this.removeAttributeNS(t.space,t.local)}}function EE(t,a){return function(){this.setAttribute(t,a)}}function CE(t,a){return function(){this.setAttributeNS(t.space,t.local,a)}}function TE(t,a){return function(){var l=a.apply(this,arguments);l==null?this.removeAttribute(t):this.setAttribute(t,l)}}function AE(t,a){return function(){var l=a.apply(this,arguments);l==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,l)}}function ME(t,a){var l=lc(t);if(arguments.length<2){var o=this.node();return l.local?o.getAttributeNS(l.space,l.local):o.getAttribute(l)}return this.each((a==null?l.local?_E:NE:typeof a=="function"?l.local?AE:TE:l.local?CE:EE)(l,a))}function vv(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function jE(t){return function(){this.style.removeProperty(t)}}function zE(t,a,l){return function(){this.style.setProperty(t,a,l)}}function RE(t,a,l){return function(){var o=a.apply(this,arguments);o==null?this.style.removeProperty(t):this.style.setProperty(t,o,l)}}function DE(t,a,l){return arguments.length>1?this.each((a==null?jE:typeof a=="function"?RE:zE)(t,a,l??"")):ml(this.node(),t)}function ml(t,a){return t.style.getPropertyValue(a)||vv(t).getComputedStyle(t,null).getPropertyValue(a)}function OE(t){return function(){delete this[t]}}function LE(t,a){return function(){this[t]=a}}function HE(t,a){return function(){var l=a.apply(this,arguments);l==null?delete this[t]:this[t]=l}}function IE(t,a){return arguments.length>1?this.each((a==null?OE:typeof a=="function"?HE:LE)(t,a)):this.node()[t]}function xv(t){return t.trim().split(/^|\s+/)}function Lf(t){return t.classList||new bv(t)}function bv(t){this._node=t,this._names=xv(t.getAttribute("class")||"")}bv.prototype={add:function(t){var a=this._names.indexOf(t);a<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var a=this._names.indexOf(t);a>=0&&(this._names.splice(a,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function Sv(t,a){for(var l=Lf(t),o=-1,r=a.length;++o<r;)l.add(a[o])}function wv(t,a){for(var l=Lf(t),o=-1,r=a.length;++o<r;)l.remove(a[o])}function kE(t){return function(){Sv(this,t)}}function BE(t){return function(){wv(this,t)}}function UE(t,a){return function(){(a.apply(this,arguments)?Sv:wv)(this,t)}}function GE(t,a){var l=xv(t+"");if(arguments.length<2){for(var o=Lf(this.node()),r=-1,c=l.length;++r<c;)if(!o.contains(l[r]))return!1;return!0}return this.each((typeof a=="function"?UE:a?kE:BE)(l,a))}function qE(){this.textContent=""}function YE(t){return function(){this.textContent=t}}function VE(t){return function(){var a=t.apply(this,arguments);this.textContent=a??""}}function $E(t){return arguments.length?this.each(t==null?qE:(typeof t=="function"?VE:YE)(t)):this.node().textContent}function XE(){this.innerHTML=""}function PE(t){return function(){this.innerHTML=t}}function FE(t){return function(){var a=t.apply(this,arguments);this.innerHTML=a??""}}function ZE(t){return arguments.length?this.each(t==null?XE:(typeof t=="function"?FE:PE)(t)):this.node().innerHTML}function KE(){this.nextSibling&&this.parentNode.appendChild(this)}function QE(){return this.each(KE)}function JE(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function WE(){return this.each(JE)}function e2(t){var a=typeof t=="function"?t:hv(t);return this.select(function(){return this.appendChild(a.apply(this,arguments))})}function t2(){return null}function n2(t,a){var l=typeof t=="function"?t:hv(t),o=a==null?t2:typeof a=="function"?a:Of(a);return this.select(function(){return this.insertBefore(l.apply(this,arguments),o.apply(this,arguments)||null)})}function a2(){var t=this.parentNode;t&&t.removeChild(this)}function i2(){return this.each(a2)}function l2(){var t=this.cloneNode(!1),a=this.parentNode;return a?a.insertBefore(t,this.nextSibling):t}function o2(){var t=this.cloneNode(!0),a=this.parentNode;return a?a.insertBefore(t,this.nextSibling):t}function s2(t){return this.select(t?o2:l2)}function r2(t){return arguments.length?this.property("__data__",t):this.node().__data__}function c2(t){return function(a){t.call(this,a,this.__data__)}}function u2(t){return t.trim().split(/^|\s+/).map(function(a){var l="",o=a.indexOf(".");return o>=0&&(l=a.slice(o+1),a=a.slice(0,o)),{type:a,name:l}})}function d2(t){return function(){var a=this.__on;if(a){for(var l=0,o=-1,r=a.length,c;l<r;++l)c=a[l],(!t.type||c.type===t.type)&&c.name===t.name?this.removeEventListener(c.type,c.listener,c.options):a[++o]=c;++o?a.length=o:delete this.__on}}}function f2(t,a,l){return function(){var o=this.__on,r,c=c2(a);if(o){for(var d=0,m=o.length;d<m;++d)if((r=o[d]).type===t.type&&r.name===t.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=c,r.options=l),r.value=a;return}}this.addEventListener(t.type,c,l),r={type:t.type,name:t.name,value:a,listener:c,options:l},o?o.push(r):this.__on=[r]}}function h2(t,a,l){var o=u2(t+""),r,c=o.length,d;if(arguments.length<2){var m=this.node().__on;if(m){for(var y=0,p=m.length,g;y<p;++y)for(r=0,g=m[y];r<c;++r)if((d=o[r]).type===g.type&&d.name===g.name)return g.value}return}for(m=a?f2:d2,r=0;r<c;++r)this.each(m(o[r],a,l));return this}function Nv(t,a,l){var o=vv(t),r=o.CustomEvent;typeof r=="function"?r=new r(a,l):(r=o.document.createEvent("Event"),l?(r.initEvent(a,l.bubbles,l.cancelable),r.detail=l.detail):r.initEvent(a,!1,!1)),t.dispatchEvent(r)}function m2(t,a){return function(){return Nv(this,t,a)}}function p2(t,a){return function(){return Nv(this,t,a.apply(this,arguments))}}function g2(t,a){return this.each((typeof a=="function"?p2:m2)(t,a))}function*y2(){for(var t=this._groups,a=0,l=t.length;a<l;++a)for(var o=t[a],r=0,c=o.length,d;r<c;++r)(d=o[r])&&(yield d)}var _v=[null];function Ut(t,a){this._groups=t,this._parents=a}function qo(){return new Ut([[document.documentElement]],_v)}function v2(){return this}Ut.prototype=qo.prototype={constructor:Ut,select:V_,selectAll:F_,selectChild:J_,selectChildren:nE,filter:aE,data:cE,enter:iE,exit:dE,join:fE,merge:hE,selection:v2,order:mE,sort:pE,call:yE,nodes:vE,node:xE,size:bE,empty:SE,each:wE,attr:ME,style:DE,property:IE,classed:GE,text:$E,html:ZE,raise:QE,lower:WE,append:e2,insert:n2,remove:i2,clone:s2,datum:r2,on:h2,dispatch:g2,[Symbol.iterator]:y2};function Bt(t){return typeof t=="string"?new Ut([[document.querySelector(t)]],[document.documentElement]):new Ut([[t]],_v)}function x2(t){let a;for(;a=t.sourceEvent;)t=a;return t}function nn(t,a){if(t=x2(t),a===void 0&&(a=t.currentTarget),a){var l=a.ownerSVGElement||a;if(l.createSVGPoint){var o=l.createSVGPoint();return o.x=t.clientX,o.y=t.clientY,o=o.matrixTransform(a.getScreenCTM().inverse()),[o.x,o.y]}if(a.getBoundingClientRect){var r=a.getBoundingClientRect();return[t.clientX-r.left-a.clientLeft,t.clientY-r.top-a.clientTop]}}return[t.pageX,t.pageY]}const b2={passive:!1},Ro={capture:!0,passive:!1};function Zd(t){t.stopImmediatePropagation()}function fl(t){t.preventDefault(),t.stopImmediatePropagation()}function Ev(t){var a=t.document.documentElement,l=Bt(t).on("dragstart.drag",fl,Ro);"onselectstart"in a?l.on("selectstart.drag",fl,Ro):(a.__noselect=a.style.MozUserSelect,a.style.MozUserSelect="none")}function Cv(t,a){var l=t.document.documentElement,o=Bt(t).on("dragstart.drag",null);a&&(o.on("click.drag",fl,Ro),setTimeout(function(){o.on("click.drag",null)},0)),"onselectstart"in l?o.on("selectstart.drag",null):(l.style.MozUserSelect=l.__noselect,delete l.__noselect)}const Nr=t=>()=>t;function mf(t,{sourceEvent:a,subject:l,target:o,identifier:r,active:c,x:d,y:m,dx:y,dy:p,dispatch:g}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:a,enumerable:!0,configurable:!0},subject:{value:l,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},identifier:{value:r,enumerable:!0,configurable:!0},active:{value:c,enumerable:!0,configurable:!0},x:{value:d,enumerable:!0,configurable:!0},y:{value:m,enumerable:!0,configurable:!0},dx:{value:y,enumerable:!0,configurable:!0},dy:{value:p,enumerable:!0,configurable:!0},_:{value:g}})}mf.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function S2(t){return!t.ctrlKey&&!t.button}function w2(){return this.parentNode}function N2(t,a){return a??{x:t.x,y:t.y}}function _2(){return navigator.maxTouchPoints||"ontouchstart"in this}function Tv(){var t=S2,a=w2,l=N2,o=_2,r={},c=ic("start","drag","end"),d=0,m,y,p,g,v=0;function x(_){_.on("mousedown.drag",w).filter(o).on("touchstart.drag",R).on("touchmove.drag",z,b2).on("touchend.drag touchcancel.drag",O).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function w(_,k){if(!(g||!t.call(this,_,k))){var A=C(this,a.call(this,_,k),_,k,"mouse");A&&(Bt(_.view).on("mousemove.drag",S,Ro).on("mouseup.drag",M,Ro),Ev(_.view),Zd(_),p=!1,m=_.clientX,y=_.clientY,A("start",_))}}function S(_){if(fl(_),!p){var k=_.clientX-m,A=_.clientY-y;p=k*k+A*A>v}r.mouse("drag",_)}function M(_){Bt(_.view).on("mousemove.drag mouseup.drag",null),Cv(_.view,p),fl(_),r.mouse("end",_)}function R(_,k){if(t.call(this,_,k)){var A=_.changedTouches,B=a.call(this,_,k),X=A.length,K,de;for(K=0;K<X;++K)(de=C(this,B,_,k,A[K].identifier,A[K]))&&(Zd(_),de("start",_,A[K]))}}function z(_){var k=_.changedTouches,A=k.length,B,X;for(B=0;B<A;++B)(X=r[k[B].identifier])&&(fl(_),X("drag",_,k[B]))}function O(_){var k=_.changedTouches,A=k.length,B,X;for(g&&clearTimeout(g),g=setTimeout(function(){g=null},500),B=0;B<A;++B)(X=r[k[B].identifier])&&(Zd(_),X("end",_,k[B]))}function C(_,k,A,B,X,K){var de=c.copy(),F=nn(K||A,k),te,ce,N;if((N=l.call(_,new mf("beforestart",{sourceEvent:A,target:x,identifier:X,active:d,x:F[0],y:F[1],dx:0,dy:0,dispatch:de}),B))!=null)return te=N.x-F[0]||0,ce=N.y-F[1]||0,function D(T,L,G){var Z=F,ae;switch(T){case"start":r[X]=D,ae=d++;break;case"end":delete r[X],--d;case"drag":F=nn(G||L,k),ae=d;break}de.call(T,_,new mf(T,{sourceEvent:L,subject:N,target:x,identifier:X,active:ae,x:F[0]+te,y:F[1]+ce,dx:F[0]-Z[0],dy:F[1]-Z[1],dispatch:de}),B)}}return x.filter=function(_){return arguments.length?(t=typeof _=="function"?_:Nr(!!_),x):t},x.container=function(_){return arguments.length?(a=typeof _=="function"?_:Nr(_),x):a},x.subject=function(_){return arguments.length?(l=typeof _=="function"?_:Nr(_),x):l},x.touchable=function(_){return arguments.length?(o=typeof _=="function"?_:Nr(!!_),x):o},x.on=function(){var _=c.on.apply(c,arguments);return _===c?x:_},x.clickDistance=function(_){return arguments.length?(v=(_=+_)*_,x):Math.sqrt(v)},x}function Hf(t,a,l){t.prototype=a.prototype=l,l.constructor=t}function Av(t,a){var l=Object.create(t.prototype);for(var o in a)l[o]=a[o];return l}function Yo(){}var Do=.7,Pr=1/Do,hl="\\s*([+-]?\\d+)\\s*",Oo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",gn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",E2=/^#([0-9a-f]{3,8})$/,C2=new RegExp(`^rgb\\(${hl},${hl},${hl}\\)$`),T2=new RegExp(`^rgb\\(${gn},${gn},${gn}\\)$`),A2=new RegExp(`^rgba\\(${hl},${hl},${hl},${Oo}\\)$`),M2=new RegExp(`^rgba\\(${gn},${gn},${gn},${Oo}\\)$`),j2=new RegExp(`^hsl\\(${Oo},${gn},${gn}\\)$`),z2=new RegExp(`^hsla\\(${Oo},${gn},${gn},${Oo}\\)$`),_y={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};Hf(Yo,ri,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Ey,formatHex:Ey,formatHex8:R2,formatHsl:D2,formatRgb:Cy,toString:Cy});function Ey(){return this.rgb().formatHex()}function R2(){return this.rgb().formatHex8()}function D2(){return Mv(this).formatHsl()}function Cy(){return this.rgb().formatRgb()}function ri(t){var a,l;return t=(t+"").trim().toLowerCase(),(a=E2.exec(t))?(l=a[1].length,a=parseInt(a[1],16),l===6?Ty(a):l===3?new jt(a>>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):l===8?_r(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):l===4?_r(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=C2.exec(t))?new jt(a[1],a[2],a[3],1):(a=T2.exec(t))?new jt(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=A2.exec(t))?_r(a[1],a[2],a[3],a[4]):(a=M2.exec(t))?_r(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=j2.exec(t))?jy(a[1],a[2]/100,a[3]/100,1):(a=z2.exec(t))?jy(a[1],a[2]/100,a[3]/100,a[4]):_y.hasOwnProperty(t)?Ty(_y[t]):t==="transparent"?new jt(NaN,NaN,NaN,0):null}function Ty(t){return new jt(t>>16&255,t>>8&255,t&255,1)}function _r(t,a,l,o){return o<=0&&(t=a=l=NaN),new jt(t,a,l,o)}function O2(t){return t instanceof Yo||(t=ri(t)),t?(t=t.rgb(),new jt(t.r,t.g,t.b,t.opacity)):new jt}function pf(t,a,l,o){return arguments.length===1?O2(t):new jt(t,a,l,o??1)}function jt(t,a,l,o){this.r=+t,this.g=+a,this.b=+l,this.opacity=+o}Hf(jt,pf,Av(Yo,{brighter(t){return t=t==null?Pr:Math.pow(Pr,t),new jt(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Do:Math.pow(Do,t),new jt(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new jt(li(this.r),li(this.g),li(this.b),Fr(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:Ay,formatHex:Ay,formatHex8:L2,formatRgb:My,toString:My}));function Ay(){return`#${ai(this.r)}${ai(this.g)}${ai(this.b)}`}function L2(){return`#${ai(this.r)}${ai(this.g)}${ai(this.b)}${ai((isNaN(this.opacity)?1:this.opacity)*255)}`}function My(){const t=Fr(this.opacity);return`${t===1?"rgb(":"rgba("}${li(this.r)}, ${li(this.g)}, ${li(this.b)}${t===1?")":`, ${t})`}`}function Fr(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function li(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function ai(t){return t=li(t),(t<16?"0":"")+t.toString(16)}function jy(t,a,l,o){return o<=0?t=a=l=NaN:l<=0||l>=1?t=a=NaN:a<=0&&(t=NaN),new an(t,a,l,o)}function Mv(t){if(t instanceof an)return new an(t.h,t.s,t.l,t.opacity);if(t instanceof Yo||(t=ri(t)),!t)return new an;if(t instanceof an)return t;t=t.rgb();var a=t.r/255,l=t.g/255,o=t.b/255,r=Math.min(a,l,o),c=Math.max(a,l,o),d=NaN,m=c-r,y=(c+r)/2;return m?(a===c?d=(l-o)/m+(l<o)*6:l===c?d=(o-a)/m+2:d=(a-l)/m+4,m/=y<.5?c+r:2-c-r,d*=60):m=y>0&&y<1?0:d,new an(d,m,y,t.opacity)}function H2(t,a,l,o){return arguments.length===1?Mv(t):new an(t,a,l,o??1)}function an(t,a,l,o){this.h=+t,this.s=+a,this.l=+l,this.opacity=+o}Hf(an,H2,Av(Yo,{brighter(t){return t=t==null?Pr:Math.pow(Pr,t),new an(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Do:Math.pow(Do,t),new an(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,a=isNaN(t)||isNaN(this.s)?0:this.s,l=this.l,o=l+(l<.5?l:1-l)*a,r=2*l-o;return new jt(Kd(t>=240?t-240:t+120,r,o),Kd(t,r,o),Kd(t<120?t+240:t-120,r,o),this.opacity)},clamp(){return new an(zy(this.h),Er(this.s),Er(this.l),Fr(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 t=Fr(this.opacity);return`${t===1?"hsl(":"hsla("}${zy(this.h)}, ${Er(this.s)*100}%, ${Er(this.l)*100}%${t===1?")":`, ${t})`}`}}));function zy(t){return t=(t||0)%360,t<0?t+360:t}function Er(t){return Math.max(0,Math.min(1,t||0))}function Kd(t,a,l){return(t<60?a+(l-a)*t/60:t<180?l:t<240?a+(l-a)*(240-t)/60:a)*255}const If=t=>()=>t;function I2(t,a){return function(l){return t+l*a}}function k2(t,a,l){return t=Math.pow(t,l),a=Math.pow(a,l)-t,l=1/l,function(o){return Math.pow(t+o*a,l)}}function B2(t){return(t=+t)==1?jv:function(a,l){return l-a?k2(a,l,t):If(isNaN(a)?l:a)}}function jv(t,a){var l=a-t;return l?I2(t,l):If(isNaN(t)?a:t)}const Zr=(function t(a){var l=B2(a);function o(r,c){var d=l((r=pf(r)).r,(c=pf(c)).r),m=l(r.g,c.g),y=l(r.b,c.b),p=jv(r.opacity,c.opacity);return function(g){return r.r=d(g),r.g=m(g),r.b=y(g),r.opacity=p(g),r+""}}return o.gamma=t,o})(1);function U2(t,a){a||(a=[]);var l=t?Math.min(a.length,t.length):0,o=a.slice(),r;return function(c){for(r=0;r<l;++r)o[r]=t[r]*(1-c)+a[r]*c;return o}}function G2(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function q2(t,a){var l=a?a.length:0,o=t?Math.min(l,t.length):0,r=new Array(o),c=new Array(l),d;for(d=0;d<o;++d)r[d]=jo(t[d],a[d]);for(;d<l;++d)c[d]=a[d];return function(m){for(d=0;d<o;++d)c[d]=r[d](m);return c}}function Y2(t,a){var l=new Date;return t=+t,a=+a,function(o){return l.setTime(t*(1-o)+a*o),l}}function mn(t,a){return t=+t,a=+a,function(l){return t*(1-l)+a*l}}function V2(t,a){var l={},o={},r;(t===null||typeof t!="object")&&(t={}),(a===null||typeof a!="object")&&(a={});for(r in a)r in t?l[r]=jo(t[r],a[r]):o[r]=a[r];return function(c){for(r in l)o[r]=l[r](c);return o}}var gf=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Qd=new RegExp(gf.source,"g");function $2(t){return function(){return t}}function X2(t){return function(a){return t(a)+""}}function zv(t,a){var l=gf.lastIndex=Qd.lastIndex=0,o,r,c,d=-1,m=[],y=[];for(t=t+"",a=a+"";(o=gf.exec(t))&&(r=Qd.exec(a));)(c=r.index)>l&&(c=a.slice(l,c),m[d]?m[d]+=c:m[++d]=c),(o=o[0])===(r=r[0])?m[d]?m[d]+=r:m[++d]=r:(m[++d]=null,y.push({i:d,x:mn(o,r)})),l=Qd.lastIndex;return l<a.length&&(c=a.slice(l),m[d]?m[d]+=c:m[++d]=c),m.length<2?y[0]?X2(y[0].x):$2(a):(a=y.length,function(p){for(var g=0,v;g<a;++g)m[(v=y[g]).i]=v.x(p);return m.join("")})}function jo(t,a){var l=typeof a,o;return a==null||l==="boolean"?If(a):(l==="number"?mn:l==="string"?(o=ri(a))?(a=o,Zr):zv:a instanceof ri?Zr:a instanceof Date?Y2:G2(a)?U2:Array.isArray(a)?q2:typeof a.valueOf!="function"&&typeof a.toString!="function"||isNaN(a)?V2:mn)(t,a)}var Ry=180/Math.PI,yf={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Rv(t,a,l,o,r,c){var d,m,y;return(d=Math.sqrt(t*t+a*a))&&(t/=d,a/=d),(y=t*l+a*o)&&(l-=t*y,o-=a*y),(m=Math.sqrt(l*l+o*o))&&(l/=m,o/=m,y/=m),t*o<a*l&&(t=-t,a=-a,y=-y,d=-d),{translateX:r,translateY:c,rotate:Math.atan2(a,t)*Ry,skewX:Math.atan(y)*Ry,scaleX:d,scaleY:m}}var Cr;function P2(t){const a=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return a.isIdentity?yf:Rv(a.a,a.b,a.c,a.d,a.e,a.f)}function F2(t){return t==null||(Cr||(Cr=document.createElementNS("http://www.w3.org/2000/svg","g")),Cr.setAttribute("transform",t),!(t=Cr.transform.baseVal.consolidate()))?yf:(t=t.matrix,Rv(t.a,t.b,t.c,t.d,t.e,t.f))}function Dv(t,a,l,o){function r(p){return p.length?p.pop()+" ":""}function c(p,g,v,x,w,S){if(p!==v||g!==x){var M=w.push("translate(",null,a,null,l);S.push({i:M-4,x:mn(p,v)},{i:M-2,x:mn(g,x)})}else(v||x)&&w.push("translate("+v+a+x+l)}function d(p,g,v,x){p!==g?(p-g>180?g+=360:g-p>180&&(p+=360),x.push({i:v.push(r(v)+"rotate(",null,o)-2,x:mn(p,g)})):g&&v.push(r(v)+"rotate("+g+o)}function m(p,g,v,x){p!==g?x.push({i:v.push(r(v)+"skewX(",null,o)-2,x:mn(p,g)}):g&&v.push(r(v)+"skewX("+g+o)}function y(p,g,v,x,w,S){if(p!==v||g!==x){var M=w.push(r(w)+"scale(",null,",",null,")");S.push({i:M-4,x:mn(p,v)},{i:M-2,x:mn(g,x)})}else(v!==1||x!==1)&&w.push(r(w)+"scale("+v+","+x+")")}return function(p,g){var v=[],x=[];return p=t(p),g=t(g),c(p.translateX,p.translateY,g.translateX,g.translateY,v,x),d(p.rotate,g.rotate,v,x),m(p.skewX,g.skewX,v,x),y(p.scaleX,p.scaleY,g.scaleX,g.scaleY,v,x),p=g=null,function(w){for(var S=-1,M=x.length,R;++S<M;)v[(R=x[S]).i]=R.x(w);return v.join("")}}}var Z2=Dv(P2,"px, ","px)","deg)"),K2=Dv(F2,", ",")",")"),Q2=1e-12;function Dy(t){return((t=Math.exp(t))+1/t)/2}function J2(t){return((t=Math.exp(t))-1/t)/2}function W2(t){return((t=Math.exp(2*t))-1)/(t+1)}const Br=(function t(a,l,o){function r(c,d){var m=c[0],y=c[1],p=c[2],g=d[0],v=d[1],x=d[2],w=g-m,S=v-y,M=w*w+S*S,R,z;if(M<Q2)z=Math.log(x/p)/a,R=function(B){return[m+B*w,y+B*S,p*Math.exp(a*B*z)]};else{var O=Math.sqrt(M),C=(x*x-p*p+o*M)/(2*p*l*O),_=(x*x-p*p-o*M)/(2*x*l*O),k=Math.log(Math.sqrt(C*C+1)-C),A=Math.log(Math.sqrt(_*_+1)-_);z=(A-k)/a,R=function(B){var X=B*z,K=Dy(k),de=p/(l*O)*(K*W2(a*X+k)-J2(k));return[m+de*w,y+de*S,p*K/Dy(a*X+k)]}}return R.duration=z*1e3*a/Math.SQRT2,R}return r.rho=function(c){var d=Math.max(.001,+c),m=d*d,y=m*m;return t(d,m,y)},r})(Math.SQRT2,2,4);var pl=0,Eo=0,xo=0,Ov=1e3,Kr,Co,Qr=0,ci=0,oc=0,Lo=typeof performance=="object"&&performance.now?performance:Date,Lv=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function kf(){return ci||(Lv(eC),ci=Lo.now()+oc)}function eC(){ci=0}function Jr(){this._call=this._time=this._next=null}Jr.prototype=Hv.prototype={constructor:Jr,restart:function(t,a,l){if(typeof t!="function")throw new TypeError("callback is not a function");l=(l==null?kf():+l)+(a==null?0:+a),!this._next&&Co!==this&&(Co?Co._next=this:Kr=this,Co=this),this._call=t,this._time=l,vf()},stop:function(){this._call&&(this._call=null,this._time=1/0,vf())}};function Hv(t,a,l){var o=new Jr;return o.restart(t,a,l),o}function tC(){kf(),++pl;for(var t=Kr,a;t;)(a=ci-t._time)>=0&&t._call.call(void 0,a),t=t._next;--pl}function Oy(){ci=(Qr=Lo.now())+oc,pl=Eo=0;try{tC()}finally{pl=0,aC(),ci=0}}function nC(){var t=Lo.now(),a=t-Qr;a>Ov&&(oc-=a,Qr=t)}function aC(){for(var t,a=Kr,l,o=1/0;a;)a._call?(o>a._time&&(o=a._time),t=a,a=a._next):(l=a._next,a._next=null,a=t?t._next=l:Kr=l);Co=t,vf(o)}function vf(t){if(!pl){Eo&&(Eo=clearTimeout(Eo));var a=t-ci;a>24?(t<1/0&&(Eo=setTimeout(Oy,t-Lo.now()-oc)),xo&&(xo=clearInterval(xo))):(xo||(Qr=Lo.now(),xo=setInterval(nC,Ov)),pl=1,Lv(Oy))}}function Ly(t,a,l){var o=new Jr;return a=a==null?0:+a,o.restart(r=>{o.stop(),t(r+a)},a,l),o}var iC=ic("start","end","cancel","interrupt"),lC=[],Iv=0,Hy=1,xf=2,Ur=3,Iy=4,bf=5,Gr=6;function sc(t,a,l,o,r,c){var d=t.__transition;if(!d)t.__transition={};else if(l in d)return;oC(t,l,{name:a,index:o,group:r,on:iC,tween:lC,time:c.time,delay:c.delay,duration:c.duration,ease:c.ease,timer:null,state:Iv})}function Bf(t,a){var l=sn(t,a);if(l.state>Iv)throw new Error("too late; already scheduled");return l}function vn(t,a){var l=sn(t,a);if(l.state>Ur)throw new Error("too late; already running");return l}function sn(t,a){var l=t.__transition;if(!l||!(l=l[a]))throw new Error("transition not found");return l}function oC(t,a,l){var o=t.__transition,r;o[a]=l,l.timer=Hv(c,0,l.time);function c(p){l.state=Hy,l.timer.restart(d,l.delay,l.time),l.delay<=p&&d(p-l.delay)}function d(p){var g,v,x,w;if(l.state!==Hy)return y();for(g in o)if(w=o[g],w.name===l.name){if(w.state===Ur)return Ly(d);w.state===Iy?(w.state=Gr,w.timer.stop(),w.on.call("interrupt",t,t.__data__,w.index,w.group),delete o[g]):+g<a&&(w.state=Gr,w.timer.stop(),w.on.call("cancel",t,t.__data__,w.index,w.group),delete o[g])}if(Ly(function(){l.state===Ur&&(l.state=Iy,l.timer.restart(m,l.delay,l.time),m(p))}),l.state=xf,l.on.call("start",t,t.__data__,l.index,l.group),l.state===xf){for(l.state=Ur,r=new Array(x=l.tween.length),g=0,v=-1;g<x;++g)(w=l.tween[g].value.call(t,t.__data__,l.index,l.group))&&(r[++v]=w);r.length=v+1}}function m(p){for(var g=p<l.duration?l.ease.call(null,p/l.duration):(l.timer.restart(y),l.state=bf,1),v=-1,x=r.length;++v<x;)r[v].call(t,g);l.state===bf&&(l.on.call("end",t,t.__data__,l.index,l.group),y())}function y(){l.state=Gr,l.timer.stop(),delete o[a];for(var p in o)return;delete t.__transition}}function qr(t,a){var l=t.__transition,o,r,c=!0,d;if(l){a=a==null?null:a+"";for(d in l){if((o=l[d]).name!==a){c=!1;continue}r=o.state>xf&&o.state<bf,o.state=Gr,o.timer.stop(),o.on.call(r?"interrupt":"cancel",t,t.__data__,o.index,o.group),delete l[d]}c&&delete t.__transition}}function sC(t){return this.each(function(){qr(this,t)})}function rC(t,a){var l,o;return function(){var r=vn(this,t),c=r.tween;if(c!==l){o=l=c;for(var d=0,m=o.length;d<m;++d)if(o[d].name===a){o=o.slice(),o.splice(d,1);break}}r.tween=o}}function cC(t,a,l){var o,r;if(typeof l!="function")throw new Error;return function(){var c=vn(this,t),d=c.tween;if(d!==o){r=(o=d).slice();for(var m={name:a,value:l},y=0,p=r.length;y<p;++y)if(r[y].name===a){r[y]=m;break}y===p&&r.push(m)}c.tween=r}}function uC(t,a){var l=this._id;if(t+="",arguments.length<2){for(var o=sn(this.node(),l).tween,r=0,c=o.length,d;r<c;++r)if((d=o[r]).name===t)return d.value;return null}return this.each((a==null?rC:cC)(l,t,a))}function Uf(t,a,l){var o=t._id;return t.each(function(){var r=vn(this,o);(r.value||(r.value={}))[a]=l.apply(this,arguments)}),function(r){return sn(r,o).value[a]}}function kv(t,a){var l;return(typeof a=="number"?mn:a instanceof ri?Zr:(l=ri(a))?(a=l,Zr):zv)(t,a)}function dC(t){return function(){this.removeAttribute(t)}}function fC(t){return function(){this.removeAttributeNS(t.space,t.local)}}function hC(t,a,l){var o,r=l+"",c;return function(){var d=this.getAttribute(t);return d===r?null:d===o?c:c=a(o=d,l)}}function mC(t,a,l){var o,r=l+"",c;return function(){var d=this.getAttributeNS(t.space,t.local);return d===r?null:d===o?c:c=a(o=d,l)}}function pC(t,a,l){var o,r,c;return function(){var d,m=l(this),y;return m==null?void this.removeAttribute(t):(d=this.getAttribute(t),y=m+"",d===y?null:d===o&&y===r?c:(r=y,c=a(o=d,m)))}}function gC(t,a,l){var o,r,c;return function(){var d,m=l(this),y;return m==null?void this.removeAttributeNS(t.space,t.local):(d=this.getAttributeNS(t.space,t.local),y=m+"",d===y?null:d===o&&y===r?c:(r=y,c=a(o=d,m)))}}function yC(t,a){var l=lc(t),o=l==="transform"?K2:kv;return this.attrTween(t,typeof a=="function"?(l.local?gC:pC)(l,o,Uf(this,"attr."+t,a)):a==null?(l.local?fC:dC)(l):(l.local?mC:hC)(l,o,a))}function vC(t,a){return function(l){this.setAttribute(t,a.call(this,l))}}function xC(t,a){return function(l){this.setAttributeNS(t.space,t.local,a.call(this,l))}}function bC(t,a){var l,o;function r(){var c=a.apply(this,arguments);return c!==o&&(l=(o=c)&&xC(t,c)),l}return r._value=a,r}function SC(t,a){var l,o;function r(){var c=a.apply(this,arguments);return c!==o&&(l=(o=c)&&vC(t,c)),l}return r._value=a,r}function wC(t,a){var l="attr."+t;if(arguments.length<2)return(l=this.tween(l))&&l._value;if(a==null)return this.tween(l,null);if(typeof a!="function")throw new Error;var o=lc(t);return this.tween(l,(o.local?bC:SC)(o,a))}function NC(t,a){return function(){Bf(this,t).delay=+a.apply(this,arguments)}}function _C(t,a){return a=+a,function(){Bf(this,t).delay=a}}function EC(t){var a=this._id;return arguments.length?this.each((typeof t=="function"?NC:_C)(a,t)):sn(this.node(),a).delay}function CC(t,a){return function(){vn(this,t).duration=+a.apply(this,arguments)}}function TC(t,a){return a=+a,function(){vn(this,t).duration=a}}function AC(t){var a=this._id;return arguments.length?this.each((typeof t=="function"?CC:TC)(a,t)):sn(this.node(),a).duration}function MC(t,a){if(typeof a!="function")throw new Error;return function(){vn(this,t).ease=a}}function jC(t){var a=this._id;return arguments.length?this.each(MC(a,t)):sn(this.node(),a).ease}function zC(t,a){return function(){var l=a.apply(this,arguments);if(typeof l!="function")throw new Error;vn(this,t).ease=l}}function RC(t){if(typeof t!="function")throw new Error;return this.each(zC(this._id,t))}function DC(t){typeof t!="function"&&(t=pv(t));for(var a=this._groups,l=a.length,o=new Array(l),r=0;r<l;++r)for(var c=a[r],d=c.length,m=o[r]=[],y,p=0;p<d;++p)(y=c[p])&&t.call(y,y.__data__,p,c)&&m.push(y);return new Vn(o,this._parents,this._name,this._id)}function OC(t){if(t._id!==this._id)throw new Error;for(var a=this._groups,l=t._groups,o=a.length,r=l.length,c=Math.min(o,r),d=new Array(o),m=0;m<c;++m)for(var y=a[m],p=l[m],g=y.length,v=d[m]=new Array(g),x,w=0;w<g;++w)(x=y[w]||p[w])&&(v[w]=x);for(;m<o;++m)d[m]=a[m];return new Vn(d,this._parents,this._name,this._id)}function LC(t){return(t+"").trim().split(/^|\s+/).every(function(a){var l=a.indexOf(".");return l>=0&&(a=a.slice(0,l)),!a||a==="start"})}function HC(t,a,l){var o,r,c=LC(a)?Bf:vn;return function(){var d=c(this,t),m=d.on;m!==o&&(r=(o=m).copy()).on(a,l),d.on=r}}function IC(t,a){var l=this._id;return arguments.length<2?sn(this.node(),l).on.on(t):this.each(HC(l,t,a))}function kC(t){return function(){var a=this.parentNode;for(var l in this.__transition)if(+l!==t)return;a&&a.removeChild(this)}}function BC(){return this.on("end.remove",kC(this._id))}function UC(t){var a=this._name,l=this._id;typeof t!="function"&&(t=Of(t));for(var o=this._groups,r=o.length,c=new Array(r),d=0;d<r;++d)for(var m=o[d],y=m.length,p=c[d]=new Array(y),g,v,x=0;x<y;++x)(g=m[x])&&(v=t.call(g,g.__data__,x,m))&&("__data__"in g&&(v.__data__=g.__data__),p[x]=v,sc(p[x],a,l,x,p,sn(g,l)));return new Vn(c,this._parents,a,l)}function GC(t){var a=this._name,l=this._id;typeof t!="function"&&(t=mv(t));for(var o=this._groups,r=o.length,c=[],d=[],m=0;m<r;++m)for(var y=o[m],p=y.length,g,v=0;v<p;++v)if(g=y[v]){for(var x=t.call(g,g.__data__,v,y),w,S=sn(g,l),M=0,R=x.length;M<R;++M)(w=x[M])&&sc(w,a,l,M,x,S);c.push(x),d.push(g)}return new Vn(c,d,a,l)}var qC=qo.prototype.constructor;function YC(){return new qC(this._groups,this._parents)}function VC(t,a){var l,o,r;return function(){var c=ml(this,t),d=(this.style.removeProperty(t),ml(this,t));return c===d?null:c===l&&d===o?r:r=a(l=c,o=d)}}function Bv(t){return function(){this.style.removeProperty(t)}}function $C(t,a,l){var o,r=l+"",c;return function(){var d=ml(this,t);return d===r?null:d===o?c:c=a(o=d,l)}}function XC(t,a,l){var o,r,c;return function(){var d=ml(this,t),m=l(this),y=m+"";return m==null&&(y=m=(this.style.removeProperty(t),ml(this,t))),d===y?null:d===o&&y===r?c:(r=y,c=a(o=d,m))}}function PC(t,a){var l,o,r,c="style."+a,d="end."+c,m;return function(){var y=vn(this,t),p=y.on,g=y.value[c]==null?m||(m=Bv(a)):void 0;(p!==l||r!==g)&&(o=(l=p).copy()).on(d,r=g),y.on=o}}function FC(t,a,l){var o=(t+="")=="transform"?Z2:kv;return a==null?this.styleTween(t,VC(t,o)).on("end.style."+t,Bv(t)):typeof a=="function"?this.styleTween(t,XC(t,o,Uf(this,"style."+t,a))).each(PC(this._id,t)):this.styleTween(t,$C(t,o,a),l).on("end.style."+t,null)}function ZC(t,a,l){return function(o){this.style.setProperty(t,a.call(this,o),l)}}function KC(t,a,l){var o,r;function c(){var d=a.apply(this,arguments);return d!==r&&(o=(r=d)&&ZC(t,d,l)),o}return c._value=a,c}function QC(t,a,l){var o="style."+(t+="");if(arguments.length<2)return(o=this.tween(o))&&o._value;if(a==null)return this.tween(o,null);if(typeof a!="function")throw new Error;return this.tween(o,KC(t,a,l??""))}function JC(t){return function(){this.textContent=t}}function WC(t){return function(){var a=t(this);this.textContent=a??""}}function eT(t){return this.tween("text",typeof t=="function"?WC(Uf(this,"text",t)):JC(t==null?"":t+""))}function tT(t){return function(a){this.textContent=t.call(this,a)}}function nT(t){var a,l;function o(){var r=t.apply(this,arguments);return r!==l&&(a=(l=r)&&tT(r)),a}return o._value=t,o}function aT(t){var a="text";if(arguments.length<1)return(a=this.tween(a))&&a._value;if(t==null)return this.tween(a,null);if(typeof t!="function")throw new Error;return this.tween(a,nT(t))}function iT(){for(var t=this._name,a=this._id,l=Uv(),o=this._groups,r=o.length,c=0;c<r;++c)for(var d=o[c],m=d.length,y,p=0;p<m;++p)if(y=d[p]){var g=sn(y,a);sc(y,t,l,p,d,{time:g.time+g.delay+g.duration,delay:0,duration:g.duration,ease:g.ease})}return new Vn(o,this._parents,t,l)}function lT(){var t,a,l=this,o=l._id,r=l.size();return new Promise(function(c,d){var m={value:d},y={value:function(){--r===0&&c()}};l.each(function(){var p=vn(this,o),g=p.on;g!==t&&(a=(t=g).copy(),a._.cancel.push(m),a._.interrupt.push(m),a._.end.push(y)),p.on=a}),r===0&&c()})}var oT=0;function Vn(t,a,l,o){this._groups=t,this._parents=a,this._name=l,this._id=o}function Uv(){return++oT}var qn=qo.prototype;Vn.prototype={constructor:Vn,select:UC,selectAll:GC,selectChild:qn.selectChild,selectChildren:qn.selectChildren,filter:DC,merge:OC,selection:YC,transition:iT,call:qn.call,nodes:qn.nodes,node:qn.node,size:qn.size,empty:qn.empty,each:qn.each,on:IC,attr:yC,attrTween:wC,style:FC,styleTween:QC,text:eT,textTween:aT,remove:BC,tween:uC,delay:EC,duration:AC,ease:jC,easeVarying:RC,end:lT,[Symbol.iterator]:qn[Symbol.iterator]};function sT(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var rT={time:null,delay:0,duration:250,ease:sT};function cT(t,a){for(var l;!(l=t.__transition)||!(l=l[a]);)if(!(t=t.parentNode))throw new Error(`transition ${a} not found`);return l}function uT(t){var a,l;t instanceof Vn?(a=t._id,t=t._name):(a=Uv(),(l=rT).time=kf(),t=t==null?null:t+"");for(var o=this._groups,r=o.length,c=0;c<r;++c)for(var d=o[c],m=d.length,y,p=0;p<m;++p)(y=d[p])&&sc(y,t,a,p,d,l||cT(y,a));return new Vn(o,this._parents,t,a)}qo.prototype.interrupt=sC;qo.prototype.transition=uT;const Tr=t=>()=>t;function dT(t,{sourceEvent:a,target:l,transform:o,dispatch:r}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:a,enumerable:!0,configurable:!0},target:{value:l,enumerable:!0,configurable:!0},transform:{value:o,enumerable:!0,configurable:!0},_:{value:r}})}function Yn(t,a,l){this.k=t,this.x=a,this.y=l}Yn.prototype={constructor:Yn,scale:function(t){return t===1?this:new Yn(this.k*t,this.x,this.y)},translate:function(t,a){return t===0&a===0?this:new Yn(this.k,this.x+this.k*t,this.y+this.k*a)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var rc=new Yn(1,0,0);Gv.prototype=Yn.prototype;function Gv(t){for(;!t.__zoom;)if(!(t=t.parentNode))return rc;return t.__zoom}function Jd(t){t.stopImmediatePropagation()}function bo(t){t.preventDefault(),t.stopImmediatePropagation()}function fT(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function hT(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function ky(){return this.__zoom||rc}function mT(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function pT(){return navigator.maxTouchPoints||"ontouchstart"in this}function gT(t,a,l){var o=t.invertX(a[0][0])-l[0][0],r=t.invertX(a[1][0])-l[1][0],c=t.invertY(a[0][1])-l[0][1],d=t.invertY(a[1][1])-l[1][1];return t.translate(r>o?(o+r)/2:Math.min(0,o)||Math.max(0,r),d>c?(c+d)/2:Math.min(0,c)||Math.max(0,d))}function qv(){var t=fT,a=hT,l=gT,o=mT,r=pT,c=[0,1/0],d=[[-1/0,-1/0],[1/0,1/0]],m=250,y=Br,p=ic("start","zoom","end"),g,v,x,w=500,S=150,M=0,R=10;function z(N){N.property("__zoom",ky).on("wheel.zoom",X,{passive:!1}).on("mousedown.zoom",K).on("dblclick.zoom",de).filter(r).on("touchstart.zoom",F).on("touchmove.zoom",te).on("touchend.zoom touchcancel.zoom",ce).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}z.transform=function(N,D,T,L){var G=N.selection?N.selection():N;G.property("__zoom",ky),N!==G?k(N,D,T,L):G.interrupt().each(function(){A(this,arguments).event(L).start().zoom(null,typeof D=="function"?D.apply(this,arguments):D).end()})},z.scaleBy=function(N,D,T,L){z.scaleTo(N,function(){var G=this.__zoom.k,Z=typeof D=="function"?D.apply(this,arguments):D;return G*Z},T,L)},z.scaleTo=function(N,D,T,L){z.transform(N,function(){var G=a.apply(this,arguments),Z=this.__zoom,ae=T==null?_(G):typeof T=="function"?T.apply(this,arguments):T,j=Z.invert(ae),U=typeof D=="function"?D.apply(this,arguments):D;return l(C(O(Z,U),ae,j),G,d)},T,L)},z.translateBy=function(N,D,T,L){z.transform(N,function(){return l(this.__zoom.translate(typeof D=="function"?D.apply(this,arguments):D,typeof T=="function"?T.apply(this,arguments):T),a.apply(this,arguments),d)},null,L)},z.translateTo=function(N,D,T,L,G){z.transform(N,function(){var Z=a.apply(this,arguments),ae=this.__zoom,j=L==null?_(Z):typeof L=="function"?L.apply(this,arguments):L;return l(rc.translate(j[0],j[1]).scale(ae.k).translate(typeof D=="function"?-D.apply(this,arguments):-D,typeof T=="function"?-T.apply(this,arguments):-T),Z,d)},L,G)};function O(N,D){return D=Math.max(c[0],Math.min(c[1],D)),D===N.k?N:new Yn(D,N.x,N.y)}function C(N,D,T){var L=D[0]-T[0]*N.k,G=D[1]-T[1]*N.k;return L===N.x&&G===N.y?N:new Yn(N.k,L,G)}function _(N){return[(+N[0][0]+ +N[1][0])/2,(+N[0][1]+ +N[1][1])/2]}function k(N,D,T,L){N.on("start.zoom",function(){A(this,arguments).event(L).start()}).on("interrupt.zoom end.zoom",function(){A(this,arguments).event(L).end()}).tween("zoom",function(){var G=this,Z=arguments,ae=A(G,Z).event(L),j=a.apply(G,Z),U=T==null?_(j):typeof T=="function"?T.apply(G,Z):T,Y=Math.max(j[1][0]-j[0][0],j[1][1]-j[0][1]),W=G.__zoom,fe=typeof D=="function"?D.apply(G,Z):D,$=y(W.invert(U).concat(Y/W.k),fe.invert(U).concat(Y/fe.k));return function(le){if(le===1)le=fe;else{var se=$(le),ue=Y/se[2];le=new Yn(ue,U[0]-se[0]*ue,U[1]-se[1]*ue)}ae.zoom(null,le)}})}function A(N,D,T){return!T&&N.__zooming||new B(N,D)}function B(N,D){this.that=N,this.args=D,this.active=0,this.sourceEvent=null,this.extent=a.apply(N,D),this.taps=0}B.prototype={event:function(N){return N&&(this.sourceEvent=N),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(N,D){return this.mouse&&N!=="mouse"&&(this.mouse[1]=D.invert(this.mouse[0])),this.touch0&&N!=="touch"&&(this.touch0[1]=D.invert(this.touch0[0])),this.touch1&&N!=="touch"&&(this.touch1[1]=D.invert(this.touch1[0])),this.that.__zoom=D,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(N){var D=Bt(this.that).datum();p.call(N,this.that,new dT(N,{sourceEvent:this.sourceEvent,target:z,transform:this.that.__zoom,dispatch:p}),D)}};function X(N,...D){if(!t.apply(this,arguments))return;var T=A(this,D).event(N),L=this.__zoom,G=Math.max(c[0],Math.min(c[1],L.k*Math.pow(2,o.apply(this,arguments)))),Z=nn(N);if(T.wheel)(T.mouse[0][0]!==Z[0]||T.mouse[0][1]!==Z[1])&&(T.mouse[1]=L.invert(T.mouse[0]=Z)),clearTimeout(T.wheel);else{if(L.k===G)return;T.mouse=[Z,L.invert(Z)],qr(this),T.start()}bo(N),T.wheel=setTimeout(ae,S),T.zoom("mouse",l(C(O(L,G),T.mouse[0],T.mouse[1]),T.extent,d));function ae(){T.wheel=null,T.end()}}function K(N,...D){if(x||!t.apply(this,arguments))return;var T=N.currentTarget,L=A(this,D,!0).event(N),G=Bt(N.view).on("mousemove.zoom",U,!0).on("mouseup.zoom",Y,!0),Z=nn(N,T),ae=N.clientX,j=N.clientY;Ev(N.view),Jd(N),L.mouse=[Z,this.__zoom.invert(Z)],qr(this),L.start();function U(W){if(bo(W),!L.moved){var fe=W.clientX-ae,$=W.clientY-j;L.moved=fe*fe+$*$>M}L.event(W).zoom("mouse",l(C(L.that.__zoom,L.mouse[0]=nn(W,T),L.mouse[1]),L.extent,d))}function Y(W){G.on("mousemove.zoom mouseup.zoom",null),Cv(W.view,L.moved),bo(W),L.event(W).end()}}function de(N,...D){if(t.apply(this,arguments)){var T=this.__zoom,L=nn(N.changedTouches?N.changedTouches[0]:N,this),G=T.invert(L),Z=T.k*(N.shiftKey?.5:2),ae=l(C(O(T,Z),L,G),a.apply(this,D),d);bo(N),m>0?Bt(this).transition().duration(m).call(k,ae,L,N):Bt(this).call(z.transform,ae,L,N)}}function F(N,...D){if(t.apply(this,arguments)){var T=N.touches,L=T.length,G=A(this,D,N.changedTouches.length===L).event(N),Z,ae,j,U;for(Jd(N),ae=0;ae<L;++ae)j=T[ae],U=nn(j,this),U=[U,this.__zoom.invert(U),j.identifier],G.touch0?!G.touch1&&G.touch0[2]!==U[2]&&(G.touch1=U,G.taps=0):(G.touch0=U,Z=!0,G.taps=1+!!g);g&&(g=clearTimeout(g)),Z&&(G.taps<2&&(v=U[0],g=setTimeout(function(){g=null},w)),qr(this),G.start())}}function te(N,...D){if(this.__zooming){var T=A(this,D).event(N),L=N.changedTouches,G=L.length,Z,ae,j,U;for(bo(N),Z=0;Z<G;++Z)ae=L[Z],j=nn(ae,this),T.touch0&&T.touch0[2]===ae.identifier?T.touch0[0]=j:T.touch1&&T.touch1[2]===ae.identifier&&(T.touch1[0]=j);if(ae=T.that.__zoom,T.touch1){var Y=T.touch0[0],W=T.touch0[1],fe=T.touch1[0],$=T.touch1[1],le=(le=fe[0]-Y[0])*le+(le=fe[1]-Y[1])*le,se=(se=$[0]-W[0])*se+(se=$[1]-W[1])*se;ae=O(ae,Math.sqrt(le/se)),j=[(Y[0]+fe[0])/2,(Y[1]+fe[1])/2],U=[(W[0]+$[0])/2,(W[1]+$[1])/2]}else if(T.touch0)j=T.touch0[0],U=T.touch0[1];else return;T.zoom("touch",l(C(ae,j,U),T.extent,d))}}function ce(N,...D){if(this.__zooming){var T=A(this,D).event(N),L=N.changedTouches,G=L.length,Z,ae;for(Jd(N),x&&clearTimeout(x),x=setTimeout(function(){x=null},w),Z=0;Z<G;++Z)ae=L[Z],T.touch0&&T.touch0[2]===ae.identifier?delete T.touch0:T.touch1&&T.touch1[2]===ae.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&&(ae=nn(ae,this),Math.hypot(v[0]-ae[0],v[1]-ae[1])<R)){var j=Bt(this).on("dblclick.zoom");j&&j.apply(this,arguments)}}}return z.wheelDelta=function(N){return arguments.length?(o=typeof N=="function"?N:Tr(+N),z):o},z.filter=function(N){return arguments.length?(t=typeof N=="function"?N:Tr(!!N),z):t},z.touchable=function(N){return arguments.length?(r=typeof N=="function"?N:Tr(!!N),z):r},z.extent=function(N){return arguments.length?(a=typeof N=="function"?N:Tr([[+N[0][0],+N[0][1]],[+N[1][0],+N[1][1]]]),z):a},z.scaleExtent=function(N){return arguments.length?(c[0]=+N[0],c[1]=+N[1],z):[c[0],c[1]]},z.translateExtent=function(N){return arguments.length?(d[0][0]=+N[0][0],d[1][0]=+N[1][0],d[0][1]=+N[0][1],d[1][1]=+N[1][1],z):[[d[0][0],d[0][1]],[d[1][0],d[1][1]]]},z.constrain=function(N){return arguments.length?(l=N,z):l},z.duration=function(N){return arguments.length?(m=+N,z):m},z.interpolate=function(N){return arguments.length?(y=N,z):y},z.on=function(){var N=p.on.apply(p,arguments);return N===p?z:N},z.clickDistance=function(N){return arguments.length?(M=(N=+N)*N,z):Math.sqrt(M)},z.tapDistance=function(N){return arguments.length?(R=+N,z):R},z}const yn={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:t=>`Node type "${t}" 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:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,{id:a,sourceHandle:l,targetHandle:o})=>`Couldn't create edge for ${t} handle id: "${t==="source"?l:o}", edge id: ${a}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(t="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${t}/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."},Ho=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],Yv=["Enter"," ","Escape"],Vv={"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:t,x:a,y:l})=>`Moved selected node ${t}. New position, x: ${a}, y: ${l}`,"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 ui;(function(t){t.Strict="strict",t.Loose="loose"})(ui||(ui={}));var oi;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(oi||(oi={}));var Io;(function(t){t.Partial="partial",t.Full="full"})(Io||(Io={}));const $v={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Ea;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Ea||(Ea={}));var Wr;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(Wr||(Wr={}));var ge;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(ge||(ge={}));const By={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top};function Xv(t){return t===null?null:t?"valid":"invalid"}const Pv=t=>"id"in t&&"source"in t&&"target"in t,yT=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),Gf=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),Vo=(t,a=[0,0])=>{const{width:l,height:o}=$n(t),r=t.origin??a,c=l*r[0],d=o*r[1];return{x:t.position.x-c,y:t.position.y-d}},vT=(t,a={nodeOrigin:[0,0]})=>{if(t.length===0)return{x:0,y:0,width:0,height:0};const l=t.reduce((o,r)=>{const c=typeof r=="string";let d=!a.nodeLookup&&!c?r:void 0;a.nodeLookup&&(d=c?a.nodeLookup.get(r):Gf(r)?r:a.nodeLookup.get(r.id));const m=d?ec(d,a.nodeOrigin):{x:0,y:0,x2:0,y2:0};return cc(o,m)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return uc(l)},$o=(t,a={})=>{let l={x:1/0,y:1/0,x2:-1/0,y2:-1/0},o=!1;return t.forEach(r=>{(a.filter===void 0||a.filter(r))&&(l=cc(l,ec(r)),o=!0)}),o?uc(l):{x:0,y:0,width:0,height:0}},qf=(t,a,[l,o,r]=[0,0,1],c=!1,d=!1)=>{const m={...Po(a,[l,o,r]),width:a.width/r,height:a.height/r},y=[];for(const p of t.values()){const{measured:g,selectable:v=!0,hidden:x=!1}=p;if(d&&!v||x)continue;const w=g.width??p.width??p.initialWidth??null,S=g.height??p.height??p.initialHeight??null,M=ko(m,yl(p)),R=(w??0)*(S??0),z=c&&M>0;(!p.internals.handleBounds||z||M>=R||p.dragging)&&y.push(p)}return y},xT=(t,a)=>{const l=new Set;return t.forEach(o=>{l.add(o.id)}),a.filter(o=>l.has(o.source)||l.has(o.target))};function bT(t,a){const l=new Map,o=a?.nodes?new Set(a.nodes.map(r=>r.id)):null;return t.forEach(r=>{r.measured.width&&r.measured.height&&(a?.includeHiddenNodes||!r.hidden)&&(!o||o.has(r.id))&&l.set(r.id,r)}),l}async function ST({nodes:t,width:a,height:l,panZoom:o,minZoom:r,maxZoom:c},d){if(t.size===0)return Promise.resolve(!0);const m=bT(t,d),y=$o(m),p=Yf(y,a,l,d?.minZoom??r,d?.maxZoom??c,d?.padding??.1);return await o.setViewport(p,{duration:d?.duration,ease:d?.ease,interpolate:d?.interpolate}),Promise.resolve(!0)}function Fv({nodeId:t,nextPosition:a,nodeLookup:l,nodeOrigin:o=[0,0],nodeExtent:r,onError:c}){const d=l.get(t),m=d.parentId?l.get(d.parentId):void 0,{x:y,y:p}=m?m.internals.positionAbsolute:{x:0,y:0},g=d.origin??o;let v=d.extent||r;if(d.extent==="parent"&&!d.expandParent)if(!m)c?.("005",yn.error005());else{const w=m.measured.width,S=m.measured.height;w&&S&&(v=[[y,p],[y+w,p+S]])}else m&&vl(d.extent)&&(v=[[d.extent[0][0]+y,d.extent[0][1]+p],[d.extent[1][0]+y,d.extent[1][1]+p]]);const x=vl(v)?di(a,v,d.measured):a;return(d.measured.width===void 0||d.measured.height===void 0)&&c?.("015",yn.error015()),{position:{x:x.x-y+(d.measured.width??0)*g[0],y:x.y-p+(d.measured.height??0)*g[1]},positionAbsolute:x}}async function wT({nodesToRemove:t=[],edgesToRemove:a=[],nodes:l,edges:o,onBeforeDelete:r}){const c=new Set(t.map(x=>x.id)),d=[];for(const x of l){if(x.deletable===!1)continue;const w=c.has(x.id),S=!w&&x.parentId&&d.find(M=>M.id===x.parentId);(w||S)&&d.push(x)}const m=new Set(a.map(x=>x.id)),y=o.filter(x=>x.deletable!==!1),g=xT(d,y);for(const x of y)m.has(x.id)&&!g.find(S=>S.id===x.id)&&g.push(x);if(!r)return{edges:g,nodes:d};const v=await r({nodes:d,edges:g});return typeof v=="boolean"?v?{edges:g,nodes:d}:{edges:[],nodes:[]}:v}const gl=(t,a=0,l=1)=>Math.min(Math.max(t,a),l),di=(t={x:0,y:0},a,l)=>({x:gl(t.x,a[0][0],a[1][0]-(l?.width??0)),y:gl(t.y,a[0][1],a[1][1]-(l?.height??0))});function Zv(t,a,l){const{width:o,height:r}=$n(l),{x:c,y:d}=l.internals.positionAbsolute;return di(t,[[c,d],[c+o,d+r]],a)}const Uy=(t,a,l)=>t<a?gl(Math.abs(t-a),1,a)/a:t>l?-gl(Math.abs(t-l),1,a)/a:0,Kv=(t,a,l=15,o=40)=>{const r=Uy(t.x,o,a.width-o)*l,c=Uy(t.y,o,a.height-o)*l;return[r,c]},cc=(t,a)=>({x:Math.min(t.x,a.x),y:Math.min(t.y,a.y),x2:Math.max(t.x2,a.x2),y2:Math.max(t.y2,a.y2)}),Sf=({x:t,y:a,width:l,height:o})=>({x:t,y:a,x2:t+l,y2:a+o}),uc=({x:t,y:a,x2:l,y2:o})=>({x:t,y:a,width:l-t,height:o-a}),yl=(t,a=[0,0])=>{const{x:l,y:o}=Gf(t)?t.internals.positionAbsolute:Vo(t,a);return{x:l,y:o,width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}},ec=(t,a=[0,0])=>{const{x:l,y:o}=Gf(t)?t.internals.positionAbsolute:Vo(t,a);return{x:l,y:o,x2:l+(t.measured?.width??t.width??t.initialWidth??0),y2:o+(t.measured?.height??t.height??t.initialHeight??0)}},Qv=(t,a)=>uc(cc(Sf(t),Sf(a))),ko=(t,a)=>{const l=Math.max(0,Math.min(t.x+t.width,a.x+a.width)-Math.max(t.x,a.x)),o=Math.max(0,Math.min(t.y+t.height,a.y+a.height)-Math.max(t.y,a.y));return Math.ceil(l*o)},Gy=t=>ln(t.width)&&ln(t.height)&&ln(t.x)&&ln(t.y),ln=t=>!isNaN(t)&&isFinite(t),NT=(t,a)=>{},Xo=(t,a=[1,1])=>({x:a[0]*Math.round(t.x/a[0]),y:a[1]*Math.round(t.y/a[1])}),Po=({x:t,y:a},[l,o,r],c=!1,d=[1,1])=>{const m={x:(t-l)/r,y:(a-o)/r};return c?Xo(m,d):m},tc=({x:t,y:a},[l,o,r])=>({x:t*r+l,y:a*r+o});function ll(t,a){if(typeof t=="number")return Math.floor((a-a/(1+t))*.5);if(typeof t=="string"&&t.endsWith("px")){const l=parseFloat(t);if(!Number.isNaN(l))return Math.floor(l)}if(typeof t=="string"&&t.endsWith("%")){const l=parseFloat(t);if(!Number.isNaN(l))return Math.floor(a*l*.01)}return console.error(`[React Flow] The padding value "${t}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function _T(t,a,l){if(typeof t=="string"||typeof t=="number"){const o=ll(t,l),r=ll(t,a);return{top:o,right:r,bottom:o,left:r,x:r*2,y:o*2}}if(typeof t=="object"){const o=ll(t.top??t.y??0,l),r=ll(t.bottom??t.y??0,l),c=ll(t.left??t.x??0,a),d=ll(t.right??t.x??0,a);return{top:o,right:d,bottom:r,left:c,x:c+d,y:o+r}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function ET(t,a,l,o,r,c){const{x:d,y:m}=tc(t,[a,l,o]),{x:y,y:p}=tc({x:t.x+t.width,y:t.y+t.height},[a,l,o]),g=r-y,v=c-p;return{left:Math.floor(d),top:Math.floor(m),right:Math.floor(g),bottom:Math.floor(v)}}const Yf=(t,a,l,o,r,c)=>{const d=_T(c,a,l),m=(a-d.x)/t.width,y=(l-d.y)/t.height,p=Math.min(m,y),g=gl(p,o,r),v=t.x+t.width/2,x=t.y+t.height/2,w=a/2-v*g,S=l/2-x*g,M=ET(t,w,S,g,a,l),R={left:Math.min(M.left-d.left,0),top:Math.min(M.top-d.top,0),right:Math.min(M.right-d.right,0),bottom:Math.min(M.bottom-d.bottom,0)};return{x:w-R.left+R.right,y:S-R.top+R.bottom,zoom:g}},Bo=()=>typeof navigator<"u"&&navigator?.userAgent?.indexOf("Mac")>=0;function vl(t){return t!=null&&t!=="parent"}function $n(t){return{width:t.measured?.width??t.width??t.initialWidth??0,height:t.measured?.height??t.height??t.initialHeight??0}}function Jv(t){return(t.measured?.width??t.width??t.initialWidth)!==void 0&&(t.measured?.height??t.height??t.initialHeight)!==void 0}function Wv(t,a={width:0,height:0},l,o,r){const c={...t},d=o.get(l);if(d){const m=d.origin||r;c.x+=d.internals.positionAbsolute.x-(a.width??0)*m[0],c.y+=d.internals.positionAbsolute.y-(a.height??0)*m[1]}return c}function qy(t,a){if(t.size!==a.size)return!1;for(const l of t)if(!a.has(l))return!1;return!0}function CT(){let t,a;return{promise:new Promise((o,r)=>{t=o,a=r}),resolve:t,reject:a}}function TT(t){return{...Vv,...t||{}}}function zo(t,{snapGrid:a=[0,0],snapToGrid:l=!1,transform:o,containerBounds:r}){const{x:c,y:d}=on(t),m=Po({x:c-(r?.left??0),y:d-(r?.top??0)},o),{x:y,y:p}=l?Xo(m,a):m;return{xSnapped:y,ySnapped:p,...m}}const Vf=t=>({width:t.offsetWidth,height:t.offsetHeight}),ex=t=>t?.getRootNode?.()||window?.document,AT=["INPUT","SELECT","TEXTAREA"];function tx(t){const a=t.composedPath?.()?.[0]||t.target;return a?.nodeType!==1?!1:AT.includes(a.nodeName)||a.hasAttribute("contenteditable")||!!a.closest(".nokey")}const nx=t=>"clientX"in t,on=(t,a)=>{const l=nx(t),o=l?t.clientX:t.touches?.[0].clientX,r=l?t.clientY:t.touches?.[0].clientY;return{x:o-(a?.left??0),y:r-(a?.top??0)}},Yy=(t,a,l,o,r)=>{const c=a.querySelectorAll(`.${t}`);return!c||!c.length?null:Array.from(c).map(d=>{const m=d.getBoundingClientRect();return{id:d.getAttribute("data-handleid"),type:t,nodeId:r,position:d.getAttribute("data-handlepos"),x:(m.left-l.left)/o,y:(m.top-l.top)/o,...Vf(d)}})};function ax({sourceX:t,sourceY:a,targetX:l,targetY:o,sourceControlX:r,sourceControlY:c,targetControlX:d,targetControlY:m}){const y=t*.125+r*.375+d*.375+l*.125,p=a*.125+c*.375+m*.375+o*.125,g=Math.abs(y-t),v=Math.abs(p-a);return[y,p,g,v]}function Ar(t,a){return t>=0?.5*t:a*25*Math.sqrt(-t)}function Vy({pos:t,x1:a,y1:l,x2:o,y2:r,c}){switch(t){case ge.Left:return[a-Ar(a-o,c),l];case ge.Right:return[a+Ar(o-a,c),l];case ge.Top:return[a,l-Ar(l-r,c)];case ge.Bottom:return[a,l+Ar(r-l,c)]}}function ix({sourceX:t,sourceY:a,sourcePosition:l=ge.Bottom,targetX:o,targetY:r,targetPosition:c=ge.Top,curvature:d=.25}){const[m,y]=Vy({pos:l,x1:t,y1:a,x2:o,y2:r,c:d}),[p,g]=Vy({pos:c,x1:o,y1:r,x2:t,y2:a,c:d}),[v,x,w,S]=ax({sourceX:t,sourceY:a,targetX:o,targetY:r,sourceControlX:m,sourceControlY:y,targetControlX:p,targetControlY:g});return[`M${t},${a} C${m},${y} ${p},${g} ${o},${r}`,v,x,w,S]}function lx({sourceX:t,sourceY:a,targetX:l,targetY:o}){const r=Math.abs(l-t)/2,c=l<t?l+r:l-r,d=Math.abs(o-a)/2,m=o<a?o+d:o-d;return[c,m,r,d]}function MT({sourceNode:t,targetNode:a,selected:l=!1,zIndex:o=0,elevateOnSelect:r=!1,zIndexMode:c="basic"}){if(c==="manual")return o;const d=r&&l?o+1e3:o,m=Math.max(t.parentId||r&&t.selected?t.internals.z:0,a.parentId||r&&a.selected?a.internals.z:0);return d+m}function jT({sourceNode:t,targetNode:a,width:l,height:o,transform:r}){const c=cc(ec(t),ec(a));c.x===c.x2&&(c.x2+=1),c.y===c.y2&&(c.y2+=1);const d={x:-r[0]/r[2],y:-r[1]/r[2],width:l/r[2],height:o/r[2]};return ko(d,uc(c))>0}const zT=({source:t,sourceHandle:a,target:l,targetHandle:o})=>`xy-edge__${t}${a||""}-${l}${o||""}`,RT=(t,a)=>a.some(l=>l.source===t.source&&l.target===t.target&&(l.sourceHandle===t.sourceHandle||!l.sourceHandle&&!t.sourceHandle)&&(l.targetHandle===t.targetHandle||!l.targetHandle&&!t.targetHandle)),DT=(t,a,l={})=>{if(!t.source||!t.target)return a;const o=l.getEdgeId||zT;let r;return Pv(t)?r={...t}:r={...t,id:o(t)},RT(r,a)?a:(r.sourceHandle===null&&delete r.sourceHandle,r.targetHandle===null&&delete r.targetHandle,a.concat(r))};function ox({sourceX:t,sourceY:a,targetX:l,targetY:o}){const[r,c,d,m]=lx({sourceX:t,sourceY:a,targetX:l,targetY:o});return[`M ${t},${a}L ${l},${o}`,r,c,d,m]}const $y={[ge.Left]:{x:-1,y:0},[ge.Right]:{x:1,y:0},[ge.Top]:{x:0,y:-1},[ge.Bottom]:{x:0,y:1}},OT=({source:t,sourcePosition:a=ge.Bottom,target:l})=>a===ge.Left||a===ge.Right?t.x<l.x?{x:1,y:0}:{x:-1,y:0}:t.y<l.y?{x:0,y:1}:{x:0,y:-1},Xy=(t,a)=>Math.sqrt(Math.pow(a.x-t.x,2)+Math.pow(a.y-t.y,2));function LT({source:t,sourcePosition:a=ge.Bottom,target:l,targetPosition:o=ge.Top,center:r,offset:c,stepPosition:d}){const m=$y[a],y=$y[o],p={x:t.x+m.x*c,y:t.y+m.y*c},g={x:l.x+y.x*c,y:l.y+y.y*c},v=OT({source:p,sourcePosition:a,target:g}),x=v.x!==0?"x":"y",w=v[x];let S=[],M,R;const z={x:0,y:0},O={x:0,y:0},[,,C,_]=lx({sourceX:t.x,sourceY:t.y,targetX:l.x,targetY:l.y});if(m[x]*y[x]===-1){x==="x"?(M=r.x??p.x+(g.x-p.x)*d,R=r.y??(p.y+g.y)/2):(M=r.x??(p.x+g.x)/2,R=r.y??p.y+(g.y-p.y)*d);const X=[{x:M,y:p.y},{x:M,y:g.y}],K=[{x:p.x,y:R},{x:g.x,y:R}];m[x]===w?S=x==="x"?X:K:S=x==="x"?K:X}else{const X=[{x:p.x,y:g.y}],K=[{x:g.x,y:p.y}];if(x==="x"?S=m.x===w?K:X:S=m.y===w?X:K,a===o){const N=Math.abs(t[x]-l[x]);if(N<=c){const D=Math.min(c-1,c-N);m[x]===w?z[x]=(p[x]>t[x]?-1:1)*D:O[x]=(g[x]>l[x]?-1:1)*D}}if(a!==o){const N=x==="x"?"y":"x",D=m[x]===y[N],T=p[N]>g[N],L=p[N]<g[N];(m[x]===1&&(!D&&T||D&&L)||m[x]!==1&&(!D&&L||D&&T))&&(S=x==="x"?X:K)}const de={x:p.x+z.x,y:p.y+z.y},F={x:g.x+O.x,y:g.y+O.y},te=Math.max(Math.abs(de.x-S[0].x),Math.abs(F.x-S[0].x)),ce=Math.max(Math.abs(de.y-S[0].y),Math.abs(F.y-S[0].y));te>=ce?(M=(de.x+F.x)/2,R=S[0].y):(M=S[0].x,R=(de.y+F.y)/2)}const k={x:p.x+z.x,y:p.y+z.y},A={x:g.x+O.x,y:g.y+O.y};return[[t,...k.x!==S[0].x||k.y!==S[0].y?[k]:[],...S,...A.x!==S[S.length-1].x||A.y!==S[S.length-1].y?[A]:[],l],M,R,C,_]}function HT(t,a,l,o){const r=Math.min(Xy(t,a)/2,Xy(a,l)/2,o),{x:c,y:d}=a;if(t.x===c&&c===l.x||t.y===d&&d===l.y)return`L${c} ${d}`;if(t.y===d){const p=t.x<l.x?-1:1,g=t.y<l.y?1:-1;return`L ${c+r*p},${d}Q ${c},${d} ${c},${d+r*g}`}const m=t.x<l.x?1:-1,y=t.y<l.y?-1:1;return`L ${c},${d+r*y}Q ${c},${d} ${c+r*m},${d}`}function wf({sourceX:t,sourceY:a,sourcePosition:l=ge.Bottom,targetX:o,targetY:r,targetPosition:c=ge.Top,borderRadius:d=5,centerX:m,centerY:y,offset:p=20,stepPosition:g=.5}){const[v,x,w,S,M]=LT({source:{x:t,y:a},sourcePosition:l,target:{x:o,y:r},targetPosition:c,center:{x:m,y},offset:p,stepPosition:g});let R=`M${v[0].x} ${v[0].y}`;for(let z=1;z<v.length-1;z++)R+=HT(v[z-1],v[z],v[z+1],d);return R+=`L${v[v.length-1].x} ${v[v.length-1].y}`,[R,x,w,S,M]}function Py(t){return t&&!!(t.internals.handleBounds||t.handles?.length)&&!!(t.measured.width||t.width||t.initialWidth)}function IT(t){const{sourceNode:a,targetNode:l}=t;if(!Py(a)||!Py(l))return null;const o=a.internals.handleBounds||Fy(a.handles),r=l.internals.handleBounds||Fy(l.handles),c=Zy(o?.source??[],t.sourceHandle),d=Zy(t.connectionMode===ui.Strict?r?.target??[]:(r?.target??[]).concat(r?.source??[]),t.targetHandle);if(!c||!d)return t.onError?.("008",yn.error008(c?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;const m=c?.position||ge.Bottom,y=d?.position||ge.Top,p=fi(a,c,m),g=fi(l,d,y);return{sourceX:p.x,sourceY:p.y,targetX:g.x,targetY:g.y,sourcePosition:m,targetPosition:y}}function Fy(t){if(!t)return null;const a=[],l=[];for(const o of t)o.width=o.width??1,o.height=o.height??1,o.type==="source"?a.push(o):o.type==="target"&&l.push(o);return{source:a,target:l}}function fi(t,a,l=ge.Left,o=!1){const r=(a?.x??0)+t.internals.positionAbsolute.x,c=(a?.y??0)+t.internals.positionAbsolute.y,{width:d,height:m}=a??$n(t);if(o)return{x:r+d/2,y:c+m/2};switch(a?.position??l){case ge.Top:return{x:r+d/2,y:c};case ge.Right:return{x:r+d,y:c+m/2};case ge.Bottom:return{x:r+d/2,y:c+m};case ge.Left:return{x:r,y:c+m/2}}}function Zy(t,a){return t&&(a?t.find(l=>l.id===a):t[0])||null}function Nf(t,a){return t?typeof t=="string"?t:`${a?`${a}__`:""}${Object.keys(t).sort().map(o=>`${o}=${t[o]}`).join("&")}`:""}function kT(t,{id:a,defaultColor:l,defaultMarkerStart:o,defaultMarkerEnd:r}){const c=new Set;return t.reduce((d,m)=>([m.markerStart||o,m.markerEnd||r].forEach(y=>{if(y&&typeof y=="object"){const p=Nf(y,a);c.has(p)||(d.push({id:p,color:y.color||l,...y}),c.add(p))}}),d),[]).sort((d,m)=>d.id.localeCompare(m.id))}const sx=1e3,BT=10,$f={nodeOrigin:[0,0],nodeExtent:Ho,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},UT={...$f,checkEquality:!0};function Xf(t,a){const l={...t};for(const o in a)a[o]!==void 0&&(l[o]=a[o]);return l}function GT(t,a,l){const o=Xf($f,l);for(const r of t.values())if(r.parentId)Ff(r,t,a,o);else{const c=Vo(r,o.nodeOrigin),d=vl(r.extent)?r.extent:o.nodeExtent,m=di(c,d,$n(r));r.internals.positionAbsolute=m}}function qT(t,a){if(!t.handles)return t.measured?a?.internals.handleBounds:void 0;const l=[],o=[];for(const r of t.handles){const c={id:r.id,width:r.width??1,height:r.height??1,nodeId:t.id,x:r.x,y:r.y,position:r.position,type:r.type};r.type==="source"?l.push(c):r.type==="target"&&o.push(c)}return{source:l,target:o}}function Pf(t){return t==="manual"}function _f(t,a,l,o={}){const r=Xf(UT,o),c={i:0},d=new Map(a),m=r?.elevateNodesOnSelect&&!Pf(r.zIndexMode)?sx:0;let y=t.length>0,p=!1;a.clear(),l.clear();for(const g of t){let v=d.get(g.id);if(r.checkEquality&&g===v?.internals.userNode)a.set(g.id,v);else{const x=Vo(g,r.nodeOrigin),w=vl(g.extent)?g.extent:r.nodeExtent,S=di(x,w,$n(g));v={...r.defaults,...g,measured:{width:g.measured?.width,height:g.measured?.height},internals:{positionAbsolute:S,handleBounds:qT(g,v),z:rx(g,m,r.zIndexMode),userNode:g}},a.set(g.id,v)}(v.measured===void 0||v.measured.width===void 0||v.measured.height===void 0)&&!v.hidden&&(y=!1),g.parentId&&Ff(v,a,l,o,c),p||=g.selected??!1}return{nodesInitialized:y,hasSelectedNodes:p}}function YT(t,a){if(!t.parentId)return;const l=a.get(t.parentId);l?l.set(t.id,t):a.set(t.parentId,new Map([[t.id,t]]))}function Ff(t,a,l,o,r){const{elevateNodesOnSelect:c,nodeOrigin:d,nodeExtent:m,zIndexMode:y}=Xf($f,o),p=t.parentId,g=a.get(p);if(!g){console.warn(`Parent node ${p} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}YT(t,l),r&&!g.parentId&&g.internals.rootParentIndex===void 0&&y==="auto"&&(g.internals.rootParentIndex=++r.i,g.internals.z=g.internals.z+r.i*BT),r&&g.internals.rootParentIndex!==void 0&&(r.i=g.internals.rootParentIndex);const v=c&&!Pf(y)?sx:0,{x,y:w,z:S}=VT(t,g,d,m,v,y),{positionAbsolute:M}=t.internals,R=x!==M.x||w!==M.y;(R||S!==t.internals.z)&&a.set(t.id,{...t,internals:{...t.internals,positionAbsolute:R?{x,y:w}:M,z:S}})}function rx(t,a,l){const o=ln(t.zIndex)?t.zIndex:0;return Pf(l)?o:o+(t.selected?a:0)}function VT(t,a,l,o,r,c){const{x:d,y:m}=a.internals.positionAbsolute,y=$n(t),p=Vo(t,l),g=vl(t.extent)?di(p,t.extent,y):p;let v=di({x:d+g.x,y:m+g.y},o,y);t.extent==="parent"&&(v=Zv(v,y,a));const x=rx(t,r,c),w=a.internals.z??0;return{x:v.x,y:v.y,z:w>=x?w+1:x}}function Zf(t,a,l,o=[0,0]){const r=[],c=new Map;for(const d of t){const m=a.get(d.parentId);if(!m)continue;const y=c.get(d.parentId)?.expandedRect??yl(m),p=Qv(y,d.rect);c.set(d.parentId,{expandedRect:p,parent:m})}return c.size>0&&c.forEach(({expandedRect:d,parent:m},y)=>{const p=m.internals.positionAbsolute,g=$n(m),v=m.origin??o,x=d.x<p.x?Math.round(Math.abs(p.x-d.x)):0,w=d.y<p.y?Math.round(Math.abs(p.y-d.y)):0,S=Math.max(g.width,Math.round(d.width)),M=Math.max(g.height,Math.round(d.height)),R=(S-g.width)*v[0],z=(M-g.height)*v[1];(x>0||w>0||R||z)&&(r.push({id:y,type:"position",position:{x:m.position.x-x+R,y:m.position.y-w+z}}),l.get(y)?.forEach(O=>{t.some(C=>C.id===O.id)||r.push({id:O.id,type:"position",position:{x:O.position.x+x,y:O.position.y+w}})})),(g.width<d.width||g.height<d.height||x||w)&&r.push({id:y,type:"dimensions",setAttributes:!0,dimensions:{width:S+(x?v[0]*x-R:0),height:M+(w?v[1]*w-z:0)}})}),r}function $T(t,a,l,o,r,c,d){const m=o?.querySelector(".xyflow__viewport");let y=!1;if(!m)return{changes:[],updatedInternals:y};const p=[],g=window.getComputedStyle(m),{m22:v}=new window.DOMMatrixReadOnly(g.transform),x=[];for(const w of t.values()){const S=a.get(w.id);if(!S)continue;if(S.hidden){a.set(S.id,{...S,internals:{...S.internals,handleBounds:void 0}}),y=!0;continue}const M=Vf(w.nodeElement),R=S.measured.width!==M.width||S.measured.height!==M.height;if(!!(M.width&&M.height&&(R||!S.internals.handleBounds||w.force))){const O=w.nodeElement.getBoundingClientRect(),C=vl(S.extent)?S.extent:c;let{positionAbsolute:_}=S.internals;S.parentId&&S.extent==="parent"?_=Zv(_,M,a.get(S.parentId)):C&&(_=di(_,C,M));const k={...S,measured:M,internals:{...S.internals,positionAbsolute:_,handleBounds:{source:Yy("source",w.nodeElement,O,v,S.id),target:Yy("target",w.nodeElement,O,v,S.id)}}};a.set(S.id,k),S.parentId&&Ff(k,a,l,{nodeOrigin:r,zIndexMode:d}),y=!0,R&&(p.push({id:S.id,type:"dimensions",dimensions:M}),S.expandParent&&S.parentId&&x.push({id:S.id,parentId:S.parentId,rect:yl(k,r)}))}}if(x.length>0){const w=Zf(x,a,l,r);p.push(...w)}return{changes:p,updatedInternals:y}}async function XT({delta:t,panZoom:a,transform:l,translateExtent:o,width:r,height:c}){if(!a||!t.x&&!t.y)return Promise.resolve(!1);const d=await a.setViewportConstrained({x:l[0]+t.x,y:l[1]+t.y,zoom:l[2]},[[0,0],[r,c]],o),m=!!d&&(d.x!==l[0]||d.y!==l[1]||d.k!==l[2]);return Promise.resolve(m)}function Ky(t,a,l,o,r,c){let d=r;const m=o.get(d)||new Map;o.set(d,m.set(l,a)),d=`${r}-${t}`;const y=o.get(d)||new Map;if(o.set(d,y.set(l,a)),c){d=`${r}-${t}-${c}`;const p=o.get(d)||new Map;o.set(d,p.set(l,a))}}function cx(t,a,l){t.clear(),a.clear();for(const o of l){const{source:r,target:c,sourceHandle:d=null,targetHandle:m=null}=o,y={edgeId:o.id,source:r,target:c,sourceHandle:d,targetHandle:m},p=`${r}-${d}--${c}-${m}`,g=`${c}-${m}--${r}-${d}`;Ky("source",y,g,t,r,d),Ky("target",y,p,t,c,m),a.set(o.id,o)}}function ux(t,a){if(!t.parentId)return!1;const l=a.get(t.parentId);return l?l.selected?!0:ux(l,a):!1}function Qy(t,a,l){let o=t;do{if(o?.matches?.(a))return!0;if(o===l)return!1;o=o?.parentElement}while(o);return!1}function PT(t,a,l,o){const r=new Map;for(const[c,d]of t)if((d.selected||d.id===o)&&(!d.parentId||!ux(d,t))&&(d.draggable||a&&typeof d.draggable>"u")){const m=t.get(c);m&&r.set(c,{id:c,position:m.position||{x:0,y:0},distance:{x:l.x-m.internals.positionAbsolute.x,y:l.y-m.internals.positionAbsolute.y},extent:m.extent,parentId:m.parentId,origin:m.origin,expandParent:m.expandParent,internals:{positionAbsolute:m.internals.positionAbsolute||{x:0,y:0}},measured:{width:m.measured.width??0,height:m.measured.height??0}})}return r}function Wd({nodeId:t,dragItems:a,nodeLookup:l,dragging:o=!0}){const r=[];for(const[d,m]of a){const y=l.get(d)?.internals.userNode;y&&r.push({...y,position:m.position,dragging:o})}if(!t)return[r[0],r];const c=l.get(t)?.internals.userNode;return[c?{...c,position:a.get(t)?.position||c.position,dragging:o}:r[0],r]}function FT({dragItems:t,snapGrid:a,x:l,y:o}){const r=t.values().next().value;if(!r)return null;const c={x:l-r.distance.x,y:o-r.distance.y},d=Xo(c,a);return{x:d.x-c.x,y:d.y-c.y}}function ZT({onNodeMouseDown:t,getStoreItems:a,onDragStart:l,onDrag:o,onDragStop:r}){let c={x:null,y:null},d=0,m=new Map,y=!1,p={x:0,y:0},g=null,v=!1,x=null,w=!1,S=!1,M=null;function R({noDragClassName:O,handleSelector:C,domNode:_,isSelectable:k,nodeId:A,nodeClickDistance:B=0}){x=Bt(_);function X({x:te,y:ce}){const{nodeLookup:N,nodeExtent:D,snapGrid:T,snapToGrid:L,nodeOrigin:G,onNodeDrag:Z,onSelectionDrag:ae,onError:j,updateNodePositions:U}=a();c={x:te,y:ce};let Y=!1;const W=m.size>1,fe=W&&D?Sf($o(m)):null,$=W&&L?FT({dragItems:m,snapGrid:T,x:te,y:ce}):null;for(const[le,se]of m){if(!N.has(le))continue;let ue={x:te-se.distance.x,y:ce-se.distance.y};L&&(ue=$?{x:Math.round(ue.x+$.x),y:Math.round(ue.y+$.y)}:Xo(ue,T));let be=null;if(W&&D&&!se.extent&&fe){const{positionAbsolute:_e}=se.internals,je=_e.x-fe.x+D[0][0],Ge=_e.x+se.measured.width-fe.x2+D[1][0],ke=_e.y-fe.y+D[0][1],ut=_e.y+se.measured.height-fe.y2+D[1][1];be=[[je,ke],[Ge,ut]]}const{position:ve,positionAbsolute:xe}=Fv({nodeId:le,nextPosition:ue,nodeLookup:N,nodeExtent:be||D,nodeOrigin:G,onError:j});Y=Y||se.position.x!==ve.x||se.position.y!==ve.y,se.position=ve,se.internals.positionAbsolute=xe}if(S=S||Y,!!Y&&(U(m,!0),M&&(o||Z||!A&&ae))){const[le,se]=Wd({nodeId:A,dragItems:m,nodeLookup:N});o?.(M,m,le,se),Z?.(M,le,se),A||ae?.(M,se)}}async function K(){if(!g)return;const{transform:te,panBy:ce,autoPanSpeed:N,autoPanOnNodeDrag:D}=a();if(!D){y=!1,cancelAnimationFrame(d);return}const[T,L]=Kv(p,g,N);(T!==0||L!==0)&&(c.x=(c.x??0)-T/te[2],c.y=(c.y??0)-L/te[2],await ce({x:T,y:L})&&X(c)),d=requestAnimationFrame(K)}function de(te){const{nodeLookup:ce,multiSelectionActive:N,nodesDraggable:D,transform:T,snapGrid:L,snapToGrid:G,selectNodesOnDrag:Z,onNodeDragStart:ae,onSelectionDragStart:j,unselectNodesAndEdges:U}=a();v=!0,(!Z||!k)&&!N&&A&&(ce.get(A)?.selected||U()),k&&Z&&A&&t?.(A);const Y=zo(te.sourceEvent,{transform:T,snapGrid:L,snapToGrid:G,containerBounds:g});if(c=Y,m=PT(ce,D,Y,A),m.size>0&&(l||ae||!A&&j)){const[W,fe]=Wd({nodeId:A,dragItems:m,nodeLookup:ce});l?.(te.sourceEvent,m,W,fe),ae?.(te.sourceEvent,W,fe),A||j?.(te.sourceEvent,fe)}}const F=Tv().clickDistance(B).on("start",te=>{const{domNode:ce,nodeDragThreshold:N,transform:D,snapGrid:T,snapToGrid:L}=a();g=ce?.getBoundingClientRect()||null,w=!1,S=!1,M=te.sourceEvent,N===0&&de(te),c=zo(te.sourceEvent,{transform:D,snapGrid:T,snapToGrid:L,containerBounds:g}),p=on(te.sourceEvent,g)}).on("drag",te=>{const{autoPanOnNodeDrag:ce,transform:N,snapGrid:D,snapToGrid:T,nodeDragThreshold:L,nodeLookup:G}=a(),Z=zo(te.sourceEvent,{transform:N,snapGrid:D,snapToGrid:T,containerBounds:g});if(M=te.sourceEvent,(te.sourceEvent.type==="touchmove"&&te.sourceEvent.touches.length>1||A&&!G.has(A))&&(w=!0),!w){if(!y&&ce&&v&&(y=!0,K()),!v){const ae=on(te.sourceEvent,g),j=ae.x-p.x,U=ae.y-p.y;Math.sqrt(j*j+U*U)>L&&de(te)}(c.x!==Z.xSnapped||c.y!==Z.ySnapped)&&m&&v&&(p=on(te.sourceEvent,g),X(Z))}}).on("end",te=>{if(!(!v||w)&&(y=!1,v=!1,cancelAnimationFrame(d),m.size>0)){const{nodeLookup:ce,updateNodePositions:N,onNodeDragStop:D,onSelectionDragStop:T}=a();if(S&&(N(m,!1),S=!1),r||D||!A&&T){const[L,G]=Wd({nodeId:A,dragItems:m,nodeLookup:ce,dragging:!1});r?.(te.sourceEvent,m,L,G),D?.(te.sourceEvent,L,G),A||T?.(te.sourceEvent,G)}}}).filter(te=>{const ce=te.target;return!te.button&&(!O||!Qy(ce,`.${O}`,_))&&(!C||Qy(ce,C,_))});x.call(F)}function z(){x?.on(".drag",null)}return{update:R,destroy:z}}function KT(t,a,l){const o=[],r={x:t.x-l,y:t.y-l,width:l*2,height:l*2};for(const c of a.values())ko(r,yl(c))>0&&o.push(c);return o}const QT=250;function JT(t,a,l,o){let r=[],c=1/0;const d=KT(t,l,a+QT);for(const m of d){const y=[...m.internals.handleBounds?.source??[],...m.internals.handleBounds?.target??[]];for(const p of y){if(o.nodeId===p.nodeId&&o.type===p.type&&o.id===p.id)continue;const{x:g,y:v}=fi(m,p,p.position,!0),x=Math.sqrt(Math.pow(g-t.x,2)+Math.pow(v-t.y,2));x>a||(x<c?(r=[{...p,x:g,y:v}],c=x):x===c&&r.push({...p,x:g,y:v}))}}if(!r.length)return null;if(r.length>1){const m=o.type==="source"?"target":"source";return r.find(y=>y.type===m)??r[0]}return r[0]}function dx(t,a,l,o,r,c=!1){const d=o.get(t);if(!d)return null;const m=r==="strict"?d.internals.handleBounds?.[a]:[...d.internals.handleBounds?.source??[],...d.internals.handleBounds?.target??[]],y=(l?m?.find(p=>p.id===l):m?.[0])??null;return y&&c?{...y,...fi(d,y,y.position,!0)}:y}function fx(t,a){return t||(a?.classList.contains("target")?"target":a?.classList.contains("source")?"source":null)}function WT(t,a){let l=null;return a?l=!0:t&&!a&&(l=!1),l}const hx=()=>!0;function eA(t,{connectionMode:a,connectionRadius:l,handleId:o,nodeId:r,edgeUpdaterType:c,isTarget:d,domNode:m,nodeLookup:y,lib:p,autoPanOnConnect:g,flowId:v,panBy:x,cancelConnection:w,onConnectStart:S,onConnect:M,onConnectEnd:R,isValidConnection:z=hx,onReconnectEnd:O,updateConnection:C,getTransform:_,getFromHandle:k,autoPanSpeed:A,dragThreshold:B=1,handleDomNode:X}){const K=ex(t.target);let de=0,F;const{x:te,y:ce}=on(t),N=fx(c,X),D=m?.getBoundingClientRect();let T=!1;if(!D||!N)return;const L=dx(r,N,o,y,a);if(!L)return;let G=on(t,D),Z=!1,ae=null,j=!1,U=null;function Y(){if(!g||!D)return;const[ve,xe]=Kv(G,D,A);x({x:ve,y:xe}),de=requestAnimationFrame(Y)}const W={...L,nodeId:r,type:N,position:L.position},fe=y.get(r);let le={inProgress:!0,isValid:null,from:fi(fe,W,ge.Left,!0),fromHandle:W,fromPosition:W.position,fromNode:fe,to:G,toHandle:null,toPosition:By[W.position],toNode:null,pointer:G};function se(){T=!0,C(le),S?.(t,{nodeId:r,handleId:o,handleType:N})}B===0&&se();function ue(ve){if(!T){const{x:ut,y:Zt}=on(ve),zt=ut-te,Kt=Zt-ce;if(!(zt*zt+Kt*Kt>B*B))return;se()}if(!k()||!W){be(ve);return}const xe=_();G=on(ve,D),F=JT(Po(G,xe,!1,[1,1]),l,y,W),Z||(Y(),Z=!0);const _e=mx(ve,{handle:F,connectionMode:a,fromNodeId:r,fromHandleId:o,fromType:d?"target":"source",isValidConnection:z,doc:K,lib:p,flowId:v,nodeLookup:y});U=_e.handleDomNode,ae=_e.connection,j=WT(!!F,_e.isValid);const je=y.get(r),Ge=je?fi(je,W,ge.Left,!0):le.from,ke={...le,from:Ge,isValid:j,to:_e.toHandle&&j?tc({x:_e.toHandle.x,y:_e.toHandle.y},xe):G,toHandle:_e.toHandle,toPosition:j&&_e.toHandle?_e.toHandle.position:By[W.position],toNode:_e.toHandle?y.get(_e.toHandle.nodeId):null,pointer:G};C(ke),le=ke}function be(ve){if(!("touches"in ve&&ve.touches.length>0)){if(T){(F||U)&&ae&&j&&M?.(ae);const{inProgress:xe,..._e}=le,je={..._e,toPosition:le.toHandle?le.toPosition:null};R?.(ve,je),c&&O?.(ve,je)}w(),cancelAnimationFrame(de),Z=!1,j=!1,ae=null,U=null,K.removeEventListener("mousemove",ue),K.removeEventListener("mouseup",be),K.removeEventListener("touchmove",ue),K.removeEventListener("touchend",be)}}K.addEventListener("mousemove",ue),K.addEventListener("mouseup",be),K.addEventListener("touchmove",ue),K.addEventListener("touchend",be)}function mx(t,{handle:a,connectionMode:l,fromNodeId:o,fromHandleId:r,fromType:c,doc:d,lib:m,flowId:y,isValidConnection:p=hx,nodeLookup:g}){const v=c==="target",x=a?d.querySelector(`.${m}-flow__handle[data-id="${y}-${a?.nodeId}-${a?.id}-${a?.type}"]`):null,{x:w,y:S}=on(t),M=d.elementFromPoint(w,S),R=M?.classList.contains(`${m}-flow__handle`)?M:x,z={handleDomNode:R,isValid:!1,connection:null,toHandle:null};if(R){const O=fx(void 0,R),C=R.getAttribute("data-nodeid"),_=R.getAttribute("data-handleid"),k=R.classList.contains("connectable"),A=R.classList.contains("connectableend");if(!C||!O)return z;const B={source:v?C:o,sourceHandle:v?_:r,target:v?o:C,targetHandle:v?r:_};z.connection=B;const K=k&&A&&(l===ui.Strict?v&&O==="source"||!v&&O==="target":C!==o||_!==r);z.isValid=K&&p(B),z.toHandle=dx(C,O,_,g,l,!0)}return z}const Ef={onPointerDown:eA,isValid:mx};function tA({domNode:t,panZoom:a,getTransform:l,getViewScale:o}){const r=Bt(t);function c({translateExtent:m,width:y,height:p,zoomStep:g=1,pannable:v=!0,zoomable:x=!0,inversePan:w=!1}){const S=C=>{if(C.sourceEvent.type!=="wheel"||!a)return;const _=l(),k=C.sourceEvent.ctrlKey&&Bo()?10:1,A=-C.sourceEvent.deltaY*(C.sourceEvent.deltaMode===1?.05:C.sourceEvent.deltaMode?1:.002)*g,B=_[2]*Math.pow(2,A*k);a.scaleTo(B)};let M=[0,0];const R=C=>{(C.sourceEvent.type==="mousedown"||C.sourceEvent.type==="touchstart")&&(M=[C.sourceEvent.clientX??C.sourceEvent.touches[0].clientX,C.sourceEvent.clientY??C.sourceEvent.touches[0].clientY])},z=C=>{const _=l();if(C.sourceEvent.type!=="mousemove"&&C.sourceEvent.type!=="touchmove"||!a)return;const k=[C.sourceEvent.clientX??C.sourceEvent.touches[0].clientX,C.sourceEvent.clientY??C.sourceEvent.touches[0].clientY],A=[k[0]-M[0],k[1]-M[1]];M=k;const B=o()*Math.max(_[2],Math.log(_[2]))*(w?-1:1),X={x:_[0]-A[0]*B,y:_[1]-A[1]*B},K=[[0,0],[y,p]];a.setViewportConstrained({x:X.x,y:X.y,zoom:_[2]},K,m)},O=qv().on("start",R).on("zoom",v?z:null).on("zoom.wheel",x?S:null);r.call(O,{})}function d(){r.on("zoom",null)}return{update:c,destroy:d,pointer:nn}}const dc=t=>({x:t.x,y:t.y,zoom:t.k}),ef=({x:t,y:a,zoom:l})=>rc.translate(t,a).scale(l),cl=(t,a)=>t.target.closest(`.${a}`),px=(t,a)=>a===2&&Array.isArray(t)&&t.includes(2),nA=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,tf=(t,a=0,l=nA,o=()=>{})=>{const r=typeof a=="number"&&a>0;return r||o(),r?t.transition().duration(a).ease(l).on("end",o):t},gx=t=>{const a=t.ctrlKey&&Bo()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*a};function aA({zoomPanValues:t,noWheelClassName:a,d3Selection:l,d3Zoom:o,panOnScrollMode:r,panOnScrollSpeed:c,zoomOnPinch:d,onPanZoomStart:m,onPanZoom:y,onPanZoomEnd:p}){return g=>{if(cl(g,a))return g.ctrlKey&&g.preventDefault(),!1;g.preventDefault(),g.stopImmediatePropagation();const v=l.property("__zoom").k||1;if(g.ctrlKey&&d){const R=nn(g),z=gx(g),O=v*Math.pow(2,z);o.scaleTo(l,O,R,g);return}const x=g.deltaMode===1?20:1;let w=r===oi.Vertical?0:g.deltaX*x,S=r===oi.Horizontal?0:g.deltaY*x;!Bo()&&g.shiftKey&&r!==oi.Vertical&&(w=g.deltaY*x,S=0),o.translateBy(l,-(w/v)*c,-(S/v)*c,{internal:!0});const M=dc(l.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling?(y?.(g,M),t.panScrollTimeout=setTimeout(()=>{p?.(g,M),t.isPanScrolling=!1},150)):(t.isPanScrolling=!0,m?.(g,M))}}function iA({noWheelClassName:t,preventScrolling:a,d3ZoomHandler:l}){return function(o,r){const c=o.type==="wheel",d=!a&&c&&!o.ctrlKey,m=cl(o,t);if(o.ctrlKey&&c&&m&&o.preventDefault(),d||m)return null;o.preventDefault(),l.call(this,o,r)}}function lA({zoomPanValues:t,onDraggingChange:a,onPanZoomStart:l}){return o=>{if(o.sourceEvent?.internal)return;const r=dc(o.transform);t.mouseButton=o.sourceEvent?.button||0,t.isZoomingOrPanning=!0,t.prevViewport=r,o.sourceEvent?.type==="mousedown"&&a(!0),l&&l?.(o.sourceEvent,r)}}function oA({zoomPanValues:t,panOnDrag:a,onPaneContextMenu:l,onTransformChange:o,onPanZoom:r}){return c=>{t.usedRightMouseButton=!!(l&&px(a,t.mouseButton??0)),c.sourceEvent?.sync||o([c.transform.x,c.transform.y,c.transform.k]),r&&!c.sourceEvent?.internal&&r?.(c.sourceEvent,dc(c.transform))}}function sA({zoomPanValues:t,panOnDrag:a,panOnScroll:l,onDraggingChange:o,onPanZoomEnd:r,onPaneContextMenu:c}){return d=>{if(!d.sourceEvent?.internal&&(t.isZoomingOrPanning=!1,c&&px(a,t.mouseButton??0)&&!t.usedRightMouseButton&&d.sourceEvent&&c(d.sourceEvent),t.usedRightMouseButton=!1,o(!1),r)){const m=dc(d.transform);t.prevViewport=m,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{r?.(d.sourceEvent,m)},l?150:0)}}}function rA({zoomActivationKeyPressed:t,zoomOnScroll:a,zoomOnPinch:l,panOnDrag:o,panOnScroll:r,zoomOnDoubleClick:c,userSelectionActive:d,noWheelClassName:m,noPanClassName:y,lib:p,connectionInProgress:g}){return v=>{const x=t||a,w=l&&v.ctrlKey,S=v.type==="wheel";if(v.button===1&&v.type==="mousedown"&&(cl(v,`${p}-flow__node`)||cl(v,`${p}-flow__edge`)))return!0;if(!o&&!x&&!r&&!c&&!l||d||g&&!S||cl(v,m)&&S||cl(v,y)&&(!S||r&&S&&!t)||!l&&v.ctrlKey&&S)return!1;if(!l&&v.type==="touchstart"&&v.touches?.length>1)return v.preventDefault(),!1;if(!x&&!r&&!w&&S||!o&&(v.type==="mousedown"||v.type==="touchstart")||Array.isArray(o)&&!o.includes(v.button)&&v.type==="mousedown")return!1;const M=Array.isArray(o)&&o.includes(v.button)||!v.button||v.button<=1;return(!v.ctrlKey||S)&&M}}function cA({domNode:t,minZoom:a,maxZoom:l,translateExtent:o,viewport:r,onPanZoom:c,onPanZoomStart:d,onPanZoomEnd:m,onDraggingChange:y}){const p={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},g=t.getBoundingClientRect(),v=qv().scaleExtent([a,l]).translateExtent(o),x=Bt(t).call(v);O({x:r.x,y:r.y,zoom:gl(r.zoom,a,l)},[[0,0],[g.width,g.height]],o);const w=x.on("wheel.zoom"),S=x.on("dblclick.zoom");v.wheelDelta(gx);function M(F,te){return x?new Promise(ce=>{v?.interpolate(te?.interpolate==="linear"?jo:Br).transform(tf(x,te?.duration,te?.ease,()=>ce(!0)),F)}):Promise.resolve(!1)}function R({noWheelClassName:F,noPanClassName:te,onPaneContextMenu:ce,userSelectionActive:N,panOnScroll:D,panOnDrag:T,panOnScrollMode:L,panOnScrollSpeed:G,preventScrolling:Z,zoomOnPinch:ae,zoomOnScroll:j,zoomOnDoubleClick:U,zoomActivationKeyPressed:Y,lib:W,onTransformChange:fe,connectionInProgress:$,paneClickDistance:le,selectionOnDrag:se}){N&&!p.isZoomingOrPanning&&z();const ue=D&&!Y&&!N;v.clickDistance(se?1/0:!ln(le)||le<0?0:le);const be=ue?aA({zoomPanValues:p,noWheelClassName:F,d3Selection:x,d3Zoom:v,panOnScrollMode:L,panOnScrollSpeed:G,zoomOnPinch:ae,onPanZoomStart:d,onPanZoom:c,onPanZoomEnd:m}):iA({noWheelClassName:F,preventScrolling:Z,d3ZoomHandler:w});if(x.on("wheel.zoom",be,{passive:!1}),!N){const xe=lA({zoomPanValues:p,onDraggingChange:y,onPanZoomStart:d});v.on("start",xe);const _e=oA({zoomPanValues:p,panOnDrag:T,onPaneContextMenu:!!ce,onPanZoom:c,onTransformChange:fe});v.on("zoom",_e);const je=sA({zoomPanValues:p,panOnDrag:T,panOnScroll:D,onPaneContextMenu:ce,onPanZoomEnd:m,onDraggingChange:y});v.on("end",je)}const ve=rA({zoomActivationKeyPressed:Y,panOnDrag:T,zoomOnScroll:j,panOnScroll:D,zoomOnDoubleClick:U,zoomOnPinch:ae,userSelectionActive:N,noPanClassName:te,noWheelClassName:F,lib:W,connectionInProgress:$});v.filter(ve),U?x.on("dblclick.zoom",S):x.on("dblclick.zoom",null)}function z(){v.on("zoom",null)}async function O(F,te,ce){const N=ef(F),D=v?.constrain()(N,te,ce);return D&&await M(D),new Promise(T=>T(D))}async function C(F,te){const ce=ef(F);return await M(ce,te),new Promise(N=>N(ce))}function _(F){if(x){const te=ef(F),ce=x.property("__zoom");(ce.k!==F.zoom||ce.x!==F.x||ce.y!==F.y)&&v?.transform(x,te,null,{sync:!0})}}function k(){const F=x?Gv(x.node()):{x:0,y:0,k:1};return{x:F.x,y:F.y,zoom:F.k}}function A(F,te){return x?new Promise(ce=>{v?.interpolate(te?.interpolate==="linear"?jo:Br).scaleTo(tf(x,te?.duration,te?.ease,()=>ce(!0)),F)}):Promise.resolve(!1)}function B(F,te){return x?new Promise(ce=>{v?.interpolate(te?.interpolate==="linear"?jo:Br).scaleBy(tf(x,te?.duration,te?.ease,()=>ce(!0)),F)}):Promise.resolve(!1)}function X(F){v?.scaleExtent(F)}function K(F){v?.translateExtent(F)}function de(F){const te=!ln(F)||F<0?0:F;v?.clickDistance(te)}return{update:R,destroy:z,setViewport:C,setViewportConstrained:O,getViewport:k,scaleTo:A,scaleBy:B,setScaleExtent:X,setTranslateExtent:K,syncViewport:_,setClickDistance:de}}var xl;(function(t){t.Line="line",t.Handle="handle"})(xl||(xl={}));function uA({width:t,prevWidth:a,height:l,prevHeight:o,affectsX:r,affectsY:c}){const d=t-a,m=l-o,y=[d>0?1:d<0?-1:0,m>0?1:m<0?-1:0];return d&&r&&(y[0]=y[0]*-1),m&&c&&(y[1]=y[1]*-1),y}function Jy(t){const a=t.includes("right")||t.includes("left"),l=t.includes("bottom")||t.includes("top"),o=t.includes("left"),r=t.includes("top");return{isHorizontal:a,isVertical:l,affectsX:o,affectsY:r}}function wa(t,a){return Math.max(0,a-t)}function Na(t,a){return Math.max(0,t-a)}function Mr(t,a,l){return Math.max(0,a-t,t-l)}function Wy(t,a){return t?!a:a}function dA(t,a,l,o,r,c,d,m){let{affectsX:y,affectsY:p}=a;const{isHorizontal:g,isVertical:v}=a,x=g&&v,{xSnapped:w,ySnapped:S}=l,{minWidth:M,maxWidth:R,minHeight:z,maxHeight:O}=o,{x:C,y:_,width:k,height:A,aspectRatio:B}=t;let X=Math.floor(g?w-t.pointerX:0),K=Math.floor(v?S-t.pointerY:0);const de=k+(y?-X:X),F=A+(p?-K:K),te=-c[0]*k,ce=-c[1]*A;let N=Mr(de,M,R),D=Mr(F,z,O);if(d){let G=0,Z=0;y&&X<0?G=wa(C+X+te,d[0][0]):!y&&X>0&&(G=Na(C+de+te,d[1][0])),p&&K<0?Z=wa(_+K+ce,d[0][1]):!p&&K>0&&(Z=Na(_+F+ce,d[1][1])),N=Math.max(N,G),D=Math.max(D,Z)}if(m){let G=0,Z=0;y&&X>0?G=Na(C+X,m[0][0]):!y&&X<0&&(G=wa(C+de,m[1][0])),p&&K>0?Z=Na(_+K,m[0][1]):!p&&K<0&&(Z=wa(_+F,m[1][1])),N=Math.max(N,G),D=Math.max(D,Z)}if(r){if(g){const G=Mr(de/B,z,O)*B;if(N=Math.max(N,G),d){let Z=0;!y&&!p||y&&!p&&x?Z=Na(_+ce+de/B,d[1][1])*B:Z=wa(_+ce+(y?X:-X)/B,d[0][1])*B,N=Math.max(N,Z)}if(m){let Z=0;!y&&!p||y&&!p&&x?Z=wa(_+de/B,m[1][1])*B:Z=Na(_+(y?X:-X)/B,m[0][1])*B,N=Math.max(N,Z)}}if(v){const G=Mr(F*B,M,R)/B;if(D=Math.max(D,G),d){let Z=0;!y&&!p||p&&!y&&x?Z=Na(C+F*B+te,d[1][0])/B:Z=wa(C+(p?K:-K)*B+te,d[0][0])/B,D=Math.max(D,Z)}if(m){let Z=0;!y&&!p||p&&!y&&x?Z=wa(C+F*B,m[1][0])/B:Z=Na(C+(p?K:-K)*B,m[0][0])/B,D=Math.max(D,Z)}}}K=K+(K<0?D:-D),X=X+(X<0?N:-N),r&&(x?de>F*B?K=(Wy(y,p)?-X:X)/B:X=(Wy(y,p)?-K:K)*B:g?(K=X/B,p=y):(X=K*B,y=p));const T=y?C+X:C,L=p?_+K:_;return{width:k+(y?-X:X),height:A+(p?-K:K),x:c[0]*X*(y?-1:1)+T,y:c[1]*K*(p?-1:1)+L}}const yx={width:0,height:0,x:0,y:0},fA={...yx,pointerX:0,pointerY:0,aspectRatio:1};function hA(t){return[[0,0],[t.measured.width,t.measured.height]]}function mA(t,a,l){const o=a.position.x+t.position.x,r=a.position.y+t.position.y,c=t.measured.width??0,d=t.measured.height??0,m=l[0]*c,y=l[1]*d;return[[o-m,r-y],[o+c-m,r+d-y]]}function pA({domNode:t,nodeId:a,getStoreItems:l,onChange:o,onEnd:r}){const c=Bt(t);let d={controlDirection:Jy("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function m({controlPosition:p,boundaries:g,keepAspectRatio:v,resizeDirection:x,onResizeStart:w,onResize:S,onResizeEnd:M,shouldResize:R}){let z={...yx},O={...fA};d={boundaries:g,resizeDirection:x,keepAspectRatio:v,controlDirection:Jy(p)};let C,_=null,k=[],A,B,X,K=!1;const de=Tv().on("start",F=>{const{nodeLookup:te,transform:ce,snapGrid:N,snapToGrid:D,nodeOrigin:T,paneDomNode:L}=l();if(C=te.get(a),!C)return;_=L?.getBoundingClientRect()??null;const{xSnapped:G,ySnapped:Z}=zo(F.sourceEvent,{transform:ce,snapGrid:N,snapToGrid:D,containerBounds:_});z={width:C.measured.width??0,height:C.measured.height??0,x:C.position.x??0,y:C.position.y??0},O={...z,pointerX:G,pointerY:Z,aspectRatio:z.width/z.height},A=void 0,C.parentId&&(C.extent==="parent"||C.expandParent)&&(A=te.get(C.parentId),B=A&&C.extent==="parent"?hA(A):void 0),k=[],X=void 0;for(const[ae,j]of te)if(j.parentId===a&&(k.push({id:ae,position:{...j.position},extent:j.extent}),j.extent==="parent"||j.expandParent)){const U=mA(j,C,j.origin??T);X?X=[[Math.min(U[0][0],X[0][0]),Math.min(U[0][1],X[0][1])],[Math.max(U[1][0],X[1][0]),Math.max(U[1][1],X[1][1])]]:X=U}w?.(F,{...z})}).on("drag",F=>{const{transform:te,snapGrid:ce,snapToGrid:N,nodeOrigin:D}=l(),T=zo(F.sourceEvent,{transform:te,snapGrid:ce,snapToGrid:N,containerBounds:_}),L=[];if(!C)return;const{x:G,y:Z,width:ae,height:j}=z,U={},Y=C.origin??D,{width:W,height:fe,x:$,y:le}=dA(O,d.controlDirection,T,d.boundaries,d.keepAspectRatio,Y,B,X),se=W!==ae,ue=fe!==j,be=$!==G&&se,ve=le!==Z&&ue;if(!be&&!ve&&!se&&!ue)return;if((be||ve||Y[0]===1||Y[1]===1)&&(U.x=be?$:z.x,U.y=ve?le:z.y,z.x=U.x,z.y=U.y,k.length>0)){const Ge=$-G,ke=le-Z;for(const ut of k)ut.position={x:ut.position.x-Ge+Y[0]*(W-ae),y:ut.position.y-ke+Y[1]*(fe-j)},L.push(ut)}if((se||ue)&&(U.width=se&&(!d.resizeDirection||d.resizeDirection==="horizontal")?W:z.width,U.height=ue&&(!d.resizeDirection||d.resizeDirection==="vertical")?fe:z.height,z.width=U.width,z.height=U.height),A&&C.expandParent){const Ge=Y[0]*(U.width??0);U.x&&U.x<Ge&&(z.x=Ge,O.x=O.x-(U.x-Ge));const ke=Y[1]*(U.height??0);U.y&&U.y<ke&&(z.y=ke,O.y=O.y-(U.y-ke))}const xe=uA({width:z.width,prevWidth:ae,height:z.height,prevHeight:j,affectsX:d.controlDirection.affectsX,affectsY:d.controlDirection.affectsY}),_e={...z,direction:xe};R?.(F,_e)!==!1&&(K=!0,S?.(F,_e),o(U,L))}).on("end",F=>{K&&(M?.(F,{...z}),r?.({...z}),K=!1)});c.call(de)}function y(){c.on(".drag",null)}return{update:m,destroy:y}}var nf={exports:{}},af={},lf={exports:{}},of={};var e0;function gA(){if(e0)return of;e0=1;var t=Go();function a(v,x){return v===x&&(v!==0||1/v===1/x)||v!==v&&x!==x}var l=typeof Object.is=="function"?Object.is:a,o=t.useState,r=t.useEffect,c=t.useLayoutEffect,d=t.useDebugValue;function m(v,x){var w=x(),S=o({inst:{value:w,getSnapshot:x}}),M=S[0].inst,R=S[1];return c(function(){M.value=w,M.getSnapshot=x,y(M)&&R({inst:M})},[v,w,x]),r(function(){return y(M)&&R({inst:M}),v(function(){y(M)&&R({inst:M})})},[v]),d(w),w}function y(v){var x=v.getSnapshot;v=v.value;try{var w=x();return!l(v,w)}catch{return!0}}function p(v,x){return x()}var g=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?p:m;return of.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:g,of}var t0;function yA(){return t0||(t0=1,lf.exports=gA()),lf.exports}var n0;function vA(){if(n0)return af;n0=1;var t=Go(),a=yA();function l(p,g){return p===g&&(p!==0||1/p===1/g)||p!==p&&g!==g}var o=typeof Object.is=="function"?Object.is:l,r=a.useSyncExternalStore,c=t.useRef,d=t.useEffect,m=t.useMemo,y=t.useDebugValue;return af.useSyncExternalStoreWithSelector=function(p,g,v,x,w){var S=c(null);if(S.current===null){var M={hasValue:!1,value:null};S.current=M}else M=S.current;S=m(function(){function z(A){if(!O){if(O=!0,C=A,A=x(A),w!==void 0&&M.hasValue){var B=M.value;if(w(B,A))return _=B}return _=A}if(B=_,o(C,A))return B;var X=x(A);return w!==void 0&&w(B,X)?(C=A,B):(C=A,_=X)}var O=!1,C,_,k=v===void 0?null:v;return[function(){return z(g())},k===null?void 0:function(){return z(k())}]},[g,v,x,w]);var R=r(p,S[0],S[1]);return d(function(){M.hasValue=!0,M.value=R},[R]),y(R),R},af}var a0;function xA(){return a0||(a0=1,nf.exports=vA()),nf.exports}var bA=xA();const SA=L0(bA),wA={},i0=t=>{let a;const l=new Set,o=(g,v)=>{const x=typeof g=="function"?g(a):g;if(!Object.is(x,a)){const w=a;a=v??(typeof x!="object"||x===null)?x:Object.assign({},a,x),l.forEach(S=>S(a,w))}},r=()=>a,y={setState:o,getState:r,getInitialState:()=>p,subscribe:g=>(l.add(g),()=>l.delete(g)),destroy:()=>{(wA?"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."),l.clear()}},p=a=t(o,r,y);return y},NA=t=>t?i0(t):i0,{useDebugValue:_A}=No,{useSyncExternalStoreWithSelector:EA}=SA,CA=t=>t;function vx(t,a=CA,l){const o=EA(t.subscribe,t.getState,t.getServerState||t.getInitialState,a,l);return _A(o),o}const l0=(t,a)=>{const l=NA(t),o=(r,c=a)=>vx(l,r,c);return Object.assign(o,l),o},TA=(t,a)=>t?l0(t,a):l0;function Ke(t,a){if(Object.is(t,a))return!0;if(typeof t!="object"||t===null||typeof a!="object"||a===null)return!1;if(t instanceof Map&&a instanceof Map){if(t.size!==a.size)return!1;for(const[o,r]of t)if(!Object.is(r,a.get(o)))return!1;return!0}if(t instanceof Set&&a instanceof Set){if(t.size!==a.size)return!1;for(const o of t)if(!a.has(o))return!1;return!0}const l=Object.keys(t);if(l.length!==Object.keys(a).length)return!1;for(const o of l)if(!Object.prototype.hasOwnProperty.call(a,o)||!Object.is(t[o],a[o]))return!1;return!0}H0();const fc=H.createContext(null),AA=fc.Provider,xx=yn.error001();function Oe(t,a){const l=H.useContext(fc);if(l===null)throw new Error(xx);return vx(l,t,a)}function Qe(){const t=H.useContext(fc);if(t===null)throw new Error(xx);return H.useMemo(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe}),[t])}const o0={display:"none"},MA={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},bx="react-flow__node-desc",Sx="react-flow__edge-desc",jA="react-flow__aria-live",zA=t=>t.ariaLiveMessage,RA=t=>t.ariaLabelConfig;function DA({rfId:t}){const a=Oe(zA);return f.jsx("div",{id:`${jA}-${t}`,"aria-live":"assertive","aria-atomic":"true",style:MA,children:a})}function OA({rfId:t,disableKeyboardA11y:a}){const l=Oe(RA);return f.jsxs(f.Fragment,{children:[f.jsx("div",{id:`${bx}-${t}`,style:o0,children:a?l["node.a11yDescription.default"]:l["node.a11yDescription.keyboardDisabled"]}),f.jsx("div",{id:`${Sx}-${t}`,style:o0,children:l["edge.a11yDescription.default"]}),!a&&f.jsx(DA,{rfId:t})]})}const Fo=H.forwardRef(({position:t="top-left",children:a,className:l,style:o,...r},c)=>{const d=`${t}`.split("-");return f.jsx("div",{className:st(["react-flow__panel",l,...d]),style:o,ref:c,...r,children:a})});Fo.displayName="Panel";function LA({proOptions:t,position:a="bottom-right"}){return t?.hideAttribution?null:f.jsx(Fo,{position:a,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:f.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const HA=t=>{const a=[],l=[];for(const[,o]of t.nodeLookup)o.selected&&a.push(o.internals.userNode);for(const[,o]of t.edgeLookup)o.selected&&l.push(o);return{selectedNodes:a,selectedEdges:l}},jr=t=>t.id;function IA(t,a){return Ke(t.selectedNodes.map(jr),a.selectedNodes.map(jr))&&Ke(t.selectedEdges.map(jr),a.selectedEdges.map(jr))}function kA({onSelectionChange:t}){const a=Qe(),{selectedNodes:l,selectedEdges:o}=Oe(HA,IA);return H.useEffect(()=>{const r={nodes:l,edges:o};t?.(r),a.getState().onSelectionChangeHandlers.forEach(c=>c(r))},[l,o,t]),null}const BA=t=>!!t.onSelectionChangeHandlers;function UA({onSelectionChange:t}){const a=Oe(BA);return t||a?f.jsx(kA,{onSelectionChange:t}):null}const Cf=typeof window<"u"?H.useLayoutEffect:H.useEffect,wx=[0,0],GA={x:0,y:0,zoom:1},qA=["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"],s0=[...qA,"rfId"],YA=t=>({setNodes:t.setNodes,setEdges:t.setEdges,setMinZoom:t.setMinZoom,setMaxZoom:t.setMaxZoom,setTranslateExtent:t.setTranslateExtent,setNodeExtent:t.setNodeExtent,reset:t.reset,setDefaultNodesAndEdges:t.setDefaultNodesAndEdges}),r0={translateExtent:Ho,nodeOrigin:wx,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function VA(t){const{setNodes:a,setEdges:l,setMinZoom:o,setMaxZoom:r,setTranslateExtent:c,setNodeExtent:d,reset:m,setDefaultNodesAndEdges:y}=Oe(YA,Ke),p=Qe();Cf(()=>(y(t.defaultNodes,t.defaultEdges),()=>{g.current=r0,m()}),[]);const g=H.useRef(r0);return Cf(()=>{for(const v of s0){const x=t[v],w=g.current[v];x!==w&&(typeof t[v]>"u"||(v==="nodes"?a(x):v==="edges"?l(x):v==="minZoom"?o(x):v==="maxZoom"?r(x):v==="translateExtent"?c(x):v==="nodeExtent"?d(x):v==="ariaLabelConfig"?p.setState({ariaLabelConfig:TT(x)}):v==="fitView"?p.setState({fitViewQueued:x}):v==="fitViewOptions"?p.setState({fitViewOptions:x}):p.setState({[v]:x})))}g.current=t},s0.map(v=>t[v])),null}function c0(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function $A(t){const[a,l]=H.useState(t==="system"?null:t);return H.useEffect(()=>{if(t!=="system"){l(t);return}const o=c0(),r=()=>l(o?.matches?"dark":"light");return r(),o?.addEventListener("change",r),()=>{o?.removeEventListener("change",r)}},[t]),a!==null?a:c0()?.matches?"dark":"light"}const u0=typeof document<"u"?document:null;function Uo(t=null,a={target:u0,actInsideInputWithModifier:!0}){const[l,o]=H.useState(!1),r=H.useRef(!1),c=H.useRef(new Set([])),[d,m]=H.useMemo(()=>{if(t!==null){const p=(Array.isArray(t)?t:[t]).filter(v=>typeof v=="string").map(v=>v.replace("+",`
|
|
18
|
+
`).replace(`
|
|
19
|
+
|
|
20
|
+
`,`
|
|
21
|
+
+`).split(`
|
|
22
|
+
`)),g=p.reduce((v,x)=>v.concat(...x),[]);return[p,g]}return[[],[]]},[t]);return H.useEffect(()=>{const y=a?.target??u0,p=a?.actInsideInputWithModifier??!0;if(t!==null){const g=w=>{if(r.current=w.ctrlKey||w.metaKey||w.shiftKey||w.altKey,(!r.current||r.current&&!p)&&tx(w))return!1;const M=f0(w.code,m);if(c.current.add(w[M]),d0(d,c.current,!1)){const R=w.composedPath?.()?.[0]||w.target,z=R?.nodeName==="BUTTON"||R?.nodeName==="A";a.preventDefault!==!1&&(r.current||!z)&&w.preventDefault(),o(!0)}},v=w=>{const S=f0(w.code,m);d0(d,c.current,!0)?(o(!1),c.current.clear()):c.current.delete(w[S]),w.key==="Meta"&&c.current.clear(),r.current=!1},x=()=>{c.current.clear(),o(!1)};return y?.addEventListener("keydown",g),y?.addEventListener("keyup",v),window.addEventListener("blur",x),window.addEventListener("contextmenu",x),()=>{y?.removeEventListener("keydown",g),y?.removeEventListener("keyup",v),window.removeEventListener("blur",x),window.removeEventListener("contextmenu",x)}}},[t,o]),l}function d0(t,a,l){return t.filter(o=>l||o.length===a.size).some(o=>o.every(r=>a.has(r)))}function f0(t,a){return a.includes(t)?"code":"key"}const XA=()=>{const t=Qe();return H.useMemo(()=>({zoomIn:a=>{const{panZoom:l}=t.getState();return l?l.scaleBy(1.2,a):Promise.resolve(!1)},zoomOut:a=>{const{panZoom:l}=t.getState();return l?l.scaleBy(1/1.2,a):Promise.resolve(!1)},zoomTo:(a,l)=>{const{panZoom:o}=t.getState();return o?o.scaleTo(a,l):Promise.resolve(!1)},getZoom:()=>t.getState().transform[2],setViewport:async(a,l)=>{const{transform:[o,r,c],panZoom:d}=t.getState();return d?(await d.setViewport({x:a.x??o,y:a.y??r,zoom:a.zoom??c},l),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[a,l,o]=t.getState().transform;return{x:a,y:l,zoom:o}},setCenter:async(a,l,o)=>t.getState().setCenter(a,l,o),fitBounds:async(a,l)=>{const{width:o,height:r,minZoom:c,maxZoom:d,panZoom:m}=t.getState(),y=Yf(a,o,r,c,d,l?.padding??.1);return m?(await m.setViewport(y,{duration:l?.duration,ease:l?.ease,interpolate:l?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(a,l={})=>{const{transform:o,snapGrid:r,snapToGrid:c,domNode:d}=t.getState();if(!d)return a;const{x:m,y}=d.getBoundingClientRect(),p={x:a.x-m,y:a.y-y},g=l.snapGrid??r,v=l.snapToGrid??c;return Po(p,o,v,g)},flowToScreenPosition:a=>{const{transform:l,domNode:o}=t.getState();if(!o)return a;const{x:r,y:c}=o.getBoundingClientRect(),d=tc(a,l);return{x:d.x+r,y:d.y+c}}}),[])};function Nx(t,a){const l=[],o=new Map,r=[];for(const c of t)if(c.type==="add"){r.push(c);continue}else if(c.type==="remove"||c.type==="replace")o.set(c.id,[c]);else{const d=o.get(c.id);d?d.push(c):o.set(c.id,[c])}for(const c of a){const d=o.get(c.id);if(!d){l.push(c);continue}if(d[0].type==="remove")continue;if(d[0].type==="replace"){l.push({...d[0].item});continue}const m={...c};for(const y of d)PA(y,m);l.push(m)}return r.length&&r.forEach(c=>{c.index!==void 0?l.splice(c.index,0,{...c.item}):l.push({...c.item})}),l}function PA(t,a){switch(t.type){case"select":{a.selected=t.selected;break}case"position":{typeof t.position<"u"&&(a.position=t.position),typeof t.dragging<"u"&&(a.dragging=t.dragging);break}case"dimensions":{typeof t.dimensions<"u"&&(a.measured={...t.dimensions},t.setAttributes&&((t.setAttributes===!0||t.setAttributes==="width")&&(a.width=t.dimensions.width),(t.setAttributes===!0||t.setAttributes==="height")&&(a.height=t.dimensions.height))),typeof t.resizing=="boolean"&&(a.resizing=t.resizing);break}}}function _x(t,a){return Nx(t,a)}function Ex(t,a){return Nx(t,a)}function ei(t,a){return{id:t,type:"select",selected:a}}function ul(t,a=new Set,l=!1){const o=[];for(const[r,c]of t){const d=a.has(r);!(c.selected===void 0&&!d)&&c.selected!==d&&(l&&(c.selected=d),o.push(ei(c.id,d)))}return o}function h0({items:t=[],lookup:a}){const l=[],o=new Map(t.map(r=>[r.id,r]));for(const[r,c]of t.entries()){const d=a.get(c.id),m=d?.internals?.userNode??d;m!==void 0&&m!==c&&l.push({id:c.id,item:c,type:"replace"}),m===void 0&&l.push({item:c,type:"add",index:r})}for(const[r]of a)o.get(r)===void 0&&l.push({id:r,type:"remove"});return l}function m0(t){return{id:t.id,type:"remove"}}const p0=t=>yT(t),FA=t=>Pv(t);function Cx(t){return H.forwardRef(t)}function g0(t){const[a,l]=H.useState(BigInt(0)),[o]=H.useState(()=>ZA(()=>l(r=>r+BigInt(1))));return Cf(()=>{const r=o.get();r.length&&(t(r),o.reset())},[a]),o}function ZA(t){let a=[];return{get:()=>a,reset:()=>{a=[]},push:l=>{a.push(l),t()}}}const Tx=H.createContext(null);function KA({children:t}){const a=Qe(),l=H.useCallback(m=>{const{nodes:y=[],setNodes:p,hasDefaultNodes:g,onNodesChange:v,nodeLookup:x,fitViewQueued:w,onNodesChangeMiddlewareMap:S}=a.getState();let M=y;for(const z of m)M=typeof z=="function"?z(M):z;let R=h0({items:M,lookup:x});for(const z of S.values())R=z(R);g&&p(M),R.length>0?v?.(R):w&&window.requestAnimationFrame(()=>{const{fitViewQueued:z,nodes:O,setNodes:C}=a.getState();z&&C(O)})},[]),o=g0(l),r=H.useCallback(m=>{const{edges:y=[],setEdges:p,hasDefaultEdges:g,onEdgesChange:v,edgeLookup:x}=a.getState();let w=y;for(const S of m)w=typeof S=="function"?S(w):S;g?p(w):v&&v(h0({items:w,lookup:x}))},[]),c=g0(r),d=H.useMemo(()=>({nodeQueue:o,edgeQueue:c}),[]);return f.jsx(Tx.Provider,{value:d,children:t})}function QA(){const t=H.useContext(Tx);if(!t)throw new Error("useBatchContext must be used within a BatchProvider");return t}const JA=t=>!!t.panZoom;function hc(){const t=XA(),a=Qe(),l=QA(),o=Oe(JA),r=H.useMemo(()=>{const c=v=>a.getState().nodeLookup.get(v),d=v=>{l.nodeQueue.push(v)},m=v=>{l.edgeQueue.push(v)},y=v=>{const{nodeLookup:x,nodeOrigin:w}=a.getState(),S=p0(v)?v:x.get(v.id),M=S.parentId?Wv(S.position,S.measured,S.parentId,x,w):S.position,R={...S,position:M,width:S.measured?.width??S.width,height:S.measured?.height??S.height};return yl(R)},p=(v,x,w={replace:!1})=>{d(S=>S.map(M=>{if(M.id===v){const R=typeof x=="function"?x(M):x;return w.replace&&p0(R)?R:{...M,...R}}return M}))},g=(v,x,w={replace:!1})=>{m(S=>S.map(M=>{if(M.id===v){const R=typeof x=="function"?x(M):x;return w.replace&&FA(R)?R:{...M,...R}}return M}))};return{getNodes:()=>a.getState().nodes.map(v=>({...v})),getNode:v=>c(v)?.internals.userNode,getInternalNode:c,getEdges:()=>{const{edges:v=[]}=a.getState();return v.map(x=>({...x}))},getEdge:v=>a.getState().edgeLookup.get(v),setNodes:d,setEdges:m,addNodes:v=>{const x=Array.isArray(v)?v:[v];l.nodeQueue.push(w=>[...w,...x])},addEdges:v=>{const x=Array.isArray(v)?v:[v];l.edgeQueue.push(w=>[...w,...x])},toObject:()=>{const{nodes:v=[],edges:x=[],transform:w}=a.getState(),[S,M,R]=w;return{nodes:v.map(z=>({...z})),edges:x.map(z=>({...z})),viewport:{x:S,y:M,zoom:R}}},deleteElements:async({nodes:v=[],edges:x=[]})=>{const{nodes:w,edges:S,onNodesDelete:M,onEdgesDelete:R,triggerNodeChanges:z,triggerEdgeChanges:O,onDelete:C,onBeforeDelete:_}=a.getState(),{nodes:k,edges:A}=await wT({nodesToRemove:v,edgesToRemove:x,nodes:w,edges:S,onBeforeDelete:_}),B=A.length>0,X=k.length>0;if(B){const K=A.map(m0);R?.(A),O(K)}if(X){const K=k.map(m0);M?.(k),z(K)}return(X||B)&&C?.({nodes:k,edges:A}),{deletedNodes:k,deletedEdges:A}},getIntersectingNodes:(v,x=!0,w)=>{const S=Gy(v),M=S?v:y(v),R=w!==void 0;return M?(w||a.getState().nodes).filter(z=>{const O=a.getState().nodeLookup.get(z.id);if(O&&!S&&(z.id===v.id||!O.internals.positionAbsolute))return!1;const C=yl(R?z:O),_=ko(C,M);return x&&_>0||_>=C.width*C.height||_>=M.width*M.height}):[]},isNodeIntersecting:(v,x,w=!0)=>{const M=Gy(v)?v:y(v);if(!M)return!1;const R=ko(M,x);return w&&R>0||R>=x.width*x.height||R>=M.width*M.height},updateNode:p,updateNodeData:(v,x,w={replace:!1})=>{p(v,S=>{const M=typeof x=="function"?x(S):x;return w.replace?{...S,data:M}:{...S,data:{...S.data,...M}}},w)},updateEdge:g,updateEdgeData:(v,x,w={replace:!1})=>{g(v,S=>{const M=typeof x=="function"?x(S):x;return w.replace?{...S,data:M}:{...S,data:{...S.data,...M}}},w)},getNodesBounds:v=>{const{nodeLookup:x,nodeOrigin:w}=a.getState();return vT(v,{nodeLookup:x,nodeOrigin:w})},getHandleConnections:({type:v,id:x,nodeId:w})=>Array.from(a.getState().connectionLookup.get(`${w}-${v}${x?`-${x}`:""}`)?.values()??[]),getNodeConnections:({type:v,handleId:x,nodeId:w})=>Array.from(a.getState().connectionLookup.get(`${w}${v?x?`-${v}-${x}`:`-${v}`:""}`)?.values()??[]),fitView:async v=>{const x=a.getState().fitViewResolver??CT();return a.setState({fitViewQueued:!0,fitViewOptions:v,fitViewResolver:x}),l.nodeQueue.push(w=>[...w]),x.promise}}},[]);return H.useMemo(()=>({...r,...t,viewportInitialized:o}),[o])}const y0=t=>t.selected,WA=typeof window<"u"?window:void 0;function eM({deleteKeyCode:t,multiSelectionKeyCode:a}){const l=Qe(),{deleteElements:o}=hc(),r=Uo(t,{actInsideInputWithModifier:!1}),c=Uo(a,{target:WA});H.useEffect(()=>{if(r){const{edges:d,nodes:m}=l.getState();o({nodes:m.filter(y0),edges:d.filter(y0)}),l.setState({nodesSelectionActive:!1})}},[r]),H.useEffect(()=>{l.setState({multiSelectionActive:c})},[c])}function tM(t){const a=Qe();H.useEffect(()=>{const l=()=>{if(!t.current||!(t.current.checkVisibility?.()??!0))return!1;const o=Vf(t.current);(o.height===0||o.width===0)&&a.getState().onError?.("004",yn.error004()),a.setState({width:o.width||500,height:o.height||500})};if(t.current){l(),window.addEventListener("resize",l);const o=new ResizeObserver(()=>l());return o.observe(t.current),()=>{window.removeEventListener("resize",l),o&&t.current&&o.unobserve(t.current)}}},[])}const mc={position:"absolute",width:"100%",height:"100%",top:0,left:0},nM=t=>({userSelectionActive:t.userSelectionActive,lib:t.lib,connectionInProgress:t.connection.inProgress});function aM({onPaneContextMenu:t,zoomOnScroll:a=!0,zoomOnPinch:l=!0,panOnScroll:o=!1,panOnScrollSpeed:r=.5,panOnScrollMode:c=oi.Free,zoomOnDoubleClick:d=!0,panOnDrag:m=!0,defaultViewport:y,translateExtent:p,minZoom:g,maxZoom:v,zoomActivationKeyCode:x,preventScrolling:w=!0,children:S,noWheelClassName:M,noPanClassName:R,onViewportChange:z,isControlledViewport:O,paneClickDistance:C,selectionOnDrag:_}){const k=Qe(),A=H.useRef(null),{userSelectionActive:B,lib:X,connectionInProgress:K}=Oe(nM,Ke),de=Uo(x),F=H.useRef();tM(A);const te=H.useCallback(ce=>{z?.({x:ce[0],y:ce[1],zoom:ce[2]}),O||k.setState({transform:ce})},[z,O]);return H.useEffect(()=>{if(A.current){F.current=cA({domNode:A.current,minZoom:g,maxZoom:v,translateExtent:p,viewport:y,onDraggingChange:T=>k.setState(L=>L.paneDragging===T?L:{paneDragging:T}),onPanZoomStart:(T,L)=>{const{onViewportChangeStart:G,onMoveStart:Z}=k.getState();Z?.(T,L),G?.(L)},onPanZoom:(T,L)=>{const{onViewportChange:G,onMove:Z}=k.getState();Z?.(T,L),G?.(L)},onPanZoomEnd:(T,L)=>{const{onViewportChangeEnd:G,onMoveEnd:Z}=k.getState();Z?.(T,L),G?.(L)}});const{x:ce,y:N,zoom:D}=F.current.getViewport();return k.setState({panZoom:F.current,transform:[ce,N,D],domNode:A.current.closest(".react-flow")}),()=>{F.current?.destroy()}}},[]),H.useEffect(()=>{F.current?.update({onPaneContextMenu:t,zoomOnScroll:a,zoomOnPinch:l,panOnScroll:o,panOnScrollSpeed:r,panOnScrollMode:c,zoomOnDoubleClick:d,panOnDrag:m,zoomActivationKeyPressed:de,preventScrolling:w,noPanClassName:R,userSelectionActive:B,noWheelClassName:M,lib:X,onTransformChange:te,connectionInProgress:K,selectionOnDrag:_,paneClickDistance:C})},[t,a,l,o,r,c,d,m,de,w,R,B,M,X,te,K,_,C]),f.jsx("div",{className:"react-flow__renderer",ref:A,style:mc,children:S})}const iM=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function lM(){const{userSelectionActive:t,userSelectionRect:a}=Oe(iM,Ke);return t&&a?f.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:a.width,height:a.height,transform:`translate(${a.x}px, ${a.y}px)`}}):null}const sf=(t,a)=>l=>{l.target===a.current&&t?.(l)},oM=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,connectionInProgress:t.connection.inProgress,dragging:t.paneDragging});function sM({isSelecting:t,selectionKeyPressed:a,selectionMode:l=Io.Full,panOnDrag:o,paneClickDistance:r,selectionOnDrag:c,onSelectionStart:d,onSelectionEnd:m,onPaneClick:y,onPaneContextMenu:p,onPaneScroll:g,onPaneMouseEnter:v,onPaneMouseMove:x,onPaneMouseLeave:w,children:S}){const M=Qe(),{userSelectionActive:R,elementsSelectable:z,dragging:O,connectionInProgress:C}=Oe(oM,Ke),_=z&&(t||R),k=H.useRef(null),A=H.useRef(),B=H.useRef(new Set),X=H.useRef(new Set),K=H.useRef(!1),de=G=>{if(K.current||C){K.current=!1;return}y?.(G),M.getState().resetSelectedElements(),M.setState({nodesSelectionActive:!1})},F=G=>{if(Array.isArray(o)&&o?.includes(2)){G.preventDefault();return}p?.(G)},te=g?G=>g(G):void 0,ce=G=>{K.current&&(G.stopPropagation(),K.current=!1)},N=G=>{const{domNode:Z}=M.getState();if(A.current=Z?.getBoundingClientRect(),!A.current)return;const ae=G.target===k.current;if(!ae&&!!G.target.closest(".nokey")||!t||!(c&&ae||a)||G.button!==0||!G.isPrimary)return;G.target?.setPointerCapture?.(G.pointerId),K.current=!1;const{x:Y,y:W}=on(G.nativeEvent,A.current);M.setState({userSelectionRect:{width:0,height:0,startX:Y,startY:W,x:Y,y:W}}),ae||(G.stopPropagation(),G.preventDefault())},D=G=>{const{userSelectionRect:Z,transform:ae,nodeLookup:j,edgeLookup:U,connectionLookup:Y,triggerNodeChanges:W,triggerEdgeChanges:fe,defaultEdgeOptions:$,resetSelectedElements:le}=M.getState();if(!A.current||!Z)return;const{x:se,y:ue}=on(G.nativeEvent,A.current),{startX:be,startY:ve}=Z;if(!K.current){const ke=a?0:r;if(Math.hypot(se-be,ue-ve)<=ke)return;le(),d?.(G)}K.current=!0;const xe={startX:be,startY:ve,x:se<be?se:be,y:ue<ve?ue:ve,width:Math.abs(se-be),height:Math.abs(ue-ve)},_e=B.current,je=X.current;B.current=new Set(qf(j,xe,ae,l===Io.Partial,!0).map(ke=>ke.id)),X.current=new Set;const Ge=$?.selectable??!0;for(const ke of B.current){const ut=Y.get(ke);if(ut)for(const{edgeId:Zt}of ut.values()){const zt=U.get(Zt);zt&&(zt.selectable??Ge)&&X.current.add(Zt)}}if(!qy(_e,B.current)){const ke=ul(j,B.current,!0);W(ke)}if(!qy(je,X.current)){const ke=ul(U,X.current);fe(ke)}M.setState({userSelectionRect:xe,userSelectionActive:!0,nodesSelectionActive:!1})},T=G=>{G.button===0&&(G.target?.releasePointerCapture?.(G.pointerId),!R&&G.target===k.current&&M.getState().userSelectionRect&&de?.(G),M.setState({userSelectionActive:!1,userSelectionRect:null}),K.current&&(m?.(G),M.setState({nodesSelectionActive:B.current.size>0})))},L=o===!0||Array.isArray(o)&&o.includes(0);return f.jsxs("div",{className:st(["react-flow__pane",{draggable:L,dragging:O,selection:t}]),onClick:_?void 0:sf(de,k),onContextMenu:sf(F,k),onWheel:sf(te,k),onPointerEnter:_?void 0:v,onPointerMove:_?D:x,onPointerUp:_?T:void 0,onPointerDownCapture:_?N:void 0,onClickCapture:_?ce:void 0,onPointerLeave:w,ref:k,style:mc,children:[S,f.jsx(lM,{})]})}function Tf({id:t,store:a,unselect:l=!1,nodeRef:o}){const{addSelectedNodes:r,unselectNodesAndEdges:c,multiSelectionActive:d,nodeLookup:m,onError:y}=a.getState(),p=m.get(t);if(!p){y?.("012",yn.error012(t));return}a.setState({nodesSelectionActive:!1}),p.selected?(l||p.selected&&d)&&(c({nodes:[p],edges:[]}),requestAnimationFrame(()=>o?.current?.blur())):r([t])}function Ax({nodeRef:t,disabled:a=!1,noDragClassName:l,handleSelector:o,nodeId:r,isSelectable:c,nodeClickDistance:d}){const m=Qe(),[y,p]=H.useState(!1),g=H.useRef();return H.useEffect(()=>{g.current=ZT({getStoreItems:()=>m.getState(),onNodeMouseDown:v=>{Tf({id:v,store:m,nodeRef:t})},onDragStart:()=>{p(!0)},onDragStop:()=>{p(!1)}})},[]),H.useEffect(()=>{if(!(a||!t.current||!g.current))return g.current.update({noDragClassName:l,handleSelector:o,domNode:t.current,isSelectable:c,nodeId:r,nodeClickDistance:d}),()=>{g.current?.destroy()}},[l,o,a,c,t,r,d]),y}const rM=t=>a=>a.selected&&(a.draggable||t&&typeof a.draggable>"u");function Mx(){const t=Qe();return H.useCallback(l=>{const{nodeExtent:o,snapToGrid:r,snapGrid:c,nodesDraggable:d,onError:m,updateNodePositions:y,nodeLookup:p,nodeOrigin:g}=t.getState(),v=new Map,x=rM(d),w=r?c[0]:5,S=r?c[1]:5,M=l.direction.x*w*l.factor,R=l.direction.y*S*l.factor;for(const[,z]of p){if(!x(z))continue;let O={x:z.internals.positionAbsolute.x+M,y:z.internals.positionAbsolute.y+R};r&&(O=Xo(O,c));const{position:C,positionAbsolute:_}=Fv({nodeId:z.id,nextPosition:O,nodeLookup:p,nodeExtent:o,nodeOrigin:g,onError:m});z.position=C,z.internals.positionAbsolute=_,v.set(z.id,z)}y(v)},[])}const Kf=H.createContext(null),cM=Kf.Provider;Kf.Consumer;const jx=()=>H.useContext(Kf),uM=t=>({connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName,rfId:t.rfId}),dM=(t,a,l)=>o=>{const{connectionClickStartHandle:r,connectionMode:c,connection:d}=o,{fromHandle:m,toHandle:y,isValid:p}=d,g=y?.nodeId===t&&y?.id===a&&y?.type===l;return{connectingFrom:m?.nodeId===t&&m?.id===a&&m?.type===l,connectingTo:g,clickConnecting:r?.nodeId===t&&r?.id===a&&r?.type===l,isPossibleEndHandle:c===ui.Strict?m?.type!==l:t!==m?.nodeId||a!==m?.id,connectionInProcess:!!m,clickConnectionInProcess:!!r,valid:g&&p}};function fM({type:t="source",position:a=ge.Top,isValidConnection:l,isConnectable:o=!0,isConnectableStart:r=!0,isConnectableEnd:c=!0,id:d,onConnect:m,children:y,className:p,onMouseDown:g,onTouchStart:v,...x},w){const S=d||null,M=t==="target",R=Qe(),z=jx(),{connectOnClick:O,noPanClassName:C,rfId:_}=Oe(uM,Ke),{connectingFrom:k,connectingTo:A,clickConnecting:B,isPossibleEndHandle:X,connectionInProcess:K,clickConnectionInProcess:de,valid:F}=Oe(dM(z,S,t),Ke);z||R.getState().onError?.("010",yn.error010());const te=D=>{const{defaultEdgeOptions:T,onConnect:L,hasDefaultEdges:G}=R.getState(),Z={...T,...D};if(G){const{edges:ae,setEdges:j}=R.getState();j(DT(Z,ae))}L?.(Z),m?.(Z)},ce=D=>{if(!z)return;const T=nx(D.nativeEvent);if(r&&(T&&D.button===0||!T)){const L=R.getState();Ef.onPointerDown(D.nativeEvent,{handleDomNode:D.currentTarget,autoPanOnConnect:L.autoPanOnConnect,connectionMode:L.connectionMode,connectionRadius:L.connectionRadius,domNode:L.domNode,nodeLookup:L.nodeLookup,lib:L.lib,isTarget:M,handleId:S,nodeId:z,flowId:L.rfId,panBy:L.panBy,cancelConnection:L.cancelConnection,onConnectStart:L.onConnectStart,onConnectEnd:(...G)=>R.getState().onConnectEnd?.(...G),updateConnection:L.updateConnection,onConnect:te,isValidConnection:l||((...G)=>R.getState().isValidConnection?.(...G)??!0),getTransform:()=>R.getState().transform,getFromHandle:()=>R.getState().connection.fromHandle,autoPanSpeed:L.autoPanSpeed,dragThreshold:L.connectionDragThreshold})}T?g?.(D):v?.(D)},N=D=>{const{onClickConnectStart:T,onClickConnectEnd:L,connectionClickStartHandle:G,connectionMode:Z,isValidConnection:ae,lib:j,rfId:U,nodeLookup:Y,connection:W}=R.getState();if(!z||!G&&!r)return;if(!G){T?.(D.nativeEvent,{nodeId:z,handleId:S,handleType:t}),R.setState({connectionClickStartHandle:{nodeId:z,type:t,id:S}});return}const fe=ex(D.target),$=l||ae,{connection:le,isValid:se}=Ef.isValid(D.nativeEvent,{handle:{nodeId:z,id:S,type:t},connectionMode:Z,fromNodeId:G.nodeId,fromHandleId:G.id||null,fromType:G.type,isValidConnection:$,flowId:U,doc:fe,lib:j,nodeLookup:Y});se&&le&&te(le);const ue=structuredClone(W);delete ue.inProgress,ue.toPosition=ue.toHandle?ue.toHandle.position:null,L?.(D,ue),R.setState({connectionClickStartHandle:null})};return f.jsx("div",{"data-handleid":S,"data-nodeid":z,"data-handlepos":a,"data-id":`${_}-${z}-${S}-${t}`,className:st(["react-flow__handle",`react-flow__handle-${a}`,"nodrag",C,p,{source:!M,target:M,connectable:o,connectablestart:r,connectableend:c,clickconnecting:B,connectingfrom:k,connectingto:A,valid:F,connectionindicator:o&&(!K||X)&&(K||de?c:r)}]),onMouseDown:ce,onTouchStart:ce,onClick:O?N:void 0,ref:w,...x,children:y})}const bl=H.memo(Cx(fM));function hM({data:t,isConnectable:a,sourcePosition:l=ge.Bottom}){return f.jsxs(f.Fragment,{children:[t?.label,f.jsx(bl,{type:"source",position:l,isConnectable:a})]})}function mM({data:t,isConnectable:a,targetPosition:l=ge.Top,sourcePosition:o=ge.Bottom}){return f.jsxs(f.Fragment,{children:[f.jsx(bl,{type:"target",position:l,isConnectable:a}),t?.label,f.jsx(bl,{type:"source",position:o,isConnectable:a})]})}function pM(){return null}function gM({data:t,isConnectable:a,targetPosition:l=ge.Top}){return f.jsxs(f.Fragment,{children:[f.jsx(bl,{type:"target",position:l,isConnectable:a}),t?.label]})}const nc={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},v0={input:hM,default:mM,output:gM,group:pM};function yM(t){return t.internals.handleBounds===void 0?{width:t.width??t.initialWidth??t.style?.width,height:t.height??t.initialHeight??t.style?.height}:{width:t.width??t.style?.width,height:t.height??t.style?.height}}const vM=t=>{const{width:a,height:l,x:o,y:r}=$o(t.nodeLookup,{filter:c=>!!c.selected});return{width:ln(a)?a:null,height:ln(l)?l:null,userSelectionActive:t.userSelectionActive,transformString:`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]}) translate(${o}px,${r}px)`}};function xM({onSelectionContextMenu:t,noPanClassName:a,disableKeyboardA11y:l}){const o=Qe(),{width:r,height:c,transformString:d,userSelectionActive:m}=Oe(vM,Ke),y=Mx(),p=H.useRef(null);H.useEffect(()=>{l||p.current?.focus({preventScroll:!0})},[l]);const g=!m&&r!==null&&c!==null;if(Ax({nodeRef:p,disabled:!g}),!g)return null;const v=t?w=>{const S=o.getState().nodes.filter(M=>M.selected);t(w,S)}:void 0,x=w=>{Object.prototype.hasOwnProperty.call(nc,w.key)&&(w.preventDefault(),y({direction:nc[w.key],factor:w.shiftKey?4:1}))};return f.jsx("div",{className:st(["react-flow__nodesselection","react-flow__container",a]),style:{transform:d},children:f.jsx("div",{ref:p,className:"react-flow__nodesselection-rect",onContextMenu:v,tabIndex:l?void 0:-1,onKeyDown:l?void 0:x,style:{width:r,height:c}})})}const x0=typeof window<"u"?window:void 0,bM=t=>({nodesSelectionActive:t.nodesSelectionActive,userSelectionActive:t.userSelectionActive});function zx({children:t,onPaneClick:a,onPaneMouseEnter:l,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:c,onPaneScroll:d,paneClickDistance:m,deleteKeyCode:y,selectionKeyCode:p,selectionOnDrag:g,selectionMode:v,onSelectionStart:x,onSelectionEnd:w,multiSelectionKeyCode:S,panActivationKeyCode:M,zoomActivationKeyCode:R,elementsSelectable:z,zoomOnScroll:O,zoomOnPinch:C,panOnScroll:_,panOnScrollSpeed:k,panOnScrollMode:A,zoomOnDoubleClick:B,panOnDrag:X,defaultViewport:K,translateExtent:de,minZoom:F,maxZoom:te,preventScrolling:ce,onSelectionContextMenu:N,noWheelClassName:D,noPanClassName:T,disableKeyboardA11y:L,onViewportChange:G,isControlledViewport:Z}){const{nodesSelectionActive:ae,userSelectionActive:j}=Oe(bM,Ke),U=Uo(p,{target:x0}),Y=Uo(M,{target:x0}),W=Y||X,fe=Y||_,$=g&&W!==!0,le=U||j||$;return eM({deleteKeyCode:y,multiSelectionKeyCode:S}),f.jsx(aM,{onPaneContextMenu:c,elementsSelectable:z,zoomOnScroll:O,zoomOnPinch:C,panOnScroll:fe,panOnScrollSpeed:k,panOnScrollMode:A,zoomOnDoubleClick:B,panOnDrag:!U&&W,defaultViewport:K,translateExtent:de,minZoom:F,maxZoom:te,zoomActivationKeyCode:R,preventScrolling:ce,noWheelClassName:D,noPanClassName:T,onViewportChange:G,isControlledViewport:Z,paneClickDistance:m,selectionOnDrag:$,children:f.jsxs(sM,{onSelectionStart:x,onSelectionEnd:w,onPaneClick:a,onPaneMouseEnter:l,onPaneMouseMove:o,onPaneMouseLeave:r,onPaneContextMenu:c,onPaneScroll:d,panOnDrag:W,isSelecting:!!le,selectionMode:v,selectionKeyPressed:U,paneClickDistance:m,selectionOnDrag:$,children:[t,ae&&f.jsx(xM,{onSelectionContextMenu:N,noPanClassName:T,disableKeyboardA11y:L})]})})}zx.displayName="FlowRenderer";const SM=H.memo(zx),wM=t=>a=>t?qf(a.nodeLookup,{x:0,y:0,width:a.width,height:a.height},a.transform,!0).map(l=>l.id):Array.from(a.nodeLookup.keys());function NM(t){return Oe(H.useCallback(wM(t),[t]),Ke)}const _M=t=>t.updateNodeInternals;function EM(){const t=Oe(_M),[a]=H.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(l=>{const o=new Map;l.forEach(r=>{const c=r.target.getAttribute("data-id");o.set(c,{id:c,nodeElement:r.target,force:!0})}),t(o)}));return H.useEffect(()=>()=>{a?.disconnect()},[a]),a}function CM({node:t,nodeType:a,hasDimensions:l,resizeObserver:o}){const r=Qe(),c=H.useRef(null),d=H.useRef(null),m=H.useRef(t.sourcePosition),y=H.useRef(t.targetPosition),p=H.useRef(a),g=l&&!!t.internals.handleBounds;return H.useEffect(()=>{c.current&&!t.hidden&&(!g||d.current!==c.current)&&(d.current&&o?.unobserve(d.current),o?.observe(c.current),d.current=c.current)},[g,t.hidden]),H.useEffect(()=>()=>{d.current&&(o?.unobserve(d.current),d.current=null)},[]),H.useEffect(()=>{if(c.current){const v=p.current!==a,x=m.current!==t.sourcePosition,w=y.current!==t.targetPosition;(v||x||w)&&(p.current=a,m.current=t.sourcePosition,y.current=t.targetPosition,r.getState().updateNodeInternals(new Map([[t.id,{id:t.id,nodeElement:c.current,force:!0}]])))}},[t.id,a,t.sourcePosition,t.targetPosition]),c}function TM({id:t,onClick:a,onMouseEnter:l,onMouseMove:o,onMouseLeave:r,onContextMenu:c,onDoubleClick:d,nodesDraggable:m,elementsSelectable:y,nodesConnectable:p,nodesFocusable:g,resizeObserver:v,noDragClassName:x,noPanClassName:w,disableKeyboardA11y:S,rfId:M,nodeTypes:R,nodeClickDistance:z,onError:O}){const{node:C,internals:_,isParent:k}=Oe(se=>{const ue=se.nodeLookup.get(t),be=se.parentLookup.has(t);return{node:ue,internals:ue.internals,isParent:be}},Ke);let A=C.type||"default",B=R?.[A]||v0[A];B===void 0&&(O?.("003",yn.error003(A)),A="default",B=R?.default||v0.default);const X=!!(C.draggable||m&&typeof C.draggable>"u"),K=!!(C.selectable||y&&typeof C.selectable>"u"),de=!!(C.connectable||p&&typeof C.connectable>"u"),F=!!(C.focusable||g&&typeof C.focusable>"u"),te=Qe(),ce=Jv(C),N=CM({node:C,nodeType:A,hasDimensions:ce,resizeObserver:v}),D=Ax({nodeRef:N,disabled:C.hidden||!X,noDragClassName:x,handleSelector:C.dragHandle,nodeId:t,isSelectable:K,nodeClickDistance:z}),T=Mx();if(C.hidden)return null;const L=$n(C),G=yM(C),Z=K||X||a||l||o||r,ae=l?se=>l(se,{..._.userNode}):void 0,j=o?se=>o(se,{..._.userNode}):void 0,U=r?se=>r(se,{..._.userNode}):void 0,Y=c?se=>c(se,{..._.userNode}):void 0,W=d?se=>d(se,{..._.userNode}):void 0,fe=se=>{const{selectNodesOnDrag:ue,nodeDragThreshold:be}=te.getState();K&&(!ue||!X||be>0)&&Tf({id:t,store:te,nodeRef:N}),a&&a(se,{..._.userNode})},$=se=>{if(!(tx(se.nativeEvent)||S)){if(Yv.includes(se.key)&&K){const ue=se.key==="Escape";Tf({id:t,store:te,unselect:ue,nodeRef:N})}else if(X&&C.selected&&Object.prototype.hasOwnProperty.call(nc,se.key)){se.preventDefault();const{ariaLabelConfig:ue}=te.getState();te.setState({ariaLiveMessage:ue["node.a11yDescription.ariaLiveMessage"]({direction:se.key.replace("Arrow","").toLowerCase(),x:~~_.positionAbsolute.x,y:~~_.positionAbsolute.y})}),T({direction:nc[se.key],factor:se.shiftKey?4:1})}}},le=()=>{if(S||!N.current?.matches(":focus-visible"))return;const{transform:se,width:ue,height:be,autoPanOnNodeFocus:ve,setCenter:xe}=te.getState();if(!ve)return;qf(new Map([[t,C]]),{x:0,y:0,width:ue,height:be},se,!0).length>0||xe(C.position.x+L.width/2,C.position.y+L.height/2,{zoom:se[2]})};return f.jsx("div",{className:st(["react-flow__node",`react-flow__node-${A}`,{[w]:X},C.className,{selected:C.selected,selectable:K,parent:k,draggable:X,dragging:D}]),ref:N,style:{zIndex:_.z,transform:`translate(${_.positionAbsolute.x}px,${_.positionAbsolute.y}px)`,pointerEvents:Z?"all":"none",visibility:ce?"visible":"hidden",...C.style,...G},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:ae,onMouseMove:j,onMouseLeave:U,onContextMenu:Y,onClick:fe,onDoubleClick:W,onKeyDown:F?$:void 0,tabIndex:F?0:void 0,onFocus:F?le:void 0,role:C.ariaRole??(F?"group":void 0),"aria-roledescription":"node","aria-describedby":S?void 0:`${bx}-${M}`,"aria-label":C.ariaLabel,...C.domAttributes,children:f.jsx(cM,{value:t,children:f.jsx(B,{id:t,data:C.data,type:A,positionAbsoluteX:_.positionAbsolute.x,positionAbsoluteY:_.positionAbsolute.y,selected:C.selected??!1,selectable:K,draggable:X,deletable:C.deletable??!0,isConnectable:de,sourcePosition:C.sourcePosition,targetPosition:C.targetPosition,dragging:D,dragHandle:C.dragHandle,zIndex:_.z,parentId:C.parentId,...L})})})}var AM=H.memo(TM);const MM=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,onError:t.onError});function Rx(t){const{nodesDraggable:a,nodesConnectable:l,nodesFocusable:o,elementsSelectable:r,onError:c}=Oe(MM,Ke),d=NM(t.onlyRenderVisibleElements),m=EM();return f.jsx("div",{className:"react-flow__nodes",style:mc,children:d.map(y=>f.jsx(AM,{id:y,nodeTypes:t.nodeTypes,nodeExtent:t.nodeExtent,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,resizeObserver:m,nodesDraggable:a,nodesConnectable:l,nodesFocusable:o,elementsSelectable:r,nodeClickDistance:t.nodeClickDistance,onError:c},y))})}Rx.displayName="NodeRenderer";const jM=H.memo(Rx);function zM(t){return Oe(H.useCallback(l=>{if(!t)return l.edges.map(r=>r.id);const o=[];if(l.width&&l.height)for(const r of l.edges){const c=l.nodeLookup.get(r.source),d=l.nodeLookup.get(r.target);c&&d&&jT({sourceNode:c,targetNode:d,width:l.width,height:l.height,transform:l.transform})&&o.push(r.id)}return o},[t]),Ke)}const RM=({color:t="none",strokeWidth:a=1})=>{const l={strokeWidth:a,...t&&{stroke:t}};return f.jsx("polyline",{className:"arrow",style:l,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},DM=({color:t="none",strokeWidth:a=1})=>{const l={strokeWidth:a,...t&&{stroke:t,fill:t}};return f.jsx("polyline",{className:"arrowclosed",style:l,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},b0={[Wr.Arrow]:RM,[Wr.ArrowClosed]:DM};function OM(t){const a=Qe();return H.useMemo(()=>Object.prototype.hasOwnProperty.call(b0,t)?b0[t]:(a.getState().onError?.("009",yn.error009(t)),null),[t])}const LM=({id:t,type:a,color:l,width:o=12.5,height:r=12.5,markerUnits:c="strokeWidth",strokeWidth:d,orient:m="auto-start-reverse"})=>{const y=OM(a);return y?f.jsx("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${o}`,markerHeight:`${r}`,viewBox:"-10 -10 20 20",markerUnits:c,orient:m,refX:"0",refY:"0",children:f.jsx(y,{color:l,strokeWidth:d})}):null},Dx=({defaultColor:t,rfId:a})=>{const l=Oe(c=>c.edges),o=Oe(c=>c.defaultEdgeOptions),r=H.useMemo(()=>kT(l,{id:a,defaultColor:t,defaultMarkerStart:o?.markerStart,defaultMarkerEnd:o?.markerEnd}),[l,o,a,t]);return r.length?f.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:f.jsx("defs",{children:r.map(c=>f.jsx(LM,{id:c.id,type:c.type,color:c.color,width:c.width,height:c.height,markerUnits:c.markerUnits,strokeWidth:c.strokeWidth,orient:c.orient},c.id))})}):null};Dx.displayName="MarkerDefinitions";var HM=H.memo(Dx);function Ox({x:t,y:a,label:l,labelStyle:o,labelShowBg:r=!0,labelBgStyle:c,labelBgPadding:d=[2,4],labelBgBorderRadius:m=2,children:y,className:p,...g}){const[v,x]=H.useState({x:1,y:0,width:0,height:0}),w=st(["react-flow__edge-textwrapper",p]),S=H.useRef(null);return H.useEffect(()=>{if(S.current){const M=S.current.getBBox();x({x:M.x,y:M.y,width:M.width,height:M.height})}},[l]),l?f.jsxs("g",{transform:`translate(${t-v.width/2} ${a-v.height/2})`,className:w,visibility:v.width?"visible":"hidden",...g,children:[r&&f.jsx("rect",{width:v.width+2*d[0],x:-d[0],y:-d[1],height:v.height+2*d[1],className:"react-flow__edge-textbg",style:c,rx:m,ry:m}),f.jsx("text",{className:"react-flow__edge-text",y:v.height/2,dy:"0.3em",ref:S,style:o,children:l}),y]}):null}Ox.displayName="EdgeText";const IM=H.memo(Ox);function pc({path:t,labelX:a,labelY:l,label:o,labelStyle:r,labelShowBg:c,labelBgStyle:d,labelBgPadding:m,labelBgBorderRadius:y,interactionWidth:p=20,...g}){return f.jsxs(f.Fragment,{children:[f.jsx("path",{...g,d:t,fill:"none",className:st(["react-flow__edge-path",g.className])}),p?f.jsx("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:p,className:"react-flow__edge-interaction"}):null,o&&ln(a)&&ln(l)?f.jsx(IM,{x:a,y:l,label:o,labelStyle:r,labelShowBg:c,labelBgStyle:d,labelBgPadding:m,labelBgBorderRadius:y}):null]})}function S0({pos:t,x1:a,y1:l,x2:o,y2:r}){return t===ge.Left||t===ge.Right?[.5*(a+o),l]:[a,.5*(l+r)]}function Lx({sourceX:t,sourceY:a,sourcePosition:l=ge.Bottom,targetX:o,targetY:r,targetPosition:c=ge.Top}){const[d,m]=S0({pos:l,x1:t,y1:a,x2:o,y2:r}),[y,p]=S0({pos:c,x1:o,y1:r,x2:t,y2:a}),[g,v,x,w]=ax({sourceX:t,sourceY:a,targetX:o,targetY:r,sourceControlX:d,sourceControlY:m,targetControlX:y,targetControlY:p});return[`M${t},${a} C${d},${m} ${y},${p} ${o},${r}`,g,v,x,w]}function Hx(t){return H.memo(({id:a,sourceX:l,sourceY:o,targetX:r,targetY:c,sourcePosition:d,targetPosition:m,label:y,labelStyle:p,labelShowBg:g,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:w,style:S,markerEnd:M,markerStart:R,interactionWidth:z})=>{const[O,C,_]=Lx({sourceX:l,sourceY:o,sourcePosition:d,targetX:r,targetY:c,targetPosition:m}),k=t.isInternal?void 0:a;return f.jsx(pc,{id:k,path:O,labelX:C,labelY:_,label:y,labelStyle:p,labelShowBg:g,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:w,style:S,markerEnd:M,markerStart:R,interactionWidth:z})})}const kM=Hx({isInternal:!1}),Ix=Hx({isInternal:!0});kM.displayName="SimpleBezierEdge";Ix.displayName="SimpleBezierEdgeInternal";function kx(t){return H.memo(({id:a,sourceX:l,sourceY:o,targetX:r,targetY:c,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:p,labelBgPadding:g,labelBgBorderRadius:v,style:x,sourcePosition:w=ge.Bottom,targetPosition:S=ge.Top,markerEnd:M,markerStart:R,pathOptions:z,interactionWidth:O})=>{const[C,_,k]=wf({sourceX:l,sourceY:o,sourcePosition:w,targetX:r,targetY:c,targetPosition:S,borderRadius:z?.borderRadius,offset:z?.offset,stepPosition:z?.stepPosition}),A=t.isInternal?void 0:a;return f.jsx(pc,{id:A,path:C,labelX:_,labelY:k,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:p,labelBgPadding:g,labelBgBorderRadius:v,style:x,markerEnd:M,markerStart:R,interactionWidth:O})})}const Bx=kx({isInternal:!1}),Ux=kx({isInternal:!0});Bx.displayName="SmoothStepEdge";Ux.displayName="SmoothStepEdgeInternal";function Gx(t){return H.memo(({id:a,...l})=>{const o=t.isInternal?void 0:a;return f.jsx(Bx,{...l,id:o,pathOptions:H.useMemo(()=>({borderRadius:0,offset:l.pathOptions?.offset}),[l.pathOptions?.offset])})})}const BM=Gx({isInternal:!1}),qx=Gx({isInternal:!0});BM.displayName="StepEdge";qx.displayName="StepEdgeInternal";function Yx(t){return H.memo(({id:a,sourceX:l,sourceY:o,targetX:r,targetY:c,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:p,labelBgPadding:g,labelBgBorderRadius:v,style:x,markerEnd:w,markerStart:S,interactionWidth:M})=>{const[R,z,O]=ox({sourceX:l,sourceY:o,targetX:r,targetY:c}),C=t.isInternal?void 0:a;return f.jsx(pc,{id:C,path:R,labelX:z,labelY:O,label:d,labelStyle:m,labelShowBg:y,labelBgStyle:p,labelBgPadding:g,labelBgBorderRadius:v,style:x,markerEnd:w,markerStart:S,interactionWidth:M})})}const UM=Yx({isInternal:!1}),Vx=Yx({isInternal:!0});UM.displayName="StraightEdge";Vx.displayName="StraightEdgeInternal";function $x(t){return H.memo(({id:a,sourceX:l,sourceY:o,targetX:r,targetY:c,sourcePosition:d=ge.Bottom,targetPosition:m=ge.Top,label:y,labelStyle:p,labelShowBg:g,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:w,style:S,markerEnd:M,markerStart:R,pathOptions:z,interactionWidth:O})=>{const[C,_,k]=ix({sourceX:l,sourceY:o,sourcePosition:d,targetX:r,targetY:c,targetPosition:m,curvature:z?.curvature}),A=t.isInternal?void 0:a;return f.jsx(pc,{id:A,path:C,labelX:_,labelY:k,label:y,labelStyle:p,labelShowBg:g,labelBgStyle:v,labelBgPadding:x,labelBgBorderRadius:w,style:S,markerEnd:M,markerStart:R,interactionWidth:O})})}const GM=$x({isInternal:!1}),Xx=$x({isInternal:!0});GM.displayName="BezierEdge";Xx.displayName="BezierEdgeInternal";const w0={default:Xx,straight:Vx,step:qx,smoothstep:Ux,simplebezier:Ix},N0={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},qM=(t,a,l)=>l===ge.Left?t-a:l===ge.Right?t+a:t,YM=(t,a,l)=>l===ge.Top?t-a:l===ge.Bottom?t+a:t,_0="react-flow__edgeupdater";function E0({position:t,centerX:a,centerY:l,radius:o=10,onMouseDown:r,onMouseEnter:c,onMouseOut:d,type:m}){return f.jsx("circle",{onMouseDown:r,onMouseEnter:c,onMouseOut:d,className:st([_0,`${_0}-${m}`]),cx:qM(a,o,t),cy:YM(l,o,t),r:o,stroke:"transparent",fill:"transparent"})}function VM({isReconnectable:t,reconnectRadius:a,edge:l,sourceX:o,sourceY:r,targetX:c,targetY:d,sourcePosition:m,targetPosition:y,onReconnect:p,onReconnectStart:g,onReconnectEnd:v,setReconnecting:x,setUpdateHover:w}){const S=Qe(),M=(_,k)=>{if(_.button!==0)return;const{autoPanOnConnect:A,domNode:B,connectionMode:X,connectionRadius:K,lib:de,onConnectStart:F,cancelConnection:te,nodeLookup:ce,rfId:N,panBy:D,updateConnection:T}=S.getState(),L=k.type==="target",G=(j,U)=>{x(!1),v?.(j,l,k.type,U)},Z=j=>p?.(l,j),ae=(j,U)=>{x(!0),g?.(_,l,k.type),F?.(j,U)};Ef.onPointerDown(_.nativeEvent,{autoPanOnConnect:A,connectionMode:X,connectionRadius:K,domNode:B,handleId:k.id,nodeId:k.nodeId,nodeLookup:ce,isTarget:L,edgeUpdaterType:k.type,lib:de,flowId:N,cancelConnection:te,panBy:D,isValidConnection:(...j)=>S.getState().isValidConnection?.(...j)??!0,onConnect:Z,onConnectStart:ae,onConnectEnd:(...j)=>S.getState().onConnectEnd?.(...j),onReconnectEnd:G,updateConnection:T,getTransform:()=>S.getState().transform,getFromHandle:()=>S.getState().connection.fromHandle,dragThreshold:S.getState().connectionDragThreshold,handleDomNode:_.currentTarget})},R=_=>M(_,{nodeId:l.target,id:l.targetHandle??null,type:"target"}),z=_=>M(_,{nodeId:l.source,id:l.sourceHandle??null,type:"source"}),O=()=>w(!0),C=()=>w(!1);return f.jsxs(f.Fragment,{children:[(t===!0||t==="source")&&f.jsx(E0,{position:m,centerX:o,centerY:r,radius:a,onMouseDown:R,onMouseEnter:O,onMouseOut:C,type:"source"}),(t===!0||t==="target")&&f.jsx(E0,{position:y,centerX:c,centerY:d,radius:a,onMouseDown:z,onMouseEnter:O,onMouseOut:C,type:"target"})]})}function $M({id:t,edgesFocusable:a,edgesReconnectable:l,elementsSelectable:o,onClick:r,onDoubleClick:c,onContextMenu:d,onMouseEnter:m,onMouseMove:y,onMouseLeave:p,reconnectRadius:g,onReconnect:v,onReconnectStart:x,onReconnectEnd:w,rfId:S,edgeTypes:M,noPanClassName:R,onError:z,disableKeyboardA11y:O}){let C=Oe(xe=>xe.edgeLookup.get(t));const _=Oe(xe=>xe.defaultEdgeOptions);C=_?{..._,...C}:C;let k=C.type||"default",A=M?.[k]||w0[k];A===void 0&&(z?.("011",yn.error011(k)),k="default",A=M?.default||w0.default);const B=!!(C.focusable||a&&typeof C.focusable>"u"),X=typeof v<"u"&&(C.reconnectable||l&&typeof C.reconnectable>"u"),K=!!(C.selectable||o&&typeof C.selectable>"u"),de=H.useRef(null),[F,te]=H.useState(!1),[ce,N]=H.useState(!1),D=Qe(),{zIndex:T,sourceX:L,sourceY:G,targetX:Z,targetY:ae,sourcePosition:j,targetPosition:U}=Oe(H.useCallback(xe=>{const _e=xe.nodeLookup.get(C.source),je=xe.nodeLookup.get(C.target);if(!_e||!je)return{zIndex:C.zIndex,...N0};const Ge=IT({id:t,sourceNode:_e,targetNode:je,sourceHandle:C.sourceHandle||null,targetHandle:C.targetHandle||null,connectionMode:xe.connectionMode,onError:z});return{zIndex:MT({selected:C.selected,zIndex:C.zIndex,sourceNode:_e,targetNode:je,elevateOnSelect:xe.elevateEdgesOnSelect,zIndexMode:xe.zIndexMode}),...Ge||N0}},[C.source,C.target,C.sourceHandle,C.targetHandle,C.selected,C.zIndex]),Ke),Y=H.useMemo(()=>C.markerStart?`url('#${Nf(C.markerStart,S)}')`:void 0,[C.markerStart,S]),W=H.useMemo(()=>C.markerEnd?`url('#${Nf(C.markerEnd,S)}')`:void 0,[C.markerEnd,S]);if(C.hidden||L===null||G===null||Z===null||ae===null)return null;const fe=xe=>{const{addSelectedEdges:_e,unselectNodesAndEdges:je,multiSelectionActive:Ge}=D.getState();K&&(D.setState({nodesSelectionActive:!1}),C.selected&&Ge?(je({nodes:[],edges:[C]}),de.current?.blur()):_e([t])),r&&r(xe,C)},$=c?xe=>{c(xe,{...C})}:void 0,le=d?xe=>{d(xe,{...C})}:void 0,se=m?xe=>{m(xe,{...C})}:void 0,ue=y?xe=>{y(xe,{...C})}:void 0,be=p?xe=>{p(xe,{...C})}:void 0,ve=xe=>{if(!O&&Yv.includes(xe.key)&&K){const{unselectNodesAndEdges:_e,addSelectedEdges:je}=D.getState();xe.key==="Escape"?(de.current?.blur(),_e({edges:[C]})):je([t])}};return f.jsx("svg",{style:{zIndex:T},children:f.jsxs("g",{className:st(["react-flow__edge",`react-flow__edge-${k}`,C.className,R,{selected:C.selected,animated:C.animated,inactive:!K&&!r,updating:F,selectable:K}]),onClick:fe,onDoubleClick:$,onContextMenu:le,onMouseEnter:se,onMouseMove:ue,onMouseLeave:be,onKeyDown:B?ve:void 0,tabIndex:B?0:void 0,role:C.ariaRole??(B?"group":"img"),"aria-roledescription":"edge","data-id":t,"data-testid":`rf__edge-${t}`,"aria-label":C.ariaLabel===null?void 0:C.ariaLabel||`Edge from ${C.source} to ${C.target}`,"aria-describedby":B?`${Sx}-${S}`:void 0,ref:de,...C.domAttributes,children:[!ce&&f.jsx(A,{id:t,source:C.source,target:C.target,type:C.type,selected:C.selected,animated:C.animated,selectable:K,deletable:C.deletable??!0,label:C.label,labelStyle:C.labelStyle,labelShowBg:C.labelShowBg,labelBgStyle:C.labelBgStyle,labelBgPadding:C.labelBgPadding,labelBgBorderRadius:C.labelBgBorderRadius,sourceX:L,sourceY:G,targetX:Z,targetY:ae,sourcePosition:j,targetPosition:U,data:C.data,style:C.style,sourceHandleId:C.sourceHandle,targetHandleId:C.targetHandle,markerStart:Y,markerEnd:W,pathOptions:"pathOptions"in C?C.pathOptions:void 0,interactionWidth:C.interactionWidth}),X&&f.jsx(VM,{edge:C,isReconnectable:X,reconnectRadius:g,onReconnect:v,onReconnectStart:x,onReconnectEnd:w,sourceX:L,sourceY:G,targetX:Z,targetY:ae,sourcePosition:j,targetPosition:U,setUpdateHover:te,setReconnecting:N})]})})}var XM=H.memo($M);const PM=t=>({edgesFocusable:t.edgesFocusable,edgesReconnectable:t.edgesReconnectable,elementsSelectable:t.elementsSelectable,connectionMode:t.connectionMode,onError:t.onError});function Px({defaultMarkerColor:t,onlyRenderVisibleElements:a,rfId:l,edgeTypes:o,noPanClassName:r,onReconnect:c,onEdgeContextMenu:d,onEdgeMouseEnter:m,onEdgeMouseMove:y,onEdgeMouseLeave:p,onEdgeClick:g,reconnectRadius:v,onEdgeDoubleClick:x,onReconnectStart:w,onReconnectEnd:S,disableKeyboardA11y:M}){const{edgesFocusable:R,edgesReconnectable:z,elementsSelectable:O,onError:C}=Oe(PM,Ke),_=zM(a);return f.jsxs("div",{className:"react-flow__edges",children:[f.jsx(HM,{defaultColor:t,rfId:l}),_.map(k=>f.jsx(XM,{id:k,edgesFocusable:R,edgesReconnectable:z,elementsSelectable:O,noPanClassName:r,onReconnect:c,onContextMenu:d,onMouseEnter:m,onMouseMove:y,onMouseLeave:p,onClick:g,reconnectRadius:v,onDoubleClick:x,onReconnectStart:w,onReconnectEnd:S,rfId:l,onError:C,edgeTypes:o,disableKeyboardA11y:M},k))]})}Px.displayName="EdgeRenderer";const FM=H.memo(Px),ZM=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function KM({children:t}){const a=Oe(ZM);return f.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:a},children:t})}function QM(t){const a=hc(),l=H.useRef(!1);H.useEffect(()=>{!l.current&&a.viewportInitialized&&t&&(setTimeout(()=>t(a),1),l.current=!0)},[t,a.viewportInitialized])}const JM=t=>t.panZoom?.syncViewport;function WM(t){const a=Oe(JM),l=Qe();return H.useEffect(()=>{t&&(a?.(t),l.setState({transform:[t.x,t.y,t.zoom]}))},[t,a]),null}function ej(t){return t.connection.inProgress?{...t.connection,to:Po(t.connection.to,t.transform)}:{...t.connection}}function tj(t){return ej}function nj(t){const a=tj();return Oe(a,Ke)}const aj=t=>({nodesConnectable:t.nodesConnectable,isValid:t.connection.isValid,inProgress:t.connection.inProgress,width:t.width,height:t.height});function ij({containerStyle:t,style:a,type:l,component:o}){const{nodesConnectable:r,width:c,height:d,isValid:m,inProgress:y}=Oe(aj,Ke);return!(c&&r&&y)?null:f.jsx("svg",{style:t,width:c,height:d,className:"react-flow__connectionline react-flow__container",children:f.jsx("g",{className:st(["react-flow__connection",Xv(m)]),children:f.jsx(Fx,{style:a,type:l,CustomComponent:o,isValid:m})})})}const Fx=({style:t,type:a=Ea.Bezier,CustomComponent:l,isValid:o})=>{const{inProgress:r,from:c,fromNode:d,fromHandle:m,fromPosition:y,to:p,toNode:g,toHandle:v,toPosition:x,pointer:w}=nj();if(!r)return;if(l)return f.jsx(l,{connectionLineType:a,connectionLineStyle:t,fromNode:d,fromHandle:m,fromX:c.x,fromY:c.y,toX:p.x,toY:p.y,fromPosition:y,toPosition:x,connectionStatus:Xv(o),toNode:g,toHandle:v,pointer:w});let S="";const M={sourceX:c.x,sourceY:c.y,sourcePosition:y,targetX:p.x,targetY:p.y,targetPosition:x};switch(a){case Ea.Bezier:[S]=ix(M);break;case Ea.SimpleBezier:[S]=Lx(M);break;case Ea.Step:[S]=wf({...M,borderRadius:0});break;case Ea.SmoothStep:[S]=wf(M);break;default:[S]=ox(M)}return f.jsx("path",{d:S,fill:"none",className:"react-flow__connection-path",style:t})};Fx.displayName="ConnectionLine";const lj={};function C0(t=lj){H.useRef(t),Qe(),H.useEffect(()=>{},[t])}function oj(){Qe(),H.useRef(!1),H.useEffect(()=>{},[])}function Zx({nodeTypes:t,edgeTypes:a,onInit:l,onNodeClick:o,onEdgeClick:r,onNodeDoubleClick:c,onEdgeDoubleClick:d,onNodeMouseEnter:m,onNodeMouseMove:y,onNodeMouseLeave:p,onNodeContextMenu:g,onSelectionContextMenu:v,onSelectionStart:x,onSelectionEnd:w,connectionLineType:S,connectionLineStyle:M,connectionLineComponent:R,connectionLineContainerStyle:z,selectionKeyCode:O,selectionOnDrag:C,selectionMode:_,multiSelectionKeyCode:k,panActivationKeyCode:A,zoomActivationKeyCode:B,deleteKeyCode:X,onlyRenderVisibleElements:K,elementsSelectable:de,defaultViewport:F,translateExtent:te,minZoom:ce,maxZoom:N,preventScrolling:D,defaultMarkerColor:T,zoomOnScroll:L,zoomOnPinch:G,panOnScroll:Z,panOnScrollSpeed:ae,panOnScrollMode:j,zoomOnDoubleClick:U,panOnDrag:Y,onPaneClick:W,onPaneMouseEnter:fe,onPaneMouseMove:$,onPaneMouseLeave:le,onPaneScroll:se,onPaneContextMenu:ue,paneClickDistance:be,nodeClickDistance:ve,onEdgeContextMenu:xe,onEdgeMouseEnter:_e,onEdgeMouseMove:je,onEdgeMouseLeave:Ge,reconnectRadius:ke,onReconnect:ut,onReconnectStart:Zt,onReconnectEnd:zt,noDragClassName:Kt,noWheelClassName:xn,noPanClassName:Aa,disableKeyboardA11y:Ma,nodeExtent:ft,rfId:mi,viewport:bn,onViewportChange:Xn}){return C0(t),C0(a),oj(),QM(l),WM(bn),f.jsx(SM,{onPaneClick:W,onPaneMouseEnter:fe,onPaneMouseMove:$,onPaneMouseLeave:le,onPaneContextMenu:ue,onPaneScroll:se,paneClickDistance:be,deleteKeyCode:X,selectionKeyCode:O,selectionOnDrag:C,selectionMode:_,onSelectionStart:x,onSelectionEnd:w,multiSelectionKeyCode:k,panActivationKeyCode:A,zoomActivationKeyCode:B,elementsSelectable:de,zoomOnScroll:L,zoomOnPinch:G,zoomOnDoubleClick:U,panOnScroll:Z,panOnScrollSpeed:ae,panOnScrollMode:j,panOnDrag:Y,defaultViewport:F,translateExtent:te,minZoom:ce,maxZoom:N,onSelectionContextMenu:v,preventScrolling:D,noDragClassName:Kt,noWheelClassName:xn,noPanClassName:Aa,disableKeyboardA11y:Ma,onViewportChange:Xn,isControlledViewport:!!bn,children:f.jsxs(KM,{children:[f.jsx(FM,{edgeTypes:a,onEdgeClick:r,onEdgeDoubleClick:d,onReconnect:ut,onReconnectStart:Zt,onReconnectEnd:zt,onlyRenderVisibleElements:K,onEdgeContextMenu:xe,onEdgeMouseEnter:_e,onEdgeMouseMove:je,onEdgeMouseLeave:Ge,reconnectRadius:ke,defaultMarkerColor:T,noPanClassName:Aa,disableKeyboardA11y:Ma,rfId:mi}),f.jsx(ij,{style:M,type:S,component:R,containerStyle:z}),f.jsx("div",{className:"react-flow__edgelabel-renderer"}),f.jsx(jM,{nodeTypes:t,onNodeClick:o,onNodeDoubleClick:c,onNodeMouseEnter:m,onNodeMouseMove:y,onNodeMouseLeave:p,onNodeContextMenu:g,nodeClickDistance:ve,onlyRenderVisibleElements:K,noPanClassName:Aa,noDragClassName:Kt,disableKeyboardA11y:Ma,nodeExtent:ft,rfId:mi}),f.jsx("div",{className:"react-flow__viewport-portal"})]})})}Zx.displayName="GraphView";const sj=H.memo(Zx),T0=({nodes:t,edges:a,defaultNodes:l,defaultEdges:o,width:r,height:c,fitView:d,fitViewOptions:m,minZoom:y=.5,maxZoom:p=2,nodeOrigin:g,nodeExtent:v,zIndexMode:x="basic"}={})=>{const w=new Map,S=new Map,M=new Map,R=new Map,z=o??a??[],O=l??t??[],C=g??[0,0],_=v??Ho;cx(M,R,z);const{nodesInitialized:k}=_f(O,w,S,{nodeOrigin:C,nodeExtent:_,zIndexMode:x});let A=[0,0,1];if(d&&r&&c){const B=$o(w,{filter:F=>!!((F.width||F.initialWidth)&&(F.height||F.initialHeight))}),{x:X,y:K,zoom:de}=Yf(B,r,c,y,p,m?.padding??.1);A=[X,K,de]}return{rfId:"1",width:r??0,height:c??0,transform:A,nodes:O,nodesInitialized:k,nodeLookup:w,parentLookup:S,edges:z,edgeLookup:R,connectionLookup:M,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:l!==void 0,hasDefaultEdges:o!==void 0,panZoom:null,minZoom:y,maxZoom:p,translateExtent:Ho,nodeExtent:_,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:ui.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:C,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:d??!1,fitViewOptions:m,fitViewResolver:null,connection:{...$v},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:NT,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:Vv,zIndexMode:x,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},rj=({nodes:t,edges:a,defaultNodes:l,defaultEdges:o,width:r,height:c,fitView:d,fitViewOptions:m,minZoom:y,maxZoom:p,nodeOrigin:g,nodeExtent:v,zIndexMode:x})=>TA((w,S)=>{async function M(){const{nodeLookup:R,panZoom:z,fitViewOptions:O,fitViewResolver:C,width:_,height:k,minZoom:A,maxZoom:B}=S();z&&(await ST({nodes:R,width:_,height:k,panZoom:z,minZoom:A,maxZoom:B},O),C?.resolve(!0),w({fitViewResolver:null}))}return{...T0({nodes:t,edges:a,width:r,height:c,fitView:d,fitViewOptions:m,minZoom:y,maxZoom:p,nodeOrigin:g,nodeExtent:v,defaultNodes:l,defaultEdges:o,zIndexMode:x}),setNodes:R=>{const{nodeLookup:z,parentLookup:O,nodeOrigin:C,elevateNodesOnSelect:_,fitViewQueued:k,zIndexMode:A,nodesSelectionActive:B}=S(),{nodesInitialized:X,hasSelectedNodes:K}=_f(R,z,O,{nodeOrigin:C,nodeExtent:v,elevateNodesOnSelect:_,checkEquality:!0,zIndexMode:A}),de=B&&K;k&&X?(M(),w({nodes:R,nodesInitialized:X,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:de})):w({nodes:R,nodesInitialized:X,nodesSelectionActive:de})},setEdges:R=>{const{connectionLookup:z,edgeLookup:O}=S();cx(z,O,R),w({edges:R})},setDefaultNodesAndEdges:(R,z)=>{if(R){const{setNodes:O}=S();O(R),w({hasDefaultNodes:!0})}if(z){const{setEdges:O}=S();O(z),w({hasDefaultEdges:!0})}},updateNodeInternals:R=>{const{triggerNodeChanges:z,nodeLookup:O,parentLookup:C,domNode:_,nodeOrigin:k,nodeExtent:A,debug:B,fitViewQueued:X,zIndexMode:K}=S(),{changes:de,updatedInternals:F}=$T(R,O,C,_,k,A,K);F&&(GT(O,C,{nodeOrigin:k,nodeExtent:A,zIndexMode:K}),X?(M(),w({fitViewQueued:!1,fitViewOptions:void 0})):w({}),de?.length>0&&(B&&console.log("React Flow: trigger node changes",de),z?.(de)))},updateNodePositions:(R,z=!1)=>{const O=[];let C=[];const{nodeLookup:_,triggerNodeChanges:k,connection:A,updateConnection:B,onNodesChangeMiddlewareMap:X}=S();for(const[K,de]of R){const F=_.get(K),te=!!(F?.expandParent&&F?.parentId&&de?.position),ce={id:K,type:"position",position:te?{x:Math.max(0,de.position.x),y:Math.max(0,de.position.y)}:de.position,dragging:z};if(F&&A.inProgress&&A.fromNode.id===F.id){const N=fi(F,A.fromHandle,ge.Left,!0);B({...A,from:N})}te&&F.parentId&&O.push({id:K,parentId:F.parentId,rect:{...de.internals.positionAbsolute,width:de.measured.width??0,height:de.measured.height??0}}),C.push(ce)}if(O.length>0){const{parentLookup:K,nodeOrigin:de}=S(),F=Zf(O,_,K,de);C.push(...F)}for(const K of X.values())C=K(C);k(C)},triggerNodeChanges:R=>{const{onNodesChange:z,setNodes:O,nodes:C,hasDefaultNodes:_,debug:k}=S();if(R?.length){if(_){const A=_x(R,C);O(A)}k&&console.log("React Flow: trigger node changes",R),z?.(R)}},triggerEdgeChanges:R=>{const{onEdgesChange:z,setEdges:O,edges:C,hasDefaultEdges:_,debug:k}=S();if(R?.length){if(_){const A=Ex(R,C);O(A)}k&&console.log("React Flow: trigger edge changes",R),z?.(R)}},addSelectedNodes:R=>{const{multiSelectionActive:z,edgeLookup:O,nodeLookup:C,triggerNodeChanges:_,triggerEdgeChanges:k}=S();if(z){const A=R.map(B=>ei(B,!0));_(A);return}_(ul(C,new Set([...R]),!0)),k(ul(O))},addSelectedEdges:R=>{const{multiSelectionActive:z,edgeLookup:O,nodeLookup:C,triggerNodeChanges:_,triggerEdgeChanges:k}=S();if(z){const A=R.map(B=>ei(B,!0));k(A);return}k(ul(O,new Set([...R]))),_(ul(C,new Set,!0))},unselectNodesAndEdges:({nodes:R,edges:z}={})=>{const{edges:O,nodes:C,nodeLookup:_,triggerNodeChanges:k,triggerEdgeChanges:A}=S(),B=R||C,X=z||O,K=[];for(const F of B){if(!F.selected)continue;const te=_.get(F.id);te&&(te.selected=!1),K.push(ei(F.id,!1))}const de=[];for(const F of X)F.selected&&de.push(ei(F.id,!1));k(K),A(de)},setMinZoom:R=>{const{panZoom:z,maxZoom:O}=S();z?.setScaleExtent([R,O]),w({minZoom:R})},setMaxZoom:R=>{const{panZoom:z,minZoom:O}=S();z?.setScaleExtent([O,R]),w({maxZoom:R})},setTranslateExtent:R=>{S().panZoom?.setTranslateExtent(R),w({translateExtent:R})},resetSelectedElements:()=>{const{edges:R,nodes:z,triggerNodeChanges:O,triggerEdgeChanges:C,elementsSelectable:_}=S();if(!_)return;const k=z.reduce((B,X)=>X.selected?[...B,ei(X.id,!1)]:B,[]),A=R.reduce((B,X)=>X.selected?[...B,ei(X.id,!1)]:B,[]);O(k),C(A)},setNodeExtent:R=>{const{nodes:z,nodeLookup:O,parentLookup:C,nodeOrigin:_,elevateNodesOnSelect:k,nodeExtent:A,zIndexMode:B}=S();R[0][0]===A[0][0]&&R[0][1]===A[0][1]&&R[1][0]===A[1][0]&&R[1][1]===A[1][1]||(_f(z,O,C,{nodeOrigin:_,nodeExtent:R,elevateNodesOnSelect:k,checkEquality:!1,zIndexMode:B}),w({nodeExtent:R}))},panBy:R=>{const{transform:z,width:O,height:C,panZoom:_,translateExtent:k}=S();return XT({delta:R,panZoom:_,transform:z,translateExtent:k,width:O,height:C})},setCenter:async(R,z,O)=>{const{width:C,height:_,maxZoom:k,panZoom:A}=S();if(!A)return Promise.resolve(!1);const B=typeof O?.zoom<"u"?O.zoom:k;return await A.setViewport({x:C/2-R*B,y:_/2-z*B,zoom:B},{duration:O?.duration,ease:O?.ease,interpolate:O?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{w({connection:{...$v}})},updateConnection:R=>{w({connection:R})},reset:()=>w({...T0()})}},Object.is);function Kx({initialNodes:t,initialEdges:a,defaultNodes:l,defaultEdges:o,initialWidth:r,initialHeight:c,initialMinZoom:d,initialMaxZoom:m,initialFitViewOptions:y,fitView:p,nodeOrigin:g,nodeExtent:v,zIndexMode:x,children:w}){const[S]=H.useState(()=>rj({nodes:t,edges:a,defaultNodes:l,defaultEdges:o,width:r,height:c,fitView:p,minZoom:d,maxZoom:m,fitViewOptions:y,nodeOrigin:g,nodeExtent:v,zIndexMode:x}));return f.jsx(AA,{value:S,children:f.jsx(KA,{children:w})})}function cj({children:t,nodes:a,edges:l,defaultNodes:o,defaultEdges:r,width:c,height:d,fitView:m,fitViewOptions:y,minZoom:p,maxZoom:g,nodeOrigin:v,nodeExtent:x,zIndexMode:w}){return H.useContext(fc)?f.jsx(f.Fragment,{children:t}):f.jsx(Kx,{initialNodes:a,initialEdges:l,defaultNodes:o,defaultEdges:r,initialWidth:c,initialHeight:d,fitView:m,initialFitViewOptions:y,initialMinZoom:p,initialMaxZoom:g,nodeOrigin:v,nodeExtent:x,zIndexMode:w,children:t})}const uj={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function dj({nodes:t,edges:a,defaultNodes:l,defaultEdges:o,className:r,nodeTypes:c,edgeTypes:d,onNodeClick:m,onEdgeClick:y,onInit:p,onMove:g,onMoveStart:v,onMoveEnd:x,onConnect:w,onConnectStart:S,onConnectEnd:M,onClickConnectStart:R,onClickConnectEnd:z,onNodeMouseEnter:O,onNodeMouseMove:C,onNodeMouseLeave:_,onNodeContextMenu:k,onNodeDoubleClick:A,onNodeDragStart:B,onNodeDrag:X,onNodeDragStop:K,onNodesDelete:de,onEdgesDelete:F,onDelete:te,onSelectionChange:ce,onSelectionDragStart:N,onSelectionDrag:D,onSelectionDragStop:T,onSelectionContextMenu:L,onSelectionStart:G,onSelectionEnd:Z,onBeforeDelete:ae,connectionMode:j,connectionLineType:U=Ea.Bezier,connectionLineStyle:Y,connectionLineComponent:W,connectionLineContainerStyle:fe,deleteKeyCode:$="Backspace",selectionKeyCode:le="Shift",selectionOnDrag:se=!1,selectionMode:ue=Io.Full,panActivationKeyCode:be="Space",multiSelectionKeyCode:ve=Bo()?"Meta":"Control",zoomActivationKeyCode:xe=Bo()?"Meta":"Control",snapToGrid:_e,snapGrid:je,onlyRenderVisibleElements:Ge=!1,selectNodesOnDrag:ke,nodesDraggable:ut,autoPanOnNodeFocus:Zt,nodesConnectable:zt,nodesFocusable:Kt,nodeOrigin:xn=wx,edgesFocusable:Aa,edgesReconnectable:Ma,elementsSelectable:ft=!0,defaultViewport:mi=GA,minZoom:bn=.5,maxZoom:Xn=2,translateExtent:ja=Ho,preventScrolling:gc=!0,nodeExtent:pi,defaultMarkerColor:yc="#b1b1b7",zoomOnScroll:vc=!0,zoomOnPinch:za=!0,panOnScroll:xt=!1,panOnScrollSpeed:rn=.5,panOnScrollMode:bt=oi.Free,zoomOnDoubleClick:xc=!0,panOnDrag:bc=!0,onPaneClick:Sc,onPaneMouseEnter:gi,onPaneMouseMove:yi,onPaneMouseLeave:vi,onPaneScroll:Sn,onPaneContextMenu:xi,paneClickDistance:Ra=1,nodeClickDistance:wc=0,children:Zo,onReconnect:Sl,onReconnectStart:Da,onReconnectEnd:Nc,onEdgeContextMenu:Ko,onEdgeDoubleClick:Qo,onEdgeMouseEnter:Jo,onEdgeMouseMove:wl,onEdgeMouseLeave:Nl,reconnectRadius:Wo=10,onNodesChange:es,onEdgesChange:cn,noDragClassName:rt="nodrag",noWheelClassName:yt="nowheel",noPanClassName:wn="nopan",fitView:bi,fitViewOptions:ts,connectOnClick:_c,attributionPosition:ns,proOptions:Oa,defaultEdgeOptions:_l,elevateNodesOnSelect:Pn=!0,elevateEdgesOnSelect:Fn=!1,disableKeyboardA11y:Zn=!1,autoPanOnConnect:Kn,autoPanOnNodeDrag:nt,autoPanSpeed:as,connectionRadius:is,isValidConnection:Nn,onError:Qn,style:Ec,id:El,nodeDragThreshold:ls,connectionDragThreshold:Cc,viewport:Si,onViewportChange:wi,width:Qt,height:wt,colorMode:os="light",debug:Tc,onScroll:Ni,ariaLabelConfig:ss,zIndexMode:La="basic",...Ac},Nt){const Ha=El||"1",rs=$A(os),Cl=H.useCallback(_n=>{_n.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Ni?.(_n)},[Ni]);return f.jsx("div",{"data-testid":"rf__wrapper",...Ac,onScroll:Cl,style:{...Ec,...uj},ref:Nt,className:st(["react-flow",r,rs]),id:El,role:"application",children:f.jsxs(cj,{nodes:t,edges:a,width:Qt,height:wt,fitView:bi,fitViewOptions:ts,minZoom:bn,maxZoom:Xn,nodeOrigin:xn,nodeExtent:pi,zIndexMode:La,children:[f.jsx(VA,{nodes:t,edges:a,defaultNodes:l,defaultEdges:o,onConnect:w,onConnectStart:S,onConnectEnd:M,onClickConnectStart:R,onClickConnectEnd:z,nodesDraggable:ut,autoPanOnNodeFocus:Zt,nodesConnectable:zt,nodesFocusable:Kt,edgesFocusable:Aa,edgesReconnectable:Ma,elementsSelectable:ft,elevateNodesOnSelect:Pn,elevateEdgesOnSelect:Fn,minZoom:bn,maxZoom:Xn,nodeExtent:pi,onNodesChange:es,onEdgesChange:cn,snapToGrid:_e,snapGrid:je,connectionMode:j,translateExtent:ja,connectOnClick:_c,defaultEdgeOptions:_l,fitView:bi,fitViewOptions:ts,onNodesDelete:de,onEdgesDelete:F,onDelete:te,onNodeDragStart:B,onNodeDrag:X,onNodeDragStop:K,onSelectionDrag:D,onSelectionDragStart:N,onSelectionDragStop:T,onMove:g,onMoveStart:v,onMoveEnd:x,noPanClassName:wn,nodeOrigin:xn,rfId:Ha,autoPanOnConnect:Kn,autoPanOnNodeDrag:nt,autoPanSpeed:as,onError:Qn,connectionRadius:is,isValidConnection:Nn,selectNodesOnDrag:ke,nodeDragThreshold:ls,connectionDragThreshold:Cc,onBeforeDelete:ae,debug:Tc,ariaLabelConfig:ss,zIndexMode:La}),f.jsx(sj,{onInit:p,onNodeClick:m,onEdgeClick:y,onNodeMouseEnter:O,onNodeMouseMove:C,onNodeMouseLeave:_,onNodeContextMenu:k,onNodeDoubleClick:A,nodeTypes:c,edgeTypes:d,connectionLineType:U,connectionLineStyle:Y,connectionLineComponent:W,connectionLineContainerStyle:fe,selectionKeyCode:le,selectionOnDrag:se,selectionMode:ue,deleteKeyCode:$,multiSelectionKeyCode:ve,panActivationKeyCode:be,zoomActivationKeyCode:xe,onlyRenderVisibleElements:Ge,defaultViewport:mi,translateExtent:ja,minZoom:bn,maxZoom:Xn,preventScrolling:gc,zoomOnScroll:vc,zoomOnPinch:za,zoomOnDoubleClick:xc,panOnScroll:xt,panOnScrollSpeed:rn,panOnScrollMode:bt,panOnDrag:bc,onPaneClick:Sc,onPaneMouseEnter:gi,onPaneMouseMove:yi,onPaneMouseLeave:vi,onPaneScroll:Sn,onPaneContextMenu:xi,paneClickDistance:Ra,nodeClickDistance:wc,onSelectionContextMenu:L,onSelectionStart:G,onSelectionEnd:Z,onReconnect:Sl,onReconnectStart:Da,onReconnectEnd:Nc,onEdgeContextMenu:Ko,onEdgeDoubleClick:Qo,onEdgeMouseEnter:Jo,onEdgeMouseMove:wl,onEdgeMouseLeave:Nl,reconnectRadius:Wo,defaultMarkerColor:yc,noDragClassName:rt,noWheelClassName:yt,noPanClassName:wn,rfId:Ha,disableKeyboardA11y:Zn,nodeExtent:pi,viewport:Si,onViewportChange:wi}),f.jsx(UA,{onSelectionChange:ce}),Zo,f.jsx(LA,{proOptions:Oa,position:ns}),f.jsx(OA,{rfId:Ha,disableKeyboardA11y:Zn})]})})}var fj=Cx(dj);function hj({dimensions:t,lineWidth:a,variant:l,className:o}){return f.jsx("path",{strokeWidth:a,d:`M${t[0]/2} 0 V${t[1]} M0 ${t[1]/2} H${t[0]}`,className:st(["react-flow__background-pattern",l,o])})}function mj({radius:t,className:a}){return f.jsx("circle",{cx:t,cy:t,r:t,className:st(["react-flow__background-pattern","dots",a])})}var Ca;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(Ca||(Ca={}));const pj={[Ca.Dots]:1,[Ca.Lines]:1,[Ca.Cross]:6},gj=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function Qx({id:t,variant:a=Ca.Dots,gap:l=20,size:o,lineWidth:r=1,offset:c=0,color:d,bgColor:m,style:y,className:p,patternClassName:g}){const v=H.useRef(null),{transform:x,patternId:w}=Oe(gj,Ke),S=o||pj[a],M=a===Ca.Dots,R=a===Ca.Cross,z=Array.isArray(l)?l:[l,l],O=[z[0]*x[2]||1,z[1]*x[2]||1],C=S*x[2],_=Array.isArray(c)?c:[c,c],k=R?[C,C]:O,A=[_[0]*x[2]||1+k[0]/2,_[1]*x[2]||1+k[1]/2],B=`${w}${t||""}`;return f.jsxs("svg",{className:st(["react-flow__background",p]),style:{...y,...mc,"--xy-background-color-props":m,"--xy-background-pattern-color-props":d},ref:v,"data-testid":"rf__background",children:[f.jsx("pattern",{id:B,x:x[0]%O[0],y:x[1]%O[1],width:O[0],height:O[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${A[0]},-${A[1]})`,children:M?f.jsx(mj,{radius:C/2,className:g}):f.jsx(hj,{dimensions:k,lineWidth:r,variant:a,className:g})}),f.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${B})`})]})}Qx.displayName="Background";const yj=H.memo(Qx);function vj(){return f.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:f.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function xj(){return f.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:f.jsx("path",{d:"M0 0h32v4.2H0z"})})}function bj(){return f.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:f.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 Sj(){return f.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:f.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 wj(){return f.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:f.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 zr({children:t,className:a,...l}){return f.jsx("button",{type:"button",className:st(["react-flow__controls-button",a]),...l,children:t})}const Nj=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom,ariaLabelConfig:t.ariaLabelConfig});function Jx({style:t,showZoom:a=!0,showFitView:l=!0,showInteractive:o=!0,fitViewOptions:r,onZoomIn:c,onZoomOut:d,onFitView:m,onInteractiveChange:y,className:p,children:g,position:v="bottom-left",orientation:x="vertical","aria-label":w}){const S=Qe(),{isInteractive:M,minZoomReached:R,maxZoomReached:z,ariaLabelConfig:O}=Oe(Nj,Ke),{zoomIn:C,zoomOut:_,fitView:k}=hc(),A=()=>{C(),c?.()},B=()=>{_(),d?.()},X=()=>{k(r),m?.()},K=()=>{S.setState({nodesDraggable:!M,nodesConnectable:!M,elementsSelectable:!M}),y?.(!M)},de=x==="horizontal"?"horizontal":"vertical";return f.jsxs(Fo,{className:st(["react-flow__controls",de,p]),position:v,style:t,"data-testid":"rf__controls","aria-label":w??O["controls.ariaLabel"],children:[a&&f.jsxs(f.Fragment,{children:[f.jsx(zr,{onClick:A,className:"react-flow__controls-zoomin",title:O["controls.zoomIn.ariaLabel"],"aria-label":O["controls.zoomIn.ariaLabel"],disabled:z,children:f.jsx(vj,{})}),f.jsx(zr,{onClick:B,className:"react-flow__controls-zoomout",title:O["controls.zoomOut.ariaLabel"],"aria-label":O["controls.zoomOut.ariaLabel"],disabled:R,children:f.jsx(xj,{})})]}),l&&f.jsx(zr,{className:"react-flow__controls-fitview",onClick:X,title:O["controls.fitView.ariaLabel"],"aria-label":O["controls.fitView.ariaLabel"],children:f.jsx(bj,{})}),o&&f.jsx(zr,{className:"react-flow__controls-interactive",onClick:K,title:O["controls.interactive.ariaLabel"],"aria-label":O["controls.interactive.ariaLabel"],children:M?f.jsx(wj,{}):f.jsx(Sj,{})}),g]})}Jx.displayName="Controls";const _j=H.memo(Jx);function Ej({id:t,x:a,y:l,width:o,height:r,style:c,color:d,strokeColor:m,strokeWidth:y,className:p,borderRadius:g,shapeRendering:v,selected:x,onClick:w}){const{background:S,backgroundColor:M}=c||{},R=d||S||M;return f.jsx("rect",{className:st(["react-flow__minimap-node",{selected:x},p]),x:a,y:l,rx:g,ry:g,width:o,height:r,style:{fill:R,stroke:m,strokeWidth:y},shapeRendering:v,onClick:w?z=>w(z,t):void 0})}const Cj=H.memo(Ej),Tj=t=>t.nodes.map(a=>a.id),rf=t=>t instanceof Function?t:()=>t;function Aj({nodeStrokeColor:t,nodeColor:a,nodeClassName:l="",nodeBorderRadius:o=5,nodeStrokeWidth:r,nodeComponent:c=Cj,onClick:d}){const m=Oe(Tj,Ke),y=rf(a),p=rf(t),g=rf(l),v=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return f.jsx(f.Fragment,{children:m.map(x=>f.jsx(jj,{id:x,nodeColorFunc:y,nodeStrokeColorFunc:p,nodeClassNameFunc:g,nodeBorderRadius:o,nodeStrokeWidth:r,NodeComponent:c,onClick:d,shapeRendering:v},x))})}function Mj({id:t,nodeColorFunc:a,nodeStrokeColorFunc:l,nodeClassNameFunc:o,nodeBorderRadius:r,nodeStrokeWidth:c,shapeRendering:d,NodeComponent:m,onClick:y}){const{node:p,x:g,y:v,width:x,height:w}=Oe(S=>{const M=S.nodeLookup.get(t);if(!M)return{node:void 0,x:0,y:0,width:0,height:0};const R=M.internals.userNode,{x:z,y:O}=M.internals.positionAbsolute,{width:C,height:_}=$n(R);return{node:R,x:z,y:O,width:C,height:_}},Ke);return!p||p.hidden||!Jv(p)?null:f.jsx(m,{x:g,y:v,width:x,height:w,style:p.style,selected:!!p.selected,className:o(p),color:a(p),borderRadius:r,strokeColor:l(p),strokeWidth:c,shapeRendering:d,onClick:y,id:p.id})}const jj=H.memo(Mj);var zj=H.memo(Aj);const Rj=200,Dj=150,Oj=t=>!t.hidden,Lj=t=>{const a={x:-t.transform[0]/t.transform[2],y:-t.transform[1]/t.transform[2],width:t.width/t.transform[2],height:t.height/t.transform[2]};return{viewBB:a,boundingRect:t.nodeLookup.size>0?Qv($o(t.nodeLookup,{filter:Oj}),a):a,rfId:t.rfId,panZoom:t.panZoom,translateExtent:t.translateExtent,flowWidth:t.width,flowHeight:t.height,ariaLabelConfig:t.ariaLabelConfig}},Hj="react-flow__minimap-desc";function Wx({style:t,className:a,nodeStrokeColor:l,nodeColor:o,nodeClassName:r="",nodeBorderRadius:c=5,nodeStrokeWidth:d,nodeComponent:m,bgColor:y,maskColor:p,maskStrokeColor:g,maskStrokeWidth:v,position:x="bottom-right",onClick:w,onNodeClick:S,pannable:M=!1,zoomable:R=!1,ariaLabel:z,inversePan:O,zoomStep:C=1,offsetScale:_=5}){const k=Qe(),A=H.useRef(null),{boundingRect:B,viewBB:X,rfId:K,panZoom:de,translateExtent:F,flowWidth:te,flowHeight:ce,ariaLabelConfig:N}=Oe(Lj,Ke),D=t?.width??Rj,T=t?.height??Dj,L=B.width/D,G=B.height/T,Z=Math.max(L,G),ae=Z*D,j=Z*T,U=_*Z,Y=B.x-(ae-B.width)/2-U,W=B.y-(j-B.height)/2-U,fe=ae+U*2,$=j+U*2,le=`${Hj}-${K}`,se=H.useRef(0),ue=H.useRef();se.current=Z,H.useEffect(()=>{if(A.current&&de)return ue.current=tA({domNode:A.current,panZoom:de,getTransform:()=>k.getState().transform,getViewScale:()=>se.current}),()=>{ue.current?.destroy()}},[de]),H.useEffect(()=>{ue.current?.update({translateExtent:F,width:te,height:ce,inversePan:O,pannable:M,zoomStep:C,zoomable:R})},[M,R,O,C,F,te,ce]);const be=w?_e=>{const[je,Ge]=ue.current?.pointer(_e)||[0,0];w(_e,{x:je,y:Ge})}:void 0,ve=S?H.useCallback((_e,je)=>{const Ge=k.getState().nodeLookup.get(je).internals.userNode;S(_e,Ge)},[]):void 0,xe=z??N["minimap.ariaLabel"];return f.jsx(Fo,{position:x,style:{...t,"--xy-minimap-background-color-props":typeof y=="string"?y:void 0,"--xy-minimap-mask-background-color-props":typeof p=="string"?p:void 0,"--xy-minimap-mask-stroke-color-props":typeof g=="string"?g:void 0,"--xy-minimap-mask-stroke-width-props":typeof v=="number"?v*Z:void 0,"--xy-minimap-node-background-color-props":typeof o=="string"?o:void 0,"--xy-minimap-node-stroke-color-props":typeof l=="string"?l:void 0,"--xy-minimap-node-stroke-width-props":typeof d=="number"?d:void 0},className:st(["react-flow__minimap",a]),"data-testid":"rf__minimap",children:f.jsxs("svg",{width:D,height:T,viewBox:`${Y} ${W} ${fe} ${$}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":le,ref:A,onClick:be,children:[xe&&f.jsx("title",{id:le,children:xe}),f.jsx(zj,{onClick:ve,nodeColor:o,nodeStrokeColor:l,nodeBorderRadius:c,nodeClassName:r,nodeStrokeWidth:d,nodeComponent:m}),f.jsx("path",{className:"react-flow__minimap-mask",d:`M${Y-U},${W-U}h${fe+U*2}v${$+U*2}h${-fe-U*2}z
|
|
23
|
+
M${X.x},${X.y}h${X.width}v${X.height}h${-X.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Wx.displayName="MiniMap";const Ij=H.memo(Wx),kj=t=>a=>t?`${Math.max(1/a.transform[2],1)}`:void 0,Bj={[xl.Line]:"right",[xl.Handle]:"bottom-right"};function Uj({nodeId:t,position:a,variant:l=xl.Handle,className:o,style:r=void 0,children:c,color:d,minWidth:m=10,minHeight:y=10,maxWidth:p=Number.MAX_VALUE,maxHeight:g=Number.MAX_VALUE,keepAspectRatio:v=!1,resizeDirection:x,autoScale:w=!0,shouldResize:S,onResizeStart:M,onResize:R,onResizeEnd:z}){const O=jx(),C=typeof t=="string"?t:O,_=Qe(),k=H.useRef(null),A=l===xl.Handle,B=Oe(H.useCallback(kj(A&&w),[A,w]),Ke),X=H.useRef(null),K=a??Bj[l];H.useEffect(()=>{if(!(!k.current||!C))return X.current||(X.current=pA({domNode:k.current,nodeId:C,getStoreItems:()=>{const{nodeLookup:F,transform:te,snapGrid:ce,snapToGrid:N,nodeOrigin:D,domNode:T}=_.getState();return{nodeLookup:F,transform:te,snapGrid:ce,snapToGrid:N,nodeOrigin:D,paneDomNode:T}},onChange:(F,te)=>{const{triggerNodeChanges:ce,nodeLookup:N,parentLookup:D,nodeOrigin:T}=_.getState(),L=[],G={x:F.x,y:F.y},Z=N.get(C);if(Z&&Z.expandParent&&Z.parentId){const ae=Z.origin??T,j=F.width??Z.measured.width??0,U=F.height??Z.measured.height??0,Y={id:Z.id,parentId:Z.parentId,rect:{width:j,height:U,...Wv({x:F.x??Z.position.x,y:F.y??Z.position.y},{width:j,height:U},Z.parentId,N,ae)}},W=Zf([Y],N,D,T);L.push(...W),G.x=F.x?Math.max(ae[0]*j,F.x):void 0,G.y=F.y?Math.max(ae[1]*U,F.y):void 0}if(G.x!==void 0&&G.y!==void 0){const ae={id:C,type:"position",position:{...G}};L.push(ae)}if(F.width!==void 0&&F.height!==void 0){const j={id:C,type:"dimensions",resizing:!0,setAttributes:x?x==="horizontal"?"width":"height":!0,dimensions:{width:F.width,height:F.height}};L.push(j)}for(const ae of te){const j={...ae,type:"position"};L.push(j)}ce(L)},onEnd:({width:F,height:te})=>{const ce={id:C,type:"dimensions",resizing:!1,dimensions:{width:F,height:te}};_.getState().triggerNodeChanges([ce])}})),X.current.update({controlPosition:K,boundaries:{minWidth:m,minHeight:y,maxWidth:p,maxHeight:g},keepAspectRatio:v,resizeDirection:x,onResizeStart:M,onResize:R,onResizeEnd:z,shouldResize:S}),()=>{X.current?.destroy()}},[K,m,y,p,g,v,M,R,z,S]);const de=K.split("-");return f.jsx("div",{className:st(["react-flow__resize-control","nodrag",...de,l,o]),ref:k,style:{...r,scale:B,...d&&{[A?"backgroundColor":"borderColor"]:d}},children:c})}H.memo(Uj);const cf=5,Yr=240,Gj=180,qj=420,A0=[{id:"top",position:ge.Top},{id:"right",position:ge.Right},{id:"bottom",position:ge.Bottom},{id:"left",position:ge.Left}];function Yj(t){const a=/^(\d+)x(\d+)$/.exec(t??"");if(!a)return Yr;const l=Number(a[1]),o=Number(a[2]);if(!Number.isFinite(l)||!Number.isFinite(o)||l<=0||o<=0)return Yr;const r=Yr*(l/o);return Math.round(Math.min(qj,Math.max(Gj,r)))}function Vj({id:t,data:a,selected:l}){const{t:o}=Ne(),r=a,c=P(Y=>Y.updateNodePrompt),d=P(Y=>Y.addNodeReferences),m=P(Y=>Y.readDroppedImageMetadata),y=P(Y=>Y.removeNodeReference),p=P(Y=>Y.generateNode),g=P(Y=>Y.generateNodeInPlace),v=P(Y=>Y.generateNodeVariation),x=P(Y=>Y.addChildNode),w=P(Y=>Y.duplicateBranchRoot),S=P(Y=>Y.deleteNode),M=H.useRef(null),[R,z]=H.useState(!1),[O,C]=H.useState(!1),_=r.referenceImages??[],k=r.status==="pending"||r.status==="reconciling",A=!k&&_.length<cf,B={"--node-preview-w":`${Yj(r.size)}px`,"--node-preview-h":`${Yr}px`},X=H.useCallback(Y=>c(t,Y.target.value),[t,c]),K=H.useCallback(()=>{p(t)},[t,p]),de=H.useCallback(()=>{g(t)},[t,g]),F=H.useCallback(()=>{v(t)},[t,v]),te=H.useCallback(()=>{r.status==="ready"&&x(t)},[t,r.status,x]),ce=H.useCallback(()=>{w(t)},[t,w]),N=H.useCallback(()=>S(t),[t,S]),D=Y=>{if(!Y)return[];const W=[];for(const fe of Array.from(Y)){if(fe.kind!=="file"||!fe.type.startsWith("image/"))continue;const $=fe.getAsFile();$&&W.push($)}return W},T=async Y=>{Y.length!==0&&(Y.length===1&&await m(Y[0],t)||await d(t,Y))},L=async Y=>{Y.preventDefault(),Y.stopPropagation(),z(!1);const W=Array.from(Y.dataTransfer.files).filter(fe=>fe.type.startsWith("image/"));W.length===1&&await m(W[0],t)||A&&W.length>0&&d(t,W)},G=Y=>{Y.preventDefault(),Y.stopPropagation(),A&&!R&&z(!0)},Z=Y=>{Y.currentTarget.contains(Y.relatedTarget)||z(!1)},ae=Y=>{const W=D(Y.clipboardData?.items??null);if(W.length===0||(Y.preventDefault(),Y.stopPropagation(),!A))return;const fe=cf-_.length;d(t,W.slice(0,fe))},U=(()=>{switch(r.status){case"empty":return o("node.empty");case"pending":return o("node.pending");case"reconciling":return r.pendingPhase?o("node.reconcilingPhase",{phase:r.pendingPhase}):o("node.reconciling");case"ready":return[r.webSearchCalls?o("node.readyWithSearch",{elapsed:r.elapsed??"?",searches:r.webSearchCalls}):o("node.ready",{elapsed:r.elapsed??"?"}),X0(r.model)].filter(Boolean).join(" · ");case"stale":return r.error?o("node.staleWithError",{error:r.error}):o("node.stale");case"asset-missing":return r.error?o("node.assetMissingWithError",{error:r.error}):o("node.assetMissing");case"error":return o("node.error",{error:r.error??o("node.errorUnknown")});default:return""}})();return f.jsxs("div",{className:`image-node image-node--${r.status}${l?" image-node--selected":""}`,style:B,children:[A0.map(({id:Y,position:W})=>f.jsx(bl,{type:"target",id:`target-${Y}`,position:W,className:`image-node__handle image-node__handle--target image-node__handle--${Y}`},`target-${Y}`)),f.jsx("div",{className:"image-node__preview",children:r.imageUrl&&r.status!=="asset-missing"?f.jsx("img",{src:r.imageUrl,alt:o("node.nodeImageAlt")}):k&&r.partialImageUrl?f.jsx("img",{className:"image-node__partial",src:r.partialImageUrl,alt:o("node.partialImageAlt")}):k?f.jsx("div",{className:"image-node__skeleton"}):r.status==="asset-missing"?f.jsx("div",{className:"image-node__placeholder",children:o("node.noAsset")}):r.status==="stale"?f.jsx("div",{className:"image-node__placeholder",children:o("node.stateStale")}):f.jsx("div",{className:"image-node__placeholder",children:o("node.noImage")})}),f.jsxs("div",{className:`image-node__composer nodrag${R?" is-dragging":""}`,onDrop:L,onDragOver:G,onDragLeave:Z,onPaste:ae,children:[_.length>0?f.jsx("div",{className:"image-node__refs",children:_.map((Y,W)=>f.jsxs("div",{className:"image-node__ref-chip",title:o("node.refAlt",{n:W+1}),children:[f.jsx("img",{src:Y,alt:o("node.refAlt",{n:W+1})}),f.jsx("button",{type:"button",className:"image-node__ref-remove",onClick:()=>y(t,W),disabled:k,"aria-label":o("node.removeRef",{n:W+1}),children:"×"})]},W))}):null,f.jsx("textarea",{className:"image-node__prompt",value:r.prompt,onChange:X,onKeyDown:Y=>Y.stopPropagation(),placeholder:r.parentServerNodeId?o("node.editPromptPlaceholder"):o("node.promptPlaceholder"),rows:2,disabled:k}),f.jsxs("div",{className:"image-node__composer-bar",children:[f.jsx("button",{type:"button",className:"image-node__attach",onClick:()=>A&&M.current?.click(),disabled:!A,title:r.parentServerNodeId?o("node.nodeRefsUsedWithParent"):o("node.attachRefTitle"),children:o("node.attachRef")}),R?f.jsx("span",{className:"image-node__drop-hint",children:o("node.dropRefs")}):_.length>0?f.jsxs("span",{className:"image-node__ref-count",children:[_.length,"/",cf]}):null]}),f.jsx("input",{ref:M,type:"file",accept:"image/*",multiple:!0,hidden:!0,onChange:Y=>{const W=Array.from(Y.target.files??[]);W.length>0&&T(W),Y.target.value=""}})]}),f.jsxs("div",{className:"image-node__footer nodrag",children:[f.jsx("span",{className:"image-node__status",title:U,children:U}),f.jsxs("div",{className:"image-node__actions",children:[f.jsxs("div",{style:{position:"relative"},children:[f.jsx("button",{type:"button",onClick:()=>C(Y=>!Y),disabled:!r.prompt?.trim(),title:o("promptLibrary.saveTitle"),"aria-label":o("promptLibrary.saveTitle"),children:"☆"}),O&&f.jsx(Df,{text:r.prompt||"",onClose:()=>C(!1)})]}),r.status==="ready"?f.jsxs(f.Fragment,{children:[f.jsx("button",{type:"button",onClick:de,disabled:k,title:o("node.regenerateTitle"),"aria-label":o("node.regenerateTitle"),children:"↻"}),f.jsx("button",{type:"button",onClick:F,disabled:k,title:o("node.newVariationTitle"),"aria-label":o("node.newVariationTitle"),children:o("node.newVariation")})]}):f.jsx("button",{type:"button",className:"image-node__generate",onClick:K,disabled:k,title:o("node.generateTitle"),"aria-label":o("node.generateTitle"),children:o("node.generate")}),r.status==="ready"?f.jsxs(f.Fragment,{children:[f.jsx("button",{type:"button",onClick:te,title:o("node.addChildTitle"),"aria-label":o("node.addChildTitle"),children:o("node.addChild")}),f.jsx("button",{type:"button",onClick:ce,title:o("node.duplicateBranchTitle"),"aria-label":o("node.duplicateBranchTitle"),children:o("node.duplicateBranch")})]}):null,f.jsx("button",{type:"button",onClick:N,className:"image-node__del",title:o("node.deleteTitle"),"aria-label":o("node.deleteTitle"),children:"×"})]})]}),A0.map(({id:Y,position:W})=>f.jsx(bl,{type:"source",id:`source-${Y}`,position:W,className:`image-node__handle image-node__handle--source image-node__handle--${Y}`},`source-${Y}`))]})}const $j=H.memo(Vj);function Xj(){const{t}=Ne(),a=P(O=>O.graphNodes),l=P(O=>O.graphEdges),o=P(O=>O.nodeSelectionMode),r=P(O=>O.nodeBatchRunning),c=P(O=>O.nodeBatchStopping),d=P(O=>O.toggleNodeSelectionMode),m=P(O=>O.selectAllGraphNodes),y=P(O=>O.clearNodeSelection),p=P(O=>O.runNodeBatch),g=P(O=>O.cancelNodeBatch),v=P(O=>O.disconnectEdges),x=a.filter(O=>O.selected).map(O=>O.id),w=l.filter(O=>O.selected).map(O=>O.id),S=new Set(x),M=a.filter(O=>S.has(O.id)&&!Q0(O)).length,R=J0(l,x).length,z=O=>{p(O)};return f.jsxs(Fo,{position:"top-center",className:"node-batch-bar nodrag",children:[f.jsx("button",{type:"button",onClick:d,"aria-pressed":o,children:t(o?"nodeBatch.selectionOn":"nodeBatch.selectionOff")}),f.jsx("button",{type:"button",onClick:m,disabled:a.length===0,children:t("nodeBatch.selectAll")}),w.length>0?f.jsx("button",{type:"button",className:"node-batch-bar__danger",onClick:()=>v(w),title:t("edge.disconnectTitle"),"aria-label":t("edge.disconnectTitle"),children:t("edge.disconnect")}):null,x.length>0?f.jsxs(f.Fragment,{children:[f.jsx("span",{className:"node-batch-bar__meta",children:t("nodeBatch.summary",{selected:x.length,missing:M,stale:R})}),f.jsx("button",{type:"button",onClick:()=>z("missing-only"),disabled:r,children:t("nodeBatch.generateMissing")}),f.jsx("button",{type:"button",onClick:()=>z("regenerate-all"),disabled:r,children:t("nodeBatch.regenerateSelected")}),r?f.jsx("button",{type:"button",onClick:g,disabled:c,children:t(c?"nodeBatch.stopping":"nodeBatch.stopRemaining")}):null,f.jsx("button",{type:"button",onClick:y,disabled:r,children:t("nodeBatch.clear")})]}):null]})}function Pj(){const{t}=Ne(),a=P(A=>A.graphNodes),l=P(A=>A.graphEdges),o=P(A=>A.setGraphNodes),r=P(A=>A.setGraphEdges),c=P(A=>A.disconnectEdges),d=P(A=>A.addRootNode),m=P(A=>A.addChildNodeAt),y=P(A=>A.connectNodes),p=P(A=>A.deleteNodes),g=P(A=>A.nodeSelectionMode),v=P(A=>A.selectNodeGraph),x=P(A=>A.sessionLoading),{screenToFlowPosition:w}=hc(),S=H.useRef(null),M=H.useMemo(()=>({imageNode:$j}),[]),R=H.useCallback(A=>o(_x(A,a)),[a,o]),z=H.useCallback(A=>{const B=A.filter(X=>X.type==="remove").map(X=>X.id);if(B.length>0){if(g)return;c(B);return}r(Ex(A,l))},[c,l,g,r]),O=H.useCallback(A=>{A.source&&A.target&&y(A.source,A.target,A.sourceHandle,A.targetHandle)},[y]),C=H.useCallback((A,B)=>{if(B.isValid)return;const X=B.fromNode?.id;if(!X||B.toNode||B.toHandle)return;const K="touches"in A?A.changedTouches[0].clientX:A.clientX,de="touches"in A?A.changedTouches[0].clientY:A.clientY,F=w({x:K,y:de});m(X,F,B.fromHandle?.id??null)},[m,w]),_=H.useCallback(A=>p(A.map(B=>B.id)),[p]),k=H.useCallback((A,B)=>{g&&(A.preventDefault(),v(B.id,A.metaKey||A.ctrlKey))},[g,v]);return f.jsxs("main",{className:"node-canvas",ref:S,children:[x&&f.jsx("div",{className:"node-canvas__loading",children:t("nodeCanvas.loading")}),a.length===0?f.jsx("button",{type:"button",className:"node-canvas__plus",onClick:()=>d(),children:t("nodeCanvas.addFirst")}):f.jsxs(f.Fragment,{children:[f.jsxs(fj,{nodes:a,edges:l,onNodesChange:R,onEdgesChange:z,onConnect:O,onConnectEnd:C,onNodesDelete:_,onNodeClick:k,nodeTypes:M,connectionMode:ui.Loose,connectionRadius:32,selectionOnDrag:g,multiSelectionKeyCode:g?null:void 0,panOnDrag:g?[2]:!0,fitView:!0,deleteKeyCode:g?null:["Delete","Backspace"],proOptions:{hideAttribution:!0},children:[f.jsx(Xj,{}),f.jsx(yj,{gap:24,color:"var(--canvas-grid)"}),f.jsx(_j,{className:"node-canvas__controls"}),f.jsx(Ij,{pannable:!0,zoomable:!0,maskColor:"var(--minimap-mask)",nodeColor:"var(--minimap-node-fill)",nodeStrokeColor:"var(--minimap-node-stroke)",style:{background:"var(--minimap-bg)",border:"1px solid var(--minimap-border)"}})]}),f.jsx("button",{type:"button",className:"node-canvas__add-root",onClick:()=>d(),title:t("nodeCanvas.addRootTitle"),children:"+"}),f.jsx("div",{className:"node-canvas__hint",children:t("nodeCanvas.hint")})]})]})}function Fj(){return f.jsx(Kx,{children:f.jsx(Pj,{})})}function ii({title:t,help:a,items:l,value:o,onChange:r}){return f.jsxs("div",{className:"option-group",children:[t?f.jsx("div",{className:"section-title",children:t}):null,f.jsx("div",{className:"option-row",children:l.map(c=>f.jsxs("button",{className:`option-btn${c.value===o?" active":""}`,style:c.color?{color:c.color}:void 0,disabled:c.disabled,onClick:()=>r(c.value),type:"button",children:[c.label,c.sub?f.jsxs(f.Fragment,{children:[f.jsx("br",{}),f.jsx("span",{className:"option-sub",children:c.sub})]}):null]},c.value))}),a?f.jsx("p",{className:"option-help",children:a}):null]})}const eb="ima2.customSizeSlots";function Zj(t){if(!t||typeof t!="object")return!1;const a=t;return typeof a.id=="string"&&typeof a.w=="number"&&typeof a.h=="number"&&typeof a.updatedAt=="number"}function Kj(){try{const t=localStorage.getItem(eb);if(!t)return[];const a=JSON.parse(t);return Array.isArray(a)?dl(a.filter(Zj)):[]}catch{return[]}}function Qj(t){try{localStorage.setItem(eb,JSON.stringify(dl(t)))}catch{}}function Jj(t,a,l){return ac({id:`slot_${Date.now()}_${Math.random().toString(36).slice(2,7)}`,w:t,h:a,ratio:l,updatedAt:Date.now()})}function So(t){return t.map(a=>({value:a.value,label:a.label,sub:a.sub}))}function Wj(){const t=P(D=>D.sizePreset),a=P(D=>D.setSizePreset),l=P(D=>D.customW),o=P(D=>D.customH),r=P(D=>D.setCustomSize),{t:c}=Ne(),[d,m]=H.useState(String(l)),[y,p]=H.useState(String(o)),[g,v]=H.useState(t==="custom"),[x,w]=H.useState(()=>Kj()),[S,M]=H.useState(null),[R,z]=H.useState("free"),O=t==="custom",C=jf(d,y,l,o),_=zN().filter(D=>D.value==="auto");H.useEffect(()=>{m(String(l)),p(String(o))},[l,o]),H.useEffect(()=>{O||(v(!1),M(null))},[O]);function k(D){w(D),Qj(D)}function A(){const D=Ta(d,l),T=Ta(y,o);r(D,T),m(String(D)),p(String(T))}function B(D){D.key==="Enter"&&(D.preventDefault(),A())}function X(){a("custom"),v(!0),M(x.length>=ol?x[0]?.id??null:null)}function K(D){a(D),D!=="custom"&&(v(!1),M(null))}function de(D){a("custom"),r(D.w,D.h),m(String(D.w)),p(String(D.h)),v(!1),M(D.id)}function F(D){z(D.id);const T=_N(D);T&&(m(String(T.w)),p(String(T.h)))}function te(){const D=Jj(C.w,C.h,R),T=x.length>=ol&&S?CN(x,S,D):EN(x,D);k(T),a("custom"),r(C.w,C.h),m(String(C.w)),p(String(C.h)),M(D.id),v(!1)}const ce=C.reasons.length>0?C.reasons.map(D=>c(`size.adjustedReasons.${D}`)).join(", "):c("size.noAdjustment"),N=C.reasons.includes("maxPixels")&&C.requestedW===C.requestedH&&C.w===C.h?c("size.squareMaxHint",{size:`${Jg}×${Jg}`}):null;return f.jsxs("div",{className:"option-group size-picker",children:[f.jsx("div",{className:"section-title",children:c("size.title")}),f.jsx(ii,{title:"",items:So(TN),value:t,onChange:K}),f.jsx(ii,{title:"",items:So(AN),value:t,onChange:K}),f.jsx(ii,{title:"",items:So(MN),value:t,onChange:K}),f.jsx(ii,{title:"",items:So(jN),value:t,onChange:K}),f.jsxs("div",{className:"option-row size-picker__quick-row",children:[So(_).map(D=>f.jsxs("button",{type:"button",className:`option-btn${t===D.value?" active":""}`,onClick:()=>K(D.value),children:[D.label,D.sub?f.jsxs(f.Fragment,{children:[f.jsx("br",{}),f.jsx("span",{className:"option-sub",children:D.sub})]}):null]},D.value)),f.jsxs("button",{type:"button",className:`option-btn${O?" active":""}`,onClick:X,children:[c("size.customPlus"),f.jsx("br",{}),f.jsx("span",{className:"option-sub",children:c("size.customSub")})]})]}),x.length>0?f.jsx("div",{className:"option-row size-picker__slot-row",children:x.map(D=>f.jsxs("button",{type:"button",className:`option-btn size-picker__slot${O&&l===D.w&&o===D.h?" active":""}`,onClick:()=>de(D),children:[D.w,"×",D.h,f.jsx("br",{}),f.jsx("span",{className:"option-sub",children:D.ratio||c("size.customSlot")})]},D.id))}):null,g?f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"size-picker__ratio-row",children:wN.map(D=>f.jsx("button",{type:"button",className:`size-picker__ratio${R===D.id?" active":""}`,onClick:()=>F(D),children:D.id==="free"?c("size.ratioFree"):D.label},D.id))}),f.jsxs("div",{className:"option-row",children:[f.jsx("input",{type:"text",inputMode:"numeric",pattern:"[0-9]*",className:"custom-size-input",value:d,onChange:D=>m(D.target.value.replace(/\D/g,"")),onBlur:A,onKeyDown:B,placeholder:c("size.width")}),f.jsx("span",{style:{color:"var(--text-dim)",alignSelf:"center",fontFamily:"var(--mono)",fontSize:12},children:"x"}),f.jsx("input",{type:"text",inputMode:"numeric",pattern:"[0-9]*",className:"custom-size-input",value:y,onChange:D=>p(D.target.value.replace(/\D/g,"")),onBlur:A,onKeyDown:B,placeholder:c("size.height")})]}),f.jsxs("div",{className:"size-picker__preview",children:[f.jsx("span",{children:c("size.normalizedPreview")}),f.jsx("strong",{children:NN(C.w,C.h)})]}),f.jsx("div",{className:"size-picker__preview size-picker__preview--reason",children:ce}),N?f.jsx("div",{className:"size-picker__preview size-picker__preview--detail",children:N}):null,x.length>=ol?f.jsxs("div",{className:"size-picker__replace-row",children:[f.jsx("span",{children:c("size.replaceCustomSlot")}),x.map(D=>f.jsxs("button",{type:"button",className:`size-picker__replace${S===D.id?" active":""}`,onClick:()=>M(D.id),children:[D.w,"×",D.h]},D.id))]}):null,f.jsx("button",{type:"button",className:"size-picker__save",onClick:te,children:x.length>=ol?c("size.replaceCustomSlot"):c("size.saveCustomSlot")}),f.jsx("div",{className:"size-hint",children:c("size.hint")})]}):null]})}const M0=[1,2,4];function j0(t){return Math.min(8,Math.max(1,Math.trunc(t||1)))}function ez(){const t=P(v=>v.count),a=P(v=>v.setCount),{t:l}=Ne(),[o,r]=H.useState(!M0.includes(t)),[c,d]=H.useState(String(t));function m(v=c){const x=j0(Number.parseInt(v,10));a(x),d(String(x))}function y(v){r(!1),d(String(v)),a(v)}function p(v){const x=j0(t+v);r(!0),d(String(x)),a(x)}function g(v){v.key==="Enter"&&(v.preventDefault(),m())}return f.jsxs("div",{className:"option-group count-picker",children:[f.jsx("div",{className:"section-title",children:l("count.title")}),f.jsxs("div",{className:"option-row",children:[M0.map(v=>f.jsx("button",{type:"button",className:`option-btn${t===v&&!o?" active":""}`,onClick:()=>y(v),children:v},v)),f.jsx("button",{type:"button",className:`option-btn${o?" active":""}`,onClick:()=>{r(v=>!v),d(String(t))},children:l("count.customPlus")})]}),o?f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"count-picker__custom",children:[f.jsx("button",{type:"button",className:"count-picker__step",onClick:()=>p(-1),"aria-label":l("count.decrease"),children:"-"}),f.jsx("input",{type:"text",inputMode:"numeric",pattern:"[0-9]*",className:"count-picker__input",value:c,onChange:v=>d(v.target.value.replace(/\D/g,"")),onBlur:()=>m(),onKeyDown:g,"aria-label":l("count.customLabel")}),f.jsx("button",{type:"button",className:"count-picker__step",onClick:()=>p(1),"aria-label":l("count.increase"),children:"+"})]}),f.jsx("p",{className:"option-help",children:t>=5?l("count.highCountHint"):l("count.minMaxHint")})]}):null]})}const tz={low:{"1024x1024":.006,"1024x1536":.005,"1536x1024":.005,"1024x1360":.005,"1360x1024":.005,"1024x1824":.006,"1824x1024":.006,"2048x2048":.012,"2048x1152":.009,"1152x2048":.009,"3840x2160":.023,"2160x3840":.023,auto:.006},medium:{"1024x1024":.053,"1024x1536":.041,"1536x1024":.041,"1024x1360":.041,"1360x1024":.041,"1024x1824":.05,"1824x1024":.05,"2048x2048":.106,"2048x1152":.08,"1152x2048":.08,"3840x2160":.2,"2160x3840":.2,auto:.053},high:{"1024x1024":.211,"1024x1536":.165,"1536x1024":.165,"1024x1360":.165,"1360x1024":.165,"1024x1824":.2,"1824x1024":.2,"2048x2048":.422,"2048x1152":.32,"1152x2048":.32,"3840x2160":.8,"2160x3840":.8,auto:.211}};function nz(t,a){return tz[t]?.[a]??0}function az(){const{t}=Ne(),a=P(p=>p.provider),l=P(p=>p.quality),r=P(p=>p.getResolvedSize)(),c=a==="oauth",d=nz(l,r),m=c?t("cost.free"):t("cost.approx",{amount:d.toFixed(3)}),y=c?"var(--green)":void 0;return f.jsxs("div",{className:"cost-estimate",children:[f.jsx("span",{children:t("cost.label")}),f.jsx("span",{className:"price",style:y?{color:y}:void 0,children:m})]})}const iz=[{value:"png",label:"PNG"},{value:"jpeg",label:"JPEG"},{value:"webp",label:"WebP"}];function lz(){const t=P(S=>S.rightPanelOpen),a=P(S=>S.toggleRightPanel),{t:l}=Ne(),[o,r]=H.useState(typeof window<"u"?window.matchMedia("(max-width: 800px)").matches:!1);H.useEffect(()=>{if(typeof window>"u")return;const S=window.matchMedia("(max-width: 800px)"),M=()=>r(S.matches);return S.addEventListener("change",M),()=>S.removeEventListener("change",M)},[]);const c=o?t:!0,d=P(S=>S.quality),m=P(S=>S.setQuality),y=P(S=>S.format),p=P(S=>S.setFormat),g=P(S=>S.moderation),v=P(S=>S.setModeration),x=[{value:"low",label:l("quality.lowLabel"),sub:l("quality.lowSub")},{value:"medium",label:l("quality.mediumLabel"),sub:l("quality.mediumSub")},{value:"high",label:l("quality.highLabel"),sub:l("quality.highSub")}],w=[{value:"auto",label:l("moderation.autoLabel"),sub:l("moderation.autoSub")},{value:"low",label:l("moderation.lowLabel"),sub:l("moderation.lowSub"),color:"var(--amber)"}];return f.jsxs(f.Fragment,{children:[o&&t?f.jsx("div",{className:"right-panel-backdrop",role:"button","aria-label":l("panel.closeSettings"),onClick:a}):null,f.jsxs("aside",{className:`right-panel${t?"":" collapsed"}${o&&c?" drawer-open":""}`,"aria-label":l("panel.detailSettings"),children:[f.jsx("button",{type:"button",className:"right-panel-toggle","aria-expanded":t,"aria-controls":"right-panel-body",onClick:a,title:l(t?"panel.toggleHide":"panel.toggleShow"),children:o?l(t?"panel.close":"panel.open"):t?">":"<"}),f.jsxs("div",{id:"right-panel-body",className:"right-panel-body",hidden:!t,children:[f.jsx("div",{className:"section-title",children:l("panel.detailSettings")}),f.jsx(ii,{title:l("quality.title"),items:x,value:d,onChange:m}),f.jsx(Wj,{}),f.jsx(ii,{title:l("format.title"),items:iz,value:y,onChange:p}),f.jsx(ii,{title:l("moderation.title"),items:w,value:g,onChange:v}),f.jsx("p",{className:"option-help",children:l("moderation.explain")}),f.jsx(ez,{}),f.jsx(az,{})]})]})]})}function tb(t){const a=t.currentTarget;if(a.scrollWidth<=a.clientWidth||!(Math.abs(t.deltaY)>Math.abs(t.deltaX)))return;const o=a.scrollLeft<=0,r=a.scrollLeft+a.clientWidth>=a.scrollWidth-1,c=t.deltaY<0,d=t.deltaY>0;c&&o||d&&r||(t.preventDefault(),a.scrollLeft+=t.deltaY)}function z0(t){return t.filename??t.url??t.image}function oz(){const t=P(m=>m.history),a=P(m=>m.currentImage),l=P(m=>m.selectHistory),o=P(m=>m.openGallery),r=H.useRef({}),{t:c}=Ne(),d=a?z0(a):null;return H.useEffect(()=>{d&&r.current[d]?.scrollIntoView({block:"nearest",inline:"nearest"})},[d,t]),f.jsxs("div",{className:"history-strip",onWheel:tb,children:[f.jsx("button",{type:"button",className:"history-thumb history-thumb--add",onClick:o,"aria-label":c("history.openGalleryAria"),title:c("history.openGalleryTitle"),children:f.jsxs("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[f.jsx("rect",{x:"3",y:"3",width:"7",height:"7",rx:"1"}),f.jsx("rect",{x:"14",y:"3",width:"7",height:"7",rx:"1"}),f.jsx("rect",{x:"3",y:"14",width:"7",height:"7",rx:"1"}),f.jsx("rect",{x:"14",y:"14",width:"7",height:"7",rx:"1"})]})}),t.map((m,y)=>{const p=z0(m),g=d===p;return f.jsx("img",{ref:v=>{r.current[p]=v},src:m.thumb||m.url||m.image,alt:"",className:`history-thumb${g?" active":""}`,onClick:()=>l(m)},m.filename??`${y}-${m.image}`)})]})}function sz(){const[t,a]=H.useState(null),[l,o]=H.useState(!1);return H.useEffect(()=>{let r=!1;return N1().then(c=>{r||a(c)}).catch(()=>{r||o(!0)}),()=>{r=!0}},[]),{data:t,error:l}}function rz(){const[t,a]=H.useState(null);return H.useEffect(()=>{let l=!1,o=null;const r=async()=>{try{const c=await w1();if(l)return;a(c),c.status==="starting"&&(o=setTimeout(r,3e3))}catch{l||a(null)}};return r(),()=>{l=!0,o&&clearTimeout(o)}},[]),t}function cz(t){return t==="ready"?"Ready":t==="auth_required"?"Login required":t==="starting"?"Starting":t==="offline"?"Offline":"Checking"}function uz(){const{t}=Ne(),a=rz(),{data:l,error:o}=sz(),r=l?.apiKeySource==="env"||l?.apiKeySource==="config"||l?.apiKeyValid===!0,c=a?.status==="ready",d=l?.apiKeySource==="config"?t("settings.account.apiSourceConfig"):t("settings.account.apiSourceEnv");return f.jsxs(f.Fragment,{children:[f.jsxs("article",{className:"settings-row",children:[f.jsxs("div",{className:"settings-row__copy",children:[f.jsx("p",{className:"settings-eyebrow",children:t("settings.account.primaryEyebrow")}),f.jsx("h4",{children:t("settings.account.oauthTitle")}),f.jsx("p",{children:t("settings.account.oauthBody")})]}),f.jsxs("div",{className:`settings-status${c?" is-ok":""}`,children:[f.jsx("span",{"aria-hidden":"true"}),cz(a?.status)]})]}),r?f.jsxs("article",{className:"settings-row",children:[f.jsxs("div",{className:"settings-row__copy",children:[f.jsx("p",{className:"settings-eyebrow",children:d}),f.jsx("h4",{children:t("settings.account.apiTitle")}),f.jsx("p",{children:t("settings.account.apiBody")})]}),f.jsxs("div",{className:"settings-status is-muted",children:[f.jsx("span",{"aria-hidden":"true"}),t(o?"settings.account.apiUnknown":"settings.account.apiDisabled")]})]}):null]})}const dz={ko:"KO",en:"EN"};function fz(){const{t,locale:a}=Ne(),l=P(o=>o.setLocale);return f.jsx("div",{className:"lang-toggle",role:"group","aria-label":t("language.label"),children:pN.map(o=>f.jsx("button",{type:"button",className:`lang-toggle__btn ${a===o?"is-active":""}`,onClick:()=>l(o),"aria-pressed":a===o,title:t(`language.${o}`),children:f.jsx("span",{className:"lang-toggle__label",children:dz[o]})},o))})}const hz=["system","dark","light"];function mz(){const{t}=Ne(),a=P(p=>p.theme),l=P(p=>p.setTheme),o=P(p=>p.themeFamily),r=P(p=>p.setThemeFamily),[c,d]=H.useState(!1),m=H.useRef(null);H.useEffect(()=>{if(!c)return;const p=v=>{m.current&&(m.current.contains(v.target)||d(!1))},g=v=>{v.key==="Escape"&&d(!1)};return document.addEventListener("mousedown",p),document.addEventListener("keydown",g),()=>{document.removeEventListener("mousedown",p),document.removeEventListener("keydown",g)}},[c]);const y=p=>t(`theme.family.${p}`);return f.jsxs("div",{className:"theme-toggle","aria-label":t("theme.label"),children:[f.jsxs("div",{className:"theme-toggle__row",children:[f.jsx("span",{className:"theme-toggle__label",id:"theme-style-label",children:t("theme.styleLabel")}),f.jsxs("div",{className:"theme-toggle__family",ref:m,children:[f.jsxs("button",{type:"button",className:"theme-toggle__family-trigger","aria-haspopup":"listbox","aria-expanded":c,"aria-labelledby":"theme-style-label",onClick:()=>d(p=>!p),children:[f.jsx("span",{className:`theme-toggle__family-dot theme-toggle__family-dot--${o}`,"aria-hidden":"true"}),f.jsx("span",{className:"theme-toggle__family-name",children:y(o)}),f.jsx("span",{className:"theme-toggle__family-caret","aria-hidden":"true",children:"▾"})]}),c?f.jsx("ul",{className:"theme-toggle__family-menu",role:"listbox","aria-labelledby":"theme-style-label",children:k0.map(p=>f.jsx("li",{role:"none",children:f.jsxs("button",{type:"button",role:"option","aria-selected":o===p,className:`theme-toggle__family-option ${o===p?"is-active":""}`,onClick:()=>{r(p),d(!1)},children:[f.jsx("span",{className:`theme-toggle__family-dot theme-toggle__family-dot--${p}`,"aria-hidden":"true"}),f.jsx("span",{className:"theme-toggle__family-name",children:y(p)})]})},p))}):null]})]}),f.jsxs("div",{className:"theme-toggle__row",children:[f.jsx("span",{className:"theme-toggle__label",id:"theme-mode-label",children:t("theme.modeLabel")}),f.jsx("div",{className:"theme-toggle__mode",role:"group","aria-labelledby":"theme-mode-label",children:hz.map(p=>f.jsx("button",{type:"button",className:`theme-toggle__btn ${a===p?"is-active":""}`,onClick:()=>l(p),"aria-pressed":a===p,title:t(`theme.${p}`),children:t(`theme.${p}`)},p))})]})]})}const uf=["account","generation","appearance","language","future"];function wo({id:t,setRef:a,children:l}){const{t:o}=Ne();return f.jsxs("section",{id:t,ref:r=>a(t,r),className:"settings-section","aria-labelledby":`settings-section-${t}`,children:[f.jsx("header",{className:"settings-section__header",children:f.jsxs("div",{children:[f.jsx("h3",{id:`settings-section-${t}`,children:o(`settings.sections.${t}.title`)}),f.jsx("p",{children:o(`settings.sections.${t}.hint`)})]})}),f.jsx("div",{className:"settings-section__body",children:l})]})}function pz(){const{t}=Ne(),a=P(g=>g.activeSettingsSection),l=P(g=>g.setActiveSettingsSection),o=P(g=>g.closeSettings),r=H.useRef(null),c=H.useRef(null),d=H.useRef(!1),m=H.useRef({account:null,generation:null,appearance:null,language:null,future:null}),y=(g,v)=>{m.current[g]=v},p=g=>{l(g),d.current=!0,m.current[g]?.scrollIntoView({behavior:"auto",block:"start"}),c.current!==null&&window.clearTimeout(c.current),c.current=window.setTimeout(()=>{d.current=!1,c.current=null},120)};return H.useEffect(()=>{const g=v=>{v.key==="Escape"&&o()};return window.addEventListener("keydown",g),()=>window.removeEventListener("keydown",g)},[o]),H.useEffect(()=>{const g=r.current;if(!g||typeof IntersectionObserver!="function")return;const v=new IntersectionObserver(x=>{if(d.current)return;const S=x.filter(M=>M.isIntersecting).sort((M,R)=>R.intersectionRatio-M.intersectionRatio)[0]?.target.id;S&&uf.includes(S)&&l(S)},{root:g,threshold:[.35,.6]});for(const x of uf){const w=m.current[x];w&&v.observe(w)}return()=>v.disconnect()},[l]),H.useEffect(()=>()=>{c.current!==null&&window.clearTimeout(c.current)},[]),f.jsx("main",{ref:r,className:"settings-workspace","aria-labelledby":"settings-title",children:f.jsxs("div",{className:"settings-shell",children:[f.jsxs("header",{className:"settings-header",children:[f.jsxs("div",{children:[f.jsx("p",{className:"settings-eyebrow",children:t("settings.eyebrow")}),f.jsx("h2",{id:"settings-title",children:t("settings.title")}),f.jsx("p",{children:t("settings.subtitle")})]}),f.jsx("button",{type:"button",className:"settings-close",onClick:o,"aria-label":t("settings.closeAria"),title:t("settings.closeTitle"),children:"X"})]}),f.jsxs("div",{className:"settings-layout",children:[f.jsx("nav",{className:"settings-nav","aria-label":t("settings.navAria"),children:uf.map(g=>f.jsxs("button",{type:"button",className:`settings-nav__item${a===g?" is-active":""}`,onClick:()=>p(g),"aria-label":t("settings.jumpTo",{section:t(`settings.sections.${g}.title`)}),children:[f.jsx("span",{children:t(`settings.sections.${g}.title`)}),f.jsx("small",{children:t(`settings.sections.${g}.hint`)})]},g))}),f.jsxs("section",{className:"settings-content","aria-label":t("settings.contentAria"),children:[f.jsx(wo,{id:"account",setRef:y,children:f.jsx(uz,{})}),f.jsx(wo,{id:"generation",setRef:y,children:f.jsxs("article",{className:"settings-row",children:[f.jsxs("div",{className:"settings-row__copy",children:[f.jsx("h4",{children:t("settings.imageModel.title")}),f.jsx("p",{children:t("settings.imageModel.body")}),f.jsx("p",{className:"settings-row__microcopy",children:t("settings.imageModel.unsupportedHelp")})]}),f.jsx("div",{className:"settings-row__control",children:f.jsx(uv,{variant:"settings"})})]})}),f.jsx(wo,{id:"appearance",setRef:y,children:f.jsxs("article",{className:"settings-row",children:[f.jsxs("div",{className:"settings-row__copy",children:[f.jsx("h4",{children:t("settings.appearance.themeTitle")}),f.jsx("p",{children:t("settings.appearance.themeBody")})]}),f.jsx("div",{className:"settings-row__control",children:f.jsx(mz,{})})]})}),f.jsx(wo,{id:"language",setRef:y,children:f.jsxs("article",{className:"settings-row",children:[f.jsxs("div",{className:"settings-row__copy",children:[f.jsx("h4",{children:t("settings.language.title")}),f.jsx("p",{children:t("settings.language.body")})]}),f.jsx("div",{className:"settings-row__control",children:f.jsx(fz,{})})]})}),f.jsx(wo,{id:"future",setRef:y,children:f.jsxs("article",{className:"settings-note",children:[f.jsx("h4",{children:t("settings.future.title")}),f.jsx("p",{children:t("settings.future.body")})]})})]})]})]})})}function gz(){const t=P(r=>r.toast),[a,l]=H.useState(!1);if(H.useEffect(()=>{if(!t)return;l(!0);const r=setTimeout(()=>l(!1),3e3);return()=>clearTimeout(r)},[t]),!t)return null;const o=["toast",a?"visible":"",t.error?"error":""].filter(Boolean).join(" ");return f.jsx("div",{className:o,children:t.message})}function yz(){const{t}=Ne(),a=P(v=>v.errorCard),l=P(v=>v.dismissErrorCard);if(!a)return null;const o=Ao[a.code]??Ao.UNKNOWN,r=`${o.cardKey??"errorCard.unknown"}.title`,c=`${o.cardKey??"errorCard.unknown"}.body`,d=o.cta?`${o.cardKey??"errorCard.unknown"}.cta`:null,m=t(r),y=t(c),p=d?t(d):null,g=()=>{if(o.cta==="reload"){window.location.reload();return}else l()};return f.jsx("div",{className:"error-card-backdrop",role:"alertdialog","aria-labelledby":"error-card-title",children:f.jsxs("div",{className:"error-card",children:[f.jsx("div",{className:"error-card__icon","aria-hidden":"true",children:f.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[f.jsx("circle",{cx:"12",cy:"12",r:"10"}),f.jsx("line",{x1:"12",y1:"8",x2:"12",y2:"12"}),f.jsx("line",{x1:"12",y1:"16",x2:"12.01",y2:"16"})]})}),f.jsxs("div",{className:"error-card__content",children:[f.jsx("h3",{id:"error-card-title",className:"error-card__title",children:m}),f.jsx("p",{className:"error-card__body",children:y}),a.fallbackMessage&&f.jsxs("details",{className:"error-card__details",children:[f.jsx("summary",{children:t("errorCard.details")}),f.jsx("pre",{children:a.fallbackMessage})]}),f.jsxs("div",{className:"error-card__actions",children:[f.jsx("button",{type:"button",className:"btn btn--ghost",onClick:l,children:t("errorCard.close")}),p&&f.jsx("button",{type:"button",className:"btn btn--primary",onClick:g,children:p})]})]})]})})}function vz(t){if(!t)return"earlier";const a=new Date(t);if(Number.isNaN(a.getTime()))return"earlier";const o=Math.floor((new Date().getTime()-a.getTime())/864e5);return o===0?"today":o===1?"yesterday":o<7?"thisWeek":a.toLocaleDateString("ko-KR",{year:"numeric",month:"short",day:"numeric"})}function R0(t){return t.filename||t.image}function xz({item:t,onOpen:a,onCopyPath:l,onDownloadManifest:o}){const{t:r}=Ne(),d=t.cards?.find(m=>m.headline)?.headline||t.headline||r("gallery.cardNewsSet");return f.jsxs(f.Fragment,{children:[f.jsxs("button",{type:"button",className:"gallery__tile",onClick:()=>a(t),title:d,children:[t.image?f.jsx("img",{src:t.image,alt:d,loading:"lazy"}):null,f.jsxs("div",{className:"gallery__caption",children:[f.jsx("small",{children:r("gallery.cardNewsSet")}),f.jsx("span",{className:"gallery__caption-text",children:d})]}),f.jsx("div",{className:"gallery-card-news-strip",children:(t.cards||[]).slice(0,5).map((m,y)=>f.jsxs("span",{children:[m.url?f.jsx("img",{src:m.url,alt:m.headline??"",loading:"lazy"}):null,f.jsx("em",{children:m.cardOrder??y+1})]},`${m.url}-${y}`))})]}),f.jsxs("div",{className:"gallery-card-news-actions",children:[f.jsx("span",{children:r("gallery.cardNewsCount",{n:t.cards?.length??0})}),f.jsx("button",{type:"button",onClick:()=>a(t),children:r("gallery.openCardNewsSet")}),f.jsx("button",{type:"button",onClick:m=>l(t,m),children:r("gallery.copyCardNewsSetPath")}),f.jsx("button",{type:"button",onClick:m=>o(t,m),children:r("gallery.downloadCardNewsManifest")})]})]})}function bz({item:t,active:a,itemRef:l,onSelect:o,onDelete:r,onToggleFavorite:c,t:d}){return f.jsxs("div",{ref:l,className:`gallery__tile-wrap${a?" gallery__tile-wrap--active":""}${t.isFavorite?" gallery__tile-wrap--favorite":""}`,children:[f.jsxs("button",{type:"button",className:`gallery__tile${a?" gallery__tile--active":""}`,onClick:()=>o(t),title:t.prompt??"",children:[f.jsx("img",{src:t.thumb||t.image,alt:t.prompt??d("gallery.imageAltFallback"),loading:"lazy",decoding:"async"}),t.prompt&&f.jsx("div",{className:"gallery__caption",children:f.jsx("span",{className:"gallery__caption-text",children:t.prompt})})]}),t.filename&&c&&f.jsx("button",{type:"button",className:`gallery__favorite${t.isFavorite?" gallery__favorite--on":""}`,onClick:m=>{m.stopPropagation(),c(t)},title:t.isFavorite?d("gallery.unfavoriteTitle"):d("gallery.favoriteTitle"),"aria-label":t.isFavorite?d("gallery.unfavoriteAria"):d("gallery.favoriteAria"),children:t.isFavorite?"★":"☆"}),t.filename&&f.jsx("button",{type:"button",className:"gallery__delete",onClick:m=>r(t,m),title:d("gallery.deleteTitle"),"aria-label":d("gallery.deleteAria"),children:"×"})]})}const D0="ima2.storageNoticeDismissed.0.09.23";function Sz(){const{t}=Ne(),a=P($=>$.galleryOpen),l=P($=>$.closeGallery),o=P($=>$.history),r=P($=>$.selectHistory),c=P($=>$.currentImage),d=P($=>$.removeFromHistory),m=P($=>$.addHistoryItem),y=P($=>$.showToast),p=P($=>$.toggleGalleryFavorite),[g,v]=H.useState(""),[x,w]=H.useState("date"),[S,M]=H.useState([]),[R,z]=H.useState([]),[O,C]=H.useState(null),[_,k]=H.useState(null),[A,B]=H.useState(()=>{try{return localStorage.getItem(D0)==="1"}catch{return!1}}),X=H.useRef(null),K=H.useRef({}),de=H.useRef(0);H.useEffect(()=>{if(!a)return;const $=le=>{le.key==="Escape"&&l()};return window.addEventListener("keydown",$),()=>window.removeEventListener("keydown",$)},[a,l]),H.useEffect(()=>{a||(v(""),C(null))},[a]),H.useEffect(()=>{if(!a)return;let $=!1;return(async()=>{try{const le=await T1();$||k(le)}catch{$||k({generatedDirLabel:"~/.ima2/generated",generatedCount:0,legacyCandidatesScanned:0,legacySourcesFound:0,legacyFilesFound:0,state:"unknown",messageKind:"unknown",recoveryDocsPath:"docs/RECOVER_OLD_IMAGES.md",doctorCommand:"ima2 doctor",overrides:{generatedDir:!1,configDir:!1}})}})(),()=>{$=!0}},[a]),H.useEffect(()=>{if(!a||x!=="session")return;let $=!1;return(async()=>{try{const le=await E1({limit:500});if($)return;const se=ue=>{const be=ue.kind,ve=be==="classic"||be==="edit"||be==="generate"||be==="card-news-card"||be==="card-news-set"?be:null;return{image:ue.url,url:ue.url,filename:ue.filename,prompt:ue.prompt??void 0,size:ue.size??void 0,quality:ue.quality??void 0,model:ue.model??void 0,provider:ue.provider,createdAt:ue.createdAt,sessionId:ue.sessionId??null,nodeId:ue.nodeId??null,clientNodeId:ue.clientNodeId??null,kind:ve,setId:ue.setId??null,cardId:ue.cardId??null,cardOrder:ue.cardOrder??null,headline:ue.headline??null,body:ue.body??null,cards:ue.cards,isFavorite:ue.isFavorite??!1}};M(le.sessions.map(ue=>({sessionId:ue.sessionId,title:ue.title??null,label:ue.label??null,displayLabel:ue.title||ue.label||ue.sessionId.slice(0,8),items:ue.items.map(se)}))),z(le.loose.map(se))}catch{}})(),()=>{$=!0}},[a,x]);const F=H.useMemo(()=>{const $=g.trim().toLowerCase().normalize("NFC");return $?o.filter(le=>(le.prompt??"").toLowerCase().normalize("NFC").includes($)||(le.filename??"").toLowerCase().normalize("NFC").includes($)):o},[o,g]),te=H.useMemo(()=>{const $=new Map;for(const le of F){const se=vz(le.createdAt);$.has(se)||$.set(se,[]),$.get(se).push(le)}return Array.from($.entries())},[F]),ce=x==="session"?S.reduce(($,le)=>$+le.items.length,0)+R.length:F.length;H.useLayoutEffect(()=>{if(!a)return;const $=c?R0(c):null,le=$?K.current[$]:null;if(le){le.scrollIntoView({block:"center"});return}X.current&&(X.current.scrollTop=de.current)},[a,c?.filename,c?.image,x,ce,te.length,S.length,R.length]),H.useEffect(()=>{if(!O)return;const $=setInterval(()=>{C(le=>!le||Date.now()>=le.expiresAt?null:{...le})},500);return()=>clearInterval($)},[O]);async function N($,le){if(le.stopPropagation(),!!$.filename)try{const se=await M1($.filename);d($.filename),C({filename:$.filename,trashId:se.trashId,item:$,expiresAt:Date.now()+9500})}catch(se){console.error("[gallery] delete failed",se)}}async function D(){if(O)try{await j1(O.filename,O.trashId),m(O.item)}catch($){console.error("[gallery] restore failed",$)}finally{C(null)}}async function T(){try{await A1(),y(t("toast.openGeneratedDirOpened"))}catch{y(t("toast.openGeneratedDirFailed"),!0)}}async function L($){if($.setId)try{await we.getState().loadSet($.setId),P.getState().setUIMode("card-news"),l()}catch{y(t("gallery.openCardNewsSetFailed"),!0)}}async function G($,le){if(le.stopPropagation(),!$.setId)return;const se=`generated/cardnews/${$.setId}`;try{await navigator.clipboard?.writeText(se),y(t("gallery.cardNewsPathCopied"))}catch{y(t("toast.copyFailed"),!0)}}function Z($,le){le.stopPropagation(),$.setId&&window.open(E_($.setId),"_blank","noopener,noreferrer")}function ae(){B(!0);try{localStorage.setItem(D0,"1")}catch{}}if(!a)return null;const j=$=>$==="earlier"||$==="today"||$==="yesterday"||$==="thisWeek"?t(`gallery.${$}`):$,U=($,le,se)=>{const ue=c?.image===$.image,be=ve=>{K.current[R0($)]=ve};return $.kind==="card-news-set"?f.jsx("div",{ref:be,className:"gallery__tile-wrap gallery-card-news-set",children:f.jsx(xz,{item:$,onOpen:ve=>{L(ve)},onCopyPath:G,onDownloadManifest:Z})},`${le}-${se}-${$.filename??se}`):f.jsx(bz,{item:$,active:ue,itemRef:be,onSelect:ve=>{r(ve),l()},onDelete:N,onToggleFavorite:ve=>{p(ve.filename)},t},`${le}-${se}-${$.filename??se}`)},Y=x==="session",W=_!=null&&_.state!=="ok"&&!A,fe=_?.state==="recoverable"?"gallery.storageNoticeRecoverable":_?.state==="not_found"?"gallery.storageNoticeNotFound":"gallery.storageNoticeUnknown";return f.jsx("div",{className:"gallery-backdrop",onClick:l,role:"presentation",children:f.jsxs("div",{className:"gallery",role:"dialog","aria-modal":"true","aria-label":t("gallery.ariaLabel"),onClick:$=>$.stopPropagation(),children:[f.jsxs("div",{className:"gallery__header",children:[f.jsxs("div",{className:"gallery__title-row",children:[f.jsx("div",{className:"gallery__title",children:t("gallery.title")}),f.jsxs("div",{className:"gallery__meta",children:[t("gallery.total",{n:ce}),g?t("gallery.totalFiltered",{n:o.length}):""]}),f.jsxs("div",{className:"gallery__group-toggle",role:"tablist","aria-label":t("gallery.sortByAria"),children:[f.jsx("button",{type:"button",role:"tab","aria-selected":x==="date",className:x==="date"?"active":"",onClick:()=>w("date"),children:t("gallery.sortByDate")}),f.jsx("button",{type:"button",role:"tab","aria-selected":x==="session",className:x==="session"?"active":"",onClick:()=>w("session"),children:t("gallery.sortBySession")})]})]}),f.jsx("input",{type:"text",className:"gallery__search",placeholder:t(Y?"gallery.searchDisabledPlaceholder":"gallery.searchPlaceholder"),value:g,onChange:$=>v($.target.value),autoFocus:!0,disabled:Y}),f.jsx("button",{type:"button",className:"gallery__close",onClick:l,"aria-label":t("gallery.closeAria"),title:t("gallery.closeTitle"),children:"×"})]}),f.jsxs("div",{className:`gallery__storage-bar${W?" gallery__storage-bar--notice":""}`,children:[W?f.jsxs("div",{className:"gallery__storage-copy",children:[f.jsx("div",{className:"gallery__storage-title",children:t("gallery.storageNoticeTitle")}),f.jsx("div",{className:"gallery__storage-text",children:t(fe)})]}):f.jsx("div",{className:"gallery__storage-copy gallery__storage-copy--quiet",children:_?.generatedDirLabel??"~/.ima2/generated"}),f.jsxs("div",{className:"gallery__storage-actions",children:[f.jsx("button",{type:"button",className:"gallery__storage-button",onClick:T,title:t("gallery.openGeneratedDirTitle"),children:t("gallery.openGeneratedDir")}),W&&f.jsx("button",{type:"button",className:"gallery__storage-button gallery__storage-button--ghost",onClick:ae,children:t("common.close")})]})]}),f.jsx("div",{className:"gallery__scroll",ref:X,onScroll:()=>{de.current=X.current?.scrollTop??0},children:Y?f.jsxs(f.Fragment,{children:[S.map($=>f.jsxs("section",{className:"gallery__group",children:[f.jsxs("header",{className:"gallery__group-header",children:[f.jsx("span",{className:"gallery__group-label",title:$.sessionId,children:$.title?$.displayLabel:t("gallery.sessionLabel",{name:$.displayLabel})}),f.jsx("span",{className:"gallery__group-count",children:$.items.length})]}),f.jsx("div",{className:"gallery__grid",children:$.items.map((le,se)=>U(le,$.sessionId,se))})]},$.sessionId)),R.length>0&&f.jsxs("section",{className:"gallery__group",children:[f.jsxs("header",{className:"gallery__group-header",children:[f.jsx("span",{className:"gallery__group-label",children:t("gallery.standalone")}),f.jsx("span",{className:"gallery__group-count",children:R.length})]}),f.jsx("div",{className:"gallery__grid",children:R.map(($,le)=>U($,"loose",le))})]}),S.length===0&&R.length===0&&f.jsx("div",{className:"gallery__empty",children:t("gallery.emptySessions")})]}):F.length===0?f.jsx("div",{className:"gallery__empty",children:o.length===0?t("gallery.emptyAll"):t("gallery.noResults")}):te.map(([$,le])=>f.jsxs("section",{className:"gallery__group",children:[f.jsxs("header",{className:"gallery__group-header",children:[f.jsx("span",{className:"gallery__group-label",children:j($)}),f.jsx("span",{className:"gallery__group-count",children:le.length})]}),f.jsx("div",{className:"gallery__grid",children:le.map((se,ue)=>U(se,$,ue))})]},$))}),O&&f.jsxs("div",{className:"gallery__undo",children:[f.jsx("span",{children:t("gallery.deleted",{filename:O.filename})}),f.jsx("button",{type:"button",onClick:D,children:t("gallery.undo")}),f.jsx("span",{className:"gallery__undo-timer",children:t("gallery.secondsSuffix",{n:Math.max(0,Math.ceil((O.expiresAt-Date.now())/1e3))})})]})]})})}function wz(t){return t.includes("ratio")?"sizeConfirm.reasonRatio":t.includes("maxPixels")||t.includes("pixels")?"sizeConfirm.reasonPixels":t.includes("minPixels")?"sizeConfirm.reasonMinPixels":t.includes("min")?"sizeConfirm.reasonMin":t.includes("maxEdge")||t.includes("max")?"sizeConfirm.reasonMax":"sizeConfirm.reasonSnap"}function Nz(){const t=P(m=>m.customSizeConfirm),a=P(m=>m.confirmCustomSizeAdjustment),l=P(m=>m.cancelCustomSizeAdjustment),o=H.useRef(null),{t:r}=Ne();if(H.useEffect(()=>{if(!t)return;o.current?.focus();const m=y=>{y.key==="Escape"&&l()};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[l,t]),!t)return null;const c=`${t.requestedW}x${t.requestedH}`,d=`${t.adjustedW}x${t.adjustedH}`;return f.jsx("div",{className:"modal-backdrop custom-size-confirm-backdrop",role:"presentation",children:f.jsxs("div",{className:"modal custom-size-confirm",role:"dialog","aria-modal":"true","aria-labelledby":"custom-size-confirm-title","aria-describedby":"custom-size-confirm-body",children:[f.jsx("div",{id:"custom-size-confirm-title",className:"modal__title",children:r("sizeConfirm.title")}),f.jsxs("div",{id:"custom-size-confirm-body",className:"modal__body",children:[f.jsx("p",{children:r("sizeConfirm.body")}),f.jsxs("dl",{className:"size-confirm__pairs",children:[f.jsxs("div",{className:"size-confirm__pair",children:[f.jsx("dt",{children:r("sizeConfirm.requested")}),f.jsx("dd",{children:c})]}),f.jsxs("div",{className:"size-confirm__pair",children:[f.jsx("dt",{children:r("sizeConfirm.adjusted")}),f.jsx("dd",{children:d})]})]}),f.jsx("p",{className:"size-confirm__reason",children:r(wz(t.reasons))})]}),f.jsxs("div",{className:"modal__actions",children:[f.jsx("button",{ref:o,type:"button",className:"modal__btn modal__btn--secondary",onClick:l,children:r("sizeConfirm.cancel")}),f.jsx("button",{type:"button",className:"modal__btn",onClick:()=>{a()},children:r("sizeConfirm.approve")})]})]})})}function Rr(t){return t==null||t===""?"-":String(t)}function _z(){const{t}=Ne(),a=P(m=>m.metadataRestore),l=P(m=>m.applyMetadataRestore),o=P(m=>m.addMetadataRestoreAsReference),r=P(m=>m.cancelMetadataRestore);if(!a)return null;const c=a.metadata,d=c.userPrompt||c.prompt||c.revisedPrompt||"";return f.jsx("div",{className:"modal-backdrop metadata-restore-backdrop",role:"presentation",children:f.jsxs("div",{className:"modal metadata-restore",role:"dialog","aria-modal":"true","aria-labelledby":"metadata-restore-title",children:[f.jsx("div",{id:"metadata-restore-title",className:"modal__title",children:t("metadata.restoreTitle")}),f.jsxs("div",{className:"modal__body metadata-restore__body",children:[f.jsx("p",{children:t("metadata.restoreBody")}),f.jsxs("div",{className:"metadata-restore__preview",children:[f.jsx("img",{src:a.image,alt:t("metadata.imageAlt")}),f.jsxs("div",{className:"metadata-restore__details",children:[f.jsxs("div",{children:[f.jsx("span",{children:t("metadata.prompt")}),f.jsx("strong",{title:d,children:Rr(d)})]}),f.jsxs("div",{children:[f.jsx("span",{children:t("metadata.size")}),f.jsx("strong",{children:Rr(c.size)})]}),f.jsxs("div",{children:[f.jsx("span",{children:t("metadata.quality")}),f.jsx("strong",{children:Rr(c.quality)})]}),f.jsxs("div",{children:[f.jsx("span",{children:t("metadata.model")}),f.jsx("strong",{children:Rr(c.model)})]}),f.jsxs("div",{children:[f.jsx("span",{children:t("metadata.source")}),f.jsx("strong",{children:a.source==="png-comment"?t("metadata.sourcePngComment"):t("metadata.sourceXmp")})]})]})]})]}),f.jsxs("div",{className:"modal__actions",children:[f.jsx("button",{type:"button",className:"modal__btn modal__btn--secondary",onClick:r,children:t("common.cancel")}),f.jsx("button",{type:"button",className:"modal__btn modal__btn--secondary",onClick:o,children:t("metadata.useAsReferenceOnly")}),f.jsx("button",{type:"button",className:"modal__btn",onClick:l,children:t("metadata.applySettings")})]})]})})}function Ez(t){const a=t.slots.filter(o=>o.kind==="text"||o.textKind).length,l=t.slots.filter(o=>o.kind==="image").length;return`${a} text / ${l} image`}function Cz(){const{t}=Ne(),a=we(r=>r.templates),l=we(r=>r.imageTemplateId),o=we(r=>r.setImageTemplate);return f.jsxs("section",{className:"card-news-panel",children:[f.jsxs("div",{className:"card-news-panel__head",children:[f.jsx("span",{children:t("cardNews.imageTemplate")}),f.jsx("button",{type:"button",disabled:!0,title:t("cardNews.newTemplateLater"),children:"+"})]}),f.jsx("div",{className:"card-news-template-grid",children:a.map(r=>f.jsxs("button",{type:"button",className:`card-news-template${l===r.id?" selected":""}`,onClick:()=>o(r.id),children:[f.jsx("img",{src:r.previewUrl,alt:""}),f.jsxs("span",{className:"card-news-template__body",children:[f.jsx("span",{className:"card-news-template__name",children:r.name}),f.jsx("span",{className:"card-news-template__meta",children:Ez(r)}),f.jsx("span",{className:"card-news-template__sizes",children:r.recommendedOutputSizes.join(" · ")})]})]},r.id))})]})}function Tz(){const{t}=Ne(),a=we(r=>r.roleTemplates),l=we(r=>r.roleTemplateId),o=we(r=>r.setRoleTemplate);return f.jsxs("section",{className:"card-news-panel",children:[f.jsx("div",{className:"card-news-panel__head",children:f.jsx("span",{children:t("cardNews.roleTemplate")})}),f.jsx("div",{className:"card-news-role-row",children:a.map(r=>f.jsx("button",{type:"button",className:l===r.id?"selected":"",onClick:()=>o(r.id),children:r.name},r.id))})]})}function Az({status:t,locked:a}){const{t:l}=Ne(),o=a?"locked":t,r=o==="queued"||o==="generating";return f.jsxs("span",{className:`card-news-status-badge card-news-status-badge--${o}`,children:[r?f.jsx("span",{className:"card-news-spinner","aria-hidden":"true"}):null,l(`cardNews.status.${o}`)]})}function Mz(t,a){const l=`cardNews.roles.${t}`,o=a(l);return o===l?t:o}function jz(){const{t}=Ne(),a=we(r=>r.activePlan),l=we(r=>r.selectedCardId),o=we(r=>r.selectCard);return a?f.jsx("div",{className:"card-news-deck","aria-label":"Card deck",onWheel:tb,children:a.cards.map(r=>f.jsxs("button",{type:"button",className:`card-news-deck-card${l===r.id?" selected":""}`,onClick:()=>o(r.id),children:[f.jsx("span",{children:String(r.order).padStart(2,"0")}),r.url?f.jsx("img",{src:r.url,alt:"",className:"card-news-deck-card__thumb"}):null,f.jsx("strong",{children:Mz(r.role,t)}),f.jsx("small",{children:r.headline||r.textFields.find(c=>c.renderMode==="in-image")?.text}),f.jsx(Az,{status:r.status,locked:r.locked})]},r.id))}):null}const zz=[];function Rz(){const{t}=Ne(),a=we(r=>r.activePlan?.cards??zz),l=we(r=>r.generating),o={total:a.length,done:a.filter(r=>r.status==="generated").length,queued:a.filter(r=>r.status==="queued").length,errors:a.filter(r=>r.status==="error").length,skipped:a.filter(r=>r.locked||r.status==="skipped").length};return o.total?f.jsxs("div",{className:"card-news-batch-bar","aria-live":"polite",children:[f.jsx("span",{children:l?t("cardNews.progress.generating",{done:o.done,total:o.total}):t("cardNews.progress.summary",{done:o.done,total:o.total})}),f.jsx("span",{children:t("cardNews.progress.detail",{queued:o.queued,errors:o.errors,skipped:o.skipped})})]}):null}function Dz({meta:t}){const{t:a}=Ne();if(!t)return null;const l=t.mode==="structured-output"?a("cardNews.planner.structured"):t.mode==="json-mode"?a("cardNews.planner.jsonMode"):a("cardNews.planner.fallback");return f.jsxs("span",{className:"card-news-planner-badge",children:[l," · ",t.model,t.repaired?` · ${a("cardNews.planner.repaired")}`:""]})}function Oz(t){const a=t.textFields.filter(l=>l.renderMode==="in-image"&&l.text).map(l=>`[${l.placement}] ${l.text}`);return[t.headline,...a].filter(Boolean).join(`
|
|
24
|
+
`)}function Lz(t,a){const l=t.slotId?a?.slots.find(o=>o.id===t.slotId):null;return l?{left:`${l.x/20.48}%`,top:`${l.y/20.48}%`,width:`${l.w/20.48}%`,minHeight:`${l.h/20.48}%`}:Hz(t)}const O0={"top-left":{left:"10%",top:"10%",width:"34%"},"top-center":{left:"50%",top:"10%",width:"42%",transform:"translateX(-50%)"},"top-right":{right:"10%",top:"10%",width:"34%"},"center-left":{left:"10%",top:"50%",width:"34%",transform:"translateY(-50%)"},center:{left:"50%",top:"50%",width:"44%",transform:"translate(-50%, -50%)"},"center-right":{right:"10%",top:"50%",width:"34%",transform:"translateY(-50%)"},"bottom-left":{left:"10%",bottom:"10%",width:"34%"},"bottom-center":{left:"50%",bottom:"10%",width:"42%",transform:"translateX(-50%)"},"bottom-right":{right:"10%",bottom:"10%",width:"34%"},free:{left:"50%",top:"50%",width:"44%",transform:"translate(-50%, -50%)"}};function Hz(t){return O0[t.placement]||O0.center}function Iz(){const{t}=Ne(),a=we(v=>v.activePlan),l=we(v=>v.selectedCardId),o=we(v=>v.selectedTextFieldId),r=we(v=>v.templates),c=we(v=>v.plannerMeta),d=we(v=>v.retryCard),m=we(v=>v.selectTextField),y=a?.cards.find(v=>v.id===l)||a?.cards[0],p=a?r.find(v=>v.id===a.imageTemplateId):void 0,g=y?.textFields.filter(v=>v.renderMode==="in-image")||[];return!a||!y?f.jsxs("section",{className:"card-news-empty",children:[f.jsxs("div",{className:"card-news-empty__deck","aria-hidden":"true",children:[f.jsx("div",{className:"card-news-empty__card card-news-empty__card--back"}),f.jsx("div",{className:"card-news-empty__card card-news-empty__card--mid"}),f.jsxs("div",{className:"card-news-empty__card",children:[f.jsx("span",{}),f.jsx("strong",{}),f.jsx("em",{})]})]}),f.jsxs("div",{className:"card-news-empty__copy",children:[f.jsx("span",{children:t("uiMode.cardNews")}),f.jsx("h2",{children:t("cardNews.emptyTitle")}),f.jsx("p",{children:t("cardNews.emptyBody")})]})]}):f.jsxs("section",{className:"card-news-stage",children:[f.jsxs("div",{className:"card-news-stage__header",children:[f.jsxs("div",{children:[f.jsx("h2",{children:a.title}),f.jsx("p",{children:a.generationStrategy}),f.jsx(Dz,{meta:c})]}),f.jsxs("span",{children:[y.order," / ",a.cards.length]})]}),f.jsx(Rz,{}),f.jsxs("div",{className:"card-news-preview",children:[y.status==="queued"||y.status==="generating"?f.jsx("div",{className:"card-news-preview__loading",children:t("cardNews.progress.cardGenerating")}):y.status==="error"?f.jsxs("div",{className:"card-news-preview__error",children:[f.jsx("span",{children:y.error||t("cardNews.error")}),y.locked?null:f.jsx("button",{type:"button",onClick:()=>{d(y.id)},children:t("cardNews.retryCard")})]}):y.url?f.jsx("img",{src:y.url,alt:y.headline}):f.jsx("div",{className:"card-news-preview__slot"}),g.length?f.jsx("div",{className:"card-news-stage-overlay",children:g.map(v=>f.jsx("button",{type:"button",className:`card-news-stage-overlay__field card-news-stage-overlay__field--${v.placement}${o===v.id?" selected":""}`,style:Lz(v,p),onClick:()=>m(v.id),"aria-label":t("cardNews.selectTextField",{text:v.text||v.kind}),children:f.jsx("span",{children:v.text||v.kind})},v.id))}):null]}),y.url?f.jsxs("div",{className:"card-news-result-actions",children:[f.jsx("button",{type:"button",onClick:()=>navigator.clipboard?.writeText(y.visualPrompt),children:t("cardNews.actions.copyPrompt")}),f.jsx("button",{type:"button",onClick:()=>navigator.clipboard?.writeText(Oz(y)),children:t("cardNews.actions.copyCopy")}),f.jsx("a",{href:y.url,target:"_blank",rel:"noreferrer",children:t("cardNews.actions.openImage")}),f.jsx("a",{href:y.url,download:!0,children:t("cardNews.actions.downloadCard")})]}):null]})}function nb(t,a){const l=`cardNews.placements.${t}`,o=a(l);return o===l?t:o}function kz({placement:t}){const{t:a}=Ne();return f.jsx("span",{className:"card-news-placement-chip",children:nb(t,a)})}const Bz=["headline","body","caption","cta","badge","number"],Uz=["top-left","top-center","top-right","center-left","center","center-right","bottom-left","bottom-center","bottom-right","free"],Gz=["in-image","ui-only"],qz=["primary","secondary","supporting"];function Dr(t,a,l){const o=`cardNews.${t}.${a}`,r=l(o);return r===o?a:r}function Yz({field:t,locked:a,selected:l=!1,onSelect:o,onChange:r,onRemove:c}){const{t:d}=Ne(),m=t.text.length,y=typeof t.maxChars=="number"&&m>t.maxChars,p=t.maxChars===null||t.maxChars>80;return f.jsxs("div",{className:`card-news-text-field-card${l?" selected":""}`,onClick:o,children:[f.jsxs("div",{className:"card-news-text-field-card__header",children:[f.jsx("span",{children:Dr("textKinds",t.kind,d)}),f.jsx(kz,{placement:t.placement})]}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:d("cardNews.textFieldText")}),p?f.jsx("textarea",{value:t.text,disabled:a,onChange:g=>r({text:g.target.value,source:"user"})}):f.jsx("input",{value:t.text,disabled:a,onChange:g=>r({text:g.target.value,source:"user"})})]}),f.jsxs("div",{className:"card-news-text-field-card__grid",children:[f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:d("cardNews.textKind")}),f.jsx("select",{value:t.kind,disabled:a,onChange:g=>r({kind:g.target.value,source:"user"}),children:Bz.map(g=>f.jsx("option",{value:g,children:Dr("textKinds",g,d)},g))})]}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:d("cardNews.placement")}),f.jsx("select",{value:t.placement,disabled:a,onChange:g=>r({placement:g.target.value,source:"user"}),children:Uz.map(g=>f.jsx("option",{value:g,children:nb(g,d)},g))})]}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:d("cardNews.renderMode")}),f.jsx("select",{value:t.renderMode,disabled:a,onChange:g=>r({renderMode:g.target.value,source:"user"}),children:Gz.map(g=>f.jsx("option",{value:g,children:Dr("renderModes",g,d)},g))})]}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:d("cardNews.hierarchyLabel")}),f.jsx("select",{value:t.hierarchy,disabled:a,onChange:g=>r({hierarchy:g.target.value,source:"user"}),children:qz.map(g=>f.jsx("option",{value:g,children:Dr("hierarchy",g,d)},g))})]})]}),f.jsxs("div",{className:`card-news-text-field-card__meta${y?" over":""}`,children:[f.jsx("span",{children:t.maxChars===null?m:`${m}/${t.maxChars}`}),y?f.jsx("span",{children:d("cardNews.textTooLong")}):null,c?f.jsx("button",{type:"button",disabled:a,onClick:c,children:d("cardNews.removeTextField")}):null]})]})}function Vz(){return{id:`tf_${Date.now().toString(36)}`,kind:"body",text:"",renderMode:"in-image",placement:"center",slotId:null,hierarchy:"supporting",maxChars:null,language:null,source:"user"}}function $z(){const{t}=Ne(),a=we(v=>v.activePlan),l=we(v=>v.selectedCardId),o=we(v=>v.selectedTextFieldId),r=we(v=>v.updateCard),c=we(v=>v.updateTextField),d=we(v=>v.addTextField),m=we(v=>v.removeTextField),y=we(v=>v.selectTextField),p=we(v=>v.retryCard),g=a?.cards.find(v=>v.id===l)||a?.cards[0];return g?f.jsxs("aside",{className:"card-news-inspector",children:[f.jsx("div",{className:"section-title",children:t("cardNews.inspector")}),f.jsxs("div",{className:"card-news-inspector-group",children:[f.jsx("span",{className:"card-news-inspector-label",children:t("cardNews.cardTitle")}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:t("cardNews.headline")}),f.jsx("input",{value:g.headline,disabled:g.locked,onChange:v=>r(g.id,{headline:v.target.value})})]})]}),f.jsxs("div",{className:"card-news-inspector-group",children:[f.jsxs("div",{className:"card-news-inspector-row",children:[f.jsx("span",{className:"card-news-inspector-label",children:t("cardNews.textFields")}),f.jsx("button",{type:"button",className:"secondary-btn",disabled:g.locked,onClick:()=>d(g.id,Vz()),children:t("cardNews.addTextField")})]}),g.textFields.length?g.textFields.map(v=>f.jsx(Yz,{field:v,locked:g.locked,selected:o===v.id,onSelect:()=>y(v.id),onChange:x=>c(g.id,v.id,x),onRemove:()=>m(g.id,v.id)},v.id)):f.jsx("p",{className:"card-news-muted",children:t("cardNews.noTextFields")})]}),f.jsxs("details",{className:"card-news-inspector-group card-news-advanced-prompt",children:[f.jsx("summary",{children:t("cardNews.designPrompt")}),f.jsxs("label",{className:"card-news-field",children:[f.jsx("span",{children:t("cardNews.visualPrompt")}),f.jsx("textarea",{value:g.visualPrompt,disabled:g.locked,onChange:v=>r(g.id,{visualPrompt:v.target.value})})]})]}),g.imageFilename?f.jsxs("div",{className:"card-news-generated-meta",children:[f.jsx("span",{children:t("cardNews.generatedMeta")}),f.jsx("code",{children:g.imageFilename}),f.jsx("span",{children:g.status})]}):null,g.locked?f.jsx("p",{className:"card-news-locked-help",children:t("cardNews.lockedHelp")}):null,f.jsx("button",{type:"button",className:`secondary-btn${g.locked?" active":""}`,onClick:()=>r(g.id,{locked:!g.locked}),children:g.locked?t("cardNews.locked"):t("cardNews.unlocked")}),f.jsx("button",{type:"button",className:"secondary-btn",disabled:g.locked||!["draft","error"].includes(g.status),onClick:()=>{p(g.id)},children:t("cardNews.retryCard")})]}):f.jsxs("aside",{className:"card-news-inspector card-news-inspector-empty",children:[f.jsx("div",{className:"section-title",children:t("cardNews.inspector")}),f.jsxs("div",{className:"card-news-inspector-empty__mock","aria-hidden":"true",children:[f.jsx("span",{}),f.jsx("strong",{}),f.jsx("i",{}),f.jsx("i",{})]}),f.jsx("p",{children:t("cardNews.noCard")})]})}function Xz(){const{t}=Ne(),a=we(o=>o.hydrate),l=we(o=>o.error);return H.useEffect(()=>{a()},[a]),f.jsxs("main",{className:"card-news-workspace","aria-label":t("cardNews.workspace"),children:[f.jsxs("div",{className:"card-news-setup",children:[f.jsx(Cz,{}),f.jsx(Tz,{})]}),f.jsxs("div",{className:"card-news-main",children:[l?f.jsx("div",{className:"card-news-error",role:"alert",children:l}):null,f.jsx(Iz,{}),f.jsx(jz,{})]}),f.jsx($z,{})]})}function Pz({prompt:t,onClose:a,onLoad:l,onInsert:o,onDelete:r,onToggleFavorite:c}){const{t:d}=Ne(),m=async()=>{try{await navigator.clipboard.writeText(t.text)}catch{}};return f.jsxs("div",{className:"prompt-detail-modal",onClick:a,children:[f.jsx("div",{className:"prompt-detail-modal__backdrop"}),f.jsxs("div",{className:"prompt-detail-modal__content",onClick:y=>y.stopPropagation(),children:[f.jsxs("div",{className:"prompt-detail-modal__header",children:[f.jsx("h4",{children:t.name||d("promptLibrary.untitled")}),f.jsx("button",{className:"prompt-detail-modal__close",onClick:a,"aria-label":d("common.close"),children:"×"})]}),f.jsxs("div",{className:"prompt-detail-modal__body",children:[f.jsx("div",{className:"prompt-detail-modal__label",children:d("promptLibrary.content")}),f.jsx("div",{className:"prompt-detail-modal__prompt",children:t.text}),t.tags.length>0&&f.jsxs("div",{className:"prompt-detail-modal__tags",children:[f.jsx("div",{className:"prompt-detail-modal__label",children:d("promptLibrary.tags")}),f.jsx("div",{className:"prompt-detail-modal__tag-list",children:t.tags.map(y=>f.jsxs("span",{className:"prompt-detail-modal__tag",children:["#",y]},y))})]})]}),f.jsxs("div",{className:"prompt-detail-modal__footer",children:[f.jsx("button",{className:"prompt-detail-modal__load",onClick:l,children:d("promptLibrary.load")}),f.jsx("button",{className:"prompt-detail-modal__copy",onClick:m,children:d("promptLibrary.copy")}),f.jsxs("button",{className:"prompt-detail-modal__insert",onClick:o,children:["+ ",d("promptLibrary.insert")]}),f.jsx("button",{className:`prompt-detail-modal__favorite${t.isFavorite?" prompt-detail-modal__favorite--on":""}`,onClick:c,children:t.isFavorite?"★ "+d("promptLibrary.unfavorite"):"☆ "+d("promptLibrary.favorite")}),f.jsx("button",{className:"prompt-detail-modal__delete",onClick:r,children:d("common.delete")})]})]})]})}function Fz({prompt:t,onLoad:a,onInsert:l,onDelete:o,onToggleFavorite:r}){const{t:c}=Ne(),[d,m]=H.useState(!1),y=t.text.length>45?t.text.slice(0,45)+"...":t.text;return f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"prompt-library-row",onClick:()=>m(!0),children:[f.jsxs("div",{className:"prompt-library-row__main",children:[f.jsx("div",{className:"prompt-library-row__title",children:t.name||c("promptLibrary.untitled")}),f.jsx("div",{className:"prompt-library-row__preview",children:y})]}),f.jsxs("div",{className:"prompt-library-row__actions",children:[f.jsx("button",{className:"prompt-library-row__insert",onClick:p=>{p.stopPropagation(),l()},title:c("promptLibrary.insert"),"aria-label":c("promptLibrary.insert"),children:"+"}),f.jsx("button",{className:`prompt-library-row__star${t.isFavorite?" prompt-library-row__star--on":""}`,onClick:p=>{p.stopPropagation(),r()},"aria-label":t.isFavorite?c("promptLibrary.unfavorite"):c("promptLibrary.favorite"),children:t.isFavorite?"★":"☆"}),f.jsx("span",{className:"prompt-library-row__chevron",children:"›"})]})]}),d&&f.jsx(Pz,{prompt:t,onClose:()=>m(!1),onLoad:()=>{a(),m(!1)},onInsert:()=>{l(),m(!1)},onDelete:o,onToggleFavorite:r})]})}function Zz(){const{t}=Ne(),a=P(N=>N.promptLibraryOpen),l=P(N=>N.togglePromptLibrary),o=P(N=>N.promptLibrary),r=P(N=>N.promptLibraryLoading),c=P(N=>N.loadPromptLibrary),d=P(N=>N.deletePromptFromLibrary),m=P(N=>N.togglePromptFavorite),y=P(N=>N.setPrompt),p=P(N=>N.insertPromptToComposer),g=P(N=>N.clearInsertedPrompts),v=P(N=>N.showToast),x=P(N=>N.importPromptsToLibrary),[w,S]=H.useState(""),[M,R]=H.useState(!1),[z,O]=H.useState(!1),[C,_]=H.useState(!1),k=H.useRef(0),A=H.useRef(null);H.useEffect(()=>{a&&c()},[a,c]);const B=H.useCallback(N=>{N.preventDefault(),N.stopPropagation(),k.current+=1,k.current>0&&_(!0)},[]),X=H.useCallback(N=>{N.preventDefault(),N.stopPropagation(),k.current=Math.max(0,k.current-1),k.current===0&&_(!1)},[]),K=H.useCallback(N=>{N.preventDefault(),N.stopPropagation()},[]),de=H.useCallback(N=>{N.preventDefault(),N.stopPropagation(),k.current=0,_(!1);const D=Array.from(N.dataTransfer.files).filter(T=>/\.(txt|md)$/i.test(T.name));D.length>0&&x(D)},[x]),F=H.useCallback(N=>{const D=Array.from(N.target.files??[]);D.length>0&&x(D),N.target.value=""},[x]),te=H.useCallback(N=>{p({id:N.id,name:N.name||t("promptLibrary.untitled"),text:N.text}),v(t("promptLibrary.inserted")),l()},[p,v,t,l]);if(!a)return null;const ce=o.prompts.filter(N=>{if(M&&!N.isFavorite)return!1;if(!w.trim())return!0;const D=w.toLowerCase();return N.name.toLowerCase().includes(D)||N.text.toLowerCase().includes(D)||N.tags.some(T=>T.toLowerCase().includes(D))});return f.jsxs("div",{className:"prompt-library-panel",onDragEnter:B,onDragLeave:X,onDragOver:K,onDrop:de,children:[f.jsx("div",{className:"prompt-library-panel__backdrop",onClick:l}),f.jsxs("div",{className:"prompt-library-panel__drawer",children:[f.jsxs("div",{className:"prompt-library-panel__header",children:[f.jsx("h3",{children:t("promptLibrary.title")}),f.jsxs("div",{style:{display:"flex",gap:"8px",alignItems:"center"},children:[f.jsx("button",{className:"prompt-library-panel__add",onClick:()=>O(N=>!N),title:t("promptLibrary.addNew"),"aria-label":t("promptLibrary.addNew"),children:"+"}),f.jsx("button",{className:"prompt-library-panel__import",onClick:()=>A.current?.click(),title:t("promptLibrary.importFiles"),"aria-label":t("promptLibrary.importFiles"),children:t("promptLibrary.import")}),f.jsx("input",{ref:A,className:"prompt-library-panel__file-input",type:"file",accept:".txt,.md,text/plain,text/markdown",multiple:!0,onChange:F}),f.jsx("button",{onClick:l,"aria-label":t("common.close"),children:"×"})]}),z&&f.jsx(Df,{text:"",onClose:()=>O(!1)})]}),f.jsxs("div",{className:"prompt-library-panel__search",children:[f.jsx("input",{type:"text",placeholder:t("promptLibrary.search"),value:w,onChange:N=>S(N.target.value)}),f.jsxs("label",{className:"prompt-library-panel__filter",children:[f.jsx("input",{type:"checkbox",checked:M,onChange:N=>R(N.target.checked)}),f.jsxs("span",{children:["★ ",t("promptLibrary.favorites")]})]})]}),r?f.jsx("div",{className:"prompt-library-panel__loading",children:t("common.loading")}):f.jsx("div",{className:"prompt-library-panel__list",children:ce.length===0?f.jsx("div",{className:"prompt-library-panel__empty",children:t("promptLibrary.empty")}):ce.map(N=>f.jsx(Fz,{prompt:N,onLoad:()=>{g(),y(N.text),l()},onInsert:()=>te(N),onDelete:()=>d(N.id),onToggleFavorite:()=>m(N.id)},N.id))}),C&&f.jsx("div",{className:"prompt-library-panel__drop-overlay",children:f.jsx("div",{className:"prompt-library-panel__drop-message",children:t("promptLibrary.dropImport")})})]})]})}function Kz(){const t=P(S=>S.hydrateHistory),a=P(S=>S.loadSessions),l=P(S=>S.startInFlightPolling),o=P(S=>S.reconcileInflight),r=P(S=>S.syncFromStorage),c=P(S=>S.theme),d=P(S=>S.resolvedTheme),m=P(S=>S.themeFamily),y=P(S=>S.settingsOpen),p=P(S=>S.syncThemeFromStorage),g=P(S=>S.syncThemeFamilyFromStorage),v=P(S=>S.refreshResolvedTheme),w=P(S=>S.uiMode)==="node"&&Rf?"node":"classic";return H.useEffect(()=>{t(),a(),o(),l()},[t,a,o,l]),H.useEffect(()=>{const S=M=>{M.key&&(M.key==="ima2.inFlight"||M.key==="ima2.selectedFilename"?r():M.key==="ima2:theme"?p():M.key==="ima2:themeFamily"&&g())};return window.addEventListener("storage",S),()=>window.removeEventListener("storage",S)},[r,p,g]),H.useEffect(()=>{const S=document.documentElement;S.dataset.theme=d,S.dataset.themeMode=d,S.dataset.themeFamily=m,S.style.colorScheme=d},[d,m]),H.useEffect(()=>{if(c!=="system")return;const S=window.matchMedia("(prefers-color-scheme: light)");return S.addEventListener("change",v),()=>S.removeEventListener("change",v)},[v,c]),H.useEffect(()=>{const S=()=>{d_(P.getState)};return window.addEventListener("beforeunload",S),()=>{window.removeEventListener("beforeunload",S)}},[]),f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:`app${y?" app--settings-open":""}`,"data-theme-mode":d,"data-theme-family":m,children:[f.jsx(R_,{}),f.jsx(oz,{}),y?f.jsx(pz,{}):w==="classic"?f.jsx(Sy,{}):w==="node"?f.jsx(Fj,{}):w==="card-news"?f.jsx(Xz,{}):f.jsx(Sy,{}),w==="card-news"?null:f.jsx(lz,{})]}),f.jsx(Nz,{}),f.jsx(gz,{}),f.jsx(yz,{}),f.jsx(Sz,{}),f.jsx(_z,{}),f.jsx(Zz,{})]})}g1.createRoot(document.getElementById("root")).render(f.jsx(H.StrictMode,{children:f.jsx(Kz,{})}));
|
|
25
|
+
//# sourceMappingURL=index-0SyTGr-u.js.map
|