inline-studio-frontend 1.1.1__py3-none-any.whl

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.
@@ -0,0 +1,240 @@
1
+ (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))a(l);new MutationObserver(l=>{for(const r of l)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&a(i)}).observe(document,{childList:!0,subtree:!0});function n(l){const r={};return l.integrity&&(r.integrity=l.integrity),l.referrerPolicy&&(r.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?r.credentials="include":l.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function a(l){if(l.ep)return;l.ep=!0;const r=n(l);fetch(l.href,r)}})();function Op(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Bp={exports:{}},Ts={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.js
4
+ *
5
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var Fb=Symbol.for("react.transitional.element"),Gb=Symbol.for("react.fragment");function Rp(e,t,n){var a=null;if(n!==void 0&&(a=""+n),t.key!==void 0&&(a=""+t.key),"key"in t){n={};for(var l in t)l!=="key"&&(n[l]=t[l])}else n=t;return t=n.ref,{$$typeof:Fb,type:e,key:a,ref:t!==void 0?t:null,props:n}}Ts.Fragment=Gb;Ts.jsx=Rp;Ts.jsxs=Rp;Bp.exports=Ts;var o=Bp.exports,Lp={exports:{}},xe={};/**
10
+ * @license React
11
+ * react.production.js
12
+ *
13
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var Yd=Symbol.for("react.transitional.element"),Zb=Symbol.for("react.portal"),Qb=Symbol.for("react.fragment"),Kb=Symbol.for("react.strict_mode"),Pb=Symbol.for("react.profiler"),Wb=Symbol.for("react.consumer"),Jb=Symbol.for("react.context"),e2=Symbol.for("react.forward_ref"),t2=Symbol.for("react.suspense"),n2=Symbol.for("react.memo"),Hp=Symbol.for("react.lazy"),a2=Symbol.for("react.activity"),Th=Symbol.iterator;function l2(e){return e===null||typeof e!="object"?null:(e=Th&&e[Th]||e["@@iterator"],typeof e=="function"?e:null)}var Ip={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Up=Object.assign,Vp={};function dr(e,t,n){this.props=e,this.context=t,this.refs=Vp,this.updater=n||Ip}dr.prototype.isReactComponent={};dr.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=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,e,t,"setState")};dr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function $p(){}$p.prototype=dr.prototype;function Xd(e,t,n){this.props=e,this.context=t,this.refs=Vp,this.updater=n||Ip}var qd=Xd.prototype=new $p;qd.constructor=Xd;Up(qd,dr.prototype);qd.isPureReactComponent=!0;var Dh=Array.isArray;function zu(){}var Oe={H:null,A:null,T:null,S:null},Yp=Object.prototype.hasOwnProperty;function Fd(e,t,n){var a=n.ref;return{$$typeof:Yd,type:e,key:t,ref:a!==void 0?a:null,props:n}}function r2(e,t){return Fd(e.type,t,e.props)}function Gd(e){return typeof e=="object"&&e!==null&&e.$$typeof===Yd}function i2(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var Oh=/\/+/g;function Sc(e,t){return typeof e=="object"&&e!==null&&e.key!=null?i2(""+e.key):t.toString(36)}function o2(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch(typeof e.status=="string"?e.then(zu,zu):(e.status="pending",e.then(function(t){e.status==="pending"&&(e.status="fulfilled",e.value=t)},function(t){e.status==="pending"&&(e.status="rejected",e.reason=t)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}function bl(e,t,n,a,l){var r=typeof e;(r==="undefined"||r==="boolean")&&(e=null);var i=!1;if(e===null)i=!0;else switch(r){case"bigint":case"string":case"number":i=!0;break;case"object":switch(e.$$typeof){case Yd:case Zb:i=!0;break;case Hp:return i=e._init,bl(i(e._payload),t,n,a,l)}}if(i)return l=l(e),i=a===""?"."+Sc(e,0):a,Dh(l)?(n="",i!=null&&(n=i.replace(Oh,"$&/")+"/"),bl(l,t,n,"",function(u){return u})):l!=null&&(Gd(l)&&(l=r2(l,n+(l.key==null||e&&e.key===l.key?"":(""+l.key).replace(Oh,"$&/")+"/")+i)),t.push(l)),1;i=0;var s=a===""?".":a+":";if(Dh(e))for(var c=0;c<e.length;c++)a=e[c],r=s+Sc(a,c),i+=bl(a,t,n,r,l);else if(c=l2(e),typeof c=="function")for(e=c.call(e),c=0;!(a=e.next()).done;)a=a.value,r=s+Sc(a,c++),i+=bl(a,t,n,r,l);else if(r==="object"){if(typeof e.then=="function")return bl(o2(e),t,n,a,l);throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.")}return i}function Ki(e,t,n){if(e==null)return e;var a=[],l=0;return bl(e,a,"","",function(r){return t.call(n,r,l++)}),a}function s2(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var Bh=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=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(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},c2={map:Ki,forEach:function(e,t,n){Ki(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return Ki(e,function(){t++}),t},toArray:function(e){return Ki(e,function(t){return t})||[]},only:function(e){if(!Gd(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};xe.Activity=a2;xe.Children=c2;xe.Component=dr;xe.Fragment=Qb;xe.Profiler=Pb;xe.PureComponent=Xd;xe.StrictMode=Kb;xe.Suspense=t2;xe.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=Oe;xe.__COMPILER_RUNTIME={__proto__:null,c:function(e){return Oe.H.useMemoCache(e)}};xe.cache=function(e){return function(){return e.apply(null,arguments)}};xe.cacheSignal=function(){return null};xe.cloneElement=function(e,t,n){if(e==null)throw Error("The argument must be a React element, but you passed "+e+".");var a=Up({},e.props),l=e.key;if(t!=null)for(r in t.key!==void 0&&(l=""+t.key),t)!Yp.call(t,r)||r==="key"||r==="__self"||r==="__source"||r==="ref"&&t.ref===void 0||(a[r]=t[r]);var r=arguments.length-2;if(r===1)a.children=n;else if(1<r){for(var i=Array(r),s=0;s<r;s++)i[s]=arguments[s+2];a.children=i}return Fd(e.type,l,a)};xe.createContext=function(e){return e={$$typeof:Jb,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:Wb,_context:e},e};xe.createElement=function(e,t,n){var a,l={},r=null;if(t!=null)for(a in t.key!==void 0&&(r=""+t.key),t)Yp.call(t,a)&&a!=="key"&&a!=="__self"&&a!=="__source"&&(l[a]=t[a]);var i=arguments.length-2;if(i===1)l.children=n;else if(1<i){for(var s=Array(i),c=0;c<i;c++)s[c]=arguments[c+2];l.children=s}if(e&&e.defaultProps)for(a in i=e.defaultProps,i)l[a]===void 0&&(l[a]=i[a]);return Fd(e,r,l)};xe.createRef=function(){return{current:null}};xe.forwardRef=function(e){return{$$typeof:e2,render:e}};xe.isValidElement=Gd;xe.lazy=function(e){return{$$typeof:Hp,_payload:{_status:-1,_result:e},_init:s2}};xe.memo=function(e,t){return{$$typeof:n2,type:e,compare:t===void 0?null:t}};xe.startTransition=function(e){var t=Oe.T,n={};Oe.T=n;try{var a=e(),l=Oe.S;l!==null&&l(n,a),typeof a=="object"&&a!==null&&typeof a.then=="function"&&a.then(zu,Bh)}catch(r){Bh(r)}finally{t!==null&&n.types!==null&&(t.types=n.types),Oe.T=t}};xe.unstable_useCacheRefresh=function(){return Oe.H.useCacheRefresh()};xe.use=function(e){return Oe.H.use(e)};xe.useActionState=function(e,t,n){return Oe.H.useActionState(e,t,n)};xe.useCallback=function(e,t){return Oe.H.useCallback(e,t)};xe.useContext=function(e){return Oe.H.useContext(e)};xe.useDebugValue=function(){};xe.useDeferredValue=function(e,t){return Oe.H.useDeferredValue(e,t)};xe.useEffect=function(e,t){return Oe.H.useEffect(e,t)};xe.useEffectEvent=function(e){return Oe.H.useEffectEvent(e)};xe.useId=function(){return Oe.H.useId()};xe.useImperativeHandle=function(e,t,n){return Oe.H.useImperativeHandle(e,t,n)};xe.useInsertionEffect=function(e,t){return Oe.H.useInsertionEffect(e,t)};xe.useLayoutEffect=function(e,t){return Oe.H.useLayoutEffect(e,t)};xe.useMemo=function(e,t){return Oe.H.useMemo(e,t)};xe.useOptimistic=function(e,t){return Oe.H.useOptimistic(e,t)};xe.useReducer=function(e,t,n){return Oe.H.useReducer(e,t,n)};xe.useRef=function(e){return Oe.H.useRef(e)};xe.useState=function(e){return Oe.H.useState(e)};xe.useSyncExternalStore=function(e,t,n){return Oe.H.useSyncExternalStore(e,t,n)};xe.useTransition=function(){return Oe.H.useTransition()};xe.version="19.2.7";Lp.exports=xe;var k=Lp.exports;const Dr=Op(k),Rh=e=>{let t;const n=new Set,a=(u,d)=>{const f=typeof u=="function"?u(t):u;if(!Object.is(f,t)){const h=t;t=d??(typeof f!="object"||f===null)?f:Object.assign({},t,f),n.forEach(m=>m(t,h))}},l=()=>t,s={setState:a,getState:l,getInitialState:()=>c,subscribe:u=>(n.add(u),()=>n.delete(u))},c=t=e(a,l,s);return s},u2=e=>e?Rh(e):Rh,d2=e=>e;function f2(e,t=d2){const n=Dr.useSyncExternalStore(e.subscribe,Dr.useCallback(()=>t(e.getState()),[e,t]),Dr.useCallback(()=>t(e.getInitialState()),[e,t]));return Dr.useDebugValue(n),n}const Lh=e=>{const t=u2(e),n=a=>f2(t,a);return Object.assign(n,t),n},_t=e=>e?Lh(e):Lh;function te(e){return e instanceof Error?e.message.includes("is not a function")||e.message.includes("undefined")?"This action is unavailable — please fully restart the app (the bridge is out of date).":e.message:String(e)}let Mu=null;function h2(e){Mu=e}function F(){if(!Mu)throw new Error("No backend client injected. Call setStudioClient() before rendering.");return Mu}const qo=_t((e,t)=>({current:null,recents:[],loading:!1,error:null,notice:null,exportingPath:null,loadRecents:async()=>{const n=await F().project.listRecent();n.ok&&e({recents:n.value})},createProject:async n=>{e({loading:!0,error:null});const a=await F().dialog.pickDirectory();if(!a.ok)return e({loading:!1,error:a.error});if(a.value===null)return e({loading:!1});const l=await F().project.create({name:n,parentDir:a.value});if(!l.ok)return e({loading:!1,error:l.error});e({current:l.value,loading:!1}),t().loadRecents()},openFromDialog:async()=>{e({loading:!0,error:null});const n=await F().project.openDialog();if(!n.ok)return e({loading:!1,error:n.error});if(n.value===null)return e({loading:!1});e({current:n.value,loading:!1}),t().loadRecents()},openFromZip:async()=>{e({loading:!0,error:null});try{const n=await F().project.openZip();if(!n.ok)return e({loading:!1,error:n.error});if(n.value===null)return e({loading:!1});e({current:n.value,loading:!1}),t().loadRecents()}catch(n){e({loading:!1,error:te(n)})}},openByPath:async n=>{e({loading:!0,error:null});const a=await F().project.open(n);if(!a.ok)return e({loading:!1,error:a.error});e({current:a.value,loading:!1}),t().loadRecents()},exportProject:async n=>{e({exportingPath:n,error:null,notice:null});try{const a=await F().project.export(n);if(!a.ok)return e({exportingPath:null,error:a.error});e({exportingPath:null,notice:a.value?`Exported to ${a.value.path}`:null})}catch(a){e({exportingPath:null,error:te(a)})}},closeProject:()=>e({current:null,error:null,notice:null})})),m2="https://github.com/inlineresearch/Inline-Studio/releases/latest",rn=_t(e=>({status:"idle",version:null,currentVersion:null,percent:0,notifyOnly:!1,error:null,loadCurrentVersion:async()=>{try{const t=await F().app.version();t.ok&&e({currentVersion:t.value})}catch{}},subscribeToEvents:()=>{const{events:t}=F(),n=[t.onUpdateAvailable(a=>e({status:a.notifyOnly?"available":"downloading",version:a.version,notifyOnly:a.notifyOnly})),t.onUpdateProgress(a=>e({status:"downloading",percent:a.percent})),t.onUpdateDownloaded(a=>e({status:"ready",version:a.version,percent:100}))];return()=>n.forEach(a=>a())},install:async()=>{try{const t=await F().updates.quitAndInstall();t.ok||e({error:t.error})}catch(t){e({error:te(t)})}},openReleases:async()=>{try{await F().shell.openExternal(m2)}catch(t){e({error:te(t)})}}}));async function Xp(e,t){if(e.length===0)return[];const n=e.map(a=>F().getPathForFile(a));if(n.every(a=>a.length>0)){const a=await F().assets.importPaths(n,t);return a.ok?a.value:[]}return qp(e,t)}async function qp(e,t){return(await Promise.all(e.map(a=>p2(a,t)))).filter(a=>a!==null)}async function p2(e,t){const n=new URLSearchParams({name:e.name});t&&n.set("folderId",t);const l=await(await fetch(`/upload?${n.toString()}`,{method:"POST",body:e})).json();return l.ok?l.value??null:null}function g2(){return new Promise(e=>{const t=document.createElement("input");t.type="file",t.multiple=!0,t.onchange=()=>e(t.files?Array.from(t.files):[]),t.oncancel=()=>e([]),t.click()})}const un=_t((e,t)=>({folders:[],assets:[],currentFolderId:null,selectedId:null,loading:!1,error:null,load:async()=>{e({loading:!0,error:null});try{const[n,a]=await Promise.all([F().folders.list(),F().assets.list()]);if(!n.ok)return e({loading:!1,error:n.error});if(!a.ok)return e({loading:!1,error:a.error});e({folders:n.value,assets:a.value,loading:!1})}catch(n){e({loading:!1,error:te(n)})}},import:async()=>{e({loading:!0,error:null});try{const n=await F().assets.importDialog(t().currentFolderId);if(!n.ok)return e({loading:!1,error:n.error});const a=n.value;e(l=>{var r;return{assets:[...a,...l.assets],selectedId:((r=a[0])==null?void 0:r.id)??l.selectedId,loading:!1}})}catch(n){e({loading:!1,error:te(n)})}},importFiles:async n=>{if(n.length!==0){e({loading:!0,error:null});try{const a=await Xp(n,t().currentFolderId);e(l=>{var r;return{assets:[...a,...l.assets],selectedId:((r=a[0])==null?void 0:r.id)??l.selectedId,loading:!1}})}catch(a){e({loading:!1,error:te(a)})}}},importPaths:async n=>{if(n.length!==0){e({loading:!0,error:null});try{const a=await F().assets.importPaths(n,t().currentFolderId);if(!a.ok)return e({loading:!1,error:a.error});const l=a.value;e(r=>{var i;return{assets:[...l,...r.assets],selectedId:((i=l[0])==null?void 0:i.id)??r.selectedId,loading:!1}})}catch(a){e({loading:!1,error:te(a)})}}},remove:async n=>{e({error:null});try{const a=await F().assets.delete(n);if(!a.ok)return e({error:a.error});e(l=>({assets:l.assets.filter(r=>r.id!==n),selectedId:l.selectedId===n?null:l.selectedId}))}catch(a){e({error:te(a)})}},createFolder:async n=>{e({error:null});try{const a=await F().folders.create({name:n,parentId:t().currentFolderId});if(!a.ok)return e({error:a.error});e(l=>({folders:[...l.folders,a.value]}))}catch(a){e({error:te(a)})}},deleteFolder:async n=>{e({error:null});try{const a=await F().folders.delete(n);if(!a.ok)return e({error:a.error});await t().load()}catch(a){e({error:te(a)})}},navigate:n=>e({currentFolderId:n,selectedId:null}),select:n=>e({selectedId:n}),reset:()=>e({folders:[],assets:[],currentFolderId:null,selectedId:null,error:null})}));function x2(){return F().events.onLibraryChanged(()=>{un.getState().load()})}function y2(e,t){const n=new Map(e.map(r=>[r.id,r])),a=[];let l=t;for(;l;){const r=n.get(l);if(!r)break;a.unshift(r),l=r.parentId}return a}const v2="/assets/logo-B21TrMGg.svg";function Fp({size:e=28}){return o.jsx("img",{src:v2,alt:"Inline Studio",width:e,height:e,className:"rounded",style:{width:e,height:e}})}const b2="/assets/race-CLFB7L9s.png",w2="https://inlinestudio.art/projects/circuit-race";function j2(){return o.jsxs("section",{className:"rounded-xl border border-border bg-surface p-5",children:[o.jsx("h2",{className:"mb-3 text-sm font-medium text-zinc-300",children:"Try a demo"}),o.jsxs("button",{onClick:()=>void F().shell.openExternal(w2),className:"group block w-full overflow-hidden rounded-lg border border-border bg-panel text-left transition-colors hover:border-accent",children:[o.jsx("div",{className:"aspect-video w-full overflow-hidden bg-panel",children:o.jsx("img",{src:b2,alt:"Circuit Race",className:"h-full w-full object-cover transition-transform group-hover:scale-[1.02]"})}),o.jsxs("div",{className:"flex items-center gap-2 p-3",children:[o.jsxs("span",{className:"min-w-0 flex-1",children:[o.jsx("span",{className:"block text-sm font-semibold text-zinc-100",children:"Circuit Race"}),o.jsx("span",{className:"block text-xs text-zinc-400",children:"A full walkthrough: storyboard, shots, and assembly of a short film."})]}),o.jsx(N2,{})]})]})]})}function N2(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-4 w-4 shrink-0 text-zinc-500 group-hover:text-accent",children:[o.jsx("path",{d:"M14 3h7v7"}),o.jsx("path",{d:"M10 14 21 3"}),o.jsx("path",{d:"M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"})]})}const S2="https://inlinestudio.art/getting-started";function E2(){return o.jsxs("button",{onClick:()=>void F().shell.openExternal(S2),className:"group flex w-full items-center gap-3 rounded-xl border border-accent/40 bg-accent/5 p-4 text-left transition-colors hover:border-accent",children:[o.jsx("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-md bg-accent/15 text-accent",children:o.jsx(k2,{})}),o.jsxs("span",{className:"min-w-0 flex-1",children:[o.jsx("span",{className:"block text-sm font-semibold text-zinc-100",children:"New here? Start with the basics"}),o.jsx("span",{className:"block text-xs text-zinc-400",children:"A quick guide to your first render."})]}),o.jsx(_2,{})]})}function k2(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-5 w-5",children:[o.jsx("circle",{cx:"12",cy:"12",r:"9"}),o.jsx("path",{d:"m15.5 8.5-2.1 4.9-4.9 2.1 2.1-4.9 4.9-2.1z"})]})}function _2(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-4 w-4 shrink-0 text-zinc-500 group-hover:text-accent",children:[o.jsx("path",{d:"M14 3h7v7"}),o.jsx("path",{d:"M10 14 21 3"}),o.jsx("path",{d:"M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"})]})}const C2="https://fal.ai/dashboard/keys";function z2(){return o.jsxs("button",{onClick:()=>void F().shell.openExternal(C2),className:"group flex w-full items-center gap-3 rounded-xl border border-emerald-500/40 bg-emerald-500/5 p-4 text-left transition-colors hover:border-emerald-500",children:[o.jsx("span",{className:"flex h-9 w-9 shrink-0 items-center justify-center rounded-md bg-emerald-500/15 text-emerald-400",children:o.jsx(M2,{})}),o.jsxs("span",{className:"min-w-0 flex-1",children:[o.jsx("span",{className:"block text-sm font-semibold text-zinc-100",children:"Closed models, no ComfyUI setup"}),o.jsx("span",{className:"block text-xs text-zinc-400",children:"Run GPT Image, Seedance & more right on the canvas — nothing to install. Bring your own fal.ai API key; it stays on your device."})]}),o.jsx(A2,{})]})}function M2(){return o.jsx("svg",{viewBox:"0 0 640 640",className:"h-5 w-5","aria-hidden":"true",children:o.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M204 110A94 94 0 0 1 298 16L342 16A94 94 0 0 1 436 110L436 110A94 94 0 0 0 530 204L530 204A94 94 0 0 1 624 298L624 342A94 94 0 0 1 530 436L530 436A94 94 0 0 0 436 530L436 530A94 94 0 0 1 342 624L298 624A94 94 0 0 1 204 530L204 530A94 94 0 0 0 110 436L110 436A94 94 0 0 1 16 342L16 298A94 94 0 0 1 110 204L110 204A94 94 0 0 0 204 110ZM320 170A150 150 0 1 0 320 470A150 150 0 1 0 320 170Z"})})}function A2(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-4 w-4 shrink-0 text-zinc-500 group-hover:text-emerald-400",children:[o.jsx("path",{d:"M14 3h7v7"}),o.jsx("path",{d:"M10 14 21 3"}),o.jsx("path",{d:"M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"})]})}function T2(){const{recents:e,loading:t,error:n,notice:a,exportingPath:l,createProject:r,openFromDialog:i,openFromZip:s,openByPath:c,exportProject:u}=qo(),[d,f]=k.useState(""),h=rn(v=>v.currentVersion),m=rn(v=>v.status),x=rn(v=>v.version),j=rn(v=>v.loadCurrentVersion),w=rn(v=>v.openReleases),p=m!=="idle";k.useEffect(()=>{j(),F().updates.check()},[j]);const y=d.trim().length>0&&!t,g=l!==null;return o.jsxs("div",{className:"relative flex h-full flex-col overflow-y-auto p-8",children:[o.jsx("div",{className:"flex flex-1 items-center",children:o.jsxs("div",{className:"mx-auto w-full max-w-4xl",children:[o.jsxs("header",{className:"mb-8 text-center",children:[o.jsxs("div",{className:"flex items-center justify-center gap-3",children:[o.jsx(Fp,{size:44}),o.jsx("h1",{className:"text-4xl font-semibold tracking-tight text-white",children:"Inline Studio"})]}),o.jsx("p",{className:"mt-3 text-sm text-zinc-400",children:"AI filmmaking on a node canvas, powered by your own ComfyUI"})]}),o.jsxs("div",{className:"grid grid-cols-1 items-start gap-6 lg:grid-cols-2",children:[o.jsxs("div",{className:"flex flex-col gap-6",children:[o.jsxs("section",{className:"rounded-xl border border-border bg-surface p-5",children:[o.jsx("h2",{className:"mb-3 text-sm font-medium text-zinc-300",children:"New project"}),o.jsxs("div",{className:"flex gap-2",children:[o.jsx("input",{value:d,onChange:v=>f(v.target.value),onKeyDown:v=>{v.key==="Enter"&&y&&r(d.trim())},placeholder:"Untitled film",className:"flex-1 rounded-lg border border-border bg-panel px-3 py-2 text-sm text-zinc-100 outline-none placeholder:text-zinc-500 focus:border-accent"}),o.jsx("button",{disabled:!y,onClick:()=>void r(d.trim()),className:"rounded-lg bg-accent px-4 py-2 text-sm font-medium text-panel disabled:opacity-40",children:"Create"})]}),o.jsxs("div",{className:"mt-3 flex items-center gap-4 text-xs text-zinc-400",children:[o.jsx("button",{onClick:()=>void i(),disabled:t,className:"underline-offset-2 hover:text-zinc-200 hover:underline",children:"…or open an existing project"}),o.jsx("button",{onClick:()=>void s(),disabled:t,className:"underline-offset-2 hover:text-zinc-200 hover:underline",children:"import a .zip"})]})]}),n&&o.jsx("p",{className:"rounded-lg border border-red-900 bg-red-950/40 px-3 py-2 text-sm text-red-300",children:n}),a&&o.jsx("p",{className:"rounded-lg border border-green-900 bg-green-950/30 px-3 py-2 text-sm text-green-300",children:a}),o.jsxs("section",{className:"rounded-xl border border-border bg-surface p-5",children:[o.jsx("h2",{className:"mb-3 text-sm font-medium text-zinc-300",children:"Recent"}),e.length===0?o.jsx("p",{className:"text-sm text-zinc-500",children:"No recent projects yet."}):o.jsx("ul",{className:"max-h-[360px] divide-y divide-border overflow-y-auto pr-1",children:e.map(v=>o.jsxs("li",{className:"flex items-center gap-2 py-1",children:[o.jsxs("button",{onClick:()=>void c(v.path),className:"flex min-w-0 flex-1 items-center justify-between gap-3 py-1 text-left hover:opacity-80",children:[o.jsx("span",{className:"shrink-0 text-sm text-zinc-200",children:v.name}),o.jsx("span",{className:"min-w-0 truncate text-xs text-zinc-500",children:v.path})]}),o.jsx("button",{onClick:()=>void u(v.path),disabled:g,title:"Export this project as a portable .zip",className:"shrink-0 rounded border border-border px-2 py-1 text-[11px] text-zinc-300 hover:bg-panel disabled:opacity-40",children:l===v.path?"Exporting…":"Export"})]},v.path))})]})]}),o.jsxs("div",{className:"flex flex-col gap-6",children:[o.jsx(E2,{}),o.jsx(z2,{}),o.jsx(j2,{})]})]})]})}),o.jsxs("div",{className:"mx-auto flex w-full max-w-4xl items-center justify-between pt-10 text-xs text-zinc-500",children:[o.jsxs("button",{onClick:()=>void F().shell.openExternal("https://inlinestudio.art"),className:"flex items-center gap-1.5 text-accent underline-offset-2 hover:underline",children:["inlinestudio.art",o.jsx(D2,{})]}),o.jsxs("div",{className:"flex items-center gap-3",children:[h&&o.jsxs("span",{children:["Inline Studio v",h]}),p&&o.jsxs("button",{onClick:()=>void w(),title:"A newer version is available on GitHub",className:"text-accent underline-offset-2 hover:underline",children:["Update available",x?` (v${x})`:""," →"]}),o.jsx("button",{onClick:()=>void F().shell.openExternal("https://discord.gg/cSUS88VdY9"),title:"Connect with the team on Discord",className:"text-zinc-400 transition-colors hover:text-accent",children:o.jsx(O2,{})})]})]})]})}function D2(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-3.5 w-3.5",children:[o.jsx("path",{d:"M14 3h7v7"}),o.jsx("path",{d:"M10 14 21 3"}),o.jsx("path",{d:"M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"})]})}function O2(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:"h-4 w-4",children:o.jsx("path",{d:"M20.317 4.369a19.79 19.79 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.249a18.27 18.27 0 0 0-5.487 0 12.6 12.6 0 0 0-.617-1.25.077.077 0 0 0-.079-.036A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.1 13.1 0 0 1-1.872-.892.077.077 0 0 1-.008-.128c.126-.094.252-.192.372-.291a.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.009c.12.099.246.198.373.292a.077.077 0 0 1-.006.127 12.3 12.3 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.84 19.84 0 0 0 6.002-3.03.077.077 0 0 0 .032-.056c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.028ZM8.02 15.331c-1.183 0-2.157-1.086-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.332-.956 2.418-2.157 2.418Zm7.975 0c-1.183 0-2.157-1.086-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.332-.946 2.418-2.157 2.418Z"})})}function ft({className:e,children:t}){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:e??"h-[1em] w-[1em]","aria-hidden":"true",children:t})}function B2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"})})}function R2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"})})}function L2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"})})}function H2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"})})}function I2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm-1 8h-3v3h-2v-3h-3v-2h3V9h2v3h3v2z"})})}function U2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"})})}function Zd({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z"})})}function Gp({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58a.49.49 0 0 0 .12-.61l-1.92-3.32a.488.488 0 0 0-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.484.484 0 0 0-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58a.49.49 0 0 0-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61l-2.01-1.58zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6z"})})}function Zp({className:e}){return o.jsxs(ft,{className:e,children:[o.jsx("path",{d:"M12 3l1.9 4.8L18.6 9.7 13.9 11.6 12 16.4 10.1 11.6 5.4 9.7 10.1 7.8Z"}),o.jsx("path",{d:"M19 15l.9 2.1L22 18l-2.1.9L19 21l-.9-2.1L16 18l2.1-.9Z"})]})}function V2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M12 17.27 18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"})})}function $2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M12 3v10.55c-.59-.34-1.27-.55-2-.55-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4V7h4V3h-6z"})})}function fr({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})})}function Y2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"})})}function X2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"})})}function Qd({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M8.59 16.59 13.17 12 8.59 7.41 10 6l6 6-6 6z"})})}function q2({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M15.41 16.59 10.83 12l4.58-4.59L14 6l-6 6 6 6z"})})}function Qp({className:e}){return o.jsx(ft,{className:e,children:o.jsx("path",{d:"M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z"})})}function Hh(e){var n;const t={};for(const a of e)(t[n=a.frameId]??(t[n]=[])).push(a);return t}const J=_t((e,t)=>({frames:[],inputsByFrame:{},takesByFrame:{},selectedId:null,loading:!1,busyId:null,error:null,notice:null,load:async()=>{e({loading:!0,error:null});try{const[n,a,l]=await Promise.all([F().frames.list(),F().frames.listInputs(),F().frames.listAllTakes()]);if(!n.ok)return e({loading:!1,error:n.error});if(!a.ok)return e({loading:!1,error:a.error});if(!l.ok)return e({loading:!1,error:l.error});e({frames:n.value,inputsByFrame:Hh(a.value),takesByFrame:Hh(l.value),loading:!1})}catch(n){e({loading:!1,error:te(n)})}},importAsFrames:async()=>{e({loading:!0,error:null});try{const n=await F().frames.importAsFrames();if(!n.ok)return e({loading:!1,error:n.error});await t().load()}catch(n){e({loading:!1,error:te(n)})}},addFromAssets:async n=>{try{for(const a of n){const l=await F().frames.addFromAsset(a);if(!l.ok)return e({error:l.error})}await t().load()}catch(a){e({error:te(a)})}},addInputs:async(n,a)=>{try{const l=await F().frames.addInputs(n,a);if(!l.ok)return e({error:l.error});const r=l.value;if(r.length===0)return;e(i=>{const s=i.inputsByFrame[n]??[],c=new Set(s.map(d=>d.id)),u=[...s,...r.filter(d=>!c.has(d.id))];return{inputsByFrame:{...i.inputsByFrame,[n]:u}}})}catch(l){e({error:te(l)})}},addSourceInput:async(n,a)=>{try{const l=await F().frames.addSourceInput(n,a);if(!l.ok)return e({error:l.error});e(r=>{const i=r.inputsByFrame[n]??[];return i.some(s=>s.id===l.value.id)?{}:{inputsByFrame:{...r.inputsByFrame,[n]:[...i,l.value]}}})}catch(l){e({error:te(l)})}},removeInput:async(n,a)=>{try{const l=await F().frames.removeInput(n,a);if(!l.ok)return e({error:l.error});e(r=>({inputsByFrame:{...r.inputsByFrame,[n]:(r.inputsByFrame[n]??[]).filter(i=>i.assetId!==a)}}))}catch(l){e({error:te(l)})}},removeInputById:async(n,a)=>{try{const l=await F().frames.removeInputById(n,a);if(!l.ok)return e({error:l.error});e(r=>({inputsByFrame:{...r.inputsByFrame,[n]:(r.inputsByFrame[n]??[]).filter(i=>i.id!==a)}}))}catch(l){e({error:te(l)})}},setProvider:async(n,a,l)=>{try{const r=await F().frames.setProvider(n,a,l);if(!r.ok)return e({error:r.error}),null;const i=r.value;return e(s=>({frames:s.frames.map(c=>c.id===n?i:c)})),i}catch(r){return e({error:te(r)}),null}},reorderInputs:async(n,a)=>{e(l=>{const r=new Map((l.inputsByFrame[n]??[]).map(s=>[s.assetId,s])),i=a.map((s,c)=>{const u=r.get(s);return u?{...u,position:c}:null}).filter(s=>s!==null);return{inputsByFrame:{...l.inputsByFrame,[n]:i}}});try{const l=await F().frames.reorderInputs(n,a);l.ok||e({error:l.error})}catch(l){e({error:te(l)})}},setHero:async(n,a)=>{e(l=>({frames:l.frames.map(r=>r.id===n?{...r,heroTakeId:a}:r)}));try{const l=await F().frames.setHero(n,a);l.ok||e({error:l.error})}catch(l){e({error:te(l)})}},deleteTake:async n=>{try{const a=await F().frames.deleteTake(n);if(!a.ok)return e({error:a.error});e(l=>{const r={};for(const[i,s]of Object.entries(l.takesByFrame))r[i]=s.filter(c=>c.id!==n);return{takesByFrame:r,frames:l.frames.map(i=>i.heroTakeId===n?{...i,heroTakeId:null}:i)}})}catch(a){e({error:te(a)})}},linkFrame:async n=>{e({busyId:n,error:null});try{const a=await F().comfy.linkFrame(n);if(!a.ok)return e({error:a.error,busyId:null}),null;const l=a.value;return e(r=>({frames:r.frames.map(i=>i.id===n?l:i),busyId:null})),l}catch(a){return e({error:te(a),busyId:null}),null}},uploadInputs:async n=>{try{const a=await F().comfy.uploadInputs(n);a.ok||e({error:a.error})}catch(a){e({error:te(a)})}},pullWorkflow:async n=>{try{await F().comfy.pullWorkflow(n)}catch{}},saveLiveWorkflow:async(n,a)=>{try{const l=await F().comfy.saveLiveWorkflow(n,a);if(l.ok&&l.value){const r=l.value;e(i=>({frames:i.frames.map(s=>s.id===r.id?r:s)}))}}catch{}},pullResult:async n=>{e({busyId:n,error:null});try{const a=await F().comfy.pullLatest(n);if(!a.ok)return e({error:a.error,busyId:null});const l=a.value;e(r=>({takesByFrame:{...r.takesByFrame,[n]:[l,...r.takesByFrame[n]??[]]},frames:r.frames.map(i=>i.id===n?{...i,heroTakeId:l.id}:i),busyId:null}))}catch(a){e({error:te(a),busyId:null})}},captureOutput:async(n,a)=>{try{const l=await F().comfy.captureOutput(n,a);if(!l.ok)return e({error:l.error});const r=l.value;e(i=>({takesByFrame:{...i.takesByFrame,[n]:[r,...i.takesByFrame[n]??[]]},frames:i.frames.map(s=>s.id===n?{...s,heroTakeId:r.id}:s)}))}catch(l){e({error:te(l)})}},rename:async(n,a)=>{e(l=>({frames:l.frames.map(r=>r.id===n?{...r,name:a}:r)}));try{const l=await F().frames.rename(n,a);l.ok||e({error:l.error})}catch(l){e({error:te(l)})}},reorder:async n=>{e(a=>{const l=new Map(a.frames.map(i=>[i.id,i]));return{frames:n.map((i,s)=>{const c=l.get(i);return c?{...c,position:s}:null}).filter(i=>i!==null)}});try{const a=await F().frames.reorder(n);a.ok||e({error:a.error})}catch(a){e({error:te(a)})}},remove:async n=>{try{const a=await F().frames.delete(n);if(!a.ok)return e({error:a.error});e(l=>{const r={...l.inputsByFrame},i={...l.takesByFrame};return delete r[n],delete i[n],{frames:l.frames.filter(s=>s.id!==n),inputsByFrame:r,takesByFrame:i,selectedId:l.selectedId===n?null:l.selectedId}})}catch(a){e({error:te(a)})}},clone:async n=>{try{const a=await F().frames.clone(n);return a.ok?(await t().load(),a.value):(e({error:a.error}),null)}catch(a){return e({error:te(a)}),null}},unlink:async n=>{try{const a=await F().frames.unlink(n);if(!a.ok)return e({error:a.error});const l=a.value;e(r=>({frames:r.frames.map(i=>i.id===n?l:i)}))}catch(a){e({error:te(a)})}},exportFrames:async()=>{e({error:null,notice:null});try{const n=await F().export.exportFrames();if(!n.ok)return e({error:n.error});if(n.value===null)return;const{exported:a,skipped:l,dir:r}=n.value,i=l.length>0?`, ${l.length} skipped (no output)`:"";e({notice:`Exported ${a} frame${a===1?"":"s"}${i} → ${r}`})}catch(n){e({error:te(n)})}},select:n=>e({selectedId:n}),reset:()=>e({frames:[],inputsByFrame:{},takesByFrame:{},selectedId:null,busyId:null,error:null,notice:null})}));function F2(e,t){return{...e,x:t.x??e.x,y:t.y??e.y,width:t.width??e.width,height:t.height??e.height,rotation:t.rotation??e.rotation,zIndex:t.zIndex??e.zIndex,data:t.data??e.data,parentId:t.parentId!==void 0?t.parentId:e.parentId}}async function Ih(e,t,n,a){const l=F().moodboard;let r;switch(e.type){case"frame":{if(!e.frameId)return null;const c=await F().frames.clone(e.frameId);if(!c.ok)return null;r=await l.addFrameItem(c.value.id,t,n);break}case"asset":if(!e.assetId)return null;r=await l.addAsset(e.assetId,t,n);break;case"text":r=await l.addText(t,n);break;case"preview":r=await l.addPreview(t,n);break;case"layer":r=await l.addLayer(t,n);break;case"director":r=await l.addDirector(t,n);break;case"trim":r=await l.addTrim(t,n);break;default:return null}if(!r.ok)return null;const i={width:e.width,height:e.height,parentId:a};(e.type==="text"||e.type==="layer")&&(i.data=e.data);const s=await l.updateItem(r.value.id,i);return s.ok?s.value:r.value}const he=_t((e,t)=>({items:[],connectors:[],loading:!1,error:null,past:[],future:[],load:async()=>{e({loading:!0,error:null});try{const n=await F().moodboard.list();if(!n.ok)return e({loading:!1,error:n.error});e({items:n.value.items,connectors:n.value.connectors,loading:!1,past:[],future:[]})}catch(n){e({loading:!1,error:te(n)})}},record:()=>e(n=>({past:[...n.past,{items:n.items,connectors:n.connectors}].slice(-50),future:[]})),undo:async()=>{const n=t(),a=n.past[n.past.length-1];if(a){e({past:n.past.slice(0,-1),future:[...n.future,{items:n.items,connectors:n.connectors}],items:a.items,connectors:a.connectors});try{const l=await F().moodboard.replaceBoard(a.items,a.connectors);l.ok||e({error:l.error})}catch(l){e({error:te(l)})}}},redo:async()=>{const n=t(),a=n.future[n.future.length-1];if(a){e({future:n.future.slice(0,-1),past:[...n.past,{items:n.items,connectors:n.connectors}],items:a.items,connectors:a.connectors});try{const l=await F().moodboard.replaceBoard(a.items,a.connectors);l.ok||e({error:l.error})}catch(l){e({error:te(l)})}}},addAssetAt:async(n,a,l)=>{try{t().record();const r=await F().moodboard.addAsset(n,a,l);if(!r.ok)return e({error:r.error});e(i=>({items:[...i.items,r.value]}))}catch(r){e({error:te(r)})}},addTextAt:async(n,a)=>{try{t().record();const l=await F().moodboard.addText(n,a);if(!l.ok)return e({error:l.error});e(r=>({items:[...r.items,l.value]}))}catch(l){e({error:te(l)})}},addFrameFromAsset:async(n,a,l)=>{try{t().record();const r=await F().moodboard.addFrameFromAsset(n,a,l);if(!r.ok)return e({error:r.error});e(i=>({items:[...i.items,r.value]}))}catch(r){e({error:te(r)})}},addFrameItem:async(n,a,l)=>{try{t().record();const r=await F().moodboard.addFrameItem(n,a,l);if(!r.ok)return e({error:r.error});e(i=>({items:[...i.items,r.value]}))}catch(r){e({error:te(r)})}},addEmptyFrame:async(n,a)=>{try{t().record();const l=await F().moodboard.addEmptyFrame(n,a);return l.ok?(e(r=>({items:[...r.items,l.value]})),await J.getState().load(),l.value):(e({error:l.error}),null)}catch(l){return e({error:te(l)}),null}},addFrameItemInLayer:async(n,a,l,r)=>{try{t().record();const i=await F().moodboard.addFrameItem(n,a,l);if(!i.ok)return e({error:i.error});let s=i.value;if(r){const c=await F().moodboard.updateItem(s.id,{parentId:r});c.ok&&(s=c.value)}e(c=>({items:[...c.items,s]}))}catch(i){e({error:te(i)})}},addPreview:async(n,a)=>{try{t().record();const l=await F().moodboard.addPreview(n,a);return l.ok?(e(r=>({items:[...r.items,l.value]})),l.value):(e({error:l.error}),null)}catch(l){return e({error:te(l)}),null}},addLayer:async(n,a)=>{try{t().record();const l=await F().moodboard.addLayer(n,a);if(!l.ok)return e({error:l.error});e(r=>({items:[...r.items,l.value]}))}catch(l){e({error:te(l)})}},addDirector:async(n,a)=>{try{t().record();const l=await F().moodboard.addDirector(n,a);return l.ok?(e(r=>({items:[...r.items,l.value]})),l.value):(e({error:l.error}),null)}catch(l){return e({error:te(l)}),null}},addTrim:async(n,a)=>{try{t().record();const l=await F().moodboard.addTrim(n,a);return l.ok?(e(r=>({items:[...r.items,l.value]})),l.value):(e({error:l.error}),null)}catch(l){return e({error:te(l)}),null}},addGenNode:async(n,a,l)=>{try{t().record();const r=await F().moodboard.addGenNode(n,a,l);return r.ok?(e(i=>({items:[...i.items,r.value]})),await J.getState().load(),r.value):(e({error:r.error}),null)}catch(r){return e({error:te(r)}),null}},addCoreNode:async(n,a,l)=>{try{t().record();const r=await F().moodboard.addCoreNode(n,a,l);return r.ok?(e(i=>({items:[...i.items,r.value]})),r.value):(e({error:r.error}),null)}catch(r){return e({error:te(r)}),null}},addPrompt:async(n,a)=>{try{t().record();const l=await F().moodboard.addPrompt(n,a);return l.ok?(e(r=>({items:[...r.items,l.value]})),l.value):(e({error:l.error}),null)}catch(l){return e({error:te(l)}),null}},addFrameFromAssetInLayer:async(n,a,l,r)=>{try{t().record();const i=await F().moodboard.addFrameFromAsset(n,a,l);if(!i.ok)return e({error:i.error});let s=i.value;if(r){const c=await F().moodboard.updateItem(s.id,{parentId:r});c.ok&&(s=c.value)}e(c=>({items:[...c.items,s]})),await J.getState().load()}catch(i){e({error:te(i)})}},connect:async(n,a,l=null,r=null)=>{try{t().record();const i=await F().moodboard.createConnector(n,a,l,r);if(!i.ok)return e({error:i.error});e(s=>({connectors:[...s.connectors,i.value]}))}catch(i){e({error:te(i)})}},disconnect:async n=>{try{t().record();const a=await F().moodboard.deleteConnector(n);if(!a.ok)return e({error:a.error});e(l=>({connectors:l.connectors.filter(r=>r.id!==n)}))}catch(a){e({error:te(a)})}},setConnectorVolume:async(n,a)=>{e(l=>({connectors:l.connectors.map(r=>r.id===n?{...r,data:{...r.data,volume:a}}:r)}));try{const l=await F().moodboard.setConnectorVolume(n,a);l.ok||e({error:l.error})}catch(l){e({error:te(l)})}},importAndPlace:async(n,a)=>{try{t().record();const l=await F().moodboard.importAndPlace(n,a);return l.ok?(e(r=>({items:[...r.items,...l.value]})),l.value):(e({error:l.error}),[])}catch(l){return e({error:te(l)}),[]}},duplicateItems:async(n,a)=>{try{t().record();const l=[],r=new Map;for(const u of n.filter(d=>d.type==="layer")){const d=await Ih(u,u.x+a.x,u.y+a.y,null);d&&(r.set(u.id,d.id),l.push(d))}const i=he.getState().items,s=new Map;for(const u of n)u.type!=="layer"&&s.set(u.id,u);for(const u of i)u.parentId&&r.has(u.parentId)&&s.set(u.id,u);let c=!1;for(const u of s.values()){const d=u.parentId!=null&&r.has(u.parentId),f=d?r.get(u.parentId)??null:u.parentId,h=d?u.x:u.x+a.x,m=d?u.y:u.y+a.y,x=await Ih(u,h,m,f);x&&(l.push(x),u.type==="frame"&&(c=!0))}return l.length&&e(u=>({items:[...u.items,...l]})),c&&await J.getState().load(),l}catch(l){return e({error:te(l)}),[]}},updateItem:async(n,a,l=!0)=>{l&&t().record(),e(r=>({items:r.items.map(i=>i.id===n?F2(i,a):i)}));try{const r=await F().moodboard.updateItem(n,a);r.ok||e({error:r.error})}catch(r){e({error:te(r)})}},deleteItem:async n=>{try{t().record();const a=await F().moodboard.deleteItem(n);if(!a.ok)return e({error:a.error});e(l=>({items:l.items.filter(r=>r.id!==n),connectors:l.connectors.filter(r=>r.fromItemId!==n&&r.toItemId!==n)}))}catch(a){e({error:te(a)})}},reset:()=>e({items:[],connectors:[],error:null,past:[],future:[]})})),Ke=_t(e=>({mode:"moodboard",linkedWorkflow:null,activeFrameId:null,inspectorFrameId:null,settingsOpen:!1,canvasSelection:[],canvasCenter:{x:0,y:0},setMode:t=>e({mode:t}),setLinkedWorkflow:t=>e({linkedWorkflow:t}),setActiveFrame:t=>e({activeFrameId:t}),setInspectorFrame:t=>e({inspectorFrameId:t}),setSettingsOpen:t=>e({settingsOpen:t}),setCanvasSelection:t=>e({canvasSelection:t}),setCanvasCenter:t=>e({canvasCenter:t})}));function We(e){if(typeof e=="string"||typeof e=="number")return""+e;let t="";if(Array.isArray(e))for(let n=0,a;n<e.length;n++)(a=We(e[n]))!==""&&(t+=(t&&" ")+a);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var G2={value:()=>{}};function Ds(){for(var e=0,t=arguments.length,n={},a;e<t;++e){if(!(a=arguments[e]+"")||a in n||/[\s.]/.test(a))throw new Error("illegal type: "+a);n[a]=[]}return new So(n)}function So(e){this._=e}function Z2(e,t){return e.trim().split(/^|\s+/).map(function(n){var a="",l=n.indexOf(".");if(l>=0&&(a=n.slice(l+1),n=n.slice(0,l)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:a}})}So.prototype=Ds.prototype={constructor:So,on:function(e,t){var n=this._,a=Z2(e+"",n),l,r=-1,i=a.length;if(arguments.length<2){for(;++r<i;)if((l=(e=a[r]).type)&&(l=Q2(n[l],e.name)))return l;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++r<i;)if(l=(e=a[r]).type)n[l]=Uh(n[l],e.name,t);else if(t==null)for(l in n)n[l]=Uh(n[l],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new So(e)},call:function(e,t){if((l=arguments.length-2)>0)for(var n=new Array(l),a=0,l,r;a<l;++a)n[a]=arguments[a+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(r=this._[e],a=0,l=r.length;a<l;++a)r[a].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var a=this._[e],l=0,r=a.length;l<r;++l)a[l].value.apply(t,n)}};function Q2(e,t){for(var n=0,a=e.length,l;n<a;++n)if((l=e[n]).name===t)return l.value}function Uh(e,t,n){for(var a=0,l=e.length;a<l;++a)if(e[a].name===t){e[a]=G2,e=e.slice(0,a).concat(e.slice(a+1));break}return n!=null&&e.push({name:t,value:n}),e}var Au="http://www.w3.org/1999/xhtml";const Vh={svg:"http://www.w3.org/2000/svg",xhtml:Au,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Os(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),Vh.hasOwnProperty(t)?{space:Vh[t],local:e}:e}function K2(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===Au&&t.documentElement.namespaceURI===Au?t.createElement(e):t.createElementNS(n,e)}}function P2(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Kp(e){var t=Os(e);return(t.local?P2:K2)(t)}function W2(){}function Kd(e){return e==null?W2:function(){return this.querySelector(e)}}function J2(e){typeof e!="function"&&(e=Kd(e));for(var t=this._groups,n=t.length,a=new Array(n),l=0;l<n;++l)for(var r=t[l],i=r.length,s=a[l]=new Array(i),c,u,d=0;d<i;++d)(c=r[d])&&(u=e.call(c,c.__data__,d,r))&&("__data__"in c&&(u.__data__=c.__data__),s[d]=u);return new It(a,this._parents)}function ew(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function tw(){return[]}function Pp(e){return e==null?tw:function(){return this.querySelectorAll(e)}}function nw(e){return function(){return ew(e.apply(this,arguments))}}function aw(e){typeof e=="function"?e=nw(e):e=Pp(e);for(var t=this._groups,n=t.length,a=[],l=[],r=0;r<n;++r)for(var i=t[r],s=i.length,c,u=0;u<s;++u)(c=i[u])&&(a.push(e.call(c,c.__data__,u,i)),l.push(c));return new It(a,l)}function Wp(e){return function(){return this.matches(e)}}function Jp(e){return function(t){return t.matches(e)}}var lw=Array.prototype.find;function rw(e){return function(){return lw.call(this.children,e)}}function iw(){return this.firstElementChild}function ow(e){return this.select(e==null?iw:rw(typeof e=="function"?e:Jp(e)))}var sw=Array.prototype.filter;function cw(){return Array.from(this.children)}function uw(e){return function(){return sw.call(this.children,e)}}function dw(e){return this.selectAll(e==null?cw:uw(typeof e=="function"?e:Jp(e)))}function fw(e){typeof e!="function"&&(e=Wp(e));for(var t=this._groups,n=t.length,a=new Array(n),l=0;l<n;++l)for(var r=t[l],i=r.length,s=a[l]=[],c,u=0;u<i;++u)(c=r[u])&&e.call(c,c.__data__,u,r)&&s.push(c);return new It(a,this._parents)}function eg(e){return new Array(e.length)}function hw(){return new It(this._enter||this._groups.map(eg),this._parents)}function Fo(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Fo.prototype={constructor:Fo,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function mw(e){return function(){return e}}function pw(e,t,n,a,l,r){for(var i=0,s,c=t.length,u=r.length;i<u;++i)(s=t[i])?(s.__data__=r[i],a[i]=s):n[i]=new Fo(e,r[i]);for(;i<c;++i)(s=t[i])&&(l[i]=s)}function gw(e,t,n,a,l,r,i){var s,c,u=new Map,d=t.length,f=r.length,h=new Array(d),m;for(s=0;s<d;++s)(c=t[s])&&(h[s]=m=i.call(c,c.__data__,s,t)+"",u.has(m)?l[s]=c:u.set(m,c));for(s=0;s<f;++s)m=i.call(e,r[s],s,r)+"",(c=u.get(m))?(a[s]=c,c.__data__=r[s],u.delete(m)):n[s]=new Fo(e,r[s]);for(s=0;s<d;++s)(c=t[s])&&u.get(h[s])===c&&(l[s]=c)}function xw(e){return e.__data__}function yw(e,t){if(!arguments.length)return Array.from(this,xw);var n=t?gw:pw,a=this._parents,l=this._groups;typeof e!="function"&&(e=mw(e));for(var r=l.length,i=new Array(r),s=new Array(r),c=new Array(r),u=0;u<r;++u){var d=a[u],f=l[u],h=f.length,m=vw(e.call(d,d&&d.__data__,u,a)),x=m.length,j=s[u]=new Array(x),w=i[u]=new Array(x),p=c[u]=new Array(h);n(d,f,j,w,p,m,t);for(var y=0,g=0,v,_;y<x;++y)if(v=j[y]){for(y>=g&&(g=y+1);!(_=w[g])&&++g<x;);v._next=_||null}}return i=new It(i,a),i._enter=s,i._exit=c,i}function vw(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function bw(){return new It(this._exit||this._groups.map(eg),this._parents)}function ww(e,t,n){var a=this.enter(),l=this,r=this.exit();return typeof e=="function"?(a=e(a),a&&(a=a.selection())):a=a.append(e+""),t!=null&&(l=t(l),l&&(l=l.selection())),n==null?r.remove():n(r),a&&l?a.merge(l).order():l}function jw(e){for(var t=e.selection?e.selection():e,n=this._groups,a=t._groups,l=n.length,r=a.length,i=Math.min(l,r),s=new Array(l),c=0;c<i;++c)for(var u=n[c],d=a[c],f=u.length,h=s[c]=new Array(f),m,x=0;x<f;++x)(m=u[x]||d[x])&&(h[x]=m);for(;c<l;++c)s[c]=n[c];return new It(s,this._parents)}function Nw(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var a=e[t],l=a.length-1,r=a[l],i;--l>=0;)(i=a[l])&&(r&&i.compareDocumentPosition(r)^4&&r.parentNode.insertBefore(i,r),r=i);return this}function Sw(e){e||(e=Ew);function t(f,h){return f&&h?e(f.__data__,h.__data__):!f-!h}for(var n=this._groups,a=n.length,l=new Array(a),r=0;r<a;++r){for(var i=n[r],s=i.length,c=l[r]=new Array(s),u,d=0;d<s;++d)(u=i[d])&&(c[d]=u);c.sort(t)}return new It(l,this._parents).order()}function Ew(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function kw(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function _w(){return Array.from(this)}function Cw(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var a=e[t],l=0,r=a.length;l<r;++l){var i=a[l];if(i)return i}return null}function zw(){let e=0;for(const t of this)++e;return e}function Mw(){return!this.node()}function Aw(e){for(var t=this._groups,n=0,a=t.length;n<a;++n)for(var l=t[n],r=0,i=l.length,s;r<i;++r)(s=l[r])&&e.call(s,s.__data__,r,l);return this}function Tw(e){return function(){this.removeAttribute(e)}}function Dw(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Ow(e,t){return function(){this.setAttribute(e,t)}}function Bw(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function Rw(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function Lw(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function Hw(e,t){var n=Os(e);if(arguments.length<2){var a=this.node();return n.local?a.getAttributeNS(n.space,n.local):a.getAttribute(n)}return this.each((t==null?n.local?Dw:Tw:typeof t=="function"?n.local?Lw:Rw:n.local?Bw:Ow)(n,t))}function tg(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Iw(e){return function(){this.style.removeProperty(e)}}function Uw(e,t,n){return function(){this.style.setProperty(e,t,n)}}function Vw(e,t,n){return function(){var a=t.apply(this,arguments);a==null?this.style.removeProperty(e):this.style.setProperty(e,a,n)}}function $w(e,t,n){return arguments.length>1?this.each((t==null?Iw:typeof t=="function"?Vw:Uw)(e,t,n??"")):Gl(this.node(),e)}function Gl(e,t){return e.style.getPropertyValue(t)||tg(e).getComputedStyle(e,null).getPropertyValue(t)}function Yw(e){return function(){delete this[e]}}function Xw(e,t){return function(){this[e]=t}}function qw(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function Fw(e,t){return arguments.length>1?this.each((t==null?Yw:typeof t=="function"?qw:Xw)(e,t)):this.node()[e]}function ng(e){return e.trim().split(/^|\s+/)}function Pd(e){return e.classList||new ag(e)}function ag(e){this._node=e,this._names=ng(e.getAttribute("class")||"")}ag.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function lg(e,t){for(var n=Pd(e),a=-1,l=t.length;++a<l;)n.add(t[a])}function rg(e,t){for(var n=Pd(e),a=-1,l=t.length;++a<l;)n.remove(t[a])}function Gw(e){return function(){lg(this,e)}}function Zw(e){return function(){rg(this,e)}}function Qw(e,t){return function(){(t.apply(this,arguments)?lg:rg)(this,e)}}function Kw(e,t){var n=ng(e+"");if(arguments.length<2){for(var a=Pd(this.node()),l=-1,r=n.length;++l<r;)if(!a.contains(n[l]))return!1;return!0}return this.each((typeof t=="function"?Qw:t?Gw:Zw)(n,t))}function Pw(){this.textContent=""}function Ww(e){return function(){this.textContent=e}}function Jw(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function ej(e){return arguments.length?this.each(e==null?Pw:(typeof e=="function"?Jw:Ww)(e)):this.node().textContent}function tj(){this.innerHTML=""}function nj(e){return function(){this.innerHTML=e}}function aj(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function lj(e){return arguments.length?this.each(e==null?tj:(typeof e=="function"?aj:nj)(e)):this.node().innerHTML}function rj(){this.nextSibling&&this.parentNode.appendChild(this)}function ij(){return this.each(rj)}function oj(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function sj(){return this.each(oj)}function cj(e){var t=typeof e=="function"?e:Kp(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function uj(){return null}function dj(e,t){var n=typeof e=="function"?e:Kp(e),a=t==null?uj:typeof t=="function"?t:Kd(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),a.apply(this,arguments)||null)})}function fj(){var e=this.parentNode;e&&e.removeChild(this)}function hj(){return this.each(fj)}function mj(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function pj(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function gj(e){return this.select(e?pj:mj)}function xj(e){return arguments.length?this.property("__data__",e):this.node().__data__}function yj(e){return function(t){e.call(this,t,this.__data__)}}function vj(e){return e.trim().split(/^|\s+/).map(function(t){var n="",a=t.indexOf(".");return a>=0&&(n=t.slice(a+1),t=t.slice(0,a)),{type:t,name:n}})}function bj(e){return function(){var t=this.__on;if(t){for(var n=0,a=-1,l=t.length,r;n<l;++n)r=t[n],(!e.type||r.type===e.type)&&r.name===e.name?this.removeEventListener(r.type,r.listener,r.options):t[++a]=r;++a?t.length=a:delete this.__on}}}function wj(e,t,n){return function(){var a=this.__on,l,r=yj(t);if(a){for(var i=0,s=a.length;i<s;++i)if((l=a[i]).type===e.type&&l.name===e.name){this.removeEventListener(l.type,l.listener,l.options),this.addEventListener(l.type,l.listener=r,l.options=n),l.value=t;return}}this.addEventListener(e.type,r,n),l={type:e.type,name:e.name,value:t,listener:r,options:n},a?a.push(l):this.__on=[l]}}function jj(e,t,n){var a=vj(e+""),l,r=a.length,i;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,u=s.length,d;c<u;++c)for(l=0,d=s[c];l<r;++l)if((i=a[l]).type===d.type&&i.name===d.name)return d.value}return}for(s=t?wj:bj,l=0;l<r;++l)this.each(s(a[l],t,n));return this}function ig(e,t,n){var a=tg(e),l=a.CustomEvent;typeof l=="function"?l=new l(t,n):(l=a.document.createEvent("Event"),n?(l.initEvent(t,n.bubbles,n.cancelable),l.detail=n.detail):l.initEvent(t,!1,!1)),e.dispatchEvent(l)}function Nj(e,t){return function(){return ig(this,e,t)}}function Sj(e,t){return function(){return ig(this,e,t.apply(this,arguments))}}function Ej(e,t){return this.each((typeof t=="function"?Sj:Nj)(e,t))}function*kj(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var a=e[t],l=0,r=a.length,i;l<r;++l)(i=a[l])&&(yield i)}var og=[null];function It(e,t){this._groups=e,this._parents=t}function ki(){return new It([[document.documentElement]],og)}function _j(){return this}It.prototype=ki.prototype={constructor:It,select:J2,selectAll:aw,selectChild:ow,selectChildren:dw,filter:fw,data:yw,enter:hw,exit:bw,join:ww,merge:jw,selection:_j,order:Nw,sort:Sw,call:kw,nodes:_w,node:Cw,size:zw,empty:Mw,each:Aw,attr:Hw,style:$w,property:Fw,classed:Kw,text:ej,html:lj,raise:ij,lower:sj,append:cj,insert:dj,remove:hj,clone:gj,datum:xj,on:jj,dispatch:Ej,[Symbol.iterator]:kj};function Tt(e){return typeof e=="string"?new It([[document.querySelector(e)]],[document.documentElement]):new It([[e]],og)}function Cj(e){let t;for(;t=e.sourceEvent;)e=t;return e}function an(e,t){if(e=Cj(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var a=n.createSVGPoint();return a.x=e.clientX,a.y=e.clientY,a=a.matrixTransform(t.getScreenCTM().inverse()),[a.x,a.y]}if(t.getBoundingClientRect){var l=t.getBoundingClientRect();return[e.clientX-l.left-t.clientLeft,e.clientY-l.top-t.clientTop]}}return[e.pageX,e.pageY]}const zj={passive:!1},ai={capture:!0,passive:!1};function Ec(e){e.stopImmediatePropagation()}function Ll(e){e.preventDefault(),e.stopImmediatePropagation()}function sg(e){var t=e.document.documentElement,n=Tt(e).on("dragstart.drag",Ll,ai);"onselectstart"in t?n.on("selectstart.drag",Ll,ai):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function cg(e,t){var n=e.document.documentElement,a=Tt(e).on("dragstart.drag",null);t&&(a.on("click.drag",Ll,ai),setTimeout(function(){a.on("click.drag",null)},0)),"onselectstart"in n?a.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const Pi=e=>()=>e;function Tu(e,{sourceEvent:t,subject:n,target:a,identifier:l,active:r,x:i,y:s,dx:c,dy:u,dispatch:d}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:a,enumerable:!0,configurable:!0},identifier:{value:l,enumerable:!0,configurable:!0},active:{value:r,enumerable:!0,configurable:!0},x:{value:i,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:u,enumerable:!0,configurable:!0},_:{value:d}})}Tu.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function Mj(e){return!e.ctrlKey&&!e.button}function Aj(){return this.parentNode}function Tj(e,t){return t??{x:e.x,y:e.y}}function Dj(){return navigator.maxTouchPoints||"ontouchstart"in this}function ug(){var e=Mj,t=Aj,n=Tj,a=Dj,l={},r=Ds("start","drag","end"),i=0,s,c,u,d,f=0;function h(v){v.on("mousedown.drag",m).filter(a).on("touchstart.drag",w).on("touchmove.drag",p,zj).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(v,_){if(!(d||!e.call(this,v,_))){var M=g(this,t.call(this,v,_),v,_,"mouse");M&&(Tt(v.view).on("mousemove.drag",x,ai).on("mouseup.drag",j,ai),sg(v.view),Ec(v),u=!1,s=v.clientX,c=v.clientY,M("start",v))}}function x(v){if(Ll(v),!u){var _=v.clientX-s,M=v.clientY-c;u=_*_+M*M>f}l.mouse("drag",v)}function j(v){Tt(v.view).on("mousemove.drag mouseup.drag",null),cg(v.view,u),Ll(v),l.mouse("end",v)}function w(v,_){if(e.call(this,v,_)){var M=v.changedTouches,z=t.call(this,v,_),C=M.length,B,L;for(B=0;B<C;++B)(L=g(this,z,v,_,M[B].identifier,M[B]))&&(Ec(v),L("start",v,M[B]))}}function p(v){var _=v.changedTouches,M=_.length,z,C;for(z=0;z<M;++z)(C=l[_[z].identifier])&&(Ll(v),C("drag",v,_[z]))}function y(v){var _=v.changedTouches,M=_.length,z,C;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),z=0;z<M;++z)(C=l[_[z].identifier])&&(Ec(v),C("end",v,_[z]))}function g(v,_,M,z,C,B){var L=r.copy(),S=an(B||M,_),H,U,E;if((E=n.call(v,new Tu("beforestart",{sourceEvent:M,target:h,identifier:C,active:i,x:S[0],y:S[1],dx:0,dy:0,dispatch:L}),z))!=null)return H=E.x-S[0]||0,U=E.y-S[1]||0,function R(b,N,T){var D=S,A;switch(b){case"start":l[C]=R,A=i++;break;case"end":delete l[C],--i;case"drag":S=an(T||N,_),A=i;break}L.call(b,v,new Tu(b,{sourceEvent:N,subject:E,target:h,identifier:C,active:A,x:S[0]+H,y:S[1]+U,dx:S[0]-D[0],dy:S[1]-D[1],dispatch:L}),z)}}return h.filter=function(v){return arguments.length?(e=typeof v=="function"?v:Pi(!!v),h):e},h.container=function(v){return arguments.length?(t=typeof v=="function"?v:Pi(v),h):t},h.subject=function(v){return arguments.length?(n=typeof v=="function"?v:Pi(v),h):n},h.touchable=function(v){return arguments.length?(a=typeof v=="function"?v:Pi(!!v),h):a},h.on=function(){var v=r.on.apply(r,arguments);return v===r?h:v},h.clickDistance=function(v){return arguments.length?(f=(v=+v)*v,h):Math.sqrt(f)},h}function Wd(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function dg(e,t){var n=Object.create(e.prototype);for(var a in t)n[a]=t[a];return n}function _i(){}var li=.7,Go=1/li,Hl="\\s*([+-]?\\d+)\\s*",ri="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",vn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Oj=/^#([0-9a-f]{3,8})$/,Bj=new RegExp(`^rgb\\(${Hl},${Hl},${Hl}\\)$`),Rj=new RegExp(`^rgb\\(${vn},${vn},${vn}\\)$`),Lj=new RegExp(`^rgba\\(${Hl},${Hl},${Hl},${ri}\\)$`),Hj=new RegExp(`^rgba\\(${vn},${vn},${vn},${ri}\\)$`),Ij=new RegExp(`^hsl\\(${ri},${vn},${vn}\\)$`),Uj=new RegExp(`^hsla\\(${ri},${vn},${vn},${ri}\\)$`),$h={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};Wd(_i,Ga,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Yh,formatHex:Yh,formatHex8:Vj,formatHsl:$j,formatRgb:Xh,toString:Xh});function Yh(){return this.rgb().formatHex()}function Vj(){return this.rgb().formatHex8()}function $j(){return fg(this).formatHsl()}function Xh(){return this.rgb().formatRgb()}function Ga(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=Oj.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?qh(t):n===3?new jt(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Wi(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Wi(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Bj.exec(e))?new jt(t[1],t[2],t[3],1):(t=Rj.exec(e))?new jt(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Lj.exec(e))?Wi(t[1],t[2],t[3],t[4]):(t=Hj.exec(e))?Wi(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Ij.exec(e))?Zh(t[1],t[2]/100,t[3]/100,1):(t=Uj.exec(e))?Zh(t[1],t[2]/100,t[3]/100,t[4]):$h.hasOwnProperty(e)?qh($h[e]):e==="transparent"?new jt(NaN,NaN,NaN,0):null}function qh(e){return new jt(e>>16&255,e>>8&255,e&255,1)}function Wi(e,t,n,a){return a<=0&&(e=t=n=NaN),new jt(e,t,n,a)}function Yj(e){return e instanceof _i||(e=Ga(e)),e?(e=e.rgb(),new jt(e.r,e.g,e.b,e.opacity)):new jt}function Du(e,t,n,a){return arguments.length===1?Yj(e):new jt(e,t,n,a??1)}function jt(e,t,n,a){this.r=+e,this.g=+t,this.b=+n,this.opacity=+a}Wd(jt,Du,dg(_i,{brighter(e){return e=e==null?Go:Math.pow(Go,e),new jt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?li:Math.pow(li,e),new jt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new jt(Ia(this.r),Ia(this.g),Ia(this.b),Zo(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:Fh,formatHex:Fh,formatHex8:Xj,formatRgb:Gh,toString:Gh}));function Fh(){return`#${Ha(this.r)}${Ha(this.g)}${Ha(this.b)}`}function Xj(){return`#${Ha(this.r)}${Ha(this.g)}${Ha(this.b)}${Ha((isNaN(this.opacity)?1:this.opacity)*255)}`}function Gh(){const e=Zo(this.opacity);return`${e===1?"rgb(":"rgba("}${Ia(this.r)}, ${Ia(this.g)}, ${Ia(this.b)}${e===1?")":`, ${e})`}`}function Zo(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ia(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Ha(e){return e=Ia(e),(e<16?"0":"")+e.toString(16)}function Zh(e,t,n,a){return a<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new on(e,t,n,a)}function fg(e){if(e instanceof on)return new on(e.h,e.s,e.l,e.opacity);if(e instanceof _i||(e=Ga(e)),!e)return new on;if(e instanceof on)return e;e=e.rgb();var t=e.r/255,n=e.g/255,a=e.b/255,l=Math.min(t,n,a),r=Math.max(t,n,a),i=NaN,s=r-l,c=(r+l)/2;return s?(t===r?i=(n-a)/s+(n<a)*6:n===r?i=(a-t)/s+2:i=(t-n)/s+4,s/=c<.5?r+l:2-r-l,i*=60):s=c>0&&c<1?0:i,new on(i,s,c,e.opacity)}function qj(e,t,n,a){return arguments.length===1?fg(e):new on(e,t,n,a??1)}function on(e,t,n,a){this.h=+e,this.s=+t,this.l=+n,this.opacity=+a}Wd(on,qj,dg(_i,{brighter(e){return e=e==null?Go:Math.pow(Go,e),new on(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?li:Math.pow(li,e),new on(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,a=n+(n<.5?n:1-n)*t,l=2*n-a;return new jt(kc(e>=240?e-240:e+120,l,a),kc(e,l,a),kc(e<120?e+240:e-120,l,a),this.opacity)},clamp(){return new on(Qh(this.h),Ji(this.s),Ji(this.l),Zo(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Zo(this.opacity);return`${e===1?"hsl(":"hsla("}${Qh(this.h)}, ${Ji(this.s)*100}%, ${Ji(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Qh(e){return e=(e||0)%360,e<0?e+360:e}function Ji(e){return Math.max(0,Math.min(1,e||0))}function kc(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Jd=e=>()=>e;function Fj(e,t){return function(n){return e+n*t}}function Gj(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(a){return Math.pow(e+a*t,n)}}function Zj(e){return(e=+e)==1?hg:function(t,n){return n-t?Gj(t,n,e):Jd(isNaN(t)?n:t)}}function hg(e,t){var n=t-e;return n?Fj(e,n):Jd(isNaN(e)?t:e)}const Qo=function e(t){var n=Zj(t);function a(l,r){var i=n((l=Du(l)).r,(r=Du(r)).r),s=n(l.g,r.g),c=n(l.b,r.b),u=hg(l.opacity,r.opacity);return function(d){return l.r=i(d),l.g=s(d),l.b=c(d),l.opacity=u(d),l+""}}return a.gamma=e,a}(1);function Qj(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,a=t.slice(),l;return function(r){for(l=0;l<n;++l)a[l]=e[l]*(1-r)+t[l]*r;return a}}function Kj(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Pj(e,t){var n=t?t.length:0,a=e?Math.min(n,e.length):0,l=new Array(a),r=new Array(n),i;for(i=0;i<a;++i)l[i]=Vr(e[i],t[i]);for(;i<n;++i)r[i]=t[i];return function(s){for(i=0;i<a;++i)r[i]=l[i](s);return r}}function Wj(e,t){var n=new Date;return e=+e,t=+t,function(a){return n.setTime(e*(1-a)+t*a),n}}function pn(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function Jj(e,t){var n={},a={},l;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(l in t)l in e?n[l]=Vr(e[l],t[l]):a[l]=t[l];return function(r){for(l in n)a[l]=n[l](r);return a}}var Ou=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,_c=new RegExp(Ou.source,"g");function eN(e){return function(){return e}}function tN(e){return function(t){return e(t)+""}}function mg(e,t){var n=Ou.lastIndex=_c.lastIndex=0,a,l,r,i=-1,s=[],c=[];for(e=e+"",t=t+"";(a=Ou.exec(e))&&(l=_c.exec(t));)(r=l.index)>n&&(r=t.slice(n,r),s[i]?s[i]+=r:s[++i]=r),(a=a[0])===(l=l[0])?s[i]?s[i]+=l:s[++i]=l:(s[++i]=null,c.push({i,x:pn(a,l)})),n=_c.lastIndex;return n<t.length&&(r=t.slice(n),s[i]?s[i]+=r:s[++i]=r),s.length<2?c[0]?tN(c[0].x):eN(t):(t=c.length,function(u){for(var d=0,f;d<t;++d)s[(f=c[d]).i]=f.x(u);return s.join("")})}function Vr(e,t){var n=typeof t,a;return t==null||n==="boolean"?Jd(t):(n==="number"?pn:n==="string"?(a=Ga(t))?(t=a,Qo):mg:t instanceof Ga?Qo:t instanceof Date?Wj:Kj(t)?Qj:Array.isArray(t)?Pj:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?Jj:pn)(e,t)}var Kh=180/Math.PI,Bu={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function pg(e,t,n,a,l,r){var i,s,c;return(i=Math.sqrt(e*e+t*t))&&(e/=i,t/=i),(c=e*n+t*a)&&(n-=e*c,a-=t*c),(s=Math.sqrt(n*n+a*a))&&(n/=s,a/=s,c/=s),e*a<t*n&&(e=-e,t=-t,c=-c,i=-i),{translateX:l,translateY:r,rotate:Math.atan2(t,e)*Kh,skewX:Math.atan(c)*Kh,scaleX:i,scaleY:s}}var eo;function nN(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?Bu:pg(t.a,t.b,t.c,t.d,t.e,t.f)}function aN(e){return e==null||(eo||(eo=document.createElementNS("http://www.w3.org/2000/svg","g")),eo.setAttribute("transform",e),!(e=eo.transform.baseVal.consolidate()))?Bu:(e=e.matrix,pg(e.a,e.b,e.c,e.d,e.e,e.f))}function gg(e,t,n,a){function l(u){return u.length?u.pop()+" ":""}function r(u,d,f,h,m,x){if(u!==f||d!==h){var j=m.push("translate(",null,t,null,n);x.push({i:j-4,x:pn(u,f)},{i:j-2,x:pn(d,h)})}else(f||h)&&m.push("translate("+f+t+h+n)}function i(u,d,f,h){u!==d?(u-d>180?d+=360:d-u>180&&(u+=360),h.push({i:f.push(l(f)+"rotate(",null,a)-2,x:pn(u,d)})):d&&f.push(l(f)+"rotate("+d+a)}function s(u,d,f,h){u!==d?h.push({i:f.push(l(f)+"skewX(",null,a)-2,x:pn(u,d)}):d&&f.push(l(f)+"skewX("+d+a)}function c(u,d,f,h,m,x){if(u!==f||d!==h){var j=m.push(l(m)+"scale(",null,",",null,")");x.push({i:j-4,x:pn(u,f)},{i:j-2,x:pn(d,h)})}else(f!==1||h!==1)&&m.push(l(m)+"scale("+f+","+h+")")}return function(u,d){var f=[],h=[];return u=e(u),d=e(d),r(u.translateX,u.translateY,d.translateX,d.translateY,f,h),i(u.rotate,d.rotate,f,h),s(u.skewX,d.skewX,f,h),c(u.scaleX,u.scaleY,d.scaleX,d.scaleY,f,h),u=d=null,function(m){for(var x=-1,j=h.length,w;++x<j;)f[(w=h[x]).i]=w.x(m);return f.join("")}}}var lN=gg(nN,"px, ","px)","deg)"),rN=gg(aN,", ",")",")"),iN=1e-12;function Ph(e){return((e=Math.exp(e))+1/e)/2}function oN(e){return((e=Math.exp(e))-1/e)/2}function sN(e){return((e=Math.exp(2*e))-1)/(e+1)}const Eo=function e(t,n,a){function l(r,i){var s=r[0],c=r[1],u=r[2],d=i[0],f=i[1],h=i[2],m=d-s,x=f-c,j=m*m+x*x,w,p;if(j<iN)p=Math.log(h/u)/t,w=function(z){return[s+z*m,c+z*x,u*Math.exp(t*z*p)]};else{var y=Math.sqrt(j),g=(h*h-u*u+a*j)/(2*u*n*y),v=(h*h-u*u-a*j)/(2*h*n*y),_=Math.log(Math.sqrt(g*g+1)-g),M=Math.log(Math.sqrt(v*v+1)-v);p=(M-_)/t,w=function(z){var C=z*p,B=Ph(_),L=u/(n*y)*(B*sN(t*C+_)-oN(_));return[s+L*m,c+L*x,u*B/Ph(t*C+_)]}}return w.duration=p*1e3*t/Math.SQRT2,w}return l.rho=function(r){var i=Math.max(.001,+r),s=i*i,c=s*s;return e(i,s,c)},l}(Math.SQRT2,2,4);var Zl=0,Or=0,Nr=0,xg=1e3,Ko,Br,Po=0,Za=0,Bs=0,ii=typeof performance=="object"&&performance.now?performance:Date,yg=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function ef(){return Za||(yg(cN),Za=ii.now()+Bs)}function cN(){Za=0}function Wo(){this._call=this._time=this._next=null}Wo.prototype=vg.prototype={constructor:Wo,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?ef():+n)+(t==null?0:+t),!this._next&&Br!==this&&(Br?Br._next=this:Ko=this,Br=this),this._call=e,this._time=n,Ru()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ru())}};function vg(e,t,n){var a=new Wo;return a.restart(e,t,n),a}function uN(){ef(),++Zl;for(var e=Ko,t;e;)(t=Za-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Zl}function Wh(){Za=(Po=ii.now())+Bs,Zl=Or=0;try{uN()}finally{Zl=0,fN(),Za=0}}function dN(){var e=ii.now(),t=e-Po;t>xg&&(Bs-=t,Po=e)}function fN(){for(var e,t=Ko,n,a=1/0;t;)t._call?(a>t._time&&(a=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Ko=n);Br=e,Ru(a)}function Ru(e){if(!Zl){Or&&(Or=clearTimeout(Or));var t=e-Za;t>24?(e<1/0&&(Or=setTimeout(Wh,e-ii.now()-Bs)),Nr&&(Nr=clearInterval(Nr))):(Nr||(Po=ii.now(),Nr=setInterval(dN,xg)),Zl=1,yg(Wh))}}function Jh(e,t,n){var a=new Wo;return t=t==null?0:+t,a.restart(l=>{a.stop(),e(l+t)},t,n),a}var hN=Ds("start","end","cancel","interrupt"),mN=[],bg=0,em=1,Lu=2,ko=3,tm=4,Hu=5,_o=6;function Rs(e,t,n,a,l,r){var i=e.__transition;if(!i)e.__transition={};else if(n in i)return;pN(e,n,{name:t,index:a,group:l,on:hN,tween:mN,time:r.time,delay:r.delay,duration:r.duration,ease:r.ease,timer:null,state:bg})}function tf(e,t){var n=fn(e,t);if(n.state>bg)throw new Error("too late; already scheduled");return n}function wn(e,t){var n=fn(e,t);if(n.state>ko)throw new Error("too late; already running");return n}function fn(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function pN(e,t,n){var a=e.__transition,l;a[t]=n,n.timer=vg(r,0,n.time);function r(u){n.state=em,n.timer.restart(i,n.delay,n.time),n.delay<=u&&i(u-n.delay)}function i(u){var d,f,h,m;if(n.state!==em)return c();for(d in a)if(m=a[d],m.name===n.name){if(m.state===ko)return Jh(i);m.state===tm?(m.state=_o,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete a[d]):+d<t&&(m.state=_o,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete a[d])}if(Jh(function(){n.state===ko&&(n.state=tm,n.timer.restart(s,n.delay,n.time),s(u))}),n.state=Lu,n.on.call("start",e,e.__data__,n.index,n.group),n.state===Lu){for(n.state=ko,l=new Array(h=n.tween.length),d=0,f=-1;d<h;++d)(m=n.tween[d].value.call(e,e.__data__,n.index,n.group))&&(l[++f]=m);l.length=f+1}}function s(u){for(var d=u<n.duration?n.ease.call(null,u/n.duration):(n.timer.restart(c),n.state=Hu,1),f=-1,h=l.length;++f<h;)l[f].call(e,d);n.state===Hu&&(n.on.call("end",e,e.__data__,n.index,n.group),c())}function c(){n.state=_o,n.timer.stop(),delete a[t];for(var u in a)return;delete e.__transition}}function Co(e,t){var n=e.__transition,a,l,r=!0,i;if(n){t=t==null?null:t+"";for(i in n){if((a=n[i]).name!==t){r=!1;continue}l=a.state>Lu&&a.state<Hu,a.state=_o,a.timer.stop(),a.on.call(l?"interrupt":"cancel",e,e.__data__,a.index,a.group),delete n[i]}r&&delete e.__transition}}function gN(e){return this.each(function(){Co(this,e)})}function xN(e,t){var n,a;return function(){var l=wn(this,e),r=l.tween;if(r!==n){a=n=r;for(var i=0,s=a.length;i<s;++i)if(a[i].name===t){a=a.slice(),a.splice(i,1);break}}l.tween=a}}function yN(e,t,n){var a,l;if(typeof n!="function")throw new Error;return function(){var r=wn(this,e),i=r.tween;if(i!==a){l=(a=i).slice();for(var s={name:t,value:n},c=0,u=l.length;c<u;++c)if(l[c].name===t){l[c]=s;break}c===u&&l.push(s)}r.tween=l}}function vN(e,t){var n=this._id;if(e+="",arguments.length<2){for(var a=fn(this.node(),n).tween,l=0,r=a.length,i;l<r;++l)if((i=a[l]).name===e)return i.value;return null}return this.each((t==null?xN:yN)(n,e,t))}function nf(e,t,n){var a=e._id;return e.each(function(){var l=wn(this,a);(l.value||(l.value={}))[t]=n.apply(this,arguments)}),function(l){return fn(l,a).value[t]}}function wg(e,t){var n;return(typeof t=="number"?pn:t instanceof Ga?Qo:(n=Ga(t))?(t=n,Qo):mg)(e,t)}function bN(e){return function(){this.removeAttribute(e)}}function wN(e){return function(){this.removeAttributeNS(e.space,e.local)}}function jN(e,t,n){var a,l=n+"",r;return function(){var i=this.getAttribute(e);return i===l?null:i===a?r:r=t(a=i,n)}}function NN(e,t,n){var a,l=n+"",r;return function(){var i=this.getAttributeNS(e.space,e.local);return i===l?null:i===a?r:r=t(a=i,n)}}function SN(e,t,n){var a,l,r;return function(){var i,s=n(this),c;return s==null?void this.removeAttribute(e):(i=this.getAttribute(e),c=s+"",i===c?null:i===a&&c===l?r:(l=c,r=t(a=i,s)))}}function EN(e,t,n){var a,l,r;return function(){var i,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(i=this.getAttributeNS(e.space,e.local),c=s+"",i===c?null:i===a&&c===l?r:(l=c,r=t(a=i,s)))}}function kN(e,t){var n=Os(e),a=n==="transform"?rN:wg;return this.attrTween(e,typeof t=="function"?(n.local?EN:SN)(n,a,nf(this,"attr."+e,t)):t==null?(n.local?wN:bN)(n):(n.local?NN:jN)(n,a,t))}function _N(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function CN(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function zN(e,t){var n,a;function l(){var r=t.apply(this,arguments);return r!==a&&(n=(a=r)&&CN(e,r)),n}return l._value=t,l}function MN(e,t){var n,a;function l(){var r=t.apply(this,arguments);return r!==a&&(n=(a=r)&&_N(e,r)),n}return l._value=t,l}function AN(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;var a=Os(e);return this.tween(n,(a.local?zN:MN)(a,t))}function TN(e,t){return function(){tf(this,e).delay=+t.apply(this,arguments)}}function DN(e,t){return t=+t,function(){tf(this,e).delay=t}}function ON(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?TN:DN)(t,e)):fn(this.node(),t).delay}function BN(e,t){return function(){wn(this,e).duration=+t.apply(this,arguments)}}function RN(e,t){return t=+t,function(){wn(this,e).duration=t}}function LN(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?BN:RN)(t,e)):fn(this.node(),t).duration}function HN(e,t){if(typeof t!="function")throw new Error;return function(){wn(this,e).ease=t}}function IN(e){var t=this._id;return arguments.length?this.each(HN(t,e)):fn(this.node(),t).ease}function UN(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;wn(this,e).ease=n}}function VN(e){if(typeof e!="function")throw new Error;return this.each(UN(this._id,e))}function $N(e){typeof e!="function"&&(e=Wp(e));for(var t=this._groups,n=t.length,a=new Array(n),l=0;l<n;++l)for(var r=t[l],i=r.length,s=a[l]=[],c,u=0;u<i;++u)(c=r[u])&&e.call(c,c.__data__,u,r)&&s.push(c);return new $n(a,this._parents,this._name,this._id)}function YN(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,a=t.length,l=n.length,r=Math.min(a,l),i=new Array(a),s=0;s<r;++s)for(var c=t[s],u=n[s],d=c.length,f=i[s]=new Array(d),h,m=0;m<d;++m)(h=c[m]||u[m])&&(f[m]=h);for(;s<a;++s)i[s]=t[s];return new $n(i,this._parents,this._name,this._id)}function XN(e){return(e+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||t==="start"})}function qN(e,t,n){var a,l,r=XN(t)?tf:wn;return function(){var i=r(this,e),s=i.on;s!==a&&(l=(a=s).copy()).on(t,n),i.on=l}}function FN(e,t){var n=this._id;return arguments.length<2?fn(this.node(),n).on.on(e):this.each(qN(n,e,t))}function GN(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function ZN(){return this.on("end.remove",GN(this._id))}function QN(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Kd(e));for(var a=this._groups,l=a.length,r=new Array(l),i=0;i<l;++i)for(var s=a[i],c=s.length,u=r[i]=new Array(c),d,f,h=0;h<c;++h)(d=s[h])&&(f=e.call(d,d.__data__,h,s))&&("__data__"in d&&(f.__data__=d.__data__),u[h]=f,Rs(u[h],t,n,h,u,fn(d,n)));return new $n(r,this._parents,t,n)}function KN(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Pp(e));for(var a=this._groups,l=a.length,r=[],i=[],s=0;s<l;++s)for(var c=a[s],u=c.length,d,f=0;f<u;++f)if(d=c[f]){for(var h=e.call(d,d.__data__,f,c),m,x=fn(d,n),j=0,w=h.length;j<w;++j)(m=h[j])&&Rs(m,t,n,j,h,x);r.push(h),i.push(d)}return new $n(r,i,t,n)}var PN=ki.prototype.constructor;function WN(){return new PN(this._groups,this._parents)}function JN(e,t){var n,a,l;return function(){var r=Gl(this,e),i=(this.style.removeProperty(e),Gl(this,e));return r===i?null:r===n&&i===a?l:l=t(n=r,a=i)}}function jg(e){return function(){this.style.removeProperty(e)}}function eS(e,t,n){var a,l=n+"",r;return function(){var i=Gl(this,e);return i===l?null:i===a?r:r=t(a=i,n)}}function tS(e,t,n){var a,l,r;return function(){var i=Gl(this,e),s=n(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Gl(this,e))),i===c?null:i===a&&c===l?r:(l=c,r=t(a=i,s))}}function nS(e,t){var n,a,l,r="style."+t,i="end."+r,s;return function(){var c=wn(this,e),u=c.on,d=c.value[r]==null?s||(s=jg(t)):void 0;(u!==n||l!==d)&&(a=(n=u).copy()).on(i,l=d),c.on=a}}function aS(e,t,n){var a=(e+="")=="transform"?lN:wg;return t==null?this.styleTween(e,JN(e,a)).on("end.style."+e,jg(e)):typeof t=="function"?this.styleTween(e,tS(e,a,nf(this,"style."+e,t))).each(nS(this._id,e)):this.styleTween(e,eS(e,a,t),n).on("end.style."+e,null)}function lS(e,t,n){return function(a){this.style.setProperty(e,t.call(this,a),n)}}function rS(e,t,n){var a,l;function r(){var i=t.apply(this,arguments);return i!==l&&(a=(l=i)&&lS(e,i,n)),a}return r._value=t,r}function iS(e,t,n){var a="style."+(e+="");if(arguments.length<2)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,rS(e,t,n??""))}function oS(e){return function(){this.textContent=e}}function sS(e){return function(){var t=e(this);this.textContent=t??""}}function cS(e){return this.tween("text",typeof e=="function"?sS(nf(this,"text",e)):oS(e==null?"":e+""))}function uS(e){return function(t){this.textContent=e.call(this,t)}}function dS(e){var t,n;function a(){var l=e.apply(this,arguments);return l!==n&&(t=(n=l)&&uS(l)),t}return a._value=e,a}function fS(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,dS(e))}function hS(){for(var e=this._name,t=this._id,n=Ng(),a=this._groups,l=a.length,r=0;r<l;++r)for(var i=a[r],s=i.length,c,u=0;u<s;++u)if(c=i[u]){var d=fn(c,t);Rs(c,e,n,u,i,{time:d.time+d.delay+d.duration,delay:0,duration:d.duration,ease:d.ease})}return new $n(a,this._parents,e,n)}function mS(){var e,t,n=this,a=n._id,l=n.size();return new Promise(function(r,i){var s={value:i},c={value:function(){--l===0&&r()}};n.each(function(){var u=wn(this,a),d=u.on;d!==e&&(t=(e=d).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),u.on=t}),l===0&&r()})}var pS=0;function $n(e,t,n,a){this._groups=e,this._parents=t,this._name=n,this._id=a}function Ng(){return++pS}var _n=ki.prototype;$n.prototype={constructor:$n,select:QN,selectAll:KN,selectChild:_n.selectChild,selectChildren:_n.selectChildren,filter:$N,merge:YN,selection:WN,transition:hS,call:_n.call,nodes:_n.nodes,node:_n.node,size:_n.size,empty:_n.empty,each:_n.each,on:FN,attr:kN,attrTween:AN,style:aS,styleTween:iS,text:cS,textTween:fS,remove:ZN,tween:vN,delay:ON,duration:LN,ease:IN,easeVarying:VN,end:mS,[Symbol.iterator]:_n[Symbol.iterator]};function gS(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var xS={time:null,delay:0,duration:250,ease:gS};function yS(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function vS(e){var t,n;e instanceof $n?(t=e._id,e=e._name):(t=Ng(),(n=xS).time=ef(),e=e==null?null:e+"");for(var a=this._groups,l=a.length,r=0;r<l;++r)for(var i=a[r],s=i.length,c,u=0;u<s;++u)(c=i[u])&&Rs(c,e,t,u,i,n||yS(c,t));return new $n(a,this._parents,e,t)}ki.prototype.interrupt=gN;ki.prototype.transition=vS;const to=e=>()=>e;function bS(e,{sourceEvent:t,target:n,transform:a,dispatch:l}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:a,enumerable:!0,configurable:!0},_:{value:l}})}function Bn(e,t,n){this.k=e,this.x=t,this.y=n}Bn.prototype={constructor:Bn,scale:function(e){return e===1?this:new Bn(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Bn(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Ls=new Bn(1,0,0);Sg.prototype=Bn.prototype;function Sg(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Ls;return e.__zoom}function Cc(e){e.stopImmediatePropagation()}function Sr(e){e.preventDefault(),e.stopImmediatePropagation()}function wS(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function jS(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function nm(){return this.__zoom||Ls}function NS(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function SS(){return navigator.maxTouchPoints||"ontouchstart"in this}function ES(e,t,n){var a=e.invertX(t[0][0])-n[0][0],l=e.invertX(t[1][0])-n[1][0],r=e.invertY(t[0][1])-n[0][1],i=e.invertY(t[1][1])-n[1][1];return e.translate(l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l),i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i))}function Eg(){var e=wS,t=jS,n=ES,a=NS,l=SS,r=[0,1/0],i=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Eo,u=Ds("start","zoom","end"),d,f,h,m=500,x=150,j=0,w=10;function p(E){E.property("__zoom",nm).on("wheel.zoom",C,{passive:!1}).on("mousedown.zoom",B).on("dblclick.zoom",L).filter(l).on("touchstart.zoom",S).on("touchmove.zoom",H).on("touchend.zoom touchcancel.zoom",U).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}p.transform=function(E,R,b,N){var T=E.selection?E.selection():E;T.property("__zoom",nm),E!==T?_(E,R,b,N):T.interrupt().each(function(){M(this,arguments).event(N).start().zoom(null,typeof R=="function"?R.apply(this,arguments):R).end()})},p.scaleBy=function(E,R,b,N){p.scaleTo(E,function(){var T=this.__zoom.k,D=typeof R=="function"?R.apply(this,arguments):R;return T*D},b,N)},p.scaleTo=function(E,R,b,N){p.transform(E,function(){var T=t.apply(this,arguments),D=this.__zoom,A=b==null?v(T):typeof b=="function"?b.apply(this,arguments):b,O=D.invert(A),V=typeof R=="function"?R.apply(this,arguments):R;return n(g(y(D,V),A,O),T,i)},b,N)},p.translateBy=function(E,R,b,N){p.transform(E,function(){return n(this.__zoom.translate(typeof R=="function"?R.apply(this,arguments):R,typeof b=="function"?b.apply(this,arguments):b),t.apply(this,arguments),i)},null,N)},p.translateTo=function(E,R,b,N,T){p.transform(E,function(){var D=t.apply(this,arguments),A=this.__zoom,O=N==null?v(D):typeof N=="function"?N.apply(this,arguments):N;return n(Ls.translate(O[0],O[1]).scale(A.k).translate(typeof R=="function"?-R.apply(this,arguments):-R,typeof b=="function"?-b.apply(this,arguments):-b),D,i)},N,T)};function y(E,R){return R=Math.max(r[0],Math.min(r[1],R)),R===E.k?E:new Bn(R,E.x,E.y)}function g(E,R,b){var N=R[0]-b[0]*E.k,T=R[1]-b[1]*E.k;return N===E.x&&T===E.y?E:new Bn(E.k,N,T)}function v(E){return[(+E[0][0]+ +E[1][0])/2,(+E[0][1]+ +E[1][1])/2]}function _(E,R,b,N){E.on("start.zoom",function(){M(this,arguments).event(N).start()}).on("interrupt.zoom end.zoom",function(){M(this,arguments).event(N).end()}).tween("zoom",function(){var T=this,D=arguments,A=M(T,D).event(N),O=t.apply(T,D),V=b==null?v(O):typeof b=="function"?b.apply(T,D):b,Z=Math.max(O[1][0]-O[0][0],O[1][1]-O[0][1]),P=T.__zoom,ae=typeof R=="function"?R.apply(T,D):R,ue=c(P.invert(V).concat(Z/P.k),ae.invert(V).concat(Z/ae.k));return function(le){if(le===1)le=ae;else{var q=ue(le),W=Z/q[2];le=new Bn(W,V[0]-q[0]*W,V[1]-q[1]*W)}A.zoom(null,le)}})}function M(E,R,b){return!b&&E.__zooming||new z(E,R)}function z(E,R){this.that=E,this.args=R,this.active=0,this.sourceEvent=null,this.extent=t.apply(E,R),this.taps=0}z.prototype={event:function(E){return E&&(this.sourceEvent=E),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(E,R){return this.mouse&&E!=="mouse"&&(this.mouse[1]=R.invert(this.mouse[0])),this.touch0&&E!=="touch"&&(this.touch0[1]=R.invert(this.touch0[0])),this.touch1&&E!=="touch"&&(this.touch1[1]=R.invert(this.touch1[0])),this.that.__zoom=R,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(E){var R=Tt(this.that).datum();u.call(E,this.that,new bS(E,{sourceEvent:this.sourceEvent,target:p,transform:this.that.__zoom,dispatch:u}),R)}};function C(E,...R){if(!e.apply(this,arguments))return;var b=M(this,R).event(E),N=this.__zoom,T=Math.max(r[0],Math.min(r[1],N.k*Math.pow(2,a.apply(this,arguments)))),D=an(E);if(b.wheel)(b.mouse[0][0]!==D[0]||b.mouse[0][1]!==D[1])&&(b.mouse[1]=N.invert(b.mouse[0]=D)),clearTimeout(b.wheel);else{if(N.k===T)return;b.mouse=[D,N.invert(D)],Co(this),b.start()}Sr(E),b.wheel=setTimeout(A,x),b.zoom("mouse",n(g(y(N,T),b.mouse[0],b.mouse[1]),b.extent,i));function A(){b.wheel=null,b.end()}}function B(E,...R){if(h||!e.apply(this,arguments))return;var b=E.currentTarget,N=M(this,R,!0).event(E),T=Tt(E.view).on("mousemove.zoom",V,!0).on("mouseup.zoom",Z,!0),D=an(E,b),A=E.clientX,O=E.clientY;sg(E.view),Cc(E),N.mouse=[D,this.__zoom.invert(D)],Co(this),N.start();function V(P){if(Sr(P),!N.moved){var ae=P.clientX-A,ue=P.clientY-O;N.moved=ae*ae+ue*ue>j}N.event(P).zoom("mouse",n(g(N.that.__zoom,N.mouse[0]=an(P,b),N.mouse[1]),N.extent,i))}function Z(P){T.on("mousemove.zoom mouseup.zoom",null),cg(P.view,N.moved),Sr(P),N.event(P).end()}}function L(E,...R){if(e.apply(this,arguments)){var b=this.__zoom,N=an(E.changedTouches?E.changedTouches[0]:E,this),T=b.invert(N),D=b.k*(E.shiftKey?.5:2),A=n(g(y(b,D),N,T),t.apply(this,R),i);Sr(E),s>0?Tt(this).transition().duration(s).call(_,A,N,E):Tt(this).call(p.transform,A,N,E)}}function S(E,...R){if(e.apply(this,arguments)){var b=E.touches,N=b.length,T=M(this,R,E.changedTouches.length===N).event(E),D,A,O,V;for(Cc(E),A=0;A<N;++A)O=b[A],V=an(O,this),V=[V,this.__zoom.invert(V),O.identifier],T.touch0?!T.touch1&&T.touch0[2]!==V[2]&&(T.touch1=V,T.taps=0):(T.touch0=V,D=!0,T.taps=1+!!d);d&&(d=clearTimeout(d)),D&&(T.taps<2&&(f=V[0],d=setTimeout(function(){d=null},m)),Co(this),T.start())}}function H(E,...R){if(this.__zooming){var b=M(this,R).event(E),N=E.changedTouches,T=N.length,D,A,O,V;for(Sr(E),D=0;D<T;++D)A=N[D],O=an(A,this),b.touch0&&b.touch0[2]===A.identifier?b.touch0[0]=O:b.touch1&&b.touch1[2]===A.identifier&&(b.touch1[0]=O);if(A=b.that.__zoom,b.touch1){var Z=b.touch0[0],P=b.touch0[1],ae=b.touch1[0],ue=b.touch1[1],le=(le=ae[0]-Z[0])*le+(le=ae[1]-Z[1])*le,q=(q=ue[0]-P[0])*q+(q=ue[1]-P[1])*q;A=y(A,Math.sqrt(le/q)),O=[(Z[0]+ae[0])/2,(Z[1]+ae[1])/2],V=[(P[0]+ue[0])/2,(P[1]+ue[1])/2]}else if(b.touch0)O=b.touch0[0],V=b.touch0[1];else return;b.zoom("touch",n(g(A,O,V),b.extent,i))}}function U(E,...R){if(this.__zooming){var b=M(this,R).event(E),N=E.changedTouches,T=N.length,D,A;for(Cc(E),h&&clearTimeout(h),h=setTimeout(function(){h=null},m),D=0;D<T;++D)A=N[D],b.touch0&&b.touch0[2]===A.identifier?delete b.touch0:b.touch1&&b.touch1[2]===A.identifier&&delete b.touch1;if(b.touch1&&!b.touch0&&(b.touch0=b.touch1,delete b.touch1),b.touch0)b.touch0[1]=this.__zoom.invert(b.touch0[0]);else if(b.end(),b.taps===2&&(A=an(A,this),Math.hypot(f[0]-A[0],f[1]-A[1])<w)){var O=Tt(this).on("dblclick.zoom");O&&O.apply(this,arguments)}}}return p.wheelDelta=function(E){return arguments.length?(a=typeof E=="function"?E:to(+E),p):a},p.filter=function(E){return arguments.length?(e=typeof E=="function"?E:to(!!E),p):e},p.touchable=function(E){return arguments.length?(l=typeof E=="function"?E:to(!!E),p):l},p.extent=function(E){return arguments.length?(t=typeof E=="function"?E:to([[+E[0][0],+E[0][1]],[+E[1][0],+E[1][1]]]),p):t},p.scaleExtent=function(E){return arguments.length?(r[0]=+E[0],r[1]=+E[1],p):[r[0],r[1]]},p.translateExtent=function(E){return arguments.length?(i[0][0]=+E[0][0],i[1][0]=+E[1][0],i[0][1]=+E[0][1],i[1][1]=+E[1][1],p):[[i[0][0],i[0][1]],[i[1][0],i[1][1]]]},p.constrain=function(E){return arguments.length?(n=E,p):n},p.duration=function(E){return arguments.length?(s=+E,p):s},p.interpolate=function(E){return arguments.length?(c=E,p):c},p.on=function(){var E=u.on.apply(u,arguments);return E===u?p:E},p.clickDistance=function(E){return arguments.length?(j=(E=+E)*E,p):Math.sqrt(j)},p.tapDistance=function(E){return arguments.length?(w=+E,p):w},p}const dn={error001:(e="react")=>`Seems like you have not used zustand provider as an ancestor. Help: https://${e}flow.dev/error#001`,error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:a})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:a}", edge id: ${t}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",error016:e=>`Edge with id "${e}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`},oi=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],kg=["Enter"," ","Escape"],_g={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var Qa;(function(e){e.Strict="strict",e.Loose="loose"})(Qa||(Qa={}));var Ua;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Ua||(Ua={}));var Ql;(function(e){e.Partial="partial",e.Full="full"})(Ql||(Ql={}));const Cg={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var aa;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(aa||(aa={}));var Jo;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Jo||(Jo={}));var ne;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(ne||(ne={}));const am={[ne.Left]:ne.Right,[ne.Right]:ne.Left,[ne.Top]:ne.Bottom,[ne.Bottom]:ne.Top};function zg(e){return e===null?null:e?"valid":"invalid"}const Mg=e=>"id"in e&&"source"in e&&"target"in e,kS=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),af=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),Ci=(e,t=[0,0])=>{const{width:n,height:a}=Zn(e),l=e.origin??t,r=n*l[0],i=a*l[1];return{x:e.position.x-r,y:e.position.y-i}},_S=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((a,l)=>{const r=typeof l=="string";let i=!t.nodeLookup&&!r?l:void 0;t.nodeLookup&&(i=r?t.nodeLookup.get(l):af(l)?l:t.nodeLookup.get(l.id));const s=i?es(i,t.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Hs(a,s)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Is(n)},zi=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},a=!1;return e.forEach(l=>{(t.filter===void 0||t.filter(l))&&(n=Hs(n,es(l)),a=!0)}),a?Is(n):{x:0,y:0,width:0,height:0}},lf=(e,t,[n,a,l]=[0,0,1],r=!1,i=!1)=>{const s={...hr(t,[n,a,l]),width:t.width/l,height:t.height/l},c=[];for(const u of e.values()){const{measured:d,selectable:f=!0,hidden:h=!1}=u;if(i&&!f||h)continue;const m=d.width??u.width??u.initialWidth??null,x=d.height??u.height??u.initialHeight??null,j=si(s,Pl(u)),w=(m??0)*(x??0),p=r&&j>0;(!u.internals.handleBounds||p||j>=w||u.dragging)&&c.push(u)}return c},CS=(e,t)=>{const n=new Set;return e.forEach(a=>{n.add(a.id)}),t.filter(a=>n.has(a.source)||n.has(a.target))};function zS(e,t){const n=new Map,a=t!=null&&t.nodes?new Set(t.nodes.map(l=>l.id)):null;return e.forEach(l=>{l.measured.width&&l.measured.height&&((t==null?void 0:t.includeHiddenNodes)||!l.hidden)&&(!a||a.has(l.id))&&n.set(l.id,l)}),n}async function MS({nodes:e,width:t,height:n,panZoom:a,minZoom:l,maxZoom:r},i){if(e.size===0)return!0;const s=zS(e,i),c=zi(s),u=of(c,t,n,(i==null?void 0:i.minZoom)??l,(i==null?void 0:i.maxZoom)??r,(i==null?void 0:i.padding)??.1);return await a.setViewport(u,{duration:i==null?void 0:i.duration,ease:i==null?void 0:i.ease,interpolate:i==null?void 0:i.interpolate}),!0}function Ag({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:a=[0,0],nodeExtent:l,onError:r}){const i=n.get(e),s=i.parentId?n.get(i.parentId):void 0,{x:c,y:u}=s?s.internals.positionAbsolute:{x:0,y:0},d=i.origin??a;let f=i.extent||l;if(i.extent==="parent"&&!i.expandParent)if(!s)r==null||r("005",dn.error005());else{const m=s.measured.width,x=s.measured.height;m&&x&&(f=[[c,u],[c+m,u+x]])}else s&&Pa(i.extent)&&(f=[[i.extent[0][0]+c,i.extent[0][1]+u],[i.extent[1][0]+c,i.extent[1][1]+u]]);const h=Pa(f)?Ka(t,f,i.measured):t;return(i.measured.width===void 0||i.measured.height===void 0)&&(r==null||r("015",dn.error015())),{position:{x:h.x-c+(i.measured.width??0)*d[0],y:h.y-u+(i.measured.height??0)*d[1]},positionAbsolute:h}}async function AS({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:a,onBeforeDelete:l}){const r=new Set(e.map(h=>h.id)),i=[];for(const h of n){if(h.deletable===!1)continue;const m=r.has(h.id),x=!m&&h.parentId&&i.find(j=>j.id===h.parentId);(m||x)&&i.push(h)}const s=new Set(t.map(h=>h.id)),c=a.filter(h=>h.deletable!==!1),d=CS(i,c);for(const h of c)s.has(h.id)&&!d.find(x=>x.id===h.id)&&d.push(h);if(!l)return{edges:d,nodes:i};const f=await l({nodes:i,edges:d});return typeof f=="boolean"?f?{edges:d,nodes:i}:{edges:[],nodes:[]}:f}const Kl=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),Ka=(e={x:0,y:0},t,n)=>({x:Kl(e.x,t[0][0],t[1][0]-((n==null?void 0:n.width)??0)),y:Kl(e.y,t[0][1],t[1][1]-((n==null?void 0:n.height)??0))});function Tg(e,t,n){const{width:a,height:l}=Zn(n),{x:r,y:i}=n.internals.positionAbsolute;return Ka(e,[[r,i],[r+a,i+l]],t)}const lm=(e,t,n)=>e<t?Kl(Math.abs(e-t),1,t)/t:e>n?-Kl(Math.abs(e-n),1,t)/t:0,rf=(e,t,n=15,a=40)=>{const l=lm(e.x,a,t.width-a)*n,r=lm(e.y,a,t.height-a)*n;return[l,r]},Hs=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),Iu=({x:e,y:t,width:n,height:a})=>({x:e,y:t,x2:e+n,y2:t+a}),Is=({x:e,y:t,x2:n,y2:a})=>({x:e,y:t,width:n-e,height:a-t}),Pl=(e,t=[0,0])=>{var l,r;const{x:n,y:a}=af(e)?e.internals.positionAbsolute:Ci(e,t);return{x:n,y:a,width:((l=e.measured)==null?void 0:l.width)??e.width??e.initialWidth??0,height:((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight??0}},es=(e,t=[0,0])=>{var l,r;const{x:n,y:a}=af(e)?e.internals.positionAbsolute:Ci(e,t);return{x:n,y:a,x2:n+(((l=e.measured)==null?void 0:l.width)??e.width??e.initialWidth??0),y2:a+(((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight??0)}},Dg=(e,t)=>Is(Hs(Iu(e),Iu(t))),si=(e,t)=>{const n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),a=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*a)},rm=e=>sn(e.width)&&sn(e.height)&&sn(e.x)&&sn(e.y),sn=e=>!isNaN(e)&&isFinite(e),Og=(e,t)=>(n,a)=>{},Mi=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),hr=({x:e,y:t},[n,a,l],r=!1,i=[1,1])=>{const s={x:(e-n)/l,y:(t-a)/l};return r?Mi(s,i):s},Wl=({x:e,y:t},[n,a,l])=>({x:e*l+n,y:t*l+a});function gl(e,t){if(typeof e=="number")return Math.floor((t-t/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function TS(e,t,n){if(typeof e=="string"||typeof e=="number"){const a=gl(e,n),l=gl(e,t);return{top:a,right:l,bottom:a,left:l,x:l*2,y:a*2}}if(typeof e=="object"){const a=gl(e.top??e.y??0,n),l=gl(e.bottom??e.y??0,n),r=gl(e.left??e.x??0,t),i=gl(e.right??e.x??0,t);return{top:a,right:i,bottom:l,left:r,x:r+i,y:a+l}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function DS(e,t,n,a,l,r){const{x:i,y:s}=Wl(e,[t,n,a]),{x:c,y:u}=Wl({x:e.x+e.width,y:e.y+e.height},[t,n,a]),d=l-c,f=r-u;return{left:Math.floor(i),top:Math.floor(s),right:Math.floor(d),bottom:Math.floor(f)}}const of=(e,t,n,a,l,r)=>{const i=TS(r,t,n),s=(t-i.x)/e.width,c=(n-i.y)/e.height,u=Math.min(s,c),d=Kl(u,a,l),f=e.x+e.width/2,h=e.y+e.height/2,m=t/2-f*d,x=n/2-h*d,j=DS(e,m,x,d,t,n),w={left:Math.min(j.left-i.left,0),top:Math.min(j.top-i.top,0),right:Math.min(j.right-i.right,0),bottom:Math.min(j.bottom-i.bottom,0)};return{x:m-w.left+w.right,y:x-w.top+w.bottom,zoom:d}},ci=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function Pa(e){return e!=null&&e!=="parent"}function Zn(e){var t,n;return{width:((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth??0,height:((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight??0}}function Bg(e){var t,n;return(((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth)!==void 0&&(((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight)!==void 0}function Rg(e,t={width:0,height:0},n,a,l){const r={...e},i=a.get(n);if(i){const s=i.origin||l;r.x+=i.internals.positionAbsolute.x-(t.width??0)*s[0],r.y+=i.internals.positionAbsolute.y-(t.height??0)*s[1]}return r}function im(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}function OS(){let e,t;return{promise:new Promise((a,l)=>{e=a,t=l}),resolve:e,reject:t}}function BS(e){return{..._g,...e||{}}}function $r(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:a,containerBounds:l}){const{x:r,y:i}=cn(e),s=hr({x:r-((l==null?void 0:l.left)??0),y:i-((l==null?void 0:l.top)??0)},a),{x:c,y:u}=n?Mi(s,t):s;return{xSnapped:c,ySnapped:u,...s}}const sf=e=>({width:e.offsetWidth,height:e.offsetHeight}),Lg=e=>{var t;return((t=e==null?void 0:e.getRootNode)==null?void 0:t.call(e))||(window==null?void 0:window.document)},RS=["INPUT","SELECT","TEXTAREA"];function Hg(e){var a,l;const t=((l=(a=e.composedPath)==null?void 0:a.call(e))==null?void 0:l[0])||e.target;return(t==null?void 0:t.nodeType)!==1?!1:RS.includes(t.nodeName)||t.hasAttribute("contenteditable")||!!t.closest(".nokey")}const Ig=e=>"clientX"in e,cn=(e,t)=>{var r,i;const n=Ig(e),a=n?e.clientX:(r=e.touches)==null?void 0:r[0].clientX,l=n?e.clientY:(i=e.touches)==null?void 0:i[0].clientY;return{x:a-((t==null?void 0:t.left)??0),y:l-((t==null?void 0:t.top)??0)}},om=(e,t,n,a,l)=>{const r=t.querySelectorAll(`.${e}`);return!r||!r.length?null:Array.from(r).map(i=>{const s=i.getBoundingClientRect();return{id:i.getAttribute("data-handleid"),type:e,nodeId:l,position:i.getAttribute("data-handlepos"),x:(s.left-n.left)/a,y:(s.top-n.top)/a,...sf(i)}})};function Ug({sourceX:e,sourceY:t,targetX:n,targetY:a,sourceControlX:l,sourceControlY:r,targetControlX:i,targetControlY:s}){const c=e*.125+l*.375+i*.375+n*.125,u=t*.125+r*.375+s*.375+a*.125,d=Math.abs(c-e),f=Math.abs(u-t);return[c,u,d,f]}function no(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function sm({pos:e,x1:t,y1:n,x2:a,y2:l,c:r}){switch(e){case ne.Left:return[t-no(t-a,r),n];case ne.Right:return[t+no(a-t,r),n];case ne.Top:return[t,n-no(n-l,r)];case ne.Bottom:return[t,n+no(l-n,r)]}}function cf({sourceX:e,sourceY:t,sourcePosition:n=ne.Bottom,targetX:a,targetY:l,targetPosition:r=ne.Top,curvature:i=.25}){const[s,c]=sm({pos:n,x1:e,y1:t,x2:a,y2:l,c:i}),[u,d]=sm({pos:r,x1:a,y1:l,x2:e,y2:t,c:i}),[f,h,m,x]=Ug({sourceX:e,sourceY:t,targetX:a,targetY:l,sourceControlX:s,sourceControlY:c,targetControlX:u,targetControlY:d});return[`M${e},${t} C${s},${c} ${u},${d} ${a},${l}`,f,h,m,x]}function Vg({sourceX:e,sourceY:t,targetX:n,targetY:a}){const l=Math.abs(n-e)/2,r=n<e?n+l:n-l,i=Math.abs(a-t)/2,s=a<t?a+i:a-i;return[r,s,l,i]}function LS({sourceNode:e,targetNode:t,selected:n=!1,zIndex:a=0,elevateOnSelect:l=!1,zIndexMode:r="basic"}){if(r==="manual")return a;const i=l&&n?a+1e3:a,s=Math.max(e.parentId||l&&e.selected?e.internals.z:0,t.parentId||l&&t.selected?t.internals.z:0);return i+s}function HS({sourceNode:e,targetNode:t,width:n,height:a,transform:l}){const r=Hs(es(e),es(t));r.x===r.x2&&(r.x2+=1),r.y===r.y2&&(r.y2+=1);const i={x:-l[0]/l[2],y:-l[1]/l[2],width:n/l[2],height:a/l[2]};return si(i,Is(r))>0}const IS=({source:e,sourceHandle:t,target:n,targetHandle:a})=>`xy-edge__${e}${t||""}-${n}${a||""}`,US=(e,t)=>t.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),VS=(e,t,n={})=>{var r;if(!e.source||!e.target)return(r=n.onError)==null||r.call(n,"006",dn.error006()),t;const a=n.getEdgeId||IS;let l;return Mg(e)?l={...e}:l={...e,id:a(e)},US(l,t)?t:(l.sourceHandle===null&&delete l.sourceHandle,l.targetHandle===null&&delete l.targetHandle,t.concat(l))};function $g({sourceX:e,sourceY:t,targetX:n,targetY:a}){const[l,r,i,s]=Vg({sourceX:e,sourceY:t,targetX:n,targetY:a});return[`M ${e},${t}L ${n},${a}`,l,r,i,s]}const cm={[ne.Left]:{x:-1,y:0},[ne.Right]:{x:1,y:0},[ne.Top]:{x:0,y:-1},[ne.Bottom]:{x:0,y:1}},$S=({source:e,sourcePosition:t=ne.Bottom,target:n})=>t===ne.Left||t===ne.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},um=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function YS({source:e,sourcePosition:t=ne.Bottom,target:n,targetPosition:a=ne.Top,center:l,offset:r,stepPosition:i}){const s=cm[t],c=cm[a],u={x:e.x+s.x*r,y:e.y+s.y*r},d={x:n.x+c.x*r,y:n.y+c.y*r},f=$S({source:u,sourcePosition:t,target:d}),h=f.x!==0?"x":"y",m=f[h];let x=[],j,w;const p={x:0,y:0},y={x:0,y:0},[,,g,v]=Vg({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[h]*c[h]===-1){h==="x"?(j=l.x??u.x+(d.x-u.x)*i,w=l.y??(u.y+d.y)/2):(j=l.x??(u.x+d.x)/2,w=l.y??u.y+(d.y-u.y)*i);const C=[{x:j,y:u.y},{x:j,y:d.y}],B=[{x:u.x,y:w},{x:d.x,y:w}];s[h]===m?x=h==="x"?C:B:x=h==="x"?B:C}else{const C=[{x:u.x,y:d.y}],B=[{x:d.x,y:u.y}];if(h==="x"?x=s.x===m?B:C:x=s.y===m?C:B,t===a){const E=Math.abs(e[h]-n[h]);if(E<=r){const R=Math.min(r-1,r-E);s[h]===m?p[h]=(u[h]>e[h]?-1:1)*R:y[h]=(d[h]>n[h]?-1:1)*R}}if(t!==a){const E=h==="x"?"y":"x",R=s[h]===c[E],b=u[E]>d[E],N=u[E]<d[E];(s[h]===1&&(!R&&b||R&&N)||s[h]!==1&&(!R&&N||R&&b))&&(x=h==="x"?C:B)}const L={x:u.x+p.x,y:u.y+p.y},S={x:d.x+y.x,y:d.y+y.y},H=Math.max(Math.abs(L.x-x[0].x),Math.abs(S.x-x[0].x)),U=Math.max(Math.abs(L.y-x[0].y),Math.abs(S.y-x[0].y));H>=U?(j=(L.x+S.x)/2,w=x[0].y):(j=x[0].x,w=(L.y+S.y)/2)}const _={x:u.x+p.x,y:u.y+p.y},M={x:d.x+y.x,y:d.y+y.y};return[[e,..._.x!==x[0].x||_.y!==x[0].y?[_]:[],...x,...M.x!==x[x.length-1].x||M.y!==x[x.length-1].y?[M]:[],n],j,w,g,v]}function XS(e,t,n,a){const l=Math.min(um(e,t)/2,um(t,n)/2,a),{x:r,y:i}=t;if(e.x===r&&r===n.x||e.y===i&&i===n.y)return`L${r} ${i}`;if(e.y===i){const u=e.x<n.x?-1:1,d=e.y<n.y?1:-1;return`L ${r+l*u},${i}Q ${r},${i} ${r},${i+l*d}`}const s=e.x<n.x?1:-1,c=e.y<n.y?-1:1;return`L ${r},${i+l*c}Q ${r},${i} ${r+l*s},${i}`}function Uu({sourceX:e,sourceY:t,sourcePosition:n=ne.Bottom,targetX:a,targetY:l,targetPosition:r=ne.Top,borderRadius:i=5,centerX:s,centerY:c,offset:u=20,stepPosition:d=.5}){const[f,h,m,x,j]=YS({source:{x:e,y:t},sourcePosition:n,target:{x:a,y:l},targetPosition:r,center:{x:s,y:c},offset:u,stepPosition:d});let w=`M${f[0].x} ${f[0].y}`;for(let p=1;p<f.length-1;p++)w+=XS(f[p-1],f[p],f[p+1],i);return w+=`L${f[f.length-1].x} ${f[f.length-1].y}`,[w,h,m,x,j]}function dm(e){var t;return e&&!!(e.internals.handleBounds||(t=e.handles)!=null&&t.length)&&!!(e.measured.width||e.width||e.initialWidth)}function qS(e){var f;const{sourceNode:t,targetNode:n}=e;if(!dm(t)||!dm(n))return null;const a=t.internals.handleBounds||fm(t.handles),l=n.internals.handleBounds||fm(n.handles),r=hm((a==null?void 0:a.source)??[],e.sourceHandle),i=hm(e.connectionMode===Qa.Strict?(l==null?void 0:l.target)??[]:((l==null?void 0:l.target)??[]).concat((l==null?void 0:l.source)??[]),e.targetHandle);if(!r||!i)return(f=e.onError)==null||f.call(e,"008",dn.error008(r?"target":"source",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;const s=(r==null?void 0:r.position)||ne.Bottom,c=(i==null?void 0:i.position)||ne.Top,u=Wa(t,r,s),d=Wa(n,i,c);return{sourceX:u.x,sourceY:u.y,targetX:d.x,targetY:d.y,sourcePosition:s,targetPosition:c}}function fm(e){if(!e)return null;const t=[],n=[];for(const a of e)a.width=a.width??1,a.height=a.height??1,a.type==="source"?t.push(a):a.type==="target"&&n.push(a);return{source:t,target:n}}function Wa(e,t,n=ne.Left,a=!1){const l=((t==null?void 0:t.x)??0)+e.internals.positionAbsolute.x,r=((t==null?void 0:t.y)??0)+e.internals.positionAbsolute.y,{width:i,height:s}=t??Zn(e);if(a)return{x:l+i/2,y:r+s/2};switch((t==null?void 0:t.position)??n){case ne.Top:return{x:l+i/2,y:r};case ne.Right:return{x:l+i,y:r+s/2};case ne.Bottom:return{x:l+i/2,y:r+s};case ne.Left:return{x:l,y:r+s/2}}}function hm(e,t){return e&&(t?e.find(n=>n.id===t):e[0])||null}function Vu(e,t){return e?typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(a=>`${a}=${e[a]}`).join("&")}`:""}function FS(e,{id:t,defaultColor:n,defaultMarkerStart:a,defaultMarkerEnd:l}){const r=new Set;return e.reduce((i,s)=>([s.markerStart||a,s.markerEnd||l].forEach(c=>{if(c&&typeof c=="object"){const u=Vu(c,t);r.has(u)||(i.push({id:u,color:c.color||n,...c}),r.add(u))}}),i),[]).sort((i,s)=>i.id.localeCompare(s.id))}const Yg=1e3,GS=10,uf={nodeOrigin:[0,0],nodeExtent:oi,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},ZS={...uf,checkEquality:!0};function df(e,t){const n={...e};for(const a in t)t[a]!==void 0&&(n[a]=t[a]);return n}function QS(e,t,n){const a=df(uf,n);for(const l of e.values())if(l.parentId)hf(l,e,t,a);else{const r=Ci(l,a.nodeOrigin),i=Pa(l.extent)?l.extent:a.nodeExtent,s=Ka(r,i,Zn(l));l.internals.positionAbsolute=s}}function KS(e,t){if(!e.handles)return e.measured?t==null?void 0:t.internals.handleBounds:void 0;const n=[],a=[];for(const l of e.handles){const r={id:l.id,width:l.width??1,height:l.height??1,nodeId:e.id,x:l.x,y:l.y,position:l.position,type:l.type};l.type==="source"?n.push(r):l.type==="target"&&a.push(r)}return{source:n,target:a}}function ff(e){return e==="manual"}function $u(e,t,n,a={}){var d,f;const l=df(ZS,a),r={i:0},i=new Map(t),s=l!=null&&l.elevateNodesOnSelect&&!ff(l.zIndexMode)?Yg:0;let c=e.length>0,u=!1;t.clear(),n.clear();for(const h of e){let m=i.get(h.id);if(l.checkEquality&&h===(m==null?void 0:m.internals.userNode))t.set(h.id,m);else{const x=Ci(h,l.nodeOrigin),j=Pa(h.extent)?h.extent:l.nodeExtent,w=Ka(x,j,Zn(h));m={...l.defaults,...h,measured:{width:(d=h.measured)==null?void 0:d.width,height:(f=h.measured)==null?void 0:f.height},internals:{positionAbsolute:w,handleBounds:KS(h,m),z:Xg(h,s,l.zIndexMode),userNode:h}},t.set(h.id,m)}(m.measured===void 0||m.measured.width===void 0||m.measured.height===void 0)&&!m.hidden&&(c=!1),h.parentId&&hf(m,t,n,a,r),u||(u=h.selected??!1)}return{nodesInitialized:c,hasSelectedNodes:u}}function PS(e,t){if(!e.parentId)return;const n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function hf(e,t,n,a,l){const{elevateNodesOnSelect:r,nodeOrigin:i,nodeExtent:s,zIndexMode:c}=df(uf,a),u=e.parentId,d=t.get(u);if(!d){console.warn(`Parent node ${u} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}PS(e,n),l&&!d.parentId&&d.internals.rootParentIndex===void 0&&c==="auto"&&(d.internals.rootParentIndex=++l.i,d.internals.z=d.internals.z+l.i*GS),l&&d.internals.rootParentIndex!==void 0&&(l.i=d.internals.rootParentIndex);const f=r&&!ff(c)?Yg:0,{x:h,y:m,z:x}=WS(e,d,i,s,f,c),{positionAbsolute:j}=e.internals,w=h!==j.x||m!==j.y;(w||x!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:w?{x:h,y:m}:j,z:x}})}function Xg(e,t,n){const a=sn(e.zIndex)?e.zIndex:0;return ff(n)?a:a+(e.selected?t:0)}function WS(e,t,n,a,l,r){const{x:i,y:s}=t.internals.positionAbsolute,c=Zn(e),u=Ci(e,n),d=Pa(e.extent)?Ka(u,e.extent,c):u;let f=Ka({x:i+d.x,y:s+d.y},a,c);e.extent==="parent"&&(f=Tg(f,c,t));const h=Xg(e,l,r),m=t.internals.z??0;return{x:f.x,y:f.y,z:m>=h?m+1:h}}function mf(e,t,n,a=[0,0]){var i;const l=[],r=new Map;for(const s of e){const c=t.get(s.parentId);if(!c)continue;const u=((i=r.get(s.parentId))==null?void 0:i.expandedRect)??Pl(c),d=Dg(u,s.rect);r.set(s.parentId,{expandedRect:d,parent:c})}return r.size>0&&r.forEach(({expandedRect:s,parent:c},u)=>{var g;const d=c.internals.positionAbsolute,f=Zn(c),h=c.origin??a,m=s.x<d.x?Math.round(Math.abs(d.x-s.x)):0,x=s.y<d.y?Math.round(Math.abs(d.y-s.y)):0,j=Math.max(f.width,Math.round(s.width)),w=Math.max(f.height,Math.round(s.height)),p=(j-f.width)*h[0],y=(w-f.height)*h[1];(m>0||x>0||p||y)&&(l.push({id:u,type:"position",position:{x:c.position.x-m+p,y:c.position.y-x+y}}),(g=n.get(u))==null||g.forEach(v=>{e.some(_=>_.id===v.id)||l.push({id:v.id,type:"position",position:{x:v.position.x+m,y:v.position.y+x}})})),(f.width<s.width||f.height<s.height||m||x)&&l.push({id:u,type:"dimensions",setAttributes:!0,dimensions:{width:j+(m?h[0]*m-p:0),height:w+(x?h[1]*x-y:0)}})}),l}function JS(e,t,n,a,l,r,i){const s=a==null?void 0:a.querySelector(".xyflow__viewport");let c=!1;if(!s)return{changes:[],updatedInternals:c};const u=[],d=window.getComputedStyle(s),{m22:f}=new window.DOMMatrixReadOnly(d.transform),h=[];for(const m of e.values()){const x=t.get(m.id);if(!x)continue;if(x.hidden){t.set(x.id,{...x,internals:{...x.internals,handleBounds:void 0}}),c=!0;continue}const j=sf(m.nodeElement),w=x.measured.width!==j.width||x.measured.height!==j.height;if(!!(j.width&&j.height&&(w||!x.internals.handleBounds||m.force))){const y=m.nodeElement.getBoundingClientRect(),g=Pa(x.extent)?x.extent:r;let{positionAbsolute:v}=x.internals;x.parentId&&x.extent==="parent"?v=Tg(v,j,t.get(x.parentId)):g&&(v=Ka(v,g,j));const _={...x,measured:j,internals:{...x.internals,positionAbsolute:v,handleBounds:{source:om("source",m.nodeElement,y,f,x.id),target:om("target",m.nodeElement,y,f,x.id)}}};t.set(x.id,_),x.parentId&&hf(_,t,n,{nodeOrigin:l,zIndexMode:i}),c=!0,w&&(u.push({id:x.id,type:"dimensions",dimensions:j}),x.expandParent&&x.parentId&&h.push({id:x.id,parentId:x.parentId,rect:Pl(_,l)}))}}if(h.length>0){const m=mf(h,t,n,l);u.push(...m)}return{changes:u,updatedInternals:c}}async function e3({delta:e,panZoom:t,transform:n,translateExtent:a,width:l,height:r}){if(!t||!e.x&&!e.y)return!1;const i=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[l,r]],a);return!!i&&(i.x!==n[0]||i.y!==n[1]||i.k!==n[2])}function mm(e,t,n,a,l,r){let i=l;const s=a.get(i)||new Map;a.set(i,s.set(n,t)),i=`${l}-${e}`;const c=a.get(i)||new Map;if(a.set(i,c.set(n,t)),r){i=`${l}-${e}-${r}`;const u=a.get(i)||new Map;a.set(i,u.set(n,t))}}function qg(e,t,n){e.clear(),t.clear();for(const a of n){const{source:l,target:r,sourceHandle:i=null,targetHandle:s=null}=a,c={edgeId:a.id,source:l,target:r,sourceHandle:i,targetHandle:s},u=`${l}-${i}--${r}-${s}`,d=`${r}-${s}--${l}-${i}`;mm("source",c,d,e,l,i),mm("target",c,u,e,r,s),t.set(a.id,a)}}function Fg(e,t){if(!e.parentId)return!1;const n=t.get(e.parentId);return n?n.selected?!0:Fg(n,t):!1}function pm(e,t,n){var l;let a=e;do{if((l=a==null?void 0:a.matches)!=null&&l.call(a,t))return!0;if(a===n)return!1;a=a==null?void 0:a.parentElement}while(a);return!1}function t3(e,t,n,a){const l=new Map;for(const[r,i]of e)if((i.selected||i.id===a)&&(!i.parentId||!Fg(i,e))&&(i.draggable||t&&typeof i.draggable>"u")){const s=e.get(r);s&&l.set(r,{id:r,position:s.position||{x:0,y:0},distance:{x:n.x-s.internals.positionAbsolute.x,y:n.y-s.internals.positionAbsolute.y},extent:s.extent,parentId:s.parentId,origin:s.origin,expandParent:s.expandParent,internals:{positionAbsolute:s.internals.positionAbsolute||{x:0,y:0}},measured:{width:s.measured.width??0,height:s.measured.height??0}})}return l}function zc({nodeId:e,dragItems:t,nodeLookup:n,dragging:a=!0}){var i,s,c;const l=[];for(const[u,d]of t){const f=(i=n.get(u))==null?void 0:i.internals.userNode;f&&l.push({...f,position:d.position,dragging:a})}if(!e)return[l[0],l];const r=(s=n.get(e))==null?void 0:s.internals.userNode;return[r?{...r,position:((c=t.get(e))==null?void 0:c.position)||r.position,dragging:a}:l[0],l]}function n3({dragItems:e,snapGrid:t,x:n,y:a}){const l=e.values().next().value;if(!l)return null;const r={x:n-l.distance.x,y:a-l.distance.y},i=Mi(r,t);return{x:i.x-r.x,y:i.y-r.y}}function a3({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:a,onDragStop:l}){let r={x:null,y:null},i=0,s=new Map,c=!1,u={x:0,y:0},d=null,f=!1,h=null,m=!1,x=!1,j=null;function w({noDragClassName:y,handleSelector:g,domNode:v,isSelectable:_,nodeId:M,nodeClickDistance:z=0}){h=Tt(v);function C({x:H,y:U}){const{nodeLookup:E,nodeExtent:R,snapGrid:b,snapToGrid:N,nodeOrigin:T,onNodeDrag:D,onSelectionDrag:A,onError:O,updateNodePositions:V}=t();r={x:H,y:U};let Z=!1;const P=s.size>1,ae=P&&R?Iu(zi(s)):null,ue=P&&N?n3({dragItems:s,snapGrid:b,x:H,y:U}):null;for(const[le,q]of s){if(!E.has(le))continue;let W={x:H-q.distance.x,y:U-q.distance.y};N&&(W=ue?{x:Math.round(W.x+ue.x),y:Math.round(W.y+ue.y)}:Mi(W,b));let oe=null;if(P&&R&&!q.extent&&ae){const{positionAbsolute:ee}=q.internals,de=ee.x-ae.x+R[0][0],me=ee.x+q.measured.width-ae.x2+R[1][0],Y=ee.y-ae.y+R[0][1],ge=ee.y+q.measured.height-ae.y2+R[1][1];oe=[[de,Y],[me,ge]]}const{position:$,positionAbsolute:Q}=Ag({nodeId:le,nextPosition:W,nodeLookup:E,nodeExtent:oe||R,nodeOrigin:T,onError:O});Z=Z||q.position.x!==$.x||q.position.y!==$.y,q.position=$,q.internals.positionAbsolute=Q}if(x=x||Z,!!Z&&(V(s,!0),j&&(a||D||!M&&A))){const[le,q]=zc({nodeId:M,dragItems:s,nodeLookup:E});a==null||a(j,s,le,q),D==null||D(j,le,q),M||A==null||A(j,q)}}async function B(){if(!d)return;const{transform:H,panBy:U,autoPanSpeed:E,autoPanOnNodeDrag:R}=t();if(!R){c=!1,cancelAnimationFrame(i);return}const[b,N]=rf(u,d,E);(b!==0||N!==0)&&(r.x=(r.x??0)-b/H[2],r.y=(r.y??0)-N/H[2],await U({x:b,y:N})&&C(r)),i=requestAnimationFrame(B)}function L(H){var P;const{nodeLookup:U,multiSelectionActive:E,nodesDraggable:R,transform:b,snapGrid:N,snapToGrid:T,selectNodesOnDrag:D,onNodeDragStart:A,onSelectionDragStart:O,unselectNodesAndEdges:V}=t();f=!0,(!D||!_)&&!E&&M&&((P=U.get(M))!=null&&P.selected||V()),_&&D&&M&&(e==null||e(M));const Z=$r(H.sourceEvent,{transform:b,snapGrid:N,snapToGrid:T,containerBounds:d});if(r=Z,s=t3(U,R,Z,M),s.size>0&&(n||A||!M&&O)){const[ae,ue]=zc({nodeId:M,dragItems:s,nodeLookup:U});n==null||n(H.sourceEvent,s,ae,ue),A==null||A(H.sourceEvent,ae,ue),M||O==null||O(H.sourceEvent,ue)}}const S=ug().clickDistance(z).on("start",H=>{const{domNode:U,nodeDragThreshold:E,transform:R,snapGrid:b,snapToGrid:N}=t();d=(U==null?void 0:U.getBoundingClientRect())||null,m=!1,x=!1,j=H.sourceEvent,E===0&&L(H),r=$r(H.sourceEvent,{transform:R,snapGrid:b,snapToGrid:N,containerBounds:d}),u=cn(H.sourceEvent,d)}).on("drag",H=>{const{autoPanOnNodeDrag:U,transform:E,snapGrid:R,snapToGrid:b,nodeDragThreshold:N,nodeLookup:T}=t(),D=$r(H.sourceEvent,{transform:E,snapGrid:R,snapToGrid:b,containerBounds:d});if(j=H.sourceEvent,(H.sourceEvent.type==="touchmove"&&H.sourceEvent.touches.length>1||M&&!T.has(M))&&(m=!0),!m){if(!c&&U&&f&&(c=!0,B()),!f){const A=cn(H.sourceEvent,d),O=A.x-u.x,V=A.y-u.y;Math.sqrt(O*O+V*V)>N&&L(H)}(r.x!==D.xSnapped||r.y!==D.ySnapped)&&s&&f&&(u=cn(H.sourceEvent,d),C(D))}}).on("end",H=>{if(!f||m){m&&s.size>0&&t().updateNodePositions(s,!1);return}if(c=!1,f=!1,cancelAnimationFrame(i),s.size>0){const{nodeLookup:U,updateNodePositions:E,onNodeDragStop:R,onSelectionDragStop:b}=t();if(x&&(E(s,!1),x=!1),l||R||!M&&b){const[N,T]=zc({nodeId:M,dragItems:s,nodeLookup:U,dragging:!1});l==null||l(H.sourceEvent,s,N,T),R==null||R(H.sourceEvent,N,T),M||b==null||b(H.sourceEvent,T)}}}).filter(H=>{const U=H.target;return!H.button&&(!y||!pm(U,`.${y}`,v))&&(!g||pm(U,g,v))});h.call(S)}function p(){h==null||h.on(".drag",null)}return{update:w,destroy:p}}function l3(e,t,n){const a=[],l={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const r of t.values())si(l,Pl(r))>0&&a.push(r);return a}const r3=250;function i3(e,t,n,a){var s,c;let l=[],r=1/0;const i=l3(e,n,t+r3);for(const u of i){const d=[...((s=u.internals.handleBounds)==null?void 0:s.source)??[],...((c=u.internals.handleBounds)==null?void 0:c.target)??[]];for(const f of d){if(a.nodeId===f.nodeId&&a.type===f.type&&a.id===f.id)continue;const{x:h,y:m}=Wa(u,f,f.position,!0),x=Math.sqrt(Math.pow(h-e.x,2)+Math.pow(m-e.y,2));x>t||(x<r?(l=[{...f,x:h,y:m}],r=x):x===r&&l.push({...f,x:h,y:m}))}}if(!l.length)return null;if(l.length>1){const u=a.type==="source"?"target":"source";return l.find(d=>d.type===u)??l[0]}return l[0]}function Gg(e,t,n,a,l,r=!1){var u,d,f;const i=a.get(e);if(!i)return null;const s=l==="strict"?(u=i.internals.handleBounds)==null?void 0:u[t]:[...((d=i.internals.handleBounds)==null?void 0:d.source)??[],...((f=i.internals.handleBounds)==null?void 0:f.target)??[]],c=(n?s==null?void 0:s.find(h=>h.id===n):s==null?void 0:s[0])??null;return c&&r?{...c,...Wa(i,c,c.position,!0)}:c}function Zg(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function o3(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}const Qg=()=>!0;function s3(e,{connectionMode:t,connectionRadius:n,handleId:a,nodeId:l,edgeUpdaterType:r,isTarget:i,domNode:s,nodeLookup:c,lib:u,autoPanOnConnect:d,flowId:f,panBy:h,cancelConnection:m,onConnectStart:x,onConnect:j,onConnectEnd:w,isValidConnection:p=Qg,onReconnectEnd:y,updateConnection:g,getTransform:v,getFromHandle:_,autoPanSpeed:M,dragThreshold:z=1,handleDomNode:C}){const B=Lg(e.target);let L=0,S;const{x:H,y:U}=cn(e),E=Zg(r,C),R=s==null?void 0:s.getBoundingClientRect();let b=!1;if(!R||!E)return;const N=Gg(l,E,a,c,t);if(!N)return;let T=cn(e,R),D=!1,A=null,O=!1,V=null;function Z(){if(!d||!R)return;const[$,Q]=rf(T,R,M);h({x:$,y:Q}),L=requestAnimationFrame(Z)}const P={...N,nodeId:l,type:E,position:N.position},ae=c.get(l);let le={inProgress:!0,isValid:null,from:Wa(ae,P,ne.Left,!0),fromHandle:P,fromPosition:P.position,fromNode:ae,to:T,toHandle:null,toPosition:am[P.position],toNode:null,pointer:T};function q(){b=!0,g(le),x==null||x(e,{nodeId:l,handleId:a,handleType:E})}z===0&&q();function W($){if(!b){const{x:ge,y:Je}=cn($),it=ge-H,Fe=Je-U;if(!(it*it+Fe*Fe>z*z))return;q()}if(!_()||!P){oe($);return}const Q=v();T=cn($,R),S=i3(hr(T,Q,!1,[1,1]),n,c,P),D||(Z(),D=!0);const ee=Kg($,{handle:S,connectionMode:t,fromNodeId:l,fromHandleId:a,fromType:i?"target":"source",isValidConnection:p,doc:B,lib:u,flowId:f,nodeLookup:c});V=ee.handleDomNode,A=ee.connection,O=o3(!!S,ee.isValid);const de=c.get(l),me=de?Wa(de,P,ne.Left,!0):le.from,Y={...le,from:me,isValid:O,to:ee.toHandle&&O?Wl({x:ee.toHandle.x,y:ee.toHandle.y},Q):T,toHandle:ee.toHandle,toPosition:O&&ee.toHandle?ee.toHandle.position:am[P.position],toNode:ee.toHandle?c.get(ee.toHandle.nodeId):null,pointer:T};g(Y),le=Y}function oe($){if(!("touches"in $&&$.touches.length>0)){if(b){(S||V)&&A&&O&&(j==null||j(A));const{inProgress:Q,...ee}=le,de={...ee,toPosition:le.toHandle?le.toPosition:null};w==null||w($,de),r&&(y==null||y($,de))}m(),cancelAnimationFrame(L),D=!1,O=!1,A=null,V=null,B.removeEventListener("mousemove",W),B.removeEventListener("mouseup",oe),B.removeEventListener("touchmove",W),B.removeEventListener("touchend",oe)}}B.addEventListener("mousemove",W),B.addEventListener("mouseup",oe),B.addEventListener("touchmove",W),B.addEventListener("touchend",oe)}function Kg(e,{handle:t,connectionMode:n,fromNodeId:a,fromHandleId:l,fromType:r,doc:i,lib:s,flowId:c,isValidConnection:u=Qg,nodeLookup:d}){const f=r==="target",h=t?i.querySelector(`.${s}-flow__handle[data-id="${c}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:m,y:x}=cn(e),j=i.elementFromPoint(m,x),w=j!=null&&j.classList.contains(`${s}-flow__handle`)?j:h,p={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const y=Zg(void 0,w),g=w.getAttribute("data-nodeid"),v=w.getAttribute("data-handleid"),_=w.classList.contains("connectable"),M=w.classList.contains("connectableend");if(!g||!y)return p;const z={source:f?g:a,sourceHandle:f?v:l,target:f?a:g,targetHandle:f?l:v};p.connection=z;const B=_&&M&&(n===Qa.Strict?f&&y==="source"||!f&&y==="target":g!==a||v!==l);p.isValid=B&&u(z),p.toHandle=Gg(g,y,v,d,n,!0)}return p}const Yu={onPointerDown:s3,isValid:Kg};function c3({domNode:e,panZoom:t,getTransform:n,getViewScale:a}){const l=Tt(e);function r({translateExtent:s,width:c,height:u,zoomStep:d=1,pannable:f=!0,zoomable:h=!0,inversePan:m=!1}){const x=g=>{if(g.sourceEvent.type!=="wheel"||!t)return;const v=n(),_=g.sourceEvent.ctrlKey&&ci()?10:1,M=-g.sourceEvent.deltaY*(g.sourceEvent.deltaMode===1?.05:g.sourceEvent.deltaMode?1:.002)*d,z=v[2]*Math.pow(2,M*_);t.scaleTo(z)};let j=[0,0];const w=g=>{(g.sourceEvent.type==="mousedown"||g.sourceEvent.type==="touchstart")&&(j=[g.sourceEvent.clientX??g.sourceEvent.touches[0].clientX,g.sourceEvent.clientY??g.sourceEvent.touches[0].clientY])},p=g=>{const v=n();if(g.sourceEvent.type!=="mousemove"&&g.sourceEvent.type!=="touchmove"||!t)return;const _=[g.sourceEvent.clientX??g.sourceEvent.touches[0].clientX,g.sourceEvent.clientY??g.sourceEvent.touches[0].clientY],M=[_[0]-j[0],_[1]-j[1]];j=_;const z=a()*Math.max(v[2],Math.log(v[2]))*(m?-1:1),C={x:v[0]-M[0]*z,y:v[1]-M[1]*z},B=[[0,0],[c,u]];t.setViewportConstrained({x:C.x,y:C.y,zoom:v[2]},B,s)},y=Eg().on("start",w).on("zoom",f?p:null).on("zoom.wheel",h?x:null);l.call(y,{})}function i(){l.on("zoom",null)}return{update:r,destroy:i,pointer:an}}const Us=e=>({x:e.x,y:e.y,zoom:e.k}),Mc=({x:e,y:t,zoom:n})=>Ls.translate(e,t).scale(n),Nl=(e,t)=>e.target.closest(`.${t}`),Pg=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),u3=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,Ac=(e,t=0,n=u3,a=()=>{})=>{const l=typeof t=="number"&&t>0;return l||a(),l?e.transition().duration(t).ease(n).on("end",a):e},Wg=e=>{const t=e.ctrlKey&&ci()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function d3({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:a,panOnScrollMode:l,panOnScrollSpeed:r,zoomOnPinch:i,onPanZoomStart:s,onPanZoom:c,onPanZoomEnd:u}){return d=>{if(Nl(d,t))return d.ctrlKey&&d.preventDefault(),!1;d.preventDefault(),d.stopImmediatePropagation();const f=n.property("__zoom").k||1;if(d.ctrlKey&&i){const w=an(d),p=Wg(d),y=f*Math.pow(2,p);a.scaleTo(n,y,w,d);return}const h=d.deltaMode===1?20:1;let m=l===Ua.Vertical?0:d.deltaX*h,x=l===Ua.Horizontal?0:d.deltaY*h;!ci()&&d.shiftKey&&l!==Ua.Vertical&&(m=d.deltaY*h,x=0),a.translateBy(n,-(m/f)*r,-(x/f)*r,{internal:!0});const j=Us(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(c==null||c(d,j),e.panScrollTimeout=setTimeout(()=>{u==null||u(d,j),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,s==null||s(d,j))}}function f3({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(a,l){const r=a.type==="wheel",i=!t&&r&&!a.ctrlKey,s=Nl(a,e);if(a.ctrlKey&&r&&s&&a.preventDefault(),i||s)return null;a.preventDefault(),n.call(this,a,l)}}function h3({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return a=>{var r,i,s;if((r=a.sourceEvent)!=null&&r.internal)return;const l=Us(a.transform);e.mouseButton=((i=a.sourceEvent)==null?void 0:i.button)||0,e.isZoomingOrPanning=!0,e.prevViewport=l,((s=a.sourceEvent)==null?void 0:s.type)==="mousedown"&&t(!0),n&&(n==null||n(a.sourceEvent,l))}}function m3({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:a,onPanZoom:l}){return r=>{var i,s;e.usedRightMouseButton=!!(n&&Pg(t,e.mouseButton??0)),(i=r.sourceEvent)!=null&&i.sync||a([r.transform.x,r.transform.y,r.transform.k]),l&&!((s=r.sourceEvent)!=null&&s.internal)&&(l==null||l(r.sourceEvent,Us(r.transform)))}}function p3({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:a,onPanZoomEnd:l,onPaneContextMenu:r}){return i=>{var s;if(!((s=i.sourceEvent)!=null&&s.internal)&&(e.isZoomingOrPanning=!1,r&&Pg(t,e.mouseButton??0)&&!e.usedRightMouseButton&&i.sourceEvent&&r(i.sourceEvent),e.usedRightMouseButton=!1,a(!1),l)){const c=Us(i.transform);e.prevViewport=c,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{l==null||l(i.sourceEvent,c)},n?150:0)}}}function g3({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:a,panOnScroll:l,zoomOnDoubleClick:r,userSelectionActive:i,noWheelClassName:s,noPanClassName:c,lib:u,connectionInProgress:d}){return f=>{var w;const h=e||t,m=n&&f.ctrlKey,x=f.type==="wheel";if(f.button===1&&f.type==="mousedown"&&(Nl(f,`${u}-flow__node`)||Nl(f,`${u}-flow__edge`)))return!0;if(!a&&!h&&!l&&!r&&!n||i||d&&!x||Nl(f,s)&&x||Nl(f,c)&&(!x||l&&x&&!e)||!n&&f.ctrlKey&&x)return!1;if(!n&&f.type==="touchstart"&&((w=f.touches)==null?void 0:w.length)>1)return f.preventDefault(),!1;if(!h&&!l&&!m&&x||!a&&(f.type==="mousedown"||f.type==="touchstart")||Array.isArray(a)&&!a.includes(f.button)&&f.type==="mousedown")return!1;const j=Array.isArray(a)&&a.includes(f.button)||!f.button||f.button<=1;return(!f.ctrlKey||x)&&j}}function x3({domNode:e,minZoom:t,maxZoom:n,translateExtent:a,viewport:l,onPanZoom:r,onPanZoomStart:i,onPanZoomEnd:s,onDraggingChange:c}){const u={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},d=e.getBoundingClientRect(),f=Eg().scaleExtent([t,n]).translateExtent(a),h=Tt(e).call(f);y({x:l.x,y:l.y,zoom:Kl(l.zoom,t,n)},[[0,0],[d.width,d.height]],a);const m=h.on("wheel.zoom"),x=h.on("dblclick.zoom");f.wheelDelta(Wg);async function j(S,H){return h?new Promise(U=>{f==null||f.interpolate((H==null?void 0:H.interpolate)==="linear"?Vr:Eo).transform(Ac(h,H==null?void 0:H.duration,H==null?void 0:H.ease,()=>U(!0)),S)}):!1}function w({noWheelClassName:S,noPanClassName:H,onPaneContextMenu:U,userSelectionActive:E,panOnScroll:R,panOnDrag:b,panOnScrollMode:N,panOnScrollSpeed:T,preventScrolling:D,zoomOnPinch:A,zoomOnScroll:O,zoomOnDoubleClick:V,zoomActivationKeyPressed:Z,lib:P,onTransformChange:ae,connectionInProgress:ue,paneClickDistance:le,selectionOnDrag:q}){E&&!u.isZoomingOrPanning&&p();const W=R&&!Z&&!E;f.clickDistance(q?1/0:!sn(le)||le<0?0:le);const oe=W?d3({zoomPanValues:u,noWheelClassName:S,d3Selection:h,d3Zoom:f,panOnScrollMode:N,panOnScrollSpeed:T,zoomOnPinch:A,onPanZoomStart:i,onPanZoom:r,onPanZoomEnd:s}):f3({noWheelClassName:S,preventScrolling:D,d3ZoomHandler:m});h.on("wheel.zoom",oe,{passive:!1});const $=h3({zoomPanValues:u,onDraggingChange:c,onPanZoomStart:i});f.on("start",$);const Q=m3({zoomPanValues:u,panOnDrag:b,onPaneContextMenu:!!U,onPanZoom:r,onTransformChange:ae});f.on("zoom",Q);const ee=p3({zoomPanValues:u,panOnDrag:b,panOnScroll:R,onPaneContextMenu:U,onPanZoomEnd:s,onDraggingChange:c});f.on("end",ee);const de=g3({zoomActivationKeyPressed:Z,panOnDrag:b,zoomOnScroll:O,panOnScroll:R,zoomOnDoubleClick:V,zoomOnPinch:A,userSelectionActive:E,noPanClassName:H,noWheelClassName:S,lib:P,connectionInProgress:ue});f.filter(de),V?h.on("dblclick.zoom",x):h.on("dblclick.zoom",null)}function p(){f.on("zoom",null)}async function y(S,H,U){const E=Mc(S),R=f==null?void 0:f.constrain()(E,H,U);return R&&await j(R),R}async function g(S,H){const U=Mc(S);return await j(U,H),U}function v(S){if(h){const H=Mc(S),U=h.property("__zoom");(U.k!==S.zoom||U.x!==S.x||U.y!==S.y)&&(f==null||f.transform(h,H,null,{sync:!0}))}}function _(){const S=h?Sg(h.node()):{x:0,y:0,k:1};return{x:S.x,y:S.y,zoom:S.k}}async function M(S,H){return h?new Promise(U=>{f==null||f.interpolate((H==null?void 0:H.interpolate)==="linear"?Vr:Eo).scaleTo(Ac(h,H==null?void 0:H.duration,H==null?void 0:H.ease,()=>U(!0)),S)}):!1}async function z(S,H){return h?new Promise(U=>{f==null||f.interpolate((H==null?void 0:H.interpolate)==="linear"?Vr:Eo).scaleBy(Ac(h,H==null?void 0:H.duration,H==null?void 0:H.ease,()=>U(!0)),S)}):!1}function C(S){f==null||f.scaleExtent(S)}function B(S){f==null||f.translateExtent(S)}function L(S){const H=!sn(S)||S<0?0:S;f==null||f.clickDistance(H)}return{update:w,destroy:p,setViewport:g,setViewportConstrained:y,getViewport:_,scaleTo:M,scaleBy:z,setScaleExtent:C,setTranslateExtent:B,syncViewport:v,setClickDistance:L}}var Ja;(function(e){e.Line="line",e.Handle="handle"})(Ja||(Ja={}));const y3=["top-left","top-right","bottom-left","bottom-right"],v3=["top","right","bottom","left"];function b3({width:e,prevWidth:t,height:n,prevHeight:a,affectsX:l,affectsY:r}){const i=e-t,s=n-a,c=[i>0?1:i<0?-1:0,s>0?1:s<0?-1:0];return i&&l&&(c[0]=c[0]*-1),s&&r&&(c[1]=c[1]*-1),c}function gm(e){const t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),a=e.includes("left"),l=e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:a,affectsY:l}}function Wn(e,t){return Math.max(0,t-e)}function Jn(e,t){return Math.max(0,e-t)}function ao(e,t,n){return Math.max(0,t-e,e-n)}function xm(e,t){return e?!t:t}function w3(e,t,n,a,l,r,i,s){let{affectsX:c,affectsY:u}=t;const{isHorizontal:d,isVertical:f}=t,h=d&&f,{xSnapped:m,ySnapped:x}=n,{minWidth:j,maxWidth:w,minHeight:p,maxHeight:y}=a,{x:g,y:v,width:_,height:M,aspectRatio:z}=e;let C=Math.floor(d?m-e.pointerX:0),B=Math.floor(f?x-e.pointerY:0);const L=_+(c?-C:C),S=M+(u?-B:B),H=-r[0]*_,U=-r[1]*M;let E=ao(L,j,w),R=ao(S,p,y);if(i){let T=0,D=0;c&&C<0?T=Wn(g+C+H,i[0][0]):!c&&C>0&&(T=Jn(g+L+H,i[1][0])),u&&B<0?D=Wn(v+B+U,i[0][1]):!u&&B>0&&(D=Jn(v+S+U,i[1][1])),E=Math.max(E,T),R=Math.max(R,D)}if(s){let T=0,D=0;c&&C>0?T=Jn(g+C,s[0][0]):!c&&C<0&&(T=Wn(g+L,s[1][0])),u&&B>0?D=Jn(v+B,s[0][1]):!u&&B<0&&(D=Wn(v+S,s[1][1])),E=Math.max(E,T),R=Math.max(R,D)}if(l){if(d){const T=ao(L/z,p,y)*z;if(E=Math.max(E,T),i){let D=0;!c&&!u||c&&!u&&h?D=Jn(v+U+L/z,i[1][1])*z:D=Wn(v+U+(c?C:-C)/z,i[0][1])*z,E=Math.max(E,D)}if(s){let D=0;!c&&!u||c&&!u&&h?D=Wn(v+L/z,s[1][1])*z:D=Jn(v+(c?C:-C)/z,s[0][1])*z,E=Math.max(E,D)}}if(f){const T=ao(S*z,j,w)/z;if(R=Math.max(R,T),i){let D=0;!c&&!u||u&&!c&&h?D=Jn(g+S*z+H,i[1][0])/z:D=Wn(g+(u?B:-B)*z+H,i[0][0])/z,R=Math.max(R,D)}if(s){let D=0;!c&&!u||u&&!c&&h?D=Wn(g+S*z,s[1][0])/z:D=Jn(g+(u?B:-B)*z,s[0][0])/z,R=Math.max(R,D)}}}B=B+(B<0?R:-R),C=C+(C<0?E:-E),l&&(h?L>S*z?B=(xm(c,u)?-C:C)/z:C=(xm(c,u)?-B:B)*z:d?(B=C/z,u=c):(C=B*z,c=u));const b=c?g+C:g,N=u?v+B:v;return{width:_+(c?-C:C),height:M+(u?-B:B),x:r[0]*C*(c?-1:1)+b,y:r[1]*B*(u?-1:1)+N}}const Jg={width:0,height:0,x:0,y:0},j3={...Jg,pointerX:0,pointerY:0,aspectRatio:1};function N3(e,t,n){const a=t.position.x+e.position.x,l=t.position.y+e.position.y,r=e.measured.width??0,i=e.measured.height??0,s=n[0]*r,c=n[1]*i;return[[a-s,l-c],[a+r-s,l+i-c]]}function S3({domNode:e,nodeId:t,getStoreItems:n,onChange:a,onEnd:l}){const r=Tt(e);let i={controlDirection:gm("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function s({controlPosition:u,boundaries:d,keepAspectRatio:f,resizeDirection:h,onResizeStart:m,onResize:x,onResizeEnd:j,shouldResize:w}){let p={...Jg},y={...j3};i={boundaries:d,resizeDirection:h,keepAspectRatio:f,controlDirection:gm(u)};let g,v=null,_=[],M,z,C,B=!1;const L=ug().on("start",S=>{const{nodeLookup:H,transform:U,snapGrid:E,snapToGrid:R,nodeOrigin:b,paneDomNode:N}=n();if(g=H.get(t),!g)return;v=(N==null?void 0:N.getBoundingClientRect())??null;const{xSnapped:T,ySnapped:D}=$r(S.sourceEvent,{transform:U,snapGrid:E,snapToGrid:R,containerBounds:v});p={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},y={...p,pointerX:T,pointerY:D,aspectRatio:p.width/p.height},M=void 0,z=Pa(g.extent)?g.extent:void 0,g.parentId&&(g.extent==="parent"||g.expandParent)&&(M=H.get(g.parentId)),M&&g.extent==="parent"&&(z=[[0,0],[M.measured.width,M.measured.height]]),_=[],C=void 0;for(const[A,O]of H)if(O.parentId===t&&(_.push({id:A,position:{...O.position},extent:O.extent}),O.extent==="parent"||O.expandParent)){const V=N3(O,g,O.origin??b);C?C=[[Math.min(V[0][0],C[0][0]),Math.min(V[0][1],C[0][1])],[Math.max(V[1][0],C[1][0]),Math.max(V[1][1],C[1][1])]]:C=V}m==null||m(S,{...p})}).on("drag",S=>{const{transform:H,snapGrid:U,snapToGrid:E,nodeOrigin:R}=n(),b=$r(S.sourceEvent,{transform:H,snapGrid:U,snapToGrid:E,containerBounds:v}),N=[];if(!g)return;const{x:T,y:D,width:A,height:O}=p,V={},Z=g.origin??R,{width:P,height:ae,x:ue,y:le}=w3(y,i.controlDirection,b,i.boundaries,i.keepAspectRatio,Z,z,C),q=P!==A,W=ae!==O,oe=ue!==T&&q,$=le!==D&&W;if(!oe&&!$&&!q&&!W)return;if((oe||$||Z[0]===1||Z[1]===1)&&(V.x=oe?ue:p.x,V.y=$?le:p.y,p.x=V.x,p.y=V.y,_.length>0)){const me=ue-T,Y=le-D;for(const ge of _)ge.position={x:ge.position.x-me+Z[0]*(P-A),y:ge.position.y-Y+Z[1]*(ae-O)},N.push(ge)}if((q||W)&&(V.width=q&&(!i.resizeDirection||i.resizeDirection==="horizontal")?P:p.width,V.height=W&&(!i.resizeDirection||i.resizeDirection==="vertical")?ae:p.height,p.width=V.width,p.height=V.height),M&&g.expandParent){const me=Z[0]*(V.width??0);V.x&&V.x<me&&(p.x=me,y.x=y.x-(V.x-me));const Y=Z[1]*(V.height??0);V.y&&V.y<Y&&(p.y=Y,y.y=y.y-(V.y-Y))}const Q=b3({width:p.width,prevWidth:A,height:p.height,prevHeight:O,affectsX:i.controlDirection.affectsX,affectsY:i.controlDirection.affectsY}),ee={...p,direction:Q};(w==null?void 0:w(S,ee))!==!1&&(B=!0,x==null||x(S,ee),a(V,N))}).on("end",S=>{B&&(j==null||j(S,{...p}),l==null||l({...p}),B=!1)});r.call(L)}function c(){r.on(".drag",null)}return{update:s,destroy:c}}var ex={exports:{}},tx={},nx={exports:{}},ax={};/**
18
+ * @license React
19
+ * use-sync-external-store-shim.production.js
20
+ *
21
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */var Jl=k;function E3(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var k3=typeof Object.is=="function"?Object.is:E3,_3=Jl.useState,C3=Jl.useEffect,z3=Jl.useLayoutEffect,M3=Jl.useDebugValue;function A3(e,t){var n=t(),a=_3({inst:{value:n,getSnapshot:t}}),l=a[0].inst,r=a[1];return z3(function(){l.value=n,l.getSnapshot=t,Tc(l)&&r({inst:l})},[e,n,t]),C3(function(){return Tc(l)&&r({inst:l}),e(function(){Tc(l)&&r({inst:l})})},[e]),M3(n),n}function Tc(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!k3(e,n)}catch{return!0}}function T3(e,t){return t()}var D3=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?T3:A3;ax.useSyncExternalStore=Jl.useSyncExternalStore!==void 0?Jl.useSyncExternalStore:D3;nx.exports=ax;var O3=nx.exports;/**
26
+ * @license React
27
+ * use-sync-external-store-shim/with-selector.production.js
28
+ *
29
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
30
+ *
31
+ * This source code is licensed under the MIT license found in the
32
+ * LICENSE file in the root directory of this source tree.
33
+ */var Vs=k,B3=O3;function R3(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var L3=typeof Object.is=="function"?Object.is:R3,H3=B3.useSyncExternalStore,I3=Vs.useRef,U3=Vs.useEffect,V3=Vs.useMemo,$3=Vs.useDebugValue;tx.useSyncExternalStoreWithSelector=function(e,t,n,a,l){var r=I3(null);if(r.current===null){var i={hasValue:!1,value:null};r.current=i}else i=r.current;r=V3(function(){function c(m){if(!u){if(u=!0,d=m,m=a(m),l!==void 0&&i.hasValue){var x=i.value;if(l(x,m))return f=x}return f=m}if(x=f,L3(d,m))return x;var j=a(m);return l!==void 0&&l(x,j)?(d=m,x):(d=m,f=j)}var u=!1,d,f,h=n===void 0?null:n;return[function(){return c(t())},h===null?void 0:function(){return c(h())}]},[t,n,a,l]);var s=H3(e,r[0],r[1]);return U3(function(){i.hasValue=!0,i.value=s},[s]),$3(s),s};ex.exports=tx;var Y3=ex.exports;const X3=Op(Y3),q3={},ym=e=>{let t;const n=new Set,a=(d,f)=>{const h=typeof d=="function"?d(t):d;if(!Object.is(h,t)){const m=t;t=f??(typeof h!="object"||h===null)?h:Object.assign({},t,h),n.forEach(x=>x(t,m))}},l=()=>t,c={setState:a,getState:l,getInitialState:()=>u,subscribe:d=>(n.add(d),()=>n.delete(d)),destroy:()=>{(q3?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},u=t=e(a,l,c);return c},F3=e=>e?ym(e):ym,{useDebugValue:G3}=Dr,{useSyncExternalStoreWithSelector:Z3}=X3,Q3=e=>e;function lx(e,t=Q3,n){const a=Z3(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return G3(a),a}const vm=(e,t)=>{const n=F3(e),a=(l,r=t)=>lx(n,l,r);return Object.assign(a,n),a},K3=(e,t)=>e?vm(e,t):vm;function He(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[a,l]of e)if(!Object.is(l,t.get(a)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const a of e)if(!t.has(a))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const a of n)if(!Object.prototype.hasOwnProperty.call(t,a)||!Object.is(e[a],t[a]))return!1;return!0}var rx={exports:{}},gt={};/**
34
+ * @license React
35
+ * react-dom.production.js
36
+ *
37
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
38
+ *
39
+ * This source code is licensed under the MIT license found in the
40
+ * LICENSE file in the root directory of this source tree.
41
+ */var P3=k;function ix(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function ea(){}var pt={d:{f:ea,r:function(){throw Error(ix(522))},D:ea,C:ea,L:ea,m:ea,X:ea,S:ea,M:ea},p:0,findDOMNode:null},W3=Symbol.for("react.portal");function J3(e,t,n){var a=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:W3,key:a==null?null:""+a,children:e,containerInfo:t,implementation:n}}var Yr=P3.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function $s(e,t){if(e==="font")return"";if(typeof t=="string")return t==="use-credentials"?t:""}gt.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=pt;gt.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(ix(299));return J3(e,t,null,n)};gt.flushSync=function(e){var t=Yr.T,n=pt.p;try{if(Yr.T=null,pt.p=2,e)return e()}finally{Yr.T=t,pt.p=n,pt.d.f()}};gt.preconnect=function(e,t){typeof e=="string"&&(t?(t=t.crossOrigin,t=typeof t=="string"?t==="use-credentials"?t:"":void 0):t=null,pt.d.C(e,t))};gt.prefetchDNS=function(e){typeof e=="string"&&pt.d.D(e)};gt.preinit=function(e,t){if(typeof e=="string"&&t&&typeof t.as=="string"){var n=t.as,a=$s(n,t.crossOrigin),l=typeof t.integrity=="string"?t.integrity:void 0,r=typeof t.fetchPriority=="string"?t.fetchPriority:void 0;n==="style"?pt.d.S(e,typeof t.precedence=="string"?t.precedence:void 0,{crossOrigin:a,integrity:l,fetchPriority:r}):n==="script"&&pt.d.X(e,{crossOrigin:a,integrity:l,fetchPriority:r,nonce:typeof t.nonce=="string"?t.nonce:void 0})}};gt.preinitModule=function(e,t){if(typeof e=="string")if(typeof t=="object"&&t!==null){if(t.as==null||t.as==="script"){var n=$s(t.as,t.crossOrigin);pt.d.M(e,{crossOrigin:n,integrity:typeof t.integrity=="string"?t.integrity:void 0,nonce:typeof t.nonce=="string"?t.nonce:void 0})}}else t==null&&pt.d.M(e)};gt.preload=function(e,t){if(typeof e=="string"&&typeof t=="object"&&t!==null&&typeof t.as=="string"){var n=t.as,a=$s(n,t.crossOrigin);pt.d.L(e,n,{crossOrigin:a,integrity:typeof t.integrity=="string"?t.integrity:void 0,nonce:typeof t.nonce=="string"?t.nonce:void 0,type:typeof t.type=="string"?t.type:void 0,fetchPriority:typeof t.fetchPriority=="string"?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy=="string"?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet=="string"?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes=="string"?t.imageSizes:void 0,media:typeof t.media=="string"?t.media:void 0})}};gt.preloadModule=function(e,t){if(typeof e=="string")if(t){var n=$s(t.as,t.crossOrigin);pt.d.m(e,{as:typeof t.as=="string"&&t.as!=="script"?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity=="string"?t.integrity:void 0})}else pt.d.m(e)};gt.requestFormReset=function(e){pt.d.r(e)};gt.unstable_batchedUpdates=function(e,t){return e(t)};gt.useFormState=function(e,t,n){return Yr.H.useFormState(e,t,n)};gt.useFormStatus=function(){return Yr.H.useHostTransitionStatus()};gt.version="19.2.7";function ox(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(ox)}catch(e){console.error(e)}}ox(),rx.exports=gt;var pf=rx.exports;const Ys=k.createContext(null),e4=Ys.Provider,sx=dn.error001("react");function Ne(e,t){const n=k.useContext(Ys);if(n===null)throw new Error(sx);return lx(n,e,t)}function Re(){const e=k.useContext(Ys);if(e===null)throw new Error(sx);return k.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const bm={display:"none"},t4={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},cx="react-flow__node-desc",ux="react-flow__edge-desc",n4="react-flow__aria-live",a4=e=>e.ariaLiveMessage,l4=e=>e.ariaLabelConfig;function r4({rfId:e}){const t=Ne(a4);return o.jsx("div",{id:`${n4}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:t4,children:t})}function i4({rfId:e,disableKeyboardA11y:t}){const n=Ne(l4);return o.jsxs(o.Fragment,{children:[o.jsx("div",{id:`${cx}-${e}`,style:bm,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),o.jsx("div",{id:`${ux}-${e}`,style:bm,children:n["edge.a11yDescription.default"]}),!t&&o.jsx(r4,{rfId:e})]})}const Xs=k.forwardRef(({position:e="top-left",children:t,className:n,style:a,...l},r)=>{const i=`${e}`.split("-");return o.jsx("div",{className:We(["react-flow__panel",n,...i]),style:a,ref:r,...l,children:t})});Xs.displayName="Panel";function o4({proOptions:e,position:t="bottom-right"}){return e!=null&&e.hideAttribution?null:o.jsx(Xs,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:o.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const s4=e=>{const t=[],n=[];for(const[,a]of e.nodeLookup)a.selected&&t.push(a.internals.userNode);for(const[,a]of e.edgeLookup)a.selected&&n.push(a);return{selectedNodes:t,selectedEdges:n}},lo=e=>e.id;function c4(e,t){return He(e.selectedNodes.map(lo),t.selectedNodes.map(lo))&&He(e.selectedEdges.map(lo),t.selectedEdges.map(lo))}function u4({onSelectionChange:e}){const t=Re(),{selectedNodes:n,selectedEdges:a}=Ne(s4,c4);return k.useEffect(()=>{const l={nodes:n,edges:a};e==null||e(l),t.getState().onSelectionChangeHandlers.forEach(r=>r(l))},[n,a,e]),null}const d4=e=>!!e.onSelectionChangeHandlers;function f4({onSelectionChange:e}){const t=Ne(d4);return e||t?o.jsx(u4,{onSelectionChange:e}):null}const dx=[0,0],h4={x:0,y:0,zoom:1},m4=["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"],wm=[...m4,"rfId"],p4=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),jm={translateExtent:oi,nodeOrigin:dx,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function g4(e){const{setNodes:t,setEdges:n,setMinZoom:a,setMaxZoom:l,setTranslateExtent:r,setNodeExtent:i,reset:s,setDefaultNodesAndEdges:c}=Ne(p4,He),u=Re();k.useEffect(()=>(c(e.defaultNodes,e.defaultEdges),()=>{d.current=jm,s()}),[]);const d=k.useRef(jm);return k.useEffect(()=>{for(const f of wm){const h=e[f],m=d.current[f];h!==m&&(typeof e[f]>"u"||(f==="nodes"?t(h):f==="edges"?n(h):f==="minZoom"?a(h):f==="maxZoom"?l(h):f==="translateExtent"?r(h):f==="nodeExtent"?i(h):f==="ariaLabelConfig"?u.setState({ariaLabelConfig:BS(h)}):f==="fitView"?u.setState({fitViewQueued:h}):f==="fitViewOptions"?u.setState({fitViewOptions:h}):u.setState({[f]:h})))}d.current=e},wm.map(f=>e[f])),null}function Nm(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function x4(e){var a;const[t,n]=k.useState(e==="system"?null:e);return k.useEffect(()=>{if(e!=="system"){n(e);return}const l=Nm(),r=()=>n(l!=null&&l.matches?"dark":"light");return r(),l==null||l.addEventListener("change",r),()=>{l==null||l.removeEventListener("change",r)}},[e]),t!==null?t:(a=Nm())!=null&&a.matches?"dark":"light"}const Sm=typeof document<"u"?document:null;function ui(e=null,t={target:Sm,actInsideInputWithModifier:!0}){const[n,a]=k.useState(!1),l=k.useRef(!1),r=k.useRef(new Set([])),[i,s]=k.useMemo(()=>{if(e!==null){const u=(Array.isArray(e)?e:[e]).filter(f=>typeof f=="string").map(f=>f.replace("+",`
42
+ `).replace(`
43
+
44
+ `,`
45
+ +`).split(`
46
+ `)),d=u.reduce((f,h)=>f.concat(...h),[]);return[u,d]}return[[],[]]},[e]);return k.useEffect(()=>{const c=(t==null?void 0:t.target)??Sm,u=(t==null?void 0:t.actInsideInputWithModifier)??!0;if(e!==null){const d=m=>{var w,p;if(l.current=m.ctrlKey||m.metaKey||m.shiftKey||m.altKey,(!l.current||l.current&&!u)&&Hg(m))return!1;const j=km(m.code,s);if(r.current.add(m[j]),Em(i,r.current,!1)){const y=((p=(w=m.composedPath)==null?void 0:w.call(m))==null?void 0:p[0])||m.target,g=(y==null?void 0:y.nodeName)==="BUTTON"||(y==null?void 0:y.nodeName)==="A";t.preventDefault!==!1&&(l.current||!g)&&m.preventDefault(),a(!0)}},f=m=>{const x=km(m.code,s);Em(i,r.current,!0)?(a(!1),r.current.clear()):r.current.delete(m[x]),m.key==="Meta"&&r.current.clear(),l.current=!1},h=()=>{r.current.clear(),a(!1)};return c==null||c.addEventListener("keydown",d),c==null||c.addEventListener("keyup",f),window.addEventListener("blur",h),window.addEventListener("contextmenu",h),()=>{c==null||c.removeEventListener("keydown",d),c==null||c.removeEventListener("keyup",f),window.removeEventListener("blur",h),window.removeEventListener("contextmenu",h)}}},[e,a]),n}function Em(e,t,n){return e.filter(a=>n||a.length===t.size).some(a=>a.every(l=>t.has(l)))}function km(e,t){return t.includes(e)?"code":"key"}const y4=()=>{const e=Re();return k.useMemo(()=>({zoomIn:async t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):!1},zoomOut:async t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):!1},zoomTo:async(t,n)=>{const{panZoom:a}=e.getState();return a?a.scaleTo(t,n):!1},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{const{transform:[a,l,r],panZoom:i}=e.getState();return i?(await i.setViewport({x:t.x??a,y:t.y??l,zoom:t.zoom??r},n),!0):!1},getViewport:()=>{const[t,n,a]=e.getState().transform;return{x:t,y:n,zoom:a}},setCenter:async(t,n,a)=>e.getState().setCenter(t,n,a),fitBounds:async(t,n)=>{const{width:a,height:l,minZoom:r,maxZoom:i,panZoom:s}=e.getState(),c=of(t,a,l,r,i,(n==null?void 0:n.padding)??.1);return s?(await s.setViewport(c,{duration:n==null?void 0:n.duration,ease:n==null?void 0:n.ease,interpolate:n==null?void 0:n.interpolate}),!0):!1},screenToFlowPosition:(t,n={})=>{const{transform:a,snapGrid:l,snapToGrid:r,domNode:i}=e.getState();if(!i)return t;const{x:s,y:c}=i.getBoundingClientRect(),u={x:t.x-s,y:t.y-c},d=n.snapGrid??l,f=n.snapToGrid??r;return hr(u,a,f,d)},flowToScreenPosition:t=>{const{transform:n,domNode:a}=e.getState();if(!a)return t;const{x:l,y:r}=a.getBoundingClientRect(),i=Wl(t,n);return{x:i.x+l,y:i.y+r}}}),[])};function fx(e,t){const n=[],a=new Map,l=[];for(const r of e)if(r.type==="add"){l.push(r);continue}else if(r.type==="remove"||r.type==="replace")a.set(r.id,[r]);else{const i=a.get(r.id);i?i.push(r):a.set(r.id,[r])}for(const r of t){const i=a.get(r.id);if(!i){n.push(r);continue}if(i[0].type==="remove")continue;if(i[0].type==="replace"){n.push({...i[0].item});continue}const s={...r};for(const c of i)v4(c,s);n.push(s)}return l.length&&l.forEach(r=>{r.index!==void 0?n.splice(r.index,0,{...r.item}):n.push({...r.item})}),n}function v4(e,t){switch(e.type){case"select":{t.selected=e.selected;break}case"position":{typeof e.position<"u"&&(t.position=e.position),typeof e.dragging<"u"&&(t.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(t.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(t.resizing=e.resizing);break}}}function gf(e,t){return fx(e,t)}function hx(e,t){return fx(e,t)}function Ta(e,t){return{id:e,type:"select",selected:t}}function Sl(e,t=new Set,n=!1){const a=[];for(const[l,r]of e){const i=t.has(l);!(r.selected===void 0&&!i)&&r.selected!==i&&(n&&(r.selected=i),a.push(Ta(r.id,i)))}return a}function _m({items:e=[],lookup:t}){var l;const n=[],a=new Map(e.map(r=>[r.id,r]));for(const[r,i]of e.entries()){const s=t.get(i.id),c=((l=s==null?void 0:s.internals)==null?void 0:l.userNode)??s;c!==void 0&&c!==i&&n.push({id:i.id,item:i,type:"replace"}),c===void 0&&n.push({item:i,type:"add",index:r})}for(const[r]of t)a.get(r)===void 0&&n.push({id:r,type:"remove"});return n}function Cm(e){return{id:e.id,type:"remove"}}const b4=Og();function w4(e,t,n={}){return VS(e,t,{...n,onError:n.onError??b4})}const zm=e=>kS(e),j4=e=>Mg(e);function mx(e){return k.forwardRef(e)}const N4=typeof window<"u"?k.useLayoutEffect:k.useEffect;function Mm(e){const[t,n]=k.useState(BigInt(0)),[a]=k.useState(()=>S4(()=>n(l=>l+BigInt(1))));return N4(()=>{const l=a.get();l.length&&(e(l),a.reset())},[t]),a}function S4(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}const px=k.createContext(null);function E4({children:e}){const t=Re(),n=k.useCallback(s=>{const{nodes:c=[],setNodes:u,hasDefaultNodes:d,onNodesChange:f,nodeLookup:h,fitViewQueued:m,onNodesChangeMiddlewareMap:x}=t.getState();let j=c;for(const p of s)j=typeof p=="function"?p(j):p;let w=_m({items:j,lookup:h});for(const p of x.values())w=p(w);d&&u(j),w.length>0?f==null||f(w):m&&window.requestAnimationFrame(()=>{const{fitViewQueued:p,nodes:y,setNodes:g}=t.getState();p&&g(y)})},[]),a=Mm(n),l=k.useCallback(s=>{const{edges:c=[],setEdges:u,hasDefaultEdges:d,onEdgesChange:f,edgeLookup:h}=t.getState();let m=c;for(const x of s)m=typeof x=="function"?x(m):x;d?u(m):f&&f(_m({items:m,lookup:h}))},[]),r=Mm(l),i=k.useMemo(()=>({nodeQueue:a,edgeQueue:r}),[]);return o.jsx(px.Provider,{value:i,children:e})}function k4(){const e=k.useContext(px);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const _4=e=>!!e.panZoom;function Ai(){const e=y4(),t=Re(),n=k4(),a=Ne(_4),l=k.useMemo(()=>{const r=f=>t.getState().nodeLookup.get(f),i=f=>{n.nodeQueue.push(f)},s=f=>{n.edgeQueue.push(f)},c=f=>{var p,y;const{nodeLookup:h,nodeOrigin:m}=t.getState(),x=zm(f)?f:h.get(f.id),j=x.parentId?Rg(x.position,x.measured,x.parentId,h,m):x.position,w={...x,position:j,width:((p=x.measured)==null?void 0:p.width)??x.width,height:((y=x.measured)==null?void 0:y.height)??x.height};return Pl(w)},u=(f,h,m={replace:!1})=>{i(x=>x.map(j=>{if(j.id===f){const w=typeof h=="function"?h(j):h;return m.replace&&zm(w)?w:{...j,...w}}return j}))},d=(f,h,m={replace:!1})=>{s(x=>x.map(j=>{if(j.id===f){const w=typeof h=="function"?h(j):h;return m.replace&&j4(w)?w:{...j,...w}}return j}))};return{getNodes:()=>t.getState().nodes.map(f=>({...f})),getNode:f=>{var h;return(h=r(f))==null?void 0:h.internals.userNode},getInternalNode:r,getEdges:()=>{const{edges:f=[]}=t.getState();return f.map(h=>({...h}))},getEdge:f=>t.getState().edgeLookup.get(f),setNodes:i,setEdges:s,addNodes:f=>{const h=Array.isArray(f)?f:[f];n.nodeQueue.push(m=>[...m,...h])},addEdges:f=>{const h=Array.isArray(f)?f:[f];n.edgeQueue.push(m=>[...m,...h])},toObject:()=>{const{nodes:f=[],edges:h=[],transform:m}=t.getState(),[x,j,w]=m;return{nodes:f.map(p=>({...p})),edges:h.map(p=>({...p})),viewport:{x,y:j,zoom:w}}},deleteElements:async({nodes:f=[],edges:h=[]})=>{const{nodes:m,edges:x,onNodesDelete:j,onEdgesDelete:w,triggerNodeChanges:p,triggerEdgeChanges:y,onDelete:g,onBeforeDelete:v}=t.getState(),{nodes:_,edges:M}=await AS({nodesToRemove:f,edgesToRemove:h,nodes:m,edges:x,onBeforeDelete:v}),z=M.length>0,C=_.length>0;if(z){const B=M.map(Cm);w==null||w(M),y(B)}if(C){const B=_.map(Cm);j==null||j(_),p(B)}return(C||z)&&(g==null||g({nodes:_,edges:M})),{deletedNodes:_,deletedEdges:M}},getIntersectingNodes:(f,h=!0,m)=>{const x=rm(f),j=x?f:c(f),w=m!==void 0;return j?(m||t.getState().nodes).filter(p=>{const y=t.getState().nodeLookup.get(p.id);if(y&&!x&&(p.id===f.id||!y.internals.positionAbsolute))return!1;const g=Pl(w?p:y),v=si(g,j);return h&&v>0||v>=g.width*g.height||v>=j.width*j.height}):[]},isNodeIntersecting:(f,h,m=!0)=>{const j=rm(f)?f:c(f);if(!j)return!1;const w=si(j,h);return m&&w>0||w>=h.width*h.height||w>=j.width*j.height},updateNode:u,updateNodeData:(f,h,m={replace:!1})=>{u(f,x=>{const j=typeof h=="function"?h(x):h;return m.replace?{...x,data:j}:{...x,data:{...x.data,...j}}},m)},updateEdge:d,updateEdgeData:(f,h,m={replace:!1})=>{d(f,x=>{const j=typeof h=="function"?h(x):h;return m.replace?{...x,data:j}:{...x,data:{...x.data,...j}}},m)},getNodesBounds:f=>{const{nodeLookup:h,nodeOrigin:m}=t.getState();return _S(f,{nodeLookup:h,nodeOrigin:m})},getHandleConnections:({type:f,id:h,nodeId:m})=>{var x;return Array.from(((x=t.getState().connectionLookup.get(`${m}-${f}${h?`-${h}`:""}`))==null?void 0:x.values())??[])},getNodeConnections:({type:f,handleId:h,nodeId:m})=>{var x;return Array.from(((x=t.getState().connectionLookup.get(`${m}${f?h?`-${f}-${h}`:`-${f}`:""}`))==null?void 0:x.values())??[])},fitView:async f=>{const h=t.getState().fitViewResolver??OS();return t.setState({fitViewQueued:!0,fitViewOptions:f,fitViewResolver:h}),n.nodeQueue.push(m=>[...m]),h.promise}}},[]);return k.useMemo(()=>({...l,...e,viewportInitialized:a}),[a])}const Am=e=>e.selected,C4=typeof window<"u"?window:void 0;function z4({deleteKeyCode:e,multiSelectionKeyCode:t}){const n=Re(),{deleteElements:a}=Ai(),l=ui(e,{actInsideInputWithModifier:!1}),r=ui(t,{target:C4});k.useEffect(()=>{if(l){const{edges:i,nodes:s}=n.getState();a({nodes:s.filter(Am),edges:i.filter(Am)}),n.setState({nodesSelectionActive:!1})}},[l]),k.useEffect(()=>{n.setState({multiSelectionActive:r})},[r])}function M4(e){const t=Re();k.useEffect(()=>{const n=()=>{var l,r,i,s;if(!e.current||!(((r=(l=e.current).checkVisibility)==null?void 0:r.call(l))??!0))return!1;const a=sf(e.current);(a.height===0||a.width===0)&&((s=(i=t.getState()).onError)==null||s.call(i,"004",dn.error004())),t.setState({width:a.width||500,height:a.height||500})};if(e.current){n(),window.addEventListener("resize",n);const a=new ResizeObserver(()=>n());return a.observe(e.current),()=>{window.removeEventListener("resize",n),a&&e.current&&a.unobserve(e.current)}}},[])}const qs={position:"absolute",width:"100%",height:"100%",top:0,left:0},A4=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function T4({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:a=!1,panOnScrollSpeed:l=.5,panOnScrollMode:r=Ua.Free,zoomOnDoubleClick:i=!0,panOnDrag:s=!0,defaultViewport:c,translateExtent:u,minZoom:d,maxZoom:f,zoomActivationKeyCode:h,preventScrolling:m=!0,children:x,noWheelClassName:j,noPanClassName:w,onViewportChange:p,isControlledViewport:y,paneClickDistance:g,selectionOnDrag:v}){const _=Re(),M=k.useRef(null),{userSelectionActive:z,lib:C,connectionInProgress:B}=Ne(A4,He),L=ui(h),S=k.useRef();M4(M);const H=k.useCallback(U=>{p==null||p({x:U[0],y:U[1],zoom:U[2]}),y||_.setState({transform:U})},[p,y]);return k.useEffect(()=>{if(M.current){S.current=x3({domNode:M.current,minZoom:d,maxZoom:f,translateExtent:u,viewport:c,onDraggingChange:b=>_.setState(N=>N.paneDragging===b?N:{paneDragging:b}),onPanZoomStart:(b,N)=>{const{onViewportChangeStart:T,onMoveStart:D}=_.getState();D==null||D(b,N),T==null||T(N)},onPanZoom:(b,N)=>{const{onViewportChange:T,onMove:D}=_.getState();D==null||D(b,N),T==null||T(N)},onPanZoomEnd:(b,N)=>{const{onViewportChangeEnd:T,onMoveEnd:D}=_.getState();D==null||D(b,N),T==null||T(N)}});const{x:U,y:E,zoom:R}=S.current.getViewport();return _.setState({panZoom:S.current,transform:[U,E,R],domNode:M.current.closest(".react-flow")}),()=>{var b;(b=S.current)==null||b.destroy()}}},[]),k.useEffect(()=>{var U;(U=S.current)==null||U.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:a,panOnScrollSpeed:l,panOnScrollMode:r,zoomOnDoubleClick:i,panOnDrag:s,zoomActivationKeyPressed:L,preventScrolling:m,noPanClassName:w,userSelectionActive:z,noWheelClassName:j,lib:C,onTransformChange:H,connectionInProgress:B,selectionOnDrag:v,paneClickDistance:g})},[e,t,n,a,l,r,i,s,L,m,w,z,j,C,H,B,v,g]),o.jsx("div",{className:"react-flow__renderer",ref:M,style:qs,children:x})}const D4=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function O4(){const{userSelectionActive:e,userSelectionRect:t}=Ne(D4,He);return e&&t?o.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}const Dc=(e,t)=>n=>{n.target===t.current&&(e==null||e(n))},B4=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging,panBy:e.panBy,autoPanSpeed:e.autoPanSpeed});function R4({isSelecting:e,selectionKeyPressed:t,selectionMode:n=Ql.Full,panOnDrag:a,autoPanOnSelection:l,paneClickDistance:r,selectionOnDrag:i,onSelectionStart:s,onSelectionEnd:c,onPaneClick:u,onPaneContextMenu:d,onPaneScroll:f,onPaneMouseEnter:h,onPaneMouseMove:m,onPaneMouseLeave:x,children:j}){const w=k.useRef(0),p=Re(),{userSelectionActive:y,elementsSelectable:g,dragging:v,connectionInProgress:_,panBy:M,autoPanSpeed:z}=Ne(B4,He),C=g&&(e||y),B=k.useRef(null),L=k.useRef(),S=k.useRef(new Set),H=k.useRef(new Set),U=k.useRef(!1),E=k.useRef({x:0,y:0}),R=k.useRef(!1),b=q=>{if(U.current||_){U.current=!1;return}u==null||u(q),p.getState().resetSelectedElements(),p.setState({nodesSelectionActive:!1})},N=q=>{if(Array.isArray(a)&&(a!=null&&a.includes(2))){q.preventDefault();return}d==null||d(q)},T=f?q=>f(q):void 0,D=q=>{U.current&&(q.stopPropagation(),U.current=!1)},A=q=>{var ge,Je;const{domNode:W,transform:oe}=p.getState();if(L.current=W==null?void 0:W.getBoundingClientRect(),!L.current)return;const $=q.target===B.current;if(!$&&!!q.target.closest(".nokey")||!e||!(i&&$||t)||q.button!==0||!q.isPrimary)return;(Je=(ge=q.target)==null?void 0:ge.setPointerCapture)==null||Je.call(ge,q.pointerId),U.current=!1;const{x:de,y:me}=cn(q.nativeEvent,L.current),Y=hr({x:de,y:me},oe);p.setState({userSelectionRect:{width:0,height:0,startX:Y.x,startY:Y.y,x:de,y:me}}),$||(q.stopPropagation(),q.preventDefault())};function O(q,W){const{userSelectionRect:oe}=p.getState();if(!oe)return;const{transform:$,nodeLookup:Q,edgeLookup:ee,connectionLookup:de,triggerNodeChanges:me,triggerEdgeChanges:Y,defaultEdgeOptions:ge}=p.getState(),Je={x:oe.startX,y:oe.startY},{x:it,y:Fe}=Wl(Je,$),$t={startX:Je.x,startY:Je.y,x:q<it?q:it,y:W<Fe?W:Fe,width:Math.abs(q-it),height:Math.abs(W-Fe)},za=S.current,Sn=H.current;S.current=new Set(lf(Q,$t,$,n===Ql.Partial,!0).map(zt=>zt.id)),H.current=new Set;const En=(ge==null?void 0:ge.selectable)??!0;for(const zt of S.current){const en=de.get(zt);if(en)for(const{edgeId:tn}of en.values()){const kn=ee.get(tn);kn&&(kn.selectable??En)&&H.current.add(tn)}}if(!im(za,S.current)){const zt=Sl(Q,S.current,!0);me(zt)}if(!im(Sn,H.current)){const zt=Sl(ee,H.current);Y(zt)}p.setState({userSelectionRect:$t,userSelectionActive:!0,nodesSelectionActive:!1})}function V(){if(!l||!L.current)return;const[q,W]=rf(E.current,L.current,z);M({x:q,y:W}).then(oe=>{if(!U.current||!oe){w.current=requestAnimationFrame(V);return}const{x:$,y:Q}=E.current;O($,Q),w.current=requestAnimationFrame(V)})}const Z=()=>{cancelAnimationFrame(w.current),w.current=0,R.current=!1};k.useEffect(()=>()=>Z(),[]);const P=q=>{const{userSelectionRect:W,transform:oe,resetSelectedElements:$}=p.getState();if(!L.current||!W)return;const{x:Q,y:ee}=cn(q.nativeEvent,L.current);E.current={x:Q,y:ee};const de=Wl({x:W.startX,y:W.startY},oe);if(!U.current){const me=t?0:r;if(Math.hypot(Q-de.x,ee-de.y)<=me)return;$(),s==null||s(q)}U.current=!0,R.current||(V(),R.current=!0),O(Q,ee)},ae=q=>{var W,oe;q.button===0&&((oe=(W=q.target)==null?void 0:W.releasePointerCapture)==null||oe.call(W,q.pointerId),!y&&q.target===B.current&&p.getState().userSelectionRect&&(b==null||b(q)),p.setState({userSelectionActive:!1,userSelectionRect:null}),U.current&&(c==null||c(q),p.setState({nodesSelectionActive:S.current.size>0})),Z())},ue=q=>{var W,oe;(oe=(W=q.target)==null?void 0:W.releasePointerCapture)==null||oe.call(W,q.pointerId),Z()},le=a===!0||Array.isArray(a)&&a.includes(0);return o.jsxs("div",{className:We(["react-flow__pane",{draggable:le,dragging:v,selection:e}]),onClick:C?void 0:Dc(b,B),onContextMenu:Dc(N,B),onWheel:Dc(T,B),onPointerEnter:C?void 0:h,onPointerMove:C?P:m,onPointerUp:C?ae:void 0,onPointerCancel:C?ue:void 0,onPointerDownCapture:C?A:void 0,onClickCapture:C?D:void 0,onPointerLeave:x,ref:B,style:qs,children:[j,o.jsx(O4,{})]})}function Xu({id:e,store:t,unselect:n=!1,nodeRef:a}){const{addSelectedNodes:l,unselectNodesAndEdges:r,multiSelectionActive:i,nodeLookup:s,onError:c}=t.getState(),u=s.get(e);if(!u){c==null||c("012",dn.error012(e));return}t.setState({nodesSelectionActive:!1}),u.selected?(n||u.selected&&i)&&(r({nodes:[u],edges:[]}),requestAnimationFrame(()=>{var d;return(d=a==null?void 0:a.current)==null?void 0:d.blur()})):l([e])}function gx({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:a,nodeId:l,isSelectable:r,nodeClickDistance:i}){const s=Re(),[c,u]=k.useState(!1),d=k.useRef();return k.useEffect(()=>{d.current=a3({getStoreItems:()=>s.getState(),onNodeMouseDown:f=>{Xu({id:f,store:s,nodeRef:e})},onDragStart:()=>{u(!0)},onDragStop:()=>{u(!1)}})},[]),k.useEffect(()=>{if(!(t||!e.current||!d.current))return d.current.update({noDragClassName:n,handleSelector:a,domNode:e.current,isSelectable:r,nodeId:l,nodeClickDistance:i}),()=>{var f;(f=d.current)==null||f.destroy()}},[n,a,t,r,e,l,i]),c}const L4=e=>t=>t.selected&&(t.draggable||e&&typeof t.draggable>"u");function xx(){const e=Re();return k.useCallback(n=>{const{nodeExtent:a,snapToGrid:l,snapGrid:r,nodesDraggable:i,onError:s,updateNodePositions:c,nodeLookup:u,nodeOrigin:d}=e.getState(),f=new Map,h=L4(i),m=l?r[0]:5,x=l?r[1]:5,j=n.direction.x*m*n.factor,w=n.direction.y*x*n.factor;for(const[,p]of u){if(!h(p))continue;let y={x:p.internals.positionAbsolute.x+j,y:p.internals.positionAbsolute.y+w};l&&(y=Mi(y,r));const{position:g,positionAbsolute:v}=Ag({nodeId:p.id,nextPosition:y,nodeLookup:u,nodeExtent:a,nodeOrigin:d,onError:s});p.position=g,p.internals.positionAbsolute=v,f.set(p.id,p)}c(f)},[])}const xf=k.createContext(null),H4=xf.Provider;xf.Consumer;const yx=()=>k.useContext(xf),I4=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),U4=(e,t,n)=>a=>{const{connectionClickStartHandle:l,connectionMode:r,connection:i}=a,{fromHandle:s,toHandle:c,isValid:u}=i,d=(c==null?void 0:c.nodeId)===e&&(c==null?void 0:c.id)===t&&(c==null?void 0:c.type)===n;return{connectingFrom:(s==null?void 0:s.nodeId)===e&&(s==null?void 0:s.id)===t&&(s==null?void 0:s.type)===n,connectingTo:d,clickConnecting:(l==null?void 0:l.nodeId)===e&&(l==null?void 0:l.id)===t&&(l==null?void 0:l.type)===n,isPossibleEndHandle:r===Qa.Strict?(s==null?void 0:s.type)!==n:e!==(s==null?void 0:s.nodeId)||t!==(s==null?void 0:s.id),connectionInProcess:!!s,clickConnectionInProcess:!!l,valid:d&&u}};function V4({type:e="source",position:t=ne.Top,isValidConnection:n,isConnectable:a=!0,isConnectableStart:l=!0,isConnectableEnd:r=!0,id:i,onConnect:s,children:c,className:u,onMouseDown:d,onTouchStart:f,...h},m){var R,b;const x=i||null,j=e==="target",w=Re(),p=yx(),{connectOnClick:y,noPanClassName:g,rfId:v}=Ne(I4,He),{connectingFrom:_,connectingTo:M,clickConnecting:z,isPossibleEndHandle:C,connectionInProcess:B,clickConnectionInProcess:L,valid:S}=Ne(U4(p,x,e),He);p||(b=(R=w.getState()).onError)==null||b.call(R,"010",dn.error010());const H=N=>{const{defaultEdgeOptions:T,onConnect:D,hasDefaultEdges:A}=w.getState(),O={...T,...N};if(A){const{edges:V,setEdges:Z,onError:P}=w.getState();Z(w4(O,V,{onError:P}))}D==null||D(O),s==null||s(O)},U=N=>{if(!p)return;const T=Ig(N.nativeEvent);if(l&&(T&&N.button===0||!T)){const D=w.getState();Yu.onPointerDown(N.nativeEvent,{handleDomNode:N.currentTarget,autoPanOnConnect:D.autoPanOnConnect,connectionMode:D.connectionMode,connectionRadius:D.connectionRadius,domNode:D.domNode,nodeLookup:D.nodeLookup,lib:D.lib,isTarget:j,handleId:x,nodeId:p,flowId:D.rfId,panBy:D.panBy,cancelConnection:D.cancelConnection,onConnectStart:D.onConnectStart,onConnectEnd:(...A)=>{var O,V;return(V=(O=w.getState()).onConnectEnd)==null?void 0:V.call(O,...A)},updateConnection:D.updateConnection,onConnect:H,isValidConnection:n||((...A)=>{var O,V;return((V=(O=w.getState()).isValidConnection)==null?void 0:V.call(O,...A))??!0}),getTransform:()=>w.getState().transform,getFromHandle:()=>w.getState().connection.fromHandle,autoPanSpeed:D.autoPanSpeed,dragThreshold:D.connectionDragThreshold})}T?d==null||d(N):f==null||f(N)},E=N=>{const{onClickConnectStart:T,onClickConnectEnd:D,connectionClickStartHandle:A,connectionMode:O,isValidConnection:V,lib:Z,rfId:P,nodeLookup:ae,connection:ue}=w.getState();if(!p||!A&&!l)return;if(!A){T==null||T(N.nativeEvent,{nodeId:p,handleId:x,handleType:e}),w.setState({connectionClickStartHandle:{nodeId:p,type:e,id:x}});return}const le=Lg(N.target),q=n||V,{connection:W,isValid:oe}=Yu.isValid(N.nativeEvent,{handle:{nodeId:p,id:x,type:e},connectionMode:O,fromNodeId:A.nodeId,fromHandleId:A.id||null,fromType:A.type,isValidConnection:q,flowId:P,doc:le,lib:Z,nodeLookup:ae});oe&&W&&H(W);const $=structuredClone(ue);delete $.inProgress,$.toPosition=$.toHandle?$.toHandle.position:null,D==null||D(N,$),w.setState({connectionClickStartHandle:null})};return o.jsx("div",{"data-handleid":x,"data-nodeid":p,"data-handlepos":t,"data-id":`${v}-${p}-${x}-${e}`,className:We(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",g,u,{source:!j,target:j,connectable:a,connectablestart:l,connectableend:r,clickconnecting:z,connectingfrom:_,connectingto:M,valid:S,connectionindicator:a&&(!B||C)&&(B||L?r:l)}]),onMouseDown:U,onTouchStart:U,onClick:y?E:void 0,ref:m,...h,children:c})}const tt=k.memo(mx(V4));function $4({data:e,isConnectable:t,sourcePosition:n=ne.Bottom}){return o.jsxs(o.Fragment,{children:[e==null?void 0:e.label,o.jsx(tt,{type:"source",position:n,isConnectable:t})]})}function Y4({data:e,isConnectable:t,targetPosition:n=ne.Top,sourcePosition:a=ne.Bottom}){return o.jsxs(o.Fragment,{children:[o.jsx(tt,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label,o.jsx(tt,{type:"source",position:a,isConnectable:t})]})}function X4(){return null}function q4({data:e,isConnectable:t,targetPosition:n=ne.Top}){return o.jsxs(o.Fragment,{children:[o.jsx(tt,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label]})}const ts={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},Tm={input:$4,default:Y4,output:q4,group:X4};function F4(e){var t,n,a,l;return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??((t=e.style)==null?void 0:t.width),height:e.height??e.initialHeight??((n=e.style)==null?void 0:n.height)}:{width:e.width??((a=e.style)==null?void 0:a.width),height:e.height??((l=e.style)==null?void 0:l.height)}}const G4=e=>{const{width:t,height:n,x:a,y:l}=zi(e.nodeLookup,{filter:r=>!!r.selected});return{width:sn(t)?t:null,height:sn(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${a}px,${l}px)`}};function Z4({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){const a=Re(),{width:l,height:r,transformString:i,userSelectionActive:s}=Ne(G4,He),c=xx(),u=k.useRef(null);k.useEffect(()=>{var m;n||(m=u.current)==null||m.focus({preventScroll:!0})},[n]);const d=!s&&l!==null&&r!==null;if(gx({nodeRef:u,disabled:!d}),!d)return null;const f=e?m=>{const x=a.getState().nodes.filter(j=>j.selected);e(m,x)}:void 0,h=m=>{Object.prototype.hasOwnProperty.call(ts,m.key)&&(m.preventDefault(),c({direction:ts[m.key],factor:m.shiftKey?4:1}))};return o.jsx("div",{className:We(["react-flow__nodesselection","react-flow__container",t]),style:{transform:i},children:o.jsx("div",{ref:u,className:"react-flow__nodesselection-rect",onContextMenu:f,tabIndex:n?void 0:-1,onKeyDown:n?void 0:h,style:{width:l,height:r}})})}const Dm=typeof window<"u"?window:void 0,Q4=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function vx({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:a,onPaneMouseLeave:l,onPaneContextMenu:r,onPaneScroll:i,paneClickDistance:s,deleteKeyCode:c,selectionKeyCode:u,selectionOnDrag:d,selectionMode:f,onSelectionStart:h,onSelectionEnd:m,multiSelectionKeyCode:x,panActivationKeyCode:j,zoomActivationKeyCode:w,elementsSelectable:p,zoomOnScroll:y,zoomOnPinch:g,panOnScroll:v,panOnScrollSpeed:_,panOnScrollMode:M,zoomOnDoubleClick:z,panOnDrag:C,autoPanOnSelection:B,defaultViewport:L,translateExtent:S,minZoom:H,maxZoom:U,preventScrolling:E,onSelectionContextMenu:R,noWheelClassName:b,noPanClassName:N,disableKeyboardA11y:T,onViewportChange:D,isControlledViewport:A}){const{nodesSelectionActive:O,userSelectionActive:V}=Ne(Q4,He),Z=ui(u,{target:Dm}),P=ui(j,{target:Dm}),ae=P||C,ue=P||v,le=d&&ae!==!0,q=Z||V||le;return z4({deleteKeyCode:c,multiSelectionKeyCode:x}),o.jsx(T4,{onPaneContextMenu:r,elementsSelectable:p,zoomOnScroll:y,zoomOnPinch:g,panOnScroll:ue,panOnScrollSpeed:_,panOnScrollMode:M,zoomOnDoubleClick:z,panOnDrag:!Z&&ae,defaultViewport:L,translateExtent:S,minZoom:H,maxZoom:U,zoomActivationKeyCode:w,preventScrolling:E,noWheelClassName:b,noPanClassName:N,onViewportChange:D,isControlledViewport:A,paneClickDistance:s,selectionOnDrag:le,children:o.jsxs(R4,{onSelectionStart:h,onSelectionEnd:m,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:a,onPaneMouseLeave:l,onPaneContextMenu:r,onPaneScroll:i,panOnDrag:ae,autoPanOnSelection:B,isSelecting:!!q,selectionMode:f,selectionKeyPressed:Z,paneClickDistance:s,selectionOnDrag:le,children:[e,O&&o.jsx(Z4,{onSelectionContextMenu:R,noPanClassName:N,disableKeyboardA11y:T})]})})}vx.displayName="FlowRenderer";const K4=k.memo(vx),P4=e=>t=>e?lf(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(n=>n.id):Array.from(t.nodeLookup.keys());function W4(e){return Ne(k.useCallback(P4(e),[e]),He)}const J4=e=>e.updateNodeInternals;function e5(){const e=Ne(J4),[t]=k.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const a=new Map;n.forEach(l=>{const r=l.target.getAttribute("data-id");a.set(r,{id:r,nodeElement:l.target,force:!0})}),e(a)}));return k.useEffect(()=>()=>{t==null||t.disconnect()},[t]),t}function t5({node:e,nodeType:t,hasDimensions:n,resizeObserver:a}){const l=Re(),r=k.useRef(null),i=k.useRef(null),s=k.useRef(e.sourcePosition),c=k.useRef(e.targetPosition),u=k.useRef(t),d=n&&!!e.internals.handleBounds;return k.useEffect(()=>{r.current&&!e.hidden&&(!d||i.current!==r.current)&&(i.current&&(a==null||a.unobserve(i.current)),a==null||a.observe(r.current),i.current=r.current)},[d,e.hidden]),k.useEffect(()=>()=>{i.current&&(a==null||a.unobserve(i.current),i.current=null)},[]),k.useEffect(()=>{if(r.current){const f=u.current!==t,h=s.current!==e.sourcePosition,m=c.current!==e.targetPosition;(f||h||m)&&(u.current=t,s.current=e.sourcePosition,c.current=e.targetPosition,l.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:r.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),r}function n5({id:e,onClick:t,onMouseEnter:n,onMouseMove:a,onMouseLeave:l,onContextMenu:r,onDoubleClick:i,nodesDraggable:s,elementsSelectable:c,nodesConnectable:u,nodesFocusable:d,resizeObserver:f,noDragClassName:h,noPanClassName:m,disableKeyboardA11y:x,rfId:j,nodeTypes:w,nodeClickDistance:p,onError:y}){const{node:g,internals:v,isParent:_}=Ne(q=>{const W=q.nodeLookup.get(e),oe=q.parentLookup.has(e);return{node:W,internals:W.internals,isParent:oe}},He);let M=g.type||"default",z=(w==null?void 0:w[M])||Tm[M];z===void 0&&(y==null||y("003",dn.error003(M)),M="default",z=(w==null?void 0:w.default)||Tm.default);const C=!!(g.draggable||s&&typeof g.draggable>"u"),B=!!(g.selectable||c&&typeof g.selectable>"u"),L=!!(g.connectable||u&&typeof g.connectable>"u"),S=!!(g.focusable||d&&typeof g.focusable>"u"),H=Re(),U=Bg(g),E=t5({node:g,nodeType:M,hasDimensions:U,resizeObserver:f}),R=gx({nodeRef:E,disabled:g.hidden||!C,noDragClassName:h,handleSelector:g.dragHandle,nodeId:e,isSelectable:B,nodeClickDistance:p}),b=xx();if(g.hidden)return null;const N=Zn(g),T=F4(g),D=B||C||t||n||a||l,A=n?q=>n(q,{...v.userNode}):void 0,O=a?q=>a(q,{...v.userNode}):void 0,V=l?q=>l(q,{...v.userNode}):void 0,Z=r?q=>r(q,{...v.userNode}):void 0,P=i?q=>i(q,{...v.userNode}):void 0,ae=q=>{const{selectNodesOnDrag:W,nodeDragThreshold:oe}=H.getState();B&&(!W||!C||oe>0)&&Xu({id:e,store:H,nodeRef:E}),t&&t(q,{...v.userNode})},ue=q=>{if(!(Hg(q.nativeEvent)||x)){if(kg.includes(q.key)&&B){const W=q.key==="Escape";Xu({id:e,store:H,unselect:W,nodeRef:E})}else if(C&&g.selected&&Object.prototype.hasOwnProperty.call(ts,q.key)){q.preventDefault();const{ariaLabelConfig:W}=H.getState();H.setState({ariaLiveMessage:W["node.a11yDescription.ariaLiveMessage"]({direction:q.key.replace("Arrow","").toLowerCase(),x:~~v.positionAbsolute.x,y:~~v.positionAbsolute.y})}),b({direction:ts[q.key],factor:q.shiftKey?4:1})}}},le=()=>{var de;if(x||!((de=E.current)!=null&&de.matches(":focus-visible")))return;const{transform:q,width:W,height:oe,autoPanOnNodeFocus:$,setCenter:Q}=H.getState();if(!$)return;lf(new Map([[e,g]]),{x:0,y:0,width:W,height:oe},q,!0).length>0||Q(g.position.x+N.width/2,g.position.y+N.height/2,{zoom:q[2]})};return o.jsx("div",{className:We(["react-flow__node",`react-flow__node-${M}`,{[m]:C},g.className,{selected:g.selected,selectable:B,parent:_,draggable:C,dragging:R}]),ref:E,style:{zIndex:v.z,transform:`translate(${v.positionAbsolute.x}px,${v.positionAbsolute.y}px)`,pointerEvents:D?"all":"none",visibility:U?"visible":"hidden",...g.style,...T},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:A,onMouseMove:O,onMouseLeave:V,onContextMenu:Z,onClick:ae,onDoubleClick:P,onKeyDown:S?ue:void 0,tabIndex:S?0:void 0,onFocus:S?le:void 0,role:g.ariaRole??(S?"group":void 0),"aria-roledescription":"node","aria-describedby":x?void 0:`${cx}-${j}`,"aria-label":g.ariaLabel,...g.domAttributes,children:o.jsx(H4,{value:e,children:o.jsx(z,{id:e,data:g.data,type:M,positionAbsoluteX:v.positionAbsolute.x,positionAbsoluteY:v.positionAbsolute.y,selected:g.selected??!1,selectable:B,draggable:C,deletable:g.deletable??!0,isConnectable:L,sourcePosition:g.sourcePosition,targetPosition:g.targetPosition,dragging:R,dragHandle:g.dragHandle,zIndex:v.z,parentId:g.parentId,...N})})})}var a5=k.memo(n5);const l5=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function bx(e){const{nodesDraggable:t,nodesConnectable:n,nodesFocusable:a,elementsSelectable:l,onError:r}=Ne(l5,He),i=W4(e.onlyRenderVisibleElements),s=e5();return o.jsx("div",{className:"react-flow__nodes",style:qs,children:i.map(c=>o.jsx(a5,{id:c,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:s,nodesDraggable:t,nodesConnectable:n,nodesFocusable:a,elementsSelectable:l,nodeClickDistance:e.nodeClickDistance,onError:r},c))})}bx.displayName="NodeRenderer";const r5=k.memo(bx);function i5(e){return Ne(k.useCallback(n=>{if(!e)return n.edges.map(l=>l.id);const a=[];if(n.width&&n.height)for(const l of n.edges){const r=n.nodeLookup.get(l.source),i=n.nodeLookup.get(l.target);r&&i&&HS({sourceNode:r,targetNode:i,width:n.width,height:n.height,transform:n.transform})&&a.push(l.id)}return a},[e]),He)}const o5=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e}};return o.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},s5=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e,fill:e}};return o.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},Om={[Jo.Arrow]:o5,[Jo.ArrowClosed]:s5};function c5(e){const t=Re();return k.useMemo(()=>{var l,r;return Object.prototype.hasOwnProperty.call(Om,e)?Om[e]:((r=(l=t.getState()).onError)==null||r.call(l,"009",dn.error009(e)),null)},[e])}const u5=({id:e,type:t,color:n,width:a=12.5,height:l=12.5,markerUnits:r="strokeWidth",strokeWidth:i,orient:s="auto-start-reverse"})=>{const c=c5(t);return c?o.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${a}`,markerHeight:`${l}`,viewBox:"-10 -10 20 20",markerUnits:r,orient:s,refX:"0",refY:"0",children:o.jsx(c,{color:n,strokeWidth:i})}):null},wx=({defaultColor:e,rfId:t})=>{const n=Ne(r=>r.edges),a=Ne(r=>r.defaultEdgeOptions),l=k.useMemo(()=>FS(n,{id:t,defaultColor:e,defaultMarkerStart:a==null?void 0:a.markerStart,defaultMarkerEnd:a==null?void 0:a.markerEnd}),[n,a,t,e]);return l.length?o.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:o.jsx("defs",{children:l.map(r=>o.jsx(u5,{id:r.id,type:r.type,color:r.color,width:r.width,height:r.height,markerUnits:r.markerUnits,strokeWidth:r.strokeWidth,orient:r.orient},r.id))})}):null};wx.displayName="MarkerDefinitions";var d5=k.memo(wx);function jx({x:e,y:t,label:n,labelStyle:a,labelShowBg:l=!0,labelBgStyle:r,labelBgPadding:i=[2,4],labelBgBorderRadius:s=2,children:c,className:u,...d}){const[f,h]=k.useState({x:1,y:0,width:0,height:0}),m=We(["react-flow__edge-textwrapper",u]),x=k.useRef(null);return k.useEffect(()=>{if(x.current){const j=x.current.getBBox();h({x:j.x,y:j.y,width:j.width,height:j.height})}},[n]),n?o.jsxs("g",{transform:`translate(${e-f.width/2} ${t-f.height/2})`,className:m,visibility:f.width?"visible":"hidden",...d,children:[l&&o.jsx("rect",{width:f.width+2*i[0],x:-i[0],y:-i[1],height:f.height+2*i[1],className:"react-flow__edge-textbg",style:r,rx:s,ry:s}),o.jsx("text",{className:"react-flow__edge-text",y:f.height/2,dy:"0.3em",ref:x,style:a,children:n}),c]}):null}jx.displayName="EdgeText";const f5=k.memo(jx);function Ti({path:e,labelX:t,labelY:n,label:a,labelStyle:l,labelShowBg:r,labelBgStyle:i,labelBgPadding:s,labelBgBorderRadius:c,interactionWidth:u=20,...d}){return o.jsxs(o.Fragment,{children:[o.jsx("path",{...d,d:e,fill:"none",className:We(["react-flow__edge-path",d.className])}),u?o.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:u,className:"react-flow__edge-interaction"}):null,a&&sn(t)&&sn(n)?o.jsx(f5,{x:t,y:n,label:a,labelStyle:l,labelShowBg:r,labelBgStyle:i,labelBgPadding:s,labelBgBorderRadius:c}):null]})}function Bm({pos:e,x1:t,y1:n,x2:a,y2:l}){return e===ne.Left||e===ne.Right?[.5*(t+a),n]:[t,.5*(n+l)]}function Nx({sourceX:e,sourceY:t,sourcePosition:n=ne.Bottom,targetX:a,targetY:l,targetPosition:r=ne.Top}){const[i,s]=Bm({pos:n,x1:e,y1:t,x2:a,y2:l}),[c,u]=Bm({pos:r,x1:a,y1:l,x2:e,y2:t}),[d,f,h,m]=Ug({sourceX:e,sourceY:t,targetX:a,targetY:l,sourceControlX:i,sourceControlY:s,targetControlX:c,targetControlY:u});return[`M${e},${t} C${i},${s} ${c},${u} ${a},${l}`,d,f,h,m]}function Sx(e){return k.memo(({id:t,sourceX:n,sourceY:a,targetX:l,targetY:r,sourcePosition:i,targetPosition:s,label:c,labelStyle:u,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:x,markerEnd:j,markerStart:w,interactionWidth:p})=>{const[y,g,v]=Nx({sourceX:n,sourceY:a,sourcePosition:i,targetX:l,targetY:r,targetPosition:s}),_=e.isInternal?void 0:t;return o.jsx(Ti,{id:_,path:y,labelX:g,labelY:v,label:c,labelStyle:u,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:x,markerEnd:j,markerStart:w,interactionWidth:p})})}const h5=Sx({isInternal:!1}),Ex=Sx({isInternal:!0});h5.displayName="SimpleBezierEdge";Ex.displayName="SimpleBezierEdgeInternal";function kx(e){return k.memo(({id:t,sourceX:n,sourceY:a,targetX:l,targetY:r,label:i,labelStyle:s,labelShowBg:c,labelBgStyle:u,labelBgPadding:d,labelBgBorderRadius:f,style:h,sourcePosition:m=ne.Bottom,targetPosition:x=ne.Top,markerEnd:j,markerStart:w,pathOptions:p,interactionWidth:y})=>{const[g,v,_]=Uu({sourceX:n,sourceY:a,sourcePosition:m,targetX:l,targetY:r,targetPosition:x,borderRadius:p==null?void 0:p.borderRadius,offset:p==null?void 0:p.offset,stepPosition:p==null?void 0:p.stepPosition}),M=e.isInternal?void 0:t;return o.jsx(Ti,{id:M,path:g,labelX:v,labelY:_,label:i,labelStyle:s,labelShowBg:c,labelBgStyle:u,labelBgPadding:d,labelBgBorderRadius:f,style:h,markerEnd:j,markerStart:w,interactionWidth:y})})}const _x=kx({isInternal:!1}),Cx=kx({isInternal:!0});_x.displayName="SmoothStepEdge";Cx.displayName="SmoothStepEdgeInternal";function zx(e){return k.memo(({id:t,...n})=>{var l;const a=e.isInternal?void 0:t;return o.jsx(_x,{...n,id:a,pathOptions:k.useMemo(()=>{var r;return{borderRadius:0,offset:(r=n.pathOptions)==null?void 0:r.offset}},[(l=n.pathOptions)==null?void 0:l.offset])})})}const m5=zx({isInternal:!1}),Mx=zx({isInternal:!0});m5.displayName="StepEdge";Mx.displayName="StepEdgeInternal";function Ax(e){return k.memo(({id:t,sourceX:n,sourceY:a,targetX:l,targetY:r,label:i,labelStyle:s,labelShowBg:c,labelBgStyle:u,labelBgPadding:d,labelBgBorderRadius:f,style:h,markerEnd:m,markerStart:x,interactionWidth:j})=>{const[w,p,y]=$g({sourceX:n,sourceY:a,targetX:l,targetY:r}),g=e.isInternal?void 0:t;return o.jsx(Ti,{id:g,path:w,labelX:p,labelY:y,label:i,labelStyle:s,labelShowBg:c,labelBgStyle:u,labelBgPadding:d,labelBgBorderRadius:f,style:h,markerEnd:m,markerStart:x,interactionWidth:j})})}const p5=Ax({isInternal:!1}),Tx=Ax({isInternal:!0});p5.displayName="StraightEdge";Tx.displayName="StraightEdgeInternal";function Dx(e){return k.memo(({id:t,sourceX:n,sourceY:a,targetX:l,targetY:r,sourcePosition:i=ne.Bottom,targetPosition:s=ne.Top,label:c,labelStyle:u,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:x,markerEnd:j,markerStart:w,pathOptions:p,interactionWidth:y})=>{const[g,v,_]=cf({sourceX:n,sourceY:a,sourcePosition:i,targetX:l,targetY:r,targetPosition:s,curvature:p==null?void 0:p.curvature}),M=e.isInternal?void 0:t;return o.jsx(Ti,{id:M,path:g,labelX:v,labelY:_,label:c,labelStyle:u,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:m,style:x,markerEnd:j,markerStart:w,interactionWidth:y})})}const g5=Dx({isInternal:!1}),Ox=Dx({isInternal:!0});g5.displayName="BezierEdge";Ox.displayName="BezierEdgeInternal";const Rm={default:Ox,straight:Tx,step:Mx,smoothstep:Cx,simplebezier:Ex},Lm={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},x5=(e,t,n)=>n===ne.Left?e-t:n===ne.Right?e+t:e,y5=(e,t,n)=>n===ne.Top?e-t:n===ne.Bottom?e+t:e,Hm="react-flow__edgeupdater";function Im({position:e,centerX:t,centerY:n,radius:a=10,onMouseDown:l,onMouseEnter:r,onMouseOut:i,type:s}){return o.jsx("circle",{onMouseDown:l,onMouseEnter:r,onMouseOut:i,className:We([Hm,`${Hm}-${s}`]),cx:x5(t,a,e),cy:y5(n,a,e),r:a,stroke:"transparent",fill:"transparent"})}function v5({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:a,sourceY:l,targetX:r,targetY:i,sourcePosition:s,targetPosition:c,onReconnect:u,onReconnectStart:d,onReconnectEnd:f,setReconnecting:h,setUpdateHover:m}){const x=Re(),j=(v,_)=>{if(v.button!==0)return;const{autoPanOnConnect:M,domNode:z,connectionMode:C,connectionRadius:B,lib:L,onConnectStart:S,cancelConnection:H,nodeLookup:U,rfId:E,panBy:R,updateConnection:b}=x.getState(),N=_.type==="target",T=(O,V)=>{h(!1),f==null||f(O,n,_.type,V)},D=O=>u==null?void 0:u(n,O),A=(O,V)=>{h(!0),d==null||d(v,n,_.type),S==null||S(O,V)};Yu.onPointerDown(v.nativeEvent,{autoPanOnConnect:M,connectionMode:C,connectionRadius:B,domNode:z,handleId:_.id,nodeId:_.nodeId,nodeLookup:U,isTarget:N,edgeUpdaterType:_.type,lib:L,flowId:E,cancelConnection:H,panBy:R,isValidConnection:(...O)=>{var V,Z;return((Z=(V=x.getState()).isValidConnection)==null?void 0:Z.call(V,...O))??!0},onConnect:D,onConnectStart:A,onConnectEnd:(...O)=>{var V,Z;return(Z=(V=x.getState()).onConnectEnd)==null?void 0:Z.call(V,...O)},onReconnectEnd:T,updateConnection:b,getTransform:()=>x.getState().transform,getFromHandle:()=>x.getState().connection.fromHandle,dragThreshold:x.getState().connectionDragThreshold,handleDomNode:v.currentTarget})},w=v=>j(v,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),p=v=>j(v,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),y=()=>m(!0),g=()=>m(!1);return o.jsxs(o.Fragment,{children:[(e===!0||e==="source")&&o.jsx(Im,{position:s,centerX:a,centerY:l,radius:t,onMouseDown:w,onMouseEnter:y,onMouseOut:g,type:"source"}),(e===!0||e==="target")&&o.jsx(Im,{position:c,centerX:r,centerY:i,radius:t,onMouseDown:p,onMouseEnter:y,onMouseOut:g,type:"target"})]})}function b5({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:a,onClick:l,onDoubleClick:r,onContextMenu:i,onMouseEnter:s,onMouseMove:c,onMouseLeave:u,reconnectRadius:d,onReconnect:f,onReconnectStart:h,onReconnectEnd:m,rfId:x,edgeTypes:j,noPanClassName:w,onError:p,disableKeyboardA11y:y}){let g=Ne(Q=>Q.edgeLookup.get(e));const v=Ne(Q=>Q.defaultEdgeOptions);g=v?{...v,...g}:g;let _=g.type||"default",M=(j==null?void 0:j[_])||Rm[_];M===void 0&&(p==null||p("011",dn.error011(_)),_="default",M=(j==null?void 0:j.default)||Rm.default);const z=!!(g.focusable||t&&typeof g.focusable>"u"),C=typeof f<"u"&&(g.reconnectable||n&&typeof g.reconnectable>"u"),B=!!(g.selectable||a&&typeof g.selectable>"u"),L=k.useRef(null),[S,H]=k.useState(!1),[U,E]=k.useState(!1),R=Re(),{zIndex:b,sourceX:N,sourceY:T,targetX:D,targetY:A,sourcePosition:O,targetPosition:V}=Ne(k.useCallback(Q=>{const ee=Q.nodeLookup.get(g.source),de=Q.nodeLookup.get(g.target);if(!ee||!de)return{zIndex:g.zIndex,...Lm};const me=qS({id:e,sourceNode:ee,targetNode:de,sourceHandle:g.sourceHandle||null,targetHandle:g.targetHandle||null,connectionMode:Q.connectionMode,onError:p});return{zIndex:LS({selected:g.selected,zIndex:g.zIndex,sourceNode:ee,targetNode:de,elevateOnSelect:Q.elevateEdgesOnSelect,zIndexMode:Q.zIndexMode}),...me||Lm}},[g.source,g.target,g.sourceHandle,g.targetHandle,g.selected,g.zIndex]),He),Z=k.useMemo(()=>g.markerStart?`url('#${Vu(g.markerStart,x)}')`:void 0,[g.markerStart,x]),P=k.useMemo(()=>g.markerEnd?`url('#${Vu(g.markerEnd,x)}')`:void 0,[g.markerEnd,x]);if(g.hidden||N===null||T===null||D===null||A===null)return null;const ae=Q=>{var Y;const{addSelectedEdges:ee,unselectNodesAndEdges:de,multiSelectionActive:me}=R.getState();B&&(R.setState({nodesSelectionActive:!1}),g.selected&&me?(de({nodes:[],edges:[g]}),(Y=L.current)==null||Y.blur()):ee([e])),l&&l(Q,g)},ue=r?Q=>{r(Q,{...g})}:void 0,le=i?Q=>{i(Q,{...g})}:void 0,q=s?Q=>{s(Q,{...g})}:void 0,W=c?Q=>{c(Q,{...g})}:void 0,oe=u?Q=>{u(Q,{...g})}:void 0,$=Q=>{var ee;if(!y&&kg.includes(Q.key)&&B){const{unselectNodesAndEdges:de,addSelectedEdges:me}=R.getState();Q.key==="Escape"?((ee=L.current)==null||ee.blur(),de({edges:[g]})):me([e])}};return o.jsx("svg",{style:{zIndex:b},children:o.jsxs("g",{className:We(["react-flow__edge",`react-flow__edge-${_}`,g.className,w,{selected:g.selected,animated:g.animated,inactive:!B&&!l,updating:S,selectable:B}]),onClick:ae,onDoubleClick:ue,onContextMenu:le,onMouseEnter:q,onMouseMove:W,onMouseLeave:oe,onKeyDown:z?$:void 0,tabIndex:z?0:void 0,role:g.ariaRole??(z?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":g.ariaLabel===null?void 0:g.ariaLabel||`Edge from ${g.source} to ${g.target}`,"aria-describedby":z?`${ux}-${x}`:void 0,ref:L,...g.domAttributes,children:[!U&&o.jsx(M,{id:e,source:g.source,target:g.target,type:g.type,selected:g.selected,animated:g.animated,selectable:B,deletable:g.deletable??!0,label:g.label,labelStyle:g.labelStyle,labelShowBg:g.labelShowBg,labelBgStyle:g.labelBgStyle,labelBgPadding:g.labelBgPadding,labelBgBorderRadius:g.labelBgBorderRadius,sourceX:N,sourceY:T,targetX:D,targetY:A,sourcePosition:O,targetPosition:V,data:g.data,style:g.style,sourceHandleId:g.sourceHandle,targetHandleId:g.targetHandle,markerStart:Z,markerEnd:P,pathOptions:"pathOptions"in g?g.pathOptions:void 0,interactionWidth:g.interactionWidth}),C&&o.jsx(v5,{edge:g,isReconnectable:C,reconnectRadius:d,onReconnect:f,onReconnectStart:h,onReconnectEnd:m,sourceX:N,sourceY:T,targetX:D,targetY:A,sourcePosition:O,targetPosition:V,setUpdateHover:H,setReconnecting:E})]})})}var w5=k.memo(b5);const j5=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function Bx({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:a,noPanClassName:l,onReconnect:r,onEdgeContextMenu:i,onEdgeMouseEnter:s,onEdgeMouseMove:c,onEdgeMouseLeave:u,onEdgeClick:d,reconnectRadius:f,onEdgeDoubleClick:h,onReconnectStart:m,onReconnectEnd:x,disableKeyboardA11y:j}){const{edgesFocusable:w,edgesReconnectable:p,elementsSelectable:y,onError:g}=Ne(j5,He),v=i5(t);return o.jsxs("div",{className:"react-flow__edges",children:[o.jsx(d5,{defaultColor:e,rfId:n}),v.map(_=>o.jsx(w5,{id:_,edgesFocusable:w,edgesReconnectable:p,elementsSelectable:y,noPanClassName:l,onReconnect:r,onContextMenu:i,onMouseEnter:s,onMouseMove:c,onMouseLeave:u,onClick:d,reconnectRadius:f,onDoubleClick:h,onReconnectStart:m,onReconnectEnd:x,rfId:n,onError:g,edgeTypes:a,disableKeyboardA11y:j},_))]})}Bx.displayName="EdgeRenderer";const N5=k.memo(Bx),S5=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function E5({children:e}){const t=Ne(S5);return o.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}function k5(e){const t=Ai(),n=k.useRef(!1);k.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const _5=e=>{var t;return(t=e.panZoom)==null?void 0:t.syncViewport};function C5(e){const t=Ne(_5),n=Re();return k.useEffect(()=>{e&&(t==null||t(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function z5(e){return e.connection.inProgress?{...e.connection,to:hr(e.connection.to,e.transform)}:{...e.connection}}function M5(e){return z5}function A5(e){const t=M5();return Ne(t,He)}const T5=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function D5({containerStyle:e,style:t,type:n,component:a}){const{nodesConnectable:l,width:r,height:i,isValid:s,inProgress:c}=Ne(T5,He);return!(r&&l&&c)?null:o.jsx("svg",{style:e,width:r,height:i,className:"react-flow__connectionline react-flow__container",children:o.jsx("g",{className:We(["react-flow__connection",zg(s)]),children:o.jsx(Rx,{style:t,type:n,CustomComponent:a,isValid:s})})})}const Rx=({style:e,type:t=aa.Bezier,CustomComponent:n,isValid:a})=>{const{inProgress:l,from:r,fromNode:i,fromHandle:s,fromPosition:c,to:u,toNode:d,toHandle:f,toPosition:h,pointer:m}=A5();if(!l)return;if(n)return o.jsx(n,{connectionLineType:t,connectionLineStyle:e,fromNode:i,fromHandle:s,fromX:r.x,fromY:r.y,toX:u.x,toY:u.y,fromPosition:c,toPosition:h,connectionStatus:zg(a),toNode:d,toHandle:f,pointer:m});let x="";const j={sourceX:r.x,sourceY:r.y,sourcePosition:c,targetX:u.x,targetY:u.y,targetPosition:h};switch(t){case aa.Bezier:[x]=cf(j);break;case aa.SimpleBezier:[x]=Nx(j);break;case aa.Step:[x]=Uu({...j,borderRadius:0});break;case aa.SmoothStep:[x]=Uu(j);break;default:[x]=$g(j)}return o.jsx("path",{d:x,fill:"none",className:"react-flow__connection-path",style:e})};Rx.displayName="ConnectionLine";const O5={};function Um(e=O5){k.useRef(e),Re(),k.useEffect(()=>{},[e])}function B5(){Re(),k.useRef(!1),k.useEffect(()=>{},[])}function Lx({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:a,onEdgeClick:l,onNodeDoubleClick:r,onEdgeDoubleClick:i,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:u,onNodeContextMenu:d,onSelectionContextMenu:f,onSelectionStart:h,onSelectionEnd:m,connectionLineType:x,connectionLineStyle:j,connectionLineComponent:w,connectionLineContainerStyle:p,selectionKeyCode:y,selectionOnDrag:g,selectionMode:v,multiSelectionKeyCode:_,panActivationKeyCode:M,zoomActivationKeyCode:z,deleteKeyCode:C,onlyRenderVisibleElements:B,elementsSelectable:L,defaultViewport:S,translateExtent:H,minZoom:U,maxZoom:E,preventScrolling:R,defaultMarkerColor:b,zoomOnScroll:N,zoomOnPinch:T,panOnScroll:D,panOnScrollSpeed:A,panOnScrollMode:O,zoomOnDoubleClick:V,panOnDrag:Z,autoPanOnSelection:P,onPaneClick:ae,onPaneMouseEnter:ue,onPaneMouseMove:le,onPaneMouseLeave:q,onPaneScroll:W,onPaneContextMenu:oe,paneClickDistance:$,nodeClickDistance:Q,onEdgeContextMenu:ee,onEdgeMouseEnter:de,onEdgeMouseMove:me,onEdgeMouseLeave:Y,reconnectRadius:ge,onReconnect:Je,onReconnectStart:it,onReconnectEnd:Fe,noDragClassName:$t,noWheelClassName:za,noPanClassName:Sn,disableKeyboardA11y:En,nodeExtent:zt,rfId:en,viewport:tn,onViewportChange:kn}){return Um(e),Um(t),B5(),k5(n),C5(tn),o.jsx(K4,{onPaneClick:ae,onPaneMouseEnter:ue,onPaneMouseMove:le,onPaneMouseLeave:q,onPaneContextMenu:oe,onPaneScroll:W,paneClickDistance:$,deleteKeyCode:C,selectionKeyCode:y,selectionOnDrag:g,selectionMode:v,onSelectionStart:h,onSelectionEnd:m,multiSelectionKeyCode:_,panActivationKeyCode:M,zoomActivationKeyCode:z,elementsSelectable:L,zoomOnScroll:N,zoomOnPinch:T,zoomOnDoubleClick:V,panOnScroll:D,panOnScrollSpeed:A,panOnScrollMode:O,panOnDrag:Z,autoPanOnSelection:P,defaultViewport:S,translateExtent:H,minZoom:U,maxZoom:E,onSelectionContextMenu:f,preventScrolling:R,noDragClassName:$t,noWheelClassName:za,noPanClassName:Sn,disableKeyboardA11y:En,onViewportChange:kn,isControlledViewport:!!tn,children:o.jsxs(E5,{children:[o.jsx(N5,{edgeTypes:t,onEdgeClick:l,onEdgeDoubleClick:i,onReconnect:Je,onReconnectStart:it,onReconnectEnd:Fe,onlyRenderVisibleElements:B,onEdgeContextMenu:ee,onEdgeMouseEnter:de,onEdgeMouseMove:me,onEdgeMouseLeave:Y,reconnectRadius:ge,defaultMarkerColor:b,noPanClassName:Sn,disableKeyboardA11y:En,rfId:en}),o.jsx(D5,{style:j,type:x,component:w,containerStyle:p}),o.jsx("div",{className:"react-flow__edgelabel-renderer"}),o.jsx(r5,{nodeTypes:e,onNodeClick:a,onNodeDoubleClick:r,onNodeMouseEnter:s,onNodeMouseMove:c,onNodeMouseLeave:u,onNodeContextMenu:d,nodeClickDistance:Q,onlyRenderVisibleElements:B,noPanClassName:Sn,noDragClassName:$t,disableKeyboardA11y:En,nodeExtent:zt,rfId:en}),o.jsx("div",{className:"react-flow__viewport-portal"})]})})}Lx.displayName="GraphView";const R5=k.memo(Lx),L5=Og(),Vm=({nodes:e,edges:t,defaultNodes:n,defaultEdges:a,width:l,height:r,fitView:i,fitViewOptions:s,minZoom:c=.5,maxZoom:u=2,nodeOrigin:d,nodeExtent:f,zIndexMode:h="basic"}={})=>{const m=new Map,x=new Map,j=new Map,w=new Map,p=a??t??[],y=n??e??[],g=d??[0,0],v=f??oi;qg(j,w,p);const{nodesInitialized:_}=$u(y,m,x,{nodeOrigin:g,nodeExtent:v,zIndexMode:h});let M=[0,0,1];if(i&&l&&r){const z=zi(m,{filter:S=>!!((S.width||S.initialWidth)&&(S.height||S.initialHeight))}),{x:C,y:B,zoom:L}=of(z,l,r,c,u,(s==null?void 0:s.padding)??.1);M=[C,B,L]}return{rfId:"1",width:l??0,height:r??0,transform:M,nodes:y,nodesInitialized:_,nodeLookup:m,parentLookup:x,edges:p,edgeLookup:w,connectionLookup:j,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:a!==void 0,panZoom:null,minZoom:c,maxZoom:u,translateExtent:oi,nodeExtent:v,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:Qa.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:g,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:i??!1,fitViewOptions:s,fitViewResolver:null,connection:{...Cg},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:L5,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:_g,zIndexMode:h,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},H5=({nodes:e,edges:t,defaultNodes:n,defaultEdges:a,width:l,height:r,fitView:i,fitViewOptions:s,minZoom:c,maxZoom:u,nodeOrigin:d,nodeExtent:f,zIndexMode:h})=>K3((m,x)=>{async function j(){const{nodeLookup:w,panZoom:p,fitViewOptions:y,fitViewResolver:g,width:v,height:_,minZoom:M,maxZoom:z}=x();p&&(await MS({nodes:w,width:v,height:_,panZoom:p,minZoom:M,maxZoom:z},y),g==null||g.resolve(!0),m({fitViewResolver:null}))}return{...Vm({nodes:e,edges:t,width:l,height:r,fitView:i,fitViewOptions:s,minZoom:c,maxZoom:u,nodeOrigin:d,nodeExtent:f,defaultNodes:n,defaultEdges:a,zIndexMode:h}),setNodes:w=>{const{nodeLookup:p,parentLookup:y,nodeOrigin:g,elevateNodesOnSelect:v,fitViewQueued:_,zIndexMode:M,nodesSelectionActive:z}=x(),{nodesInitialized:C,hasSelectedNodes:B}=$u(w,p,y,{nodeOrigin:g,nodeExtent:f,elevateNodesOnSelect:v,checkEquality:!0,zIndexMode:M}),L=z&&B;_&&C?(j(),m({nodes:w,nodesInitialized:C,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:L})):m({nodes:w,nodesInitialized:C,nodesSelectionActive:L})},setEdges:w=>{const{connectionLookup:p,edgeLookup:y}=x();qg(p,y,w),m({edges:w})},setDefaultNodesAndEdges:(w,p)=>{if(w){const{setNodes:y}=x();y(w),m({hasDefaultNodes:!0})}if(p){const{setEdges:y}=x();y(p),m({hasDefaultEdges:!0})}},updateNodeInternals:w=>{const{triggerNodeChanges:p,nodeLookup:y,parentLookup:g,domNode:v,nodeOrigin:_,nodeExtent:M,debug:z,fitViewQueued:C,zIndexMode:B}=x(),{changes:L,updatedInternals:S}=JS(w,y,g,v,_,M,B);S&&(QS(y,g,{nodeOrigin:_,nodeExtent:M,zIndexMode:B}),C?(j(),m({fitViewQueued:!1,fitViewOptions:void 0})):m({}),(L==null?void 0:L.length)>0&&(z&&console.log("React Flow: trigger node changes",L),p==null||p(L)))},updateNodePositions:(w,p=!1)=>{const y=[];let g=[];const{nodeLookup:v,triggerNodeChanges:_,connection:M,updateConnection:z,onNodesChangeMiddlewareMap:C}=x();for(const[B,L]of w){const S=v.get(B),H=!!(S!=null&&S.expandParent&&(S!=null&&S.parentId)&&(L!=null&&L.position)),U={id:B,type:"position",position:H?{x:Math.max(0,L.position.x),y:Math.max(0,L.position.y)}:L.position,dragging:p};if(S&&M.inProgress&&M.fromNode.id===S.id){const E=Wa(S,M.fromHandle,ne.Left,!0);z({...M,from:E})}H&&S.parentId&&y.push({id:B,parentId:S.parentId,rect:{...L.internals.positionAbsolute,width:L.measured.width??0,height:L.measured.height??0}}),g.push(U)}if(y.length>0){const{parentLookup:B,nodeOrigin:L}=x(),S=mf(y,v,B,L);g.push(...S)}for(const B of C.values())g=B(g);_(g)},triggerNodeChanges:w=>{const{onNodesChange:p,setNodes:y,nodes:g,hasDefaultNodes:v,debug:_}=x();if(w!=null&&w.length){if(v){const M=gf(w,g);y(M)}_&&console.log("React Flow: trigger node changes",w),p==null||p(w)}},triggerEdgeChanges:w=>{const{onEdgesChange:p,setEdges:y,edges:g,hasDefaultEdges:v,debug:_}=x();if(w!=null&&w.length){if(v){const M=hx(w,g);y(M)}_&&console.log("React Flow: trigger edge changes",w),p==null||p(w)}},addSelectedNodes:w=>{const{multiSelectionActive:p,edgeLookup:y,nodeLookup:g,triggerNodeChanges:v,triggerEdgeChanges:_}=x();if(p){const M=w.map(z=>Ta(z,!0));v(M);return}v(Sl(g,new Set([...w]),!0)),_(Sl(y))},addSelectedEdges:w=>{const{multiSelectionActive:p,edgeLookup:y,nodeLookup:g,triggerNodeChanges:v,triggerEdgeChanges:_}=x();if(p){const M=w.map(z=>Ta(z,!0));_(M);return}_(Sl(y,new Set([...w]))),v(Sl(g,new Set,!0))},unselectNodesAndEdges:({nodes:w,edges:p}={})=>{const{edges:y,nodes:g,nodeLookup:v,triggerNodeChanges:_,triggerEdgeChanges:M}=x(),z=w||g,C=p||y,B=[];for(const S of z){if(!S.selected)continue;const H=v.get(S.id);H&&(H.selected=!1),B.push(Ta(S.id,!1))}const L=[];for(const S of C)S.selected&&L.push(Ta(S.id,!1));_(B),M(L)},setMinZoom:w=>{const{panZoom:p,maxZoom:y}=x();p==null||p.setScaleExtent([w,y]),m({minZoom:w})},setMaxZoom:w=>{const{panZoom:p,minZoom:y}=x();p==null||p.setScaleExtent([y,w]),m({maxZoom:w})},setTranslateExtent:w=>{var p;(p=x().panZoom)==null||p.setTranslateExtent(w),m({translateExtent:w})},resetSelectedElements:()=>{const{edges:w,nodes:p,triggerNodeChanges:y,triggerEdgeChanges:g,elementsSelectable:v}=x();if(!v)return;const _=p.reduce((z,C)=>C.selected?[...z,Ta(C.id,!1)]:z,[]),M=w.reduce((z,C)=>C.selected?[...z,Ta(C.id,!1)]:z,[]);y(_),g(M)},setNodeExtent:w=>{const{nodes:p,nodeLookup:y,parentLookup:g,nodeOrigin:v,elevateNodesOnSelect:_,nodeExtent:M,zIndexMode:z}=x();w[0][0]===M[0][0]&&w[0][1]===M[0][1]&&w[1][0]===M[1][0]&&w[1][1]===M[1][1]||($u(p,y,g,{nodeOrigin:v,nodeExtent:w,elevateNodesOnSelect:_,checkEquality:!1,zIndexMode:z}),m({nodeExtent:w}))},panBy:w=>{const{transform:p,width:y,height:g,panZoom:v,translateExtent:_}=x();return e3({delta:w,panZoom:v,transform:p,translateExtent:_,width:y,height:g})},setCenter:async(w,p,y)=>{const{width:g,height:v,maxZoom:_,panZoom:M}=x();if(!M)return!1;const z=typeof(y==null?void 0:y.zoom)<"u"?y.zoom:_;return await M.setViewport({x:g/2-w*z,y:v/2-p*z,zoom:z},{duration:y==null?void 0:y.duration,ease:y==null?void 0:y.ease,interpolate:y==null?void 0:y.interpolate}),!0},cancelConnection:()=>{m({connection:{...Cg}})},updateConnection:w=>{m({connection:w})},reset:()=>m({...Vm()})}},Object.is);function Hx({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:a,initialWidth:l,initialHeight:r,initialMinZoom:i,initialMaxZoom:s,initialFitViewOptions:c,fitView:u,nodeOrigin:d,nodeExtent:f,zIndexMode:h,children:m}){const[x]=k.useState(()=>H5({nodes:e,edges:t,defaultNodes:n,defaultEdges:a,width:l,height:r,fitView:u,minZoom:i,maxZoom:s,fitViewOptions:c,nodeOrigin:d,nodeExtent:f,zIndexMode:h}));return o.jsx(e4,{value:x,children:o.jsx(E4,{children:m})})}function I5({children:e,nodes:t,edges:n,defaultNodes:a,defaultEdges:l,width:r,height:i,fitView:s,fitViewOptions:c,minZoom:u,maxZoom:d,nodeOrigin:f,nodeExtent:h,zIndexMode:m}){return k.useContext(Ys)?o.jsx(o.Fragment,{children:e}):o.jsx(Hx,{initialNodes:t,initialEdges:n,defaultNodes:a,defaultEdges:l,initialWidth:r,initialHeight:i,fitView:s,initialFitViewOptions:c,initialMinZoom:u,initialMaxZoom:d,nodeOrigin:f,nodeExtent:h,zIndexMode:m,children:e})}const U5={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function V5({nodes:e,edges:t,defaultNodes:n,defaultEdges:a,className:l,nodeTypes:r,edgeTypes:i,onNodeClick:s,onEdgeClick:c,onInit:u,onMove:d,onMoveStart:f,onMoveEnd:h,onConnect:m,onConnectStart:x,onConnectEnd:j,onClickConnectStart:w,onClickConnectEnd:p,onNodeMouseEnter:y,onNodeMouseMove:g,onNodeMouseLeave:v,onNodeContextMenu:_,onNodeDoubleClick:M,onNodeDragStart:z,onNodeDrag:C,onNodeDragStop:B,onNodesDelete:L,onEdgesDelete:S,onDelete:H,onSelectionChange:U,onSelectionDragStart:E,onSelectionDrag:R,onSelectionDragStop:b,onSelectionContextMenu:N,onSelectionStart:T,onSelectionEnd:D,onBeforeDelete:A,connectionMode:O,connectionLineType:V=aa.Bezier,connectionLineStyle:Z,connectionLineComponent:P,connectionLineContainerStyle:ae,deleteKeyCode:ue="Backspace",selectionKeyCode:le="Shift",selectionOnDrag:q=!1,selectionMode:W=Ql.Full,panActivationKeyCode:oe="Space",multiSelectionKeyCode:$=ci()?"Meta":"Control",zoomActivationKeyCode:Q=ci()?"Meta":"Control",snapToGrid:ee,snapGrid:de,onlyRenderVisibleElements:me=!1,selectNodesOnDrag:Y,nodesDraggable:ge,autoPanOnNodeFocus:Je,nodesConnectable:it,nodesFocusable:Fe,nodeOrigin:$t=dx,edgesFocusable:za,edgesReconnectable:Sn,elementsSelectable:En=!0,defaultViewport:zt=h4,minZoom:en=.5,maxZoom:tn=2,translateExtent:kn=oi,preventScrolling:xc=!0,nodeExtent:jr,defaultMarkerColor:yc="#b1b1b7",zoomOnScroll:vc=!0,zoomOnPinch:bc=!0,panOnScroll:Zi=!1,panOnScrollSpeed:wc=.5,panOnScrollMode:jc=Ua.Free,zoomOnDoubleClick:I=!0,panOnDrag:X=!0,onPaneClick:K,onPaneMouseEnter:ie,onPaneMouseMove:se,onPaneMouseLeave:re,onPaneScroll:pe,onPaneContextMenu:$e,paneClickDistance:Ye=1,nodeClickDistance:Ma=0,children:rb,onReconnect:ib,onReconnectStart:ob,onReconnectEnd:sb,onEdgeContextMenu:cb,onEdgeDoubleClick:ub,onEdgeMouseEnter:db,onEdgeMouseMove:fb,onEdgeMouseLeave:hb,reconnectRadius:mb=10,onNodesChange:pb,onEdgesChange:gb,noDragClassName:xb="nodrag",noWheelClassName:yb="nowheel",noPanClassName:Eh="nopan",fitView:kh,fitViewOptions:_h,connectOnClick:vb,attributionPosition:bb,proOptions:wb,defaultEdgeOptions:jb,elevateNodesOnSelect:Nb=!0,elevateEdgesOnSelect:Sb=!1,disableKeyboardA11y:Ch=!1,autoPanOnConnect:Eb,autoPanOnNodeDrag:kb,autoPanOnSelection:_b=!0,autoPanSpeed:Cb,connectionRadius:zb,isValidConnection:Mb,onError:Ab,style:Tb,id:zh,nodeDragThreshold:Db,connectionDragThreshold:Ob,viewport:Bb,onViewportChange:Rb,width:Lb,height:Hb,colorMode:Ib="light",debug:Ub,onScroll:Qi,ariaLabelConfig:Vb,zIndexMode:Mh="basic",...$b},Yb){const Nc=zh||"1",Xb=x4(Ib),qb=k.useCallback(Ah=>{Ah.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Qi==null||Qi(Ah)},[Qi]);return o.jsx("div",{"data-testid":"rf__wrapper",...$b,onScroll:qb,style:{...Tb,...U5},ref:Yb,className:We(["react-flow",l,Xb]),id:zh,role:"application",children:o.jsxs(I5,{nodes:e,edges:t,width:Lb,height:Hb,fitView:kh,fitViewOptions:_h,minZoom:en,maxZoom:tn,nodeOrigin:$t,nodeExtent:jr,zIndexMode:Mh,children:[o.jsx(g4,{nodes:e,edges:t,defaultNodes:n,defaultEdges:a,onConnect:m,onConnectStart:x,onConnectEnd:j,onClickConnectStart:w,onClickConnectEnd:p,nodesDraggable:ge,autoPanOnNodeFocus:Je,nodesConnectable:it,nodesFocusable:Fe,edgesFocusable:za,edgesReconnectable:Sn,elementsSelectable:En,elevateNodesOnSelect:Nb,elevateEdgesOnSelect:Sb,minZoom:en,maxZoom:tn,nodeExtent:jr,onNodesChange:pb,onEdgesChange:gb,snapToGrid:ee,snapGrid:de,connectionMode:O,translateExtent:kn,connectOnClick:vb,defaultEdgeOptions:jb,fitView:kh,fitViewOptions:_h,onNodesDelete:L,onEdgesDelete:S,onDelete:H,onNodeDragStart:z,onNodeDrag:C,onNodeDragStop:B,onSelectionDrag:R,onSelectionDragStart:E,onSelectionDragStop:b,onMove:d,onMoveStart:f,onMoveEnd:h,noPanClassName:Eh,nodeOrigin:$t,rfId:Nc,autoPanOnConnect:Eb,autoPanOnNodeDrag:kb,autoPanSpeed:Cb,onError:Ab,connectionRadius:zb,isValidConnection:Mb,selectNodesOnDrag:Y,nodeDragThreshold:Db,connectionDragThreshold:Ob,onBeforeDelete:A,debug:Ub,ariaLabelConfig:Vb,zIndexMode:Mh}),o.jsx(R5,{onInit:u,onNodeClick:s,onEdgeClick:c,onNodeMouseEnter:y,onNodeMouseMove:g,onNodeMouseLeave:v,onNodeContextMenu:_,onNodeDoubleClick:M,nodeTypes:r,edgeTypes:i,connectionLineType:V,connectionLineStyle:Z,connectionLineComponent:P,connectionLineContainerStyle:ae,selectionKeyCode:le,selectionOnDrag:q,selectionMode:W,deleteKeyCode:ue,multiSelectionKeyCode:$,panActivationKeyCode:oe,zoomActivationKeyCode:Q,onlyRenderVisibleElements:me,defaultViewport:zt,translateExtent:kn,minZoom:en,maxZoom:tn,preventScrolling:xc,zoomOnScroll:vc,zoomOnPinch:bc,zoomOnDoubleClick:I,panOnScroll:Zi,panOnScrollSpeed:wc,panOnScrollMode:jc,panOnDrag:X,autoPanOnSelection:_b,onPaneClick:K,onPaneMouseEnter:ie,onPaneMouseMove:se,onPaneMouseLeave:re,onPaneScroll:pe,onPaneContextMenu:$e,paneClickDistance:Ye,nodeClickDistance:Ma,onSelectionContextMenu:N,onSelectionStart:T,onSelectionEnd:D,onReconnect:ib,onReconnectStart:ob,onReconnectEnd:sb,onEdgeContextMenu:cb,onEdgeDoubleClick:ub,onEdgeMouseEnter:db,onEdgeMouseMove:fb,onEdgeMouseLeave:hb,reconnectRadius:mb,defaultMarkerColor:yc,noDragClassName:xb,noWheelClassName:yb,noPanClassName:Eh,rfId:Nc,disableKeyboardA11y:Ch,nodeExtent:jr,viewport:Bb,onViewportChange:Rb}),o.jsx(f4,{onSelectionChange:U}),rb,o.jsx(o4,{proOptions:wb,position:bb}),o.jsx(i4,{rfId:Nc,disableKeyboardA11y:Ch})]})})}var $5=mx(V5);const Y5=e=>{var t;return(t=e.domNode)==null?void 0:t.querySelector(".react-flow__edgelabel-renderer")};function X5({children:e}){const t=Ne(Y5);return t?pf.createPortal(e,t):null}function q5(){const e=Re();return k.useCallback(t=>{const{domNode:n,updateNodeInternals:a}=e.getState(),l=Array.isArray(t)?t:[t],r=new Map;l.forEach(i=>{const s=n==null?void 0:n.querySelector(`.react-flow__node[data-id="${i}"]`);s&&r.set(i,{id:i,nodeElement:s,force:!0})}),requestAnimationFrame(()=>a(r,{triggerFitView:!1}))},[])}function F5(e){const[t,n]=k.useState(e),a=k.useCallback(l=>n(r=>gf(l,r)),[]);return[t,n,a]}function G5(e){const[t,n]=k.useState(e),a=k.useCallback(l=>n(r=>hx(l,r)),[]);return[t,n,a]}function Z5({dimensions:e,lineWidth:t,variant:n,className:a}){return o.jsx("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:We(["react-flow__background-pattern",n,a])})}function Q5({radius:e,className:t}){return o.jsx("circle",{cx:e,cy:e,r:e,className:We(["react-flow__background-pattern","dots",t])})}var ha;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(ha||(ha={}));const K5={[ha.Dots]:1,[ha.Lines]:1,[ha.Cross]:6},P5=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function Ix({id:e,variant:t=ha.Dots,gap:n=20,size:a,lineWidth:l=1,offset:r=0,color:i,bgColor:s,style:c,className:u,patternClassName:d}){const f=k.useRef(null),{transform:h,patternId:m}=Ne(P5,He),x=a||K5[t],j=t===ha.Dots,w=t===ha.Cross,p=Array.isArray(n)?n:[n,n],y=[p[0]*h[2]||1,p[1]*h[2]||1],g=x*h[2],v=Array.isArray(r)?r:[r,r],_=w?[g,g]:y,M=[v[0]*h[2]||1+_[0]/2,v[1]*h[2]||1+_[1]/2],z=`${m}${e||""}`;return o.jsxs("svg",{className:We(["react-flow__background",u]),style:{...c,...qs,"--xy-background-color-props":s,"--xy-background-pattern-color-props":i},ref:f,"data-testid":"rf__background",children:[o.jsx("pattern",{id:z,x:h[0]%y[0],y:h[1]%y[1],width:y[0],height:y[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${M[0]},-${M[1]})`,children:j?o.jsx(Q5,{radius:g/2,className:d}):o.jsx(Z5,{dimensions:_,lineWidth:l,variant:t,className:d})}),o.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${z})`})]})}Ix.displayName="Background";const W5=k.memo(Ix);function J5(){return o.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:o.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function eE(){return o.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:o.jsx("path",{d:"M0 0h32v4.2H0z"})})}function tE(){return o.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:o.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 nE(){return o.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:o.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 aE(){return o.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:o.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 ro({children:e,className:t,...n}){return o.jsx("button",{type:"button",className:We(["react-flow__controls-button",t]),...n,children:e})}const lE=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function Ux({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:a=!0,fitViewOptions:l,onZoomIn:r,onZoomOut:i,onFitView:s,onInteractiveChange:c,className:u,children:d,position:f="bottom-left",orientation:h="vertical","aria-label":m}){const x=Re(),{isInteractive:j,minZoomReached:w,maxZoomReached:p,ariaLabelConfig:y}=Ne(lE,He),{zoomIn:g,zoomOut:v,fitView:_}=Ai(),M=()=>{g(),r==null||r()},z=()=>{v(),i==null||i()},C=()=>{_(l),s==null||s()},B=()=>{x.setState({nodesDraggable:!j,nodesConnectable:!j,elementsSelectable:!j}),c==null||c(!j)},L=h==="horizontal"?"horizontal":"vertical";return o.jsxs(Xs,{className:We(["react-flow__controls",L,u]),position:f,style:e,"data-testid":"rf__controls","aria-label":m??y["controls.ariaLabel"],children:[t&&o.jsxs(o.Fragment,{children:[o.jsx(ro,{onClick:M,className:"react-flow__controls-zoomin",title:y["controls.zoomIn.ariaLabel"],"aria-label":y["controls.zoomIn.ariaLabel"],disabled:p,children:o.jsx(J5,{})}),o.jsx(ro,{onClick:z,className:"react-flow__controls-zoomout",title:y["controls.zoomOut.ariaLabel"],"aria-label":y["controls.zoomOut.ariaLabel"],disabled:w,children:o.jsx(eE,{})})]}),n&&o.jsx(ro,{className:"react-flow__controls-fitview",onClick:C,title:y["controls.fitView.ariaLabel"],"aria-label":y["controls.fitView.ariaLabel"],children:o.jsx(tE,{})}),a&&o.jsx(ro,{className:"react-flow__controls-interactive",onClick:B,title:y["controls.interactive.ariaLabel"],"aria-label":y["controls.interactive.ariaLabel"],children:j?o.jsx(aE,{}):o.jsx(nE,{})}),d]})}Ux.displayName="Controls";k.memo(Ux);function rE({id:e,x:t,y:n,width:a,height:l,style:r,color:i,strokeColor:s,strokeWidth:c,className:u,borderRadius:d,shapeRendering:f,selected:h,onClick:m}){const{background:x,backgroundColor:j}=r||{},w=i||x||j;return o.jsx("rect",{className:We(["react-flow__minimap-node",{selected:h},u]),x:t,y:n,rx:d,ry:d,width:a,height:l,style:{fill:w,stroke:s,strokeWidth:c},shapeRendering:f,onClick:m?p=>m(p,e):void 0})}const iE=k.memo(rE),oE=e=>e.nodes.map(t=>t.id),Oc=e=>e instanceof Function?e:()=>e;function sE({nodeStrokeColor:e,nodeColor:t,nodeClassName:n="",nodeBorderRadius:a=5,nodeStrokeWidth:l,nodeComponent:r=iE,onClick:i}){const s=Ne(oE,He),c=Oc(t),u=Oc(e),d=Oc(n),f=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return o.jsx(o.Fragment,{children:s.map(h=>o.jsx(uE,{id:h,nodeColorFunc:c,nodeStrokeColorFunc:u,nodeClassNameFunc:d,nodeBorderRadius:a,nodeStrokeWidth:l,NodeComponent:r,onClick:i,shapeRendering:f},h))})}function cE({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:a,nodeBorderRadius:l,nodeStrokeWidth:r,shapeRendering:i,NodeComponent:s,onClick:c}){const{node:u,x:d,y:f,width:h,height:m}=Ne(x=>{const j=x.nodeLookup.get(e);if(!j)return{node:void 0,x:0,y:0,width:0,height:0};const w=j.internals.userNode,{x:p,y}=j.internals.positionAbsolute,{width:g,height:v}=Zn(w);return{node:w,x:p,y,width:g,height:v}},He);return!u||u.hidden||!Bg(u)?null:o.jsx(s,{x:d,y:f,width:h,height:m,style:u.style,selected:!!u.selected,className:a(u),color:t(u),borderRadius:l,strokeColor:n(u),strokeWidth:r,shapeRendering:i,onClick:c,id:u.id})}const uE=k.memo(cE);var dE=k.memo(sE);const fE=200,hE=150,mE=e=>!e.hidden,pE=e=>{const t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?Dg(zi(e.nodeLookup,{filter:mE}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},gE="react-flow__minimap-desc";function Vx({style:e,className:t,nodeStrokeColor:n,nodeColor:a,nodeClassName:l="",nodeBorderRadius:r=5,nodeStrokeWidth:i,nodeComponent:s,bgColor:c,maskColor:u,maskStrokeColor:d,maskStrokeWidth:f,position:h="bottom-right",onClick:m,onNodeClick:x,pannable:j=!1,zoomable:w=!1,ariaLabel:p,inversePan:y,zoomStep:g=1,offsetScale:v=5}){const _=Re(),M=k.useRef(null),{boundingRect:z,viewBB:C,rfId:B,panZoom:L,translateExtent:S,flowWidth:H,flowHeight:U,ariaLabelConfig:E}=Ne(pE,He),R=(e==null?void 0:e.width)??fE,b=(e==null?void 0:e.height)??hE,N=z.width/R,T=z.height/b,D=Math.max(N,T),A=D*R,O=D*b,V=v*D,Z=z.x-(A-z.width)/2-V,P=z.y-(O-z.height)/2-V,ae=A+V*2,ue=O+V*2,le=`${gE}-${B}`,q=k.useRef(0),W=k.useRef();q.current=D,k.useEffect(()=>{if(M.current&&L)return W.current=c3({domNode:M.current,panZoom:L,getTransform:()=>_.getState().transform,getViewScale:()=>q.current}),()=>{var ee;(ee=W.current)==null||ee.destroy()}},[L]),k.useEffect(()=>{var ee;(ee=W.current)==null||ee.update({translateExtent:S,width:H,height:U,inversePan:y,pannable:j,zoomStep:g,zoomable:w})},[j,w,y,g,S,H,U]);const oe=m?ee=>{var Y;const[de,me]=((Y=W.current)==null?void 0:Y.pointer(ee))||[0,0];m(ee,{x:de,y:me})}:void 0,$=x?k.useCallback((ee,de)=>{const me=_.getState().nodeLookup.get(de).internals.userNode;x(ee,me)},[]):void 0,Q=p??E["minimap.ariaLabel"];return o.jsx(Xs,{position:h,style:{...e,"--xy-minimap-background-color-props":typeof c=="string"?c:void 0,"--xy-minimap-mask-background-color-props":typeof u=="string"?u:void 0,"--xy-minimap-mask-stroke-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-width-props":typeof f=="number"?f*D:void 0,"--xy-minimap-node-background-color-props":typeof a=="string"?a:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof i=="number"?i:void 0},className:We(["react-flow__minimap",t]),"data-testid":"rf__minimap",children:o.jsxs("svg",{width:R,height:b,viewBox:`${Z} ${P} ${ae} ${ue}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":le,ref:M,onClick:oe,children:[Q&&o.jsx("title",{id:le,children:Q}),o.jsx(dE,{onClick:$,nodeColor:a,nodeStrokeColor:n,nodeBorderRadius:r,nodeClassName:l,nodeStrokeWidth:i,nodeComponent:s}),o.jsx("path",{className:"react-flow__minimap-mask",d:`M${Z-V},${P-V}h${ae+V*2}v${ue+V*2}h${-ae-V*2}z
47
+ M${C.x},${C.y}h${C.width}v${C.height}h${-C.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Vx.displayName="MiniMap";k.memo(Vx);const xE=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,yE={[Ja.Line]:"right",[Ja.Handle]:"bottom-right"};function vE({nodeId:e,position:t,variant:n=Ja.Handle,className:a,style:l=void 0,children:r,color:i,minWidth:s=10,minHeight:c=10,maxWidth:u=Number.MAX_VALUE,maxHeight:d=Number.MAX_VALUE,keepAspectRatio:f=!1,resizeDirection:h,autoScale:m=!0,shouldResize:x,onResizeStart:j,onResize:w,onResizeEnd:p}){const y=yx(),g=typeof e=="string"?e:y,v=Re(),_=k.useRef(null),M=n===Ja.Handle,z=Ne(k.useCallback(xE(M&&m),[M,m]),He),C=k.useRef(null),B=t??yE[n];k.useEffect(()=>{if(!(!_.current||!g))return C.current||(C.current=S3({domNode:_.current,nodeId:g,getStoreItems:()=>{const{nodeLookup:S,transform:H,snapGrid:U,snapToGrid:E,nodeOrigin:R,domNode:b}=v.getState();return{nodeLookup:S,transform:H,snapGrid:U,snapToGrid:E,nodeOrigin:R,paneDomNode:b}},onChange:(S,H)=>{const{triggerNodeChanges:U,nodeLookup:E,parentLookup:R,nodeOrigin:b}=v.getState(),N=[],T={x:S.x,y:S.y},D=E.get(g);if(D&&D.expandParent&&D.parentId){const A=D.origin??b,O=S.width??D.measured.width??0,V=S.height??D.measured.height??0,Z={id:D.id,parentId:D.parentId,rect:{width:O,height:V,...Rg({x:S.x??D.position.x,y:S.y??D.position.y},{width:O,height:V},D.parentId,E,A)}},P=mf([Z],E,R,b);N.push(...P),T.x=S.x?Math.max(A[0]*O,S.x):void 0,T.y=S.y?Math.max(A[1]*V,S.y):void 0}if(T.x!==void 0&&T.y!==void 0){const A={id:g,type:"position",position:{...T}};N.push(A)}if(S.width!==void 0&&S.height!==void 0){const O={id:g,type:"dimensions",resizing:!0,setAttributes:h?h==="horizontal"?"width":"height":!0,dimensions:{width:S.width,height:S.height}};N.push(O)}for(const A of H){const O={...A,type:"position"};N.push(O)}U(N)},onEnd:({width:S,height:H})=>{const U={id:g,type:"dimensions",resizing:!1,dimensions:{width:S,height:H}};v.getState().triggerNodeChanges([U])}})),C.current.update({controlPosition:B,boundaries:{minWidth:s,minHeight:c,maxWidth:u,maxHeight:d},keepAspectRatio:f,resizeDirection:h,onResizeStart:j,onResize:w,onResizeEnd:p,shouldResize:x}),()=>{var S;(S=C.current)==null||S.destroy()}},[B,s,c,u,d,f,j,w,p,x]);const L=B.split("-");return o.jsx("div",{className:We(["react-flow__resize-control","nodrag",...L,n,a]),ref:_,style:{...l,scale:z,...i&&{[M?"backgroundColor":"borderColor"]:i}},children:r})}const $m=k.memo(vE);function $x({nodeId:e,isVisible:t=!0,handleClassName:n,handleStyle:a,lineClassName:l,lineStyle:r,color:i,minWidth:s=10,minHeight:c=10,maxWidth:u=Number.MAX_VALUE,maxHeight:d=Number.MAX_VALUE,keepAspectRatio:f=!1,autoScale:h=!0,shouldResize:m,onResizeStart:x,onResize:j,onResizeEnd:w}){return t?o.jsxs(o.Fragment,{children:[v3.map(p=>o.jsx($m,{className:l,style:r,nodeId:e,position:p,variant:Ja.Line,color:i,minWidth:s,minHeight:c,maxWidth:u,maxHeight:d,onResizeStart:x,keepAspectRatio:f,autoScale:h,shouldResize:m,onResize:j,onResizeEnd:w},p)),y3.map(p=>o.jsx($m,{className:n,style:a,nodeId:e,position:p,color:i,minWidth:s,minHeight:c,maxWidth:u,maxHeight:d,onResizeStart:x,keepAspectRatio:f,autoScale:h,shouldResize:m,onResize:j,onResizeEnd:w},p))]}):null}const bE="inlinestudio-media";function wE(e){const n=e.replace(/\\/g,"/").replace(/^\/+/,"").split("/").map(encodeURIComponent).join("/");return`${bE}://local/${n}`}function mr(e){return`thumbs/take-${e}.peaks.json`}let Yx=wE;function jE(e){Yx=e}function ce(e){return Yx(e)}function NE(e){return e.filter(t=>!t.hidden)}function SE(e,t){return e===t?!0:e==="image"&&t==="image[]"}const EE={image:"#34d399","image[]":"#34d399",video:"#22d3ee",audio:"#a78bfa",text:"#fbbf24",mask:"#f472b6",model:"#f87171",vae:"#fb923c","text-encoder":"#facc15",conditioning:"#c084fc",latent:"#60a5fa"};function Ym(e){return EE[e]??"#a1a1aa"}const el=_t((e,t)=>({descriptors:[],registryVersion:null,running:!1,error:null,load:async()=>{const n=await F().core.status(),a=n.ok?n.value.running:!1,l=await F().core.models();l.ok?e({descriptors:l.value.models,registryVersion:l.value.registryVersion,running:a,error:null}):e({running:a,error:l.error})},byType:n=>t().descriptors.find(a=>a.type===n)}));function Xx(e){const t=`$${e.amount<1?e.amount.toFixed(3):e.amount.toFixed(2)}`;return e.approx?`~${t}`:t}function qx(e){const t={};for(const n of e.params)t[n.key]=n.default;return t}function kE(){return{images:[],masks:[],videos:[],audios:[],texts:[]}}function yf(e,t,n){const a={"image/png":".png","image/jpeg":".jpg","image/jpg":".jpg","image/webp":".webp","image/gif":".gif","video/mp4":".mp4","video/webm":".webm","audio/mpeg":".mp3","audio/wav":".wav","audio/mp4":".m4a","audio/aac":".aac"};if(e&&a[e.toLowerCase()])return a[e.toLowerCase()];if(t&&t.includes(".")){const l=t.slice(t.lastIndexOf(".")).toLowerCase();if(l.length>=2&&l.length<=6)return l}return n}function Qn(e){return()=>e}function Fs(e,t=".png"){return((e==null?void 0:e.images)??[]).filter(a=>typeof(a==null?void 0:a.url)=="string"&&a.url.length>0).map(a=>({url:a.url,ext:yf(a.content_type,a.file_name,t),kind:"image"}))}function _E(e,t=".m4a"){return((e==null?void 0:e.audios)??[]).filter(a=>typeof(a==null?void 0:a.url)=="string"&&a.url.length>0).map(a=>({url:a.url,ext:yf(a.content_type,a.file_name,t),kind:"audio"}))}function Gs(e){const t=e==null?void 0:e.video;return!t||typeof t.url!="string"||t.url.length===0?[]:[{url:t.url,ext:yf(t.content_type,t.file_name,".mp4"),kind:"video"}]}function ol(e){return{amount:e,approx:!0}}function Kt(e,t,n,a,l={}){return{key:e,label:t,widget:"select",options:n.map(r=>({value:r,label:r})),default:a,advanced:l.advanced??!0}}function Va(e,t,n,a={}){return{key:e,label:t,widget:"number",default:n,min:a.min,max:a.max,step:a.step,advanced:a.advanced??!0}}function Fx(e,t,n,a={}){return{key:e,label:t,widget:"boolean",default:n,advanced:a.advanced??!0}}function vf(){return{key:"seed",label:"Seed (-1 = random)",widget:"number",default:-1,step:1,advanced:!0}}function bf(e,t){const n=Number(t.seed??-1);Number.isFinite(n)&&n>=0&&(e.seed=n)}const CE=["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],zE="openai/gpt-image-2",ME={id:"openai/gpt-image-2",title:"GPT Image 2",category:"Image",provider:"fal",outputKind:"image",inputs:[{id:"images",label:"Image(s)",kind:"image[]",required:!1},{id:"mask",label:"Mask",kind:"image",required:!1}],params:[Kt("image_size","Size",CE,"landscape_4_3"),Kt("quality","Quality",["low","medium","high"],"high"),Va("num_images","Count",1,{min:1,max:8,step:1}),Kt("output_format","Format",["png","jpeg","webp"],"png")],outputs:[{id:"images",label:"Image(s)",kind:"image[]"}],resolveEndpoint:Qn(zE),buildRequest(e,t){const n={prompt:String(e.prompt??""),image_size:e.image_size??"landscape_4_3",quality:e.quality??"high",num_images:Number(e.num_images??1),output_format:e.output_format??"png"};return t.images.length>0&&(n.image_urls=t.images,t.masks.length>0&&(n.mask_url=t.masks[0])),n},parseOutputs:e=>Fs(e),estimatePrice(e){const t={low:.005,medium:.037,high:.145},n=t[String(e.quality??"high")]??t.high,a=Math.max(1,Number(e.num_images??1));return ol(n*a)}},AE=["auto","21:9","16:9","3:2","4:3","5:4","1:1","4:5","3:4","2:3","9:16"],TE=["1K","2K","4K","512x512"],DE={"1K":1,"2K":1.5,"4K":2,"512x512":.75},OE={id:"fal-ai/nano-banana-2",title:"Nano Banana 2",category:"Image",provider:"fal",outputKind:"image",inputs:[],params:[Kt("aspect_ratio","Aspect ratio",AE,"auto"),Kt("resolution","Resolution",TE,"1K"),Va("limit_generations","Count",1,{min:1,max:4,step:1})],outputs:[{id:"images",label:"Image(s)",kind:"image[]"}],resolveEndpoint:Qn("fal-ai/nano-banana-2"),buildRequest:e=>({prompt:String(e.prompt??""),aspect_ratio:e.aspect_ratio??"auto",resolution:e.resolution??"1K",limit_generations:Number(e.limit_generations??1)}),parseOutputs:e=>Fs(e),estimatePrice:e=>{const t=DE[String(e.resolution??"1K")]??1,n=Math.max(1,Number(e.limit_generations??1));return ol(.08*t*n)}},BE=["auto","21:9","16:9","3:2","4:3","5:4","1:1","4:5","3:4","2:3","9:16"],RE=["1K","2K","4K"],LE={id:"fal-ai/nano-banana-pro/edit",title:"Nano Banana Pro · Edit",category:"Image",provider:"fal",outputKind:"image",inputs:[{id:"image_urls",label:"Image(s)",kind:"image[]",required:!0}],params:[Kt("aspect_ratio","Aspect ratio",BE,"auto"),Kt("resolution","Resolution",RE,"1K"),Va("num_images","Count",1,{min:1,max:4,step:1})],outputs:[{id:"images",label:"Image(s)",kind:"image[]"}],resolveEndpoint:Qn("fal-ai/nano-banana-pro/edit"),buildRequest:(e,t)=>({prompt:String(e.prompt??""),image_urls:t.images,aspect_ratio:e.aspect_ratio??"auto",resolution:e.resolution??"1K",num_images:Number(e.num_images??1)}),parseOutputs:e=>Fs(e),estimatePrice:e=>{const t=String(e.resolution??"1K")==="4K"?2:1,n=Math.max(1,Number(e.num_images??1));return ol(.15*t*n)}},HE="fal-ai/ltx-2.3-quality/image-to-video",zo=[{value:"landscape_16_9",label:"Landscape 16:9",width:1024,height:576},{value:"portrait_16_9",label:"Portrait 9:16",width:576,height:1024},{value:"square_hd",label:"Square HD",width:1024,height:1024},{value:"landscape_4_3",label:"Landscape 4:3",width:1024,height:768},{value:"portrait_4_3",label:"Portrait 3:4",width:768,height:1024},{value:"square",label:"Square",width:512,height:512},{value:"auto",label:"Auto (match input)",width:1024,height:576}],Gx="landscape_16_9";function Xm(e){const t=r=>zo.find(i=>i.value===r)??zo[0],n=String(e??"");if(zo.some(r=>r.value===n))return t(n);const[a,l]=n.split(/x/i).map(r=>Number(r.trim()));return t(a&&l?a===l?"square_hd":a>l?"landscape_16_9":"portrait_16_9":Gx)}const IE={id:"fal-ai/ltx-2.3-quality/image-to-video",title:"LTX 2.3 · Image → Video",category:"Video",provider:"fal",outputKind:"video",inputs:[{id:"image",label:"Image",kind:"image",required:!0}],params:[Va("number_of_frames","Frames",96,{min:1,max:300,step:1}),{key:"resolution",label:"Resolution",widget:"select",options:zo.map(e=>({value:e.value,label:e.label})),default:Gx,advanced:!0},Fx("generate_audio","Generate audio",!1),vf()],outputs:[{id:"video",label:"Video",kind:"video"}],resolveEndpoint:Qn(HE),buildRequest(e,t){const n={prompt:String(e.prompt??""),image_url:t.images[0]??"",number_of_frames:Number(e.number_of_frames??96),resolution:Xm(e.resolution).value,generate_audio:!!(e.generate_audio??!1)};return bf(n,e),n},parseOutputs:e=>Gs(e),estimatePrice(e){const{width:t,height:n}=Xm(e.resolution),a=Number(e.number_of_frames??96);if(!a)return null;const l=t*n*a/1e6;return ol(l*.0024075)}},UE=["480p","720p","1080p"],VE=["auto","4","5","6","8","10","12"],$E=["auto","21:9","16:9","4:3","1:1","3:4","9:16"],qm={"480p":.15,"720p":.3,"1080p":.68},wf=[Kt("resolution","Resolution",UE,"720p"),Kt("duration","Duration (s)",VE,"auto"),Kt("aspect_ratio","Aspect ratio",$E,"auto"),Fx("generate_audio","Generate audio",!0),vf()];function jf(e,t){const n={prompt:String(e.prompt??""),resolution:e.resolution??"720p",duration:e.duration??"auto",aspect_ratio:e.aspect_ratio??"auto",generate_audio:!!(e.generate_audio??!0),...t};return bf(n,e),n}function Nf(e){const t=qm[String(e.resolution??"720p")]??qm["720p"],n=String(e.duration??"auto"),a=n==="auto"?5:Number(n)||5;return ol(t*a)}const YE={id:"bytedance/seedance-2.0/text-to-video",title:"Seedance 2.0 · Text → Video",category:"Video",provider:"fal",outputKind:"video",inputs:[],params:wf,outputs:[{id:"video",label:"Video",kind:"video"}],resolveEndpoint:Qn("bytedance/seedance-2.0/text-to-video"),buildRequest:e=>jf(e,{}),parseOutputs:e=>Gs(e),estimatePrice:e=>Nf(e)},XE={id:"bytedance/seedance-2.0/image-to-video",title:"Seedance 2.0 · Image → Video",category:"Video",provider:"fal",outputKind:"video",inputs:[{id:"image",label:"Image",kind:"image",required:!0}],params:wf,outputs:[{id:"video",label:"Video",kind:"video"}],resolveEndpoint:Qn("bytedance/seedance-2.0/image-to-video"),buildRequest:(e,t)=>jf(e,{image_url:t.images[0]??""}),parseOutputs:e=>Gs(e),estimatePrice:e=>Nf(e)},qE={id:"bytedance/seedance-2.0/reference-to-video",title:"Seedance 2.0 · Reference → Video",category:"Video",provider:"fal",outputKind:"video",inputs:[{id:"image_urls",label:"Images",kind:"image[]",required:!1},{id:"video_urls",label:"Video",kind:"video",required:!1},{id:"audio_urls",label:"Audio",kind:"audio",required:!1}],params:wf,outputs:[{id:"video",label:"Video",kind:"video"}],resolveEndpoint:Qn("bytedance/seedance-2.0/reference-to-video"),buildRequest:(e,t)=>jf(e,{...t.images.length>0?{image_urls:t.images}:{},...t.videos.length>0?{video_urls:t.videos}:{},...t.audios.length>0?{audio_urls:t.audios}:{}}),parseOutputs:e=>Gs(e),estimatePrice:e=>Nf(e)},FE=["1:1","4:3","3:2","16:9","2.35:1","4:5","2:3","9:16"],GE=["raw","low","medium","high"],ZE={id:"krea/v2/large/text-to-image",title:"Krea v2 Large",category:"Image",provider:"fal",outputKind:"image",inputs:[],params:[Kt("aspect_ratio","Aspect ratio",FE,"1:1"),Kt("creativity","Creativity",GE,"medium"),vf()],outputs:[{id:"images",label:"Image(s)",kind:"image[]"}],resolveEndpoint:Qn("krea/v2/large/text-to-image"),buildRequest:e=>{const t={prompt:String(e.prompt??""),aspect_ratio:e.aspect_ratio??"1:1",creativity:e.creativity??"medium"};return bf(t,e),t},parseOutputs:e=>Fs(e),estimatePrice:()=>ol(.06)},QE="sonilo/v1.1/video-to-music";function Fm(e){const t=Math.round(Number(e??1));return Number.isFinite(t)&&t>=1?t:1}function Bc(e){const t=Number(e??0);return Number.isFinite(t)&&t>0?t:null}const KE={id:"sonilo/v1.1/video-to-music",title:"Sonilo · Video → Music",category:"Audio",provider:"fal",outputKind:"audio",inputs:[{id:"video",label:"Video",kind:"video",required:!0}],promptOptional:!0,params:[Va("num_samples","Samples",1,{min:1,step:1}),Va("start_offset","Start offset (s)",0,{min:0,step:1}),Va("duration","Duration (s, 0 = full video)",0,{min:0,step:1})],outputs:[{id:"audio",label:"Music",kind:"audio"}],resolveEndpoint:Qn(QE),buildRequest(e,t){const n={video_url:t.videos[0]??"",num_samples:Fm(e.num_samples)},a=String(e.prompt??"").trim();a&&(n.prompt=a);const l=Bc(e.start_offset);l!==null&&(n.start_offset=l);const r=Bc(e.duration);return r!==null&&(n.duration=r),n},parseOutputs:e=>_E(e),estimatePrice(e){const t=Bc(e.duration);return t===null?null:ol(t*Fm(e.num_samples)*.009)}},Zx=[ME,OE,LE,IE,YE,XE,qE,ZE,KE];function Zs(e){return Zx.find(t=>t.id===e)}function Sf(){return Zx}const PE={"fal-ai":"fal",openai:"OpenAI",bytedance:"ByteDance",krea:"Krea",sonilo:"Sonilo"};function Qx(e){return e.split("/")[0]??"other"}function Kx(e){const t=Qx(e);return PE[t]??t}function Ef(e){const t=[];for(const n of e){const a=Qx(n.id);let l=t.find(r=>r.owner===a);l||(l={owner:a,label:Kx(n.id),defs:[]},t.push(l)),l.defs.push(n)}return t}const Ie=_t(e=>({busyByFrame:{},progressByFrame:{},statusByFrame:{},settingsFrameId:null,settingsCoreItemId:null,infoModelId:null,error:null,run:async t=>{e(a=>({error:null,busyByFrame:{...a.busyByFrame,[t]:!0},progressByFrame:{...a.progressByFrame,[t]:0}}));const n=a=>e(l=>({error:a,busyByFrame:{...l.busyByFrame,[t]:!1},progressByFrame:{...l.progressByFrame,[t]:null}}));try{let a;const l=J.getState().frames.find(s=>s.id===t),r=l!=null&&l.modelId?Zs(l.modelId):void 0;if((l==null?void 0:l.provider)==="fal"&&r){const s=await F().frames.resolveFalInputs(t);if(!s.ok)return n(s.error);if(!r.promptOptional&&!s.value.prompt)return n("Connect a Prompt node with some text to generate.");const c={...kE(),images:s.value.images,videos:s.value.videos,audios:s.value.audios},u={...l.params,prompt:s.value.prompt??""};a={endpoint:r.resolveEndpoint(c),body:r.buildRequest(u,c),outputKind:r.outputKind}}const i=await F().generation.run(t,a);i.ok||n(i.error)}catch(a){n(te(a))}},runWorkflow:async t=>{e(n=>({error:null,busyByFrame:{...n.busyByFrame,[t]:!0},progressByFrame:{...n.progressByFrame,[t]:0}}));try{const n=await F().generation.runWorkflow(t);n.ok||e(a=>({error:n.error,busyByFrame:{...a.busyByFrame,[t]:!1},progressByFrame:{...a.progressByFrame,[t]:null}}))}catch(n){e(a=>({error:te(n),busyByFrame:{...a.busyByFrame,[t]:!1},progressByFrame:{...a.progressByFrame,[t]:null}}))}},cancel:async t=>{e(n=>t?{busyByFrame:{...n.busyByFrame,[t]:!1},progressByFrame:{...n.progressByFrame,[t]:null},statusByFrame:{...n.statusByFrame,[t]:void 0}}:{busyByFrame:{},progressByFrame:{},statusByFrame:{}});try{await F().generation.cancel(t)}catch(n){e({error:te(n)})}},resumePending:async()=>{try{await F().generation.resumePending()}catch(t){e({error:te(t)})}},setParams:async(t,n)=>{J.setState(a=>({frames:a.frames.map(l=>l.id===t?{...l,params:n}:l)}));try{const a=await F().frames.setFalParams(t,n);a.ok||e({error:a.error})}catch(a){e({error:te(a)})}},setModel:async(t,n)=>{try{const a=await F().frames.setModel(t,n);if(!a.ok)return e({error:a.error});await J.getState().load()}catch(a){e({error:te(a)})}},toggleSettings:t=>e(n=>({settingsFrameId:n.settingsFrameId===t?null:t,settingsCoreItemId:null,infoModelId:null})),closeSettings:()=>e({settingsFrameId:null}),toggleCoreSettings:t=>e(n=>({settingsCoreItemId:n.settingsCoreItemId===t?null:t,settingsFrameId:null,infoModelId:null})),closeCoreSettings:()=>e({settingsCoreItemId:null}),openModelInfo:t=>e({infoModelId:t,settingsFrameId:null,settingsCoreItemId:null}),closeModelInfo:()=>e({infoModelId:null}),setProgress:(t,n,a)=>e(l=>({progressByFrame:{...l.progressByFrame,[t]:n},statusByFrame:{...l.statusByFrame,[t]:a}})),setBusy:(t,n)=>e(a=>({busyByFrame:{...a.busyByFrame,[t]:n}})),finishAll:()=>e({busyByFrame:{},progressByFrame:{},statusByFrame:{}}),setError:t=>e({error:t})})),wt=_t((e,t)=>({byType:{},openFor:null,downloads:{},load:async n=>{const a=await F().models.requirements(n);a.ok&&e(l=>({byType:{...l.byType,[n]:a.value}}))},open:n=>e({openFor:n}),close:()=>e({openFor:null}),download:async(n,a)=>{const l=t().byType[n],r=a==="all"?(l==null?void 0:l.components.filter(i=>!i.present).map(i=>i.id))??[]:[a];e(i=>{const s={...i.downloads[n]??{}};for(const c of r)s[c]={fraction:0,status:"Starting…"};return{downloads:{...i.downloads,[n]:s}}}),await F().models.download(n,a)},onProgress:n=>e(a=>({downloads:{...a.downloads,[n.nodeType]:{...a.downloads[n.nodeType]??{},[n.componentId]:{fraction:n.fraction,status:n.status??"Downloading…"}}}})),onDone:n=>{e(a=>{const l={...a.downloads[n.nodeType]??{}};return delete l[n.componentId],{downloads:{...a.downloads,[n.nodeType]:l}}}),t().load(n.nodeType),el.getState().load()},onError:n=>e(a=>{var l,r;return{downloads:{...a.downloads,[n.nodeType]:{...a.downloads[n.nodeType]??{},[n.componentId]:{fraction:((r=(l=a.downloads[n.nodeType])==null?void 0:l[n.componentId])==null?void 0:r.fraction)??0,status:"Failed",error:n.error}}}}})}));function WE(e,t){var n;for(const[a,l]of Object.entries(e)){if(l.error)continue;return{label:((n=t==null?void 0:t.components.find(i=>i.id===a))==null?void 0:n.label)??"model",fraction:l.fraction,status:l.status}}return null}const Da=_t((e,t)=>({timelineByOwner:{},progressByOwner:{},error:null,resolve:async n=>{try{const a=await F().timeline.resolve(n);if(!a.ok)return e({error:a.error});e(l=>({timelineByOwner:{...l.timelineByOwner,[n]:a.value}}))}catch(a){e({error:te(a)})}},setVolumes:async(n,a,l)=>{e(r=>{const i=r.timelineByOwner[n];return i?{timelineByOwner:{...r.timelineByOwner,[n]:{...i,l1Volume:a,l2Volume:l}}}:{}});try{const r=await F().timeline.setVolumes(n,a,l);r.ok||e({error:r.error})}catch(r){e({error:te(r)})}},setProgress:(n,a)=>e(l=>({progressByOwner:{...l.progressByOwner,[n]:a}})),buildPreview:async n=>{t().setProgress(n,0);try{const a=await F().timeline.buildPreview(n);return a.ok?a.value!==null:(e({error:a.error}),!1)}catch(a){return e({error:te(a)}),!1}finally{t().setProgress(n,null)}},exportTimeline:async n=>{t().setProgress(n,0);try{const a=await F().timeline.export(n);return a.ok?a.value:(e({error:a.error}),null)}catch(a){return e({error:te(a)}),null}finally{t().setProgress(n,null)}}})),Di="application/x-inlinestudio-asset";function JE(e,t){e.setData(Di,JSON.stringify(t)),e.effectAllowed="copy"}function Oi(e){const t=e.getData(Di);if(!t)return[];try{const n=JSON.parse(t);if(Array.isArray(n))return n.filter(a=>typeof a=="string")}catch{return[t]}return[]}const Bi="application/x-inlinestudio-frame";function Px(e,t){e.setData(Bi,t),e.effectAllowed="copy"}function Qs(e){return e.getData(Bi)||null}const Wx="application/x-inlinestudio-output";function ek(e,t,n){e.setData(Wx,JSON.stringify({frameId:t,takeId:n??null}))}function Jx(e){const t=e.getData(Wx);if(!t)return null;try{const n=JSON.parse(t);return typeof n.frameId!="string"?null:{frameId:n.frameId,takeId:typeof n.takeId=="string"?n.takeId:null}}catch{return{frameId:t,takeId:null}}}function tk(e){var t;return((t=Jx(e))==null?void 0:t.frameId)??null}function Ks(e){var t;return((t=Jx(e))==null?void 0:t.takeId)??null}function hn({children:e}){return o.jsx("div",{className:"absolute -top-7 left-0 z-10 flex items-center gap-1",children:e})}function St({icon:e,children:t,tone:n="title",accent:a,title:l,tooltip:r}){const i=t==null?"px-1.5":n==="info"?"px-2":"pl-2 pr-2.5",s=n==="info"?a??"text-zinc-400":"text-zinc-200",c=o.jsxs("div",{title:r?void 0:l,className:`flex h-6 items-center gap-1 rounded-full border border-border bg-panel/95 text-[10px] font-medium shadow-sm backdrop-blur ${i} ${s}`,children:[e,t!=null&&o.jsx("span",{className:"max-w-[160px] truncate",children:t})]});return r?o.jsxs("div",{className:"group relative",children:[c,o.jsx("span",{className:"pointer-events-none absolute left-0 top-full z-20 mt-1 hidden w-52 rounded-md border border-border bg-panel/95 px-2 py-1.5 text-[10px] font-normal leading-relaxed text-zinc-300 shadow-lg backdrop-blur group-hover:block",children:r})]}):c}function ht({className:e,children:t}){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:e??"h-3.5 w-3.5 shrink-0","aria-hidden":"true",children:t})}function ey({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),o.jsx("path",{d:"M7 3v18M17 3v18M3 7.5h4M3 12h18M3 16.5h4M17 7.5h4M17 16.5h4"})]})}function nk({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("path",{d:"M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z"}),o.jsx("circle",{cx:"12",cy:"12",r:"3"})]})}function Ps({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",ry:"2"}),o.jsx("circle",{cx:"9",cy:"9",r:"2"}),o.jsx("path",{d:"m21 15-3.1-3.1a2 2 0 0 0-2.8 0L6 21"})]})}function kf({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("path",{d:"m22 8-6 4 6 4V8Z"}),o.jsx("rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",ry:"2"})]})}function Ws({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("path",{d:"M9 18V5l12-2v13"}),o.jsx("circle",{cx:"6",cy:"18",r:"3"}),o.jsx("circle",{cx:"18",cy:"16",r:"3"})]})}function ak({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("circle",{cx:"6",cy:"6",r:"3"}),o.jsx("circle",{cx:"6",cy:"18",r:"3"}),o.jsx("path",{d:"M8.12 8.12 12 12M20 4 8.12 15.88M14.8 14.8 20 20"})]})}function lk({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("path",{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3Z"}),o.jsx("path",{d:"m6.2 5.3 3.1 3.9M12.4 3.4l3.1 4"}),o.jsx("path",{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z"})]})}function ty({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"}),o.jsx("path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"})]})}function ny({className:e}){return o.jsx(ht,{className:e??"h-3 w-3",children:o.jsx("path",{d:"m6 9 6 6 6-6"})})}function ns({className:e,filled:t}){return o.jsx("svg",{viewBox:"0 0 24 24",fill:t?"currentColor":"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:e??"h-3 w-3 shrink-0","aria-hidden":"true",children:o.jsx("polygon",{points:"12 2 15.1 8.3 22 9.3 17 14.1 18.2 21 12 17.8 5.8 21 7 14.1 2 9.3 8.9 8.3 12 2"})})}function sl({className:e}){return o.jsx(ht,{className:e??"h-3.5 w-3.5",children:o.jsx("path",{d:"M18 6 6 18M6 6l12 12"})})}function rk({className:e}){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:e??"h-4 w-4","aria-hidden":"true",children:o.jsx("path",{d:"M8 5v14l11-7z"})})}function ay({className:e}){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:e??"h-4 w-4","aria-hidden":"true",children:[o.jsx("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),o.jsx("line",{x1:"4",y1:"16",x2:"20",y2:"16"}),o.jsx("circle",{cx:"9",cy:"8",r:"2",fill:"currentColor"}),o.jsx("circle",{cx:"15",cy:"16",r:"2",fill:"currentColor"})]})}function ik({className:e}){return o.jsx(ht,{className:e,children:o.jsx("path",{d:"M15 4V2M15 16v-2M8 9h2M20 9h2M17.8 11.8 19 13M17.8 6.2 19 5M3 21l9-9M12.2 6.2 11 5"})})}function ok({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("path",{d:"M21 8a2 2 0 0 0-1-1.7l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.7l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"}),o.jsx("path",{d:"m3.3 7 8.7 5 8.7-5M12 22V12"})]})}function sk({className:e}){return o.jsx(ht,{className:e,children:o.jsx("path",{d:"M4 7V4h16v3M9 20h6M12 4v16"})})}function ck({className:e}){return o.jsx(ht,{className:e,children:o.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"})})}function uk({className:e}){return o.jsxs(ht,{className:e,children:[o.jsx("path",{d:"M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z"}),o.jsx("path",{d:"M12 9v4M12 17h.01"})]})}function ly({className:e}){return o.jsx(ht,{className:e,children:o.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4M7 10l5 5 5-5M12 15V3"})})}function Et({id:e,selected:t,minWidth:n=80,minHeight:a=40,padded:l=!0,transparent:r=!1,subtleSelect:i=!1,overflowVisible:s=!1,onResizeStart:c,onResize:u,onResizeEnd:d,children:f}){const h=he(w=>w.updateItem),m=he(w=>w.deleteItem),j=r?`bg-transparent ${t?`border border-dashed ${i?"border-zinc-600/70":"border-accent/60"}`:"border border-transparent"}`:`border bg-surface ${t?i?"border-zinc-600":"border-accent":"border-border"}`;return o.jsxs(o.Fragment,{children:[o.jsx($x,{isVisible:t,minWidth:n,minHeight:a,lineClassName:i?"!border-zinc-600":"!border-accent",handleClassName:i?"!bg-zinc-500 !border-white":"!bg-accent !border-white",onResizeStart:(w,p)=>c==null?void 0:c({width:p.width,height:p.height}),onResize:(w,p)=>u==null?void 0:u({width:p.width,height:p.height}),onResizeEnd:(w,p)=>{const y={width:p.width,height:p.height};d?d(y):h(e,y)}}),o.jsx("div",{className:`h-full w-full rounded-md ${s?"overflow-visible":"overflow-hidden"} ${j} ${l?"p-1":""}`,children:f}),t&&o.jsx("button",{onClick:()=>void m(e),title:"Delete",className:"absolute -right-2 -top-2 z-10 flex h-5 w-5 items-center justify-center rounded-full bg-black/80 text-zinc-200 hover:text-red-400",children:o.jsx(sl,{className:"h-3 w-3"})})]})}const qu=_t(e=>({menu:null,open:(t,n)=>{n.length!==0&&(t.preventDefault(),t.stopPropagation(),e({menu:{x:t.clientX,y:t.clientY,items:n}}))},close:()=>e({menu:null})}));async function dk(e){try{const t=await F().media.copyImage(e);t.ok||console.error("Copy image failed:",t.error)}catch(t){console.error("Copy image failed:",te(t))}}async function fk(e,t){try{const n=await F().media.save(e,t);n.ok||console.error("Save media failed:",n.error)}catch(n){console.error("Save media failed:",te(n))}}function cl(){const e=qu(t=>t.open);return(t,n)=>{const a=n.kind==="image"?[{label:"Copy image",onClick:()=>void dk(n.src)}]:[{label:n.kind==="video"?"Save video…":"Save audio…",onClick:()=>void fk(n.src,n.name)}];e(t,a)}}const tl=_t(e=>({media:null,open:t=>e({media:t}),close:()=>e({media:null})}));function hk({id:e,data:t,selected:n}){const{src:a,name:l}=t,r=cl(),i=tl(s=>s.open);return o.jsxs(o.Fragment,{children:[o.jsx(hn,{children:o.jsx(St,{icon:o.jsx(Ps,{}),title:l,children:l})}),o.jsx(Et,{id:e,selected:!!n,padded:!1,subtleSelect:!0,children:o.jsx("img",{src:a,alt:l,draggable:!1,onContextMenu:s=>r(s,{src:a,name:l,kind:"image"}),onDoubleClick:()=>i({src:a,kind:"image",name:l}),className:"h-full w-full object-cover"})})]})}function mk({id:e,data:t,selected:n}){const{src:a,name:l}=t,r=cl(),i=tl(s=>s.open);return o.jsxs(o.Fragment,{children:[o.jsx(hn,{children:o.jsx(St,{icon:o.jsx(kf,{}),title:l,children:l})}),o.jsx(Et,{id:e,selected:!!n,padded:!1,subtleSelect:!0,children:o.jsx("video",{src:a,controls:!0,onContextMenu:s=>r(s,{src:a,name:l,kind:"video"}),onDoubleClick:()=>i({src:a,kind:"video",name:l}),className:"nodrag h-full w-full bg-black object-contain"})})]})}function pk(e,t){if(e.length<=t)return e;const n=Math.ceil(e.length/t),a=[];for(let l=0;l<e.length;l+=n){let r=0;const i=Math.min(l+n,e.length);for(let s=l;s<i;s++)e[s]>r&&(r=e[s]);a.push(r)}return a}function Kn({url:e,progress:t=0,bars:n=200,className:a,onSeek:l,rangeStart:r=0,rangeEnd:i=1}){const[s,c]=k.useState(null);k.useEffect(()=>{if(!e){c(null);return}let m=!1;return fetch(e).then(x=>x.ok?x.json():null).then(x=>{m||c((x==null?void 0:x.peaks)??null)}).catch(()=>{m||c(null)}),()=>{m=!0}},[e]);const u=k.useMemo(()=>{if(!s)return null;const m=Math.max(0,Math.min(1,r)),x=Math.max(m,Math.min(1,i)),j=m>0||x<1?s.slice(Math.floor(m*s.length),Math.max(1,Math.ceil(x*s.length))):s;return pk(j,n)},[s,n,r,i]),d=l?m=>{const x=m.currentTarget.getBoundingClientRect();l(Math.min(1,Math.max(0,(m.clientX-x.left)/x.width)))}:void 0;if(!u||u.length===0)return o.jsx("svg",{className:a,viewBox:"0 0 100 100",preserveAspectRatio:"none",onClick:d,children:o.jsx("line",{x1:"0",y1:"50",x2:"100",y2:"50",stroke:"currentColor",strokeWidth:"1",opacity:"0.3"})});const f=u.length,h=t*f;return o.jsx("svg",{className:a,viewBox:`0 0 ${f} 100`,preserveAspectRatio:"none",onClick:d,style:l?{cursor:"pointer"}:void 0,children:u.map((m,x)=>{const j=Math.max(1,m*100),w=(100-j)/2;return o.jsx("rect",{x:x+.1,y:w,width:.8,height:j,fill:"currentColor",opacity:x<h?1:.4},x)})})}function gk({id:e,data:t,selected:n}){const{src:a,name:l,waveform:r}=t,i=k.useRef(null),[s,c]=k.useState(0),u=()=>{const f=i.current;f&&f.duration>0&&c(f.currentTime/f.duration)},d=f=>{const h=i.current;h&&h.duration>0&&(h.currentTime=f*h.duration)};return o.jsxs(o.Fragment,{children:[o.jsx(hn,{children:o.jsx(St,{icon:o.jsx(Ws,{}),title:l,children:l})}),o.jsx(Et,{id:e,selected:!!n,subtleSelect:!0,children:o.jsxs("div",{className:"flex h-full w-full flex-col justify-center gap-1 px-2",children:[o.jsx(Kn,{url:r??null,progress:s,onSeek:d,className:"nodrag h-10 w-full text-emerald-400"}),o.jsx("audio",{ref:i,src:a,controls:!0,onTimeUpdate:u,className:"nodrag w-full"})]})})]})}const xk=["#e4e4e7","#ffffff","#fbbf24","#f87171","#34d399","#60a5fa","#c084fc","#18181b"],yk=8,vk=96;function bk({text:e,onChange:t}){const n=l=>t({fontSize:Math.min(vk,Math.max(yk,e.fontSize+l))}),a=()=>{const l=window.prompt("Link URL (http/https) — leave blank to remove:",e.link??"");if(l===null)return;const r=l.trim();if(r==="")return t({link:void 0});if(!/^https?:\/\//i.test(r)){window.alert("Link must start with http:// or https://");return}t({link:r})};return o.jsxs("div",{className:"nodrag nowheel absolute -top-11 left-1/2 z-20 flex -translate-x-1/2 items-center gap-1 rounded-md border border-border bg-panel px-1.5 py-1 shadow-lg",onDoubleClick:l=>l.stopPropagation(),children:[o.jsx(wk,{color:e.color,onPick:l=>t({color:l})}),o.jsx(io,{}),o.jsxs("button",{onClick:()=>n(-2),title:"Smaller",className:Gm,children:["A",o.jsx("span",{className:"text-[9px]",children:"−"})]}),o.jsx("span",{className:"w-6 text-center text-[11px] tabular-nums text-zinc-400",children:e.fontSize}),o.jsxs("button",{onClick:()=>n(2),title:"Larger",className:Gm,children:["A",o.jsx("span",{className:"text-[9px]",children:"+"})]}),o.jsx(io,{}),o.jsx(Er,{active:e.bold,onClick:()=>t({bold:!e.bold}),title:"Bold",children:o.jsx("span",{className:"font-bold",children:"B"})}),o.jsx(Er,{active:e.italic,onClick:()=>t({italic:!e.italic}),title:"Italic",children:o.jsx("span",{className:"italic",children:"I"})}),o.jsx(Er,{active:e.underline,onClick:()=>t({underline:!e.underline}),title:"Underline",children:o.jsx("span",{className:"underline",children:"U"})}),o.jsx(io,{}),["left","center","right"].map(l=>o.jsx(Er,{active:e.align===l,onClick:()=>t({align:l}),title:l,children:o.jsx(jk,{align:l})},l)),o.jsx(io,{}),o.jsx(Er,{active:!!e.link,onClick:a,title:e.link?`Link: ${e.link}`:"Add link",children:o.jsx(Nk,{})})]})}function wk({color:e,onPick:t}){const[n,a]=k.useState(!1),l=k.useRef(null);return k.useEffect(()=>{if(!n)return;const r=i=>{l.current&&!l.current.contains(i.target)&&a(!1)};return document.addEventListener("mousedown",r),()=>document.removeEventListener("mousedown",r)},[n]),o.jsxs("div",{ref:l,className:"relative",children:[o.jsxs("button",{onClick:()=>a(r=>!r),title:"Text colour","aria-label":"Text colour","aria-expanded":n,className:"flex h-6 items-center gap-1 rounded px-1 text-zinc-300 hover:bg-surface",children:[o.jsx("span",{className:"h-4 w-4 rounded-full border border-zinc-600",style:{backgroundColor:e}}),o.jsx("span",{className:"text-[8px] leading-none",children:"▾"})]}),n&&o.jsx("div",{className:"absolute left-0 top-7 z-30 grid grid-cols-4 gap-1 rounded-md border border-border bg-panel p-1.5 shadow-lg",children:xk.map(r=>o.jsx("button",{onClick:()=>{t(r),a(!1)},title:r,"aria-label":`Colour ${r}`,className:`h-5 w-5 rounded-full border ${e.toLowerCase()===r.toLowerCase()?"border-white ring-1 ring-accent":"border-zinc-600"}`,style:{backgroundColor:r}},r))})]})}const Gm="flex h-6 min-w-[1.5rem] items-center justify-center rounded px-1 text-[11px] text-zinc-300 hover:bg-surface";function Er({active:e,onClick:t,title:n,children:a}){return o.jsx("button",{onClick:t,title:n,"aria-label":n,"aria-pressed":e,className:`flex h-6 w-6 items-center justify-center rounded text-[12px] ${e?"bg-accent text-panel":"text-zinc-300 hover:bg-surface"}`,children:a})}function io(){return o.jsx("span",{className:"mx-0.5 h-5 w-px bg-border"})}function jk({align:e}){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-3.5 w-3.5",children:[o.jsx("line",{x1:"3",y1:"6",x2:"21",y2:"6"}),o.jsx("line",{x1:e==="right"?9:3,y1:"12",x2:e==="left"?15:21,y2:"12"}),o.jsx("line",{x1:"3",y1:"18",x2:"21",y2:"18"})]})}function Nk(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:"h-3.5 w-3.5",children:o.jsx("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"})})}function Sk({id:e,data:t,selected:n}){const{text:a}=t,l=he(w=>w.updateItem),r=he(w=>w.items.find(p=>p.id===e)),[i,s]=k.useState(!1),c=k.useRef(null),u=k.useRef(r);u.current=r;const d=10,f=k.useCallback(()=>{const w=c.current,p=u.current;if(!w||!p)return;const y=Math.max(32,w.scrollHeight+d);Math.abs(y-p.height)>1&&l(e,{height:y},!1)},[e,l]),h={fontSize:a.fontSize,color:a.color,textAlign:a.align,fontWeight:a.bold?700:400,fontStyle:a.italic?"italic":"normal",textDecoration:a.underline||a.link&&!i?"underline":"none",cursor:a.link&&!i?"pointer":void 0},m=()=>{var p;s(!1);const w=((p=c.current)==null?void 0:p.innerText)??a.text;w!==a.text&&l(e,{data:{text:{...a,text:w}}})},x=w=>void l(e,{data:{text:{...a,...w}}}),j=()=>{a.link&&!i&&F().shell.openExternal(a.link)};return k.useLayoutEffect(()=>{f()},[f,a.text,a.fontSize,a.bold,a.italic,r==null?void 0:r.width,i]),o.jsxs(o.Fragment,{children:[n&&!i&&o.jsx(bk,{text:a,onChange:x}),o.jsx(Et,{id:e,selected:!!n,minHeight:32,transparent:!0,children:o.jsx("div",{ref:c,style:h,className:`w-full whitespace-pre-wrap break-words px-1 outline-none ${i?"nodrag cursor-text":"cursor-grab"}`,contentEditable:i,suppressContentEditableWarning:!0,onDoubleClick:()=>s(!0),onClick:j,onInput:f,onBlur:m,children:a.text})})]})}async function ry(e){let t=!1;try{const n=await F().comfy.status();t=n.ok&&n.value.running}catch{t=!1}return t?!0:(window.alert(`ComfyUI isn’t connected yet.
48
+
49
+ Connect it on the Generate tab, then link or open your workflow.`),e==null||e(),!1)}const Ek=2;function Js({src:e,poster:t,className:n,onLoadedMetadata:a,onContextMenu:l,onDoubleClick:r}){const i=k.useRef(null),s=k.useRef(Ek),c=()=>{const d=i.current;d&&(s.current-=1,s.current>0&&(d.currentTime=0,d.play().catch(()=>{})))},u=()=>{const d=i.current;d&&(s.current=1,d.currentTime=0,d.play().catch(()=>{}))};return o.jsx("video",{ref:i,src:e,poster:t,muted:!0,autoPlay:!0,playsInline:!0,preload:"metadata",onEnded:c,onMouseEnter:u,onLoadedMetadata:a,onContextMenu:l,onDoubleClick:r,className:n})}function di({items:e,selected:t,onSelect:n,onRemove:a,edge:l="bottom"}){const r=!!a;if(e.length===0||!r&&e.length<=1)return null;const i=l==="top"?"top-0 bg-gradient-to-b from-black/80 via-black/40 to-transparent pt-1.5 pb-5":"bottom-0 bg-gradient-to-t from-black/80 via-black/40 to-transparent pb-1.5 pt-5";return o.jsx("div",{className:`nodrag nowheel absolute inset-x-0 z-10 flex gap-1 overflow-x-auto px-1.5 ${i}`,children:e.map((s,c)=>o.jsxs("div",{className:"group/thumb relative shrink-0",children:[o.jsx("button",{onClick:u=>{u.stopPropagation(),n==null||n(c)},title:r?`Input ${c+1} of ${e.length}`:`View ${c+1} of ${e.length}`,className:`h-8 w-8 overflow-hidden rounded-md border-2 bg-black/60 transition ${c===t?"border-accent opacity-100":"border-white/25 opacity-70 hover:opacity-100"}`,children:s.kind==="audio"?o.jsx("span",{className:"flex h-full w-full items-center justify-center text-emerald-400",children:o.jsx(Ws,{className:"h-4 w-4"})}):s.kind==="video"&&!s.poster?o.jsx("video",{src:s.url,muted:!0,preload:"metadata",className:"h-full w-full object-cover"}):o.jsx("img",{src:s.poster??s.url,alt:"",className:"h-full w-full object-cover"})}),a&&o.jsx("button",{onClick:u=>{u.stopPropagation(),a(c)},title:"Remove input","aria-label":"Remove input",className:"nodrag absolute right-0.5 top-0.5 hidden h-4 w-4 items-center justify-center rounded-full border border-border bg-black/85 text-zinc-200 shadow hover:bg-black hover:text-white group-hover/thumb:flex",children:o.jsx(sl,{className:"h-2.5 w-2.5"})})]},s.id))})}function _f(e,t){const{assets:n,allFrames:a,takesByFrame:l,inputsByFrame:r}=t;return e.map(i=>{if(i.assetId){const s=n.find(c=>c.id===i.assetId);return s?{id:i.id,assetId:s.id,url:ce(s.kind==="image"?s.thumbPath??s.filePath:s.previewPath??s.filePath),saveSrc:ce(s.filePath),kind:s.kind,poster:s.kind==="video"&&s.thumbPath?ce(s.thumbPath):void 0,waveform:s.kind==="audio"&&s.thumbPath?ce(s.thumbPath):void 0}:null}if(i.sourceFrameId){const s=a.find(h=>h.id===i.sourceFrameId),c=s?l[s.id]??[]:[],u=c.find(h=>h.id===(s==null?void 0:s.heroTakeId))??c[0];if(u)return{id:i.id,assetId:null,url:ce(u.filePath),saveSrc:ce(u.filePath),kind:u.kind,waveform:u.kind==="audio"?ce(mr(u.id)):void 0};const d=s?(r[s.id]??[]).find(h=>h.assetId):void 0,f=d!=null&&d.assetId?n.find(h=>h.id===d.assetId):void 0;return f?{id:i.id,assetId:null,url:ce(f.previewPath??f.filePath),saveSrc:ce(f.filePath),kind:f.kind,poster:f.kind==="video"&&f.thumbPath?ce(f.thumbPath):void 0,waveform:f.kind==="audio"&&f.thumbPath?ce(f.thumbPath):void 0}:null}return null}).filter(i=>!!i)}const kk=160,_k=480;function Ck({id:e,data:t,selected:n}){const{frameId:a}=t,l=J($=>$.frames.find(Q=>Q.id===a)),r=J($=>$.inputsByFrame[a])??[],i=J($=>$.busyId===a),s=J($=>$.linkFrame),c=J($=>$.uploadInputs),u=J($=>$.reorderInputs),d=J($=>$.addInputs),f=J($=>$.addSourceInput),h=J($=>$.removeInputById),m=J($=>$.setHero),x=J($=>$.frames),j=J($=>$.takesByFrame),w=J($=>$.inputsByFrame),p=un($=>$.assets),y=he($=>$.items.find(Q=>Q.id===e)),g=he($=>$.updateItem),v=Ke($=>$.setMode),_=Ke($=>$.setLinkedWorkflow),M=Ke($=>$.setActiveFrame),z=cl(),C=tl($=>$.open),[B,L]=k.useState(0),[S,H]=k.useState(!1),[U,E]=k.useState(null),R=k.useRef(null),b=k.useRef(""),N=_f(r,{assets:p,allFrames:x,takesByFrame:j,inputsByFrame:w}),T=N.length,D=T?Math.min(B,T-1):0,A=T?N[D]:void 0,O=!!(l!=null&&l.comfyWorkflowName),V=y==null?void 0:y.width,Z=y==null?void 0:y.height;k.useLayoutEffect(()=>{const $=R.current;if(!U||!$||Z==null||V==null)return;const Q=`${U.toFixed(4)}:${V}`;if(b.current===Q)return;const ee=$.clientWidth;if(!ee)return;b.current=Q;const me=Math.max(kk,Math.min(_k,ee/U))-$.clientHeight;Math.abs(me)<1||g(e,{height:Math.round(Z+me)},!1)},[U,V,Z,e,g]);const P=A==null?void 0:A.kind;k.useLayoutEffect(()=>{P!=="image"&&P!=="video"&&E(null)},[P]);const ae=async()=>{if(!l||!await ry(()=>v("generate")))return;const $=await s(l.id);_(($==null?void 0:$.comfyWorkflowName)??l.comfyWorkflowName),M(l.id),v("generate"),c(l.id)},ue=N.every($=>$.assetId),le=()=>{if(!A||D===0||!ue)return;const $=N.slice(D,D+1).concat(N.filter((Q,ee)=>ee!==D)).map(Q=>Q.assetId);u(a,$),L(0)},q=$=>$.dataTransfer.types.includes(Di)||$.dataTransfer.types.includes(Bi),W=$=>{q($)&&($.preventDefault(),$.stopPropagation(),$.dataTransfer.dropEffect="copy",S||H(!0))},oe=$=>{if(!q($))return;$.preventDefault(),$.stopPropagation(),H(!1);const Q=Qs($.dataTransfer);if(Q){if(Q!==a){const me=Ks($.dataTransfer);me&&m(Q,me),f(a,Q)}return}const ee=new Set(r.map(me=>me.assetId)),de=Oi($.dataTransfer).filter(me=>!ee.has(me));de.length&&d(a,de)};return o.jsxs(o.Fragment,{children:[o.jsxs(hn,{children:[o.jsxs(St,{icon:o.jsx(ey,{}),title:l?`Frame ${l.name}`:void 0,children:["Frame ",(l==null?void 0:l.name)??"—"]}),o.jsx("button",{onClick:()=>void ae(),disabled:i,title:O?"Open the linked ComfyUI workflow":"Link a ComfyUI workflow",className:"nodrag flex h-6 items-center gap-1 rounded-full border border-blue-500/40 bg-blue-500/10 px-2 text-[10px] font-medium text-blue-300 shadow-sm backdrop-blur hover:bg-blue-500/20 disabled:opacity-40",children:i?"…":o.jsxs(o.Fragment,{children:[o.jsx(ty,{className:"h-3 w-3"}),O?"Open Workflow":"Link Workflow"]})})]}),o.jsx(Et,{id:e,selected:!!n,minWidth:200,minHeight:170,padded:!1,subtleSelect:!0,children:o.jsxs("div",{className:"relative flex h-full w-full flex-col",onDragOver:W,onDragLeave:()=>H(!1),onDrop:oe,children:[o.jsxs("div",{ref:R,className:"relative flex flex-1 items-center justify-center overflow-hidden bg-black",children:[A?A.kind==="video"?o.jsx(Js,{src:A.url,poster:A.poster,onLoadedMetadata:$=>{const Q=$.currentTarget;Q.videoWidth&&Q.videoHeight&&E(Q.videoWidth/Q.videoHeight)},onContextMenu:$=>z($,{src:A.saveSrc,name:l?`Frame ${l.name}`:"input",kind:"video"}),onDoubleClick:()=>C({src:A.saveSrc,kind:"video",name:l?`Frame ${l.name}`:"input"}),className:"h-full w-full object-cover"}):A.kind==="audio"?o.jsx("div",{className:"flex h-full w-full items-center px-2",children:o.jsx(Kn,{url:A.waveform??null,className:"h-1/2 w-full text-emerald-400"})}):o.jsx("img",{src:A.url,alt:"",onLoad:$=>{const Q=$.currentTarget;Q.naturalWidth&&Q.naturalHeight&&E(Q.naturalWidth/Q.naturalHeight)},onContextMenu:$=>z($,{src:A.saveSrc,name:l?`Frame ${l.name}`:"input",kind:"image"}),onDoubleClick:()=>C({src:A.saveSrc,kind:"image",name:l?`Frame ${l.name}`:"input"}),className:"h-full w-full object-cover"}):o.jsx("span",{className:"p-3 text-center text-[11px] text-zinc-600",children:"Drop an asset here, or connect a Preview's output to set this frame's input."}),T>1&&o.jsxs(o.Fragment,{children:[o.jsx(di,{items:N.map($=>({id:$.id,url:$.url,kind:$.kind,poster:$.poster})),selected:D,onSelect:L,onRemove:$=>void h(a,N[$].id)}),D===0?o.jsxs("span",{className:"absolute left-1 top-1 flex items-center gap-1 rounded bg-emerald-500/80 px-1 py-0.5 text-[9px] font-medium text-white",children:[o.jsx(ns,{filled:!0,className:"h-2.5 w-2.5"}),"Hero"]}):ue?o.jsxs("button",{onClick:le,title:"Use this input as the hero",className:"nodrag absolute left-1 top-1 flex items-center gap-1 rounded bg-black/60 px-1 py-0.5 text-[9px] text-amber-300 hover:bg-black/80",children:[o.jsx(ns,{className:"h-2.5 w-2.5"}),"Set hero"]}):null]})]}),S&&o.jsx("div",{className:"pointer-events-none absolute inset-0 z-20 flex items-center justify-center rounded-md border-2 border-dashed border-accent bg-accent/15 text-[11px] font-medium text-panel",children:"Add as input"})]})}),o.jsx(tt,{type:"target",id:"in",position:ne.Left,title:"Input",className:"group !h-3 !w-3 !border-2 !border-surface !bg-emerald-400",children:o.jsx("span",{className:"pointer-events-none absolute right-full top-1/2 mr-1.5 hidden -translate-y-1/2 items-center whitespace-nowrap rounded-md border border-border bg-panel/95 px-1.5 py-0.5 text-[10px] font-medium text-zinc-200 shadow-sm backdrop-blur group-hover:flex",children:"Input"})}),o.jsx(tt,{type:"source",id:"out",position:ne.Right,title:"Output",className:"group !h-3 !w-3 !border-2 !border-surface !bg-indigo-400",children:o.jsx("span",{className:"pointer-events-none absolute left-full top-1/2 ml-1.5 hidden -translate-y-1/2 items-center whitespace-nowrap rounded-md border border-border bg-panel/95 px-1.5 py-0.5 text-[10px] font-medium text-zinc-200 shadow-sm backdrop-blur group-hover:flex",children:"Output"})})]})}function zk(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3.5 w-3.5 shrink-0",children:[o.jsx("circle",{cx:"12",cy:"12",r:"10"}),o.jsx("path",{d:"M12 16v-4M12 8h.01"})]})}function Mk(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",className:"h-2.5 w-2.5 shrink-0",children:o.jsx("path",{d:"M6 9l6 6 6-6"})})}function Ak(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3 w-3 shrink-0 text-accent",children:o.jsx("path",{d:"M20 6L9 17l-5-5"})})}function Tk({modelId:e,onSelect:t,onShowInfo:n}){const[a,l]=k.useState(!1),[r,i]=k.useState(""),s=k.useRef(null),c=Sf(),u=c.find(h=>h.id===e),d=r.trim().toLowerCase(),f=d?c.filter(h=>h.title.toLowerCase().includes(d)||h.category.toLowerCase().includes(d)):c;return k.useEffect(()=>{if(!a)return;const h=m=>{s.current&&!s.current.contains(m.target)&&l(!1)};return document.addEventListener("pointerdown",h),()=>document.removeEventListener("pointerdown",h)},[a]),o.jsxs("div",{className:"relative",ref:s,children:[o.jsxs("button",{onClick:()=>l(h=>!h),className:"nodrag flex max-w-[150px] items-center gap-1 rounded-md bg-black/40 px-2 py-1 text-[11px] font-medium text-zinc-200 hover:bg-black/60",title:"Choose a model",children:[o.jsx("span",{className:"truncate",children:(u==null?void 0:u.title)??"Select model"}),o.jsx(Mk,{})]}),a&&o.jsx(o.Fragment,{children:o.jsxs("div",{className:"nowheel absolute bottom-full left-0 z-40 mb-1 w-64 overflow-hidden rounded-lg border border-border bg-panel shadow-xl",children:[o.jsx("input",{autoFocus:!0,value:r,onChange:h=>i(h.target.value),placeholder:"Search models…",className:"nodrag w-full border-b border-border bg-transparent px-3 py-2 text-[11px] text-zinc-100 outline-none placeholder:text-zinc-500"}),o.jsxs("div",{className:"max-h-72 overflow-y-auto py-1",children:[Ef(f).map(h=>o.jsxs("div",{children:[o.jsx("div",{className:"px-3 pb-0.5 pt-1.5 text-[9px] font-semibold uppercase tracking-wide text-zinc-500",children:h.label}),h.defs.map(m=>o.jsxs("button",{onClick:()=>{t(m.id),l(!1),i("")},className:"nodrag flex w-full items-center justify-between gap-2 px-3 py-1.5 text-left hover:bg-surface",children:[o.jsxs("span",{className:"flex min-w-0 flex-col",children:[o.jsx("span",{className:"truncate text-[11px] text-zinc-100",children:m.title}),o.jsx("span",{className:"text-[10px] text-zinc-500",children:m.category})]}),o.jsxs("span",{className:"flex shrink-0 items-center gap-1.5",children:[o.jsx("button",{type:"button",title:"View inputs, outputs & cost",className:"flex items-center text-zinc-500 hover:text-zinc-200",onClick:x=>{x.stopPropagation(),n(m.id),l(!1),i("")},children:o.jsx(zk,{})}),m.id===e&&o.jsx(Ak,{})]})]},m.id))]},h.owner)),f.length===0&&o.jsx("div",{className:"px-3 py-2 text-[11px] text-zinc-500",children:"No models found."})]})]})})]})}function Dk(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:"h-5 w-5",children:o.jsx("path",{d:"M8 5v14l11-7z"})})}function Ok(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:"h-[18px] w-[18px]",children:o.jsx("rect",{x:"6",y:"6",width:"12",height:"12",rx:"1.5"})})}function Bk(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3.5 w-3.5 shrink-0 text-emerald-400",children:[o.jsx("path",{d:"M12 3l1.9 4.8L18.6 9.7 13.9 11.6 12 16.4 10.1 11.6 5.4 9.7 10.1 7.8Z"}),o.jsx("path",{d:"M19 15l.9 2.1L22 18l-2.1.9L19 21l-.9-2.1L16 18l2.1-.9Z"})]})}function Rk({id:e,top:t,colorClass:n,icon:a,label:l}){return o.jsx(tt,{type:"target",id:e,position:ne.Left,style:{top:t},title:l,className:`group !h-3 !w-3 !border-2 !border-surface ${n}`,children:o.jsxs("span",{className:"pointer-events-none absolute right-full top-1/2 mr-1.5 hidden -translate-y-1/2 items-center gap-1 whitespace-nowrap rounded-md border border-border bg-panel/95 px-1.5 py-0.5 text-[10px] font-medium text-zinc-200 shadow-sm backdrop-blur group-hover:flex",children:[a,l]})})}function Lk({id:e,data:t,selected:n}){var me;const{frameId:a}=t,l=J(Y=>Y.frames.find(ge=>ge.id===a)),r=J(Y=>Y.takesByFrame[a])??[],i=J(Y=>Y.inputsByFrame[a])??[],s=J(Y=>Y.addInputs),c=J(Y=>Y.addSourceInput),u=J(Y=>Y.removeInputById),d=J(Y=>Y.setHero),f=J(Y=>Y.frames),h=J(Y=>Y.takesByFrame),m=J(Y=>Y.inputsByFrame),x=un(Y=>Y.assets),j=he(Y=>Y.connectors),w=Ie(Y=>Y.run),p=Ie(Y=>Y.cancel),y=Ie(Y=>Y.setModel),g=Ie(Y=>Y.toggleSettings),v=Ie(Y=>Y.openModelInfo),_=Ie(Y=>Y.busyByFrame[a]??!1),M=Ie(Y=>Y.progressByFrame[a]),z=Ie(Y=>Y.statusByFrame[a]),C=cl(),B=tl(Y=>Y.open),[L,S]=k.useState(!1),[H,U]=k.useState(0),E=l!=null&&l.modelId?Zs(l.modelId):void 0;if(!l||!E)return o.jsx(Et,{id:e,selected:!!n,minWidth:200,minHeight:120,subtleSelect:!0,children:o.jsx("div",{className:"flex h-full items-center justify-center p-3 text-center text-[11px] text-zinc-500",children:"Unknown generation model."})});const R=[...r];if(l.heroTakeId){const Y=R.findIndex(ge=>ge.id===l.heroTakeId);Y>0&&R.unshift(R.splice(Y,1)[0])}const b=R.length?Math.min(H,R.length-1):0,N=R.length?R[b]:void 0,T=_f(i,{assets:x,allFrames:f,takesByFrame:h,inputsByFrame:m}),D=E.inputs.some(Y=>Y.kind==="image"||Y.kind==="image[]"),A=E.inputs.some(Y=>Y.kind==="video"),O=E.inputs.some(Y=>Y.kind==="audio"),V=D||A,Z=A&&!D,P=E.inputs.some(Y=>Y.required&&(Y.kind==="image"||Y.kind==="image[]"||Y.kind==="video")),ae=E.inputs.some(Y=>Y.required&&Y.kind==="audio"),ue=j.some(Y=>{var ge;return Y.toItemId===e&&((ge=Y.data)==null?void 0:ge.targetHandle)==="prompt"}),le=[...P?[Z?"video":"image"]:[],...ae?["audio"]:[]],q=!ue&&!E.promptOptional?"Connect a Prompt node":le.length>0&&i.length===0?`Wire ${le.join(" & ")} input${le.length>1?"s":""}`:null,W=typeof M=="number"?Math.round(M*100):null,oe=((me=E.estimatePrice)==null?void 0:me.call(E,l.params))??null,$=[{id:"prompt",colorClass:"!bg-amber-400",icon:o.jsx("span",{className:"text-xs font-bold leading-none",children:"T"}),label:E.promptOptional?"Prompt (optional)":"Prompt"},...V?[{id:"in",colorClass:"!bg-emerald-400",icon:Z?o.jsx(kf,{className:"h-3.5 w-3.5"}):o.jsx(Ps,{className:"h-3.5 w-3.5"}),label:Z?"Video":"Image"}]:[],...O?[{id:"audio",colorClass:"!bg-violet-400",icon:o.jsx(Ws,{className:"h-3.5 w-3.5"}),label:"Audio"}]:[]],Q=Y=>Y.dataTransfer.types.includes(Di)||Y.dataTransfer.types.includes(Bi),ee=Y=>{Q(Y)&&(Y.preventDefault(),Y.stopPropagation(),Y.dataTransfer.dropEffect="copy",L||S(!0))},de=Y=>{if(!Q(Y))return;Y.preventDefault(),Y.stopPropagation(),S(!1);const ge=Qs(Y.dataTransfer);if(ge){if(ge!==a){const Fe=Ks(Y.dataTransfer);Fe&&d(ge,Fe),c(a,ge)}return}const Je=new Set(i.map(Fe=>Fe.assetId)),it=Oi(Y.dataTransfer).filter(Fe=>!Je.has(Fe));it.length&&s(a,it)};return o.jsxs(o.Fragment,{children:[o.jsxs(hn,{children:[o.jsx(St,{icon:o.jsx(Bk,{}),children:"Generate"}),oe&&o.jsx(St,{tone:"info",accent:"text-emerald-300",tooltip:"Rough estimate only — the actual generation cost can differ with resolution, output size and options. Check fal.ai's pricing page for accurate, up-to-date rates.",children:Xx(oe)})]}),o.jsx(Et,{id:e,selected:!!n,minWidth:200,minHeight:220,padded:!1,subtleSelect:!0,children:o.jsxs("div",{className:"relative flex h-full w-full flex-col",onDragOver:ee,onDragLeave:()=>S(!1),onDrop:de,children:[o.jsxs("div",{className:"relative min-h-0 flex-1 overflow-hidden bg-black",children:[o.jsx(di,{items:T.map(Y=>({id:Y.id,url:Y.url,kind:Y.kind,poster:Y.poster})),onSelect:Y=>{const ge=T[Y];ge.kind!=="audio"&&B({src:ge.saveSrc,kind:ge.kind,name:`${E.title} input`})},onRemove:Y=>void u(a,T[Y].id),edge:"top"}),N?N.kind==="video"?o.jsx(Js,{src:ce(N.filePath),onContextMenu:Y=>C(Y,{src:ce(N.filePath),name:E.title,kind:"video"}),onDoubleClick:()=>B({src:ce(N.filePath),kind:"video",name:E.title}),className:"h-full w-full object-cover"}):N.kind==="audio"?o.jsx("div",{className:"flex h-full w-full items-center px-3",children:o.jsx(Kn,{url:ce(mr(N.id)),className:"h-1/2 w-full text-emerald-400"})}):o.jsx("img",{src:ce(N.filePath),alt:"",onContextMenu:Y=>C(Y,{src:ce(N.filePath),name:E.title,kind:"image"}),onDoubleClick:()=>B({src:ce(N.filePath),kind:"image",name:E.title}),className:"h-full w-full object-cover"}):o.jsx("div",{className:"flex h-full w-full items-center justify-center px-4",children:o.jsx("span",{className:"text-center text-[10px] text-zinc-600",children:_?z??"Generating…":q??"Run to generate"})}),_&&o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"absolute left-2 top-2 flex max-w-[calc(100%-1rem)] items-center gap-1 rounded-full bg-black/75 px-2 py-0.5 text-[10px] font-medium text-emerald-300 backdrop-blur",children:[o.jsx("span",{className:"h-1.5 w-1.5 shrink-0 animate-pulse rounded-full bg-emerald-400"}),o.jsx("span",{className:"truncate",children:z??(W!=null?`${W}%`:"Working…")})]}),o.jsx("div",{className:"absolute inset-x-0 bottom-0 h-1 bg-black/40",children:o.jsx("div",{className:"h-full bg-emerald-400 transition-all",style:{width:`${W??0}%`}})})]}),!_&&o.jsx(di,{items:R.map(Y=>({id:Y.id,url:ce(Y.filePath),kind:Y.kind})),selected:b,onSelect:Y=>{d(a,R[Y].id),U(0)}})]}),o.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-t border-border bg-surface/90 px-1.5 py-1",children:[o.jsx(Tk,{modelId:l.modelId,onSelect:Y=>void y(a,Y),onShowInfo:v}),o.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[_?o.jsx("button",{onClick:()=>void p(a),title:"Cancel generation",className:"nodrag flex h-6 w-6 items-center justify-center rounded text-zinc-300 hover:bg-black/40 hover:text-white",children:o.jsx(Ok,{})}):o.jsx("button",{onClick:()=>void w(a),disabled:!!q,title:q??"Generate this node",className:"nodrag flex h-6 w-6 items-center justify-center rounded text-emerald-400 hover:bg-black/40 hover:text-emerald-300 disabled:opacity-40",children:o.jsx(Dk,{})}),o.jsx("button",{onClick:()=>g(a),title:"Settings","data-gen-settings-toggle":!0,className:"nodrag flex h-6 w-6 shrink-0 items-center justify-center rounded text-zinc-400 hover:bg-black/40 hover:text-zinc-100",children:o.jsx(ay,{})})]})]}),L&&o.jsx("div",{className:"pointer-events-none absolute inset-0 z-20 flex items-center justify-center border-2 border-dashed border-accent bg-accent/15 text-[11px] font-medium text-panel",children:"Add as input"})]})}),$.map((Y,ge)=>o.jsx(Rk,{id:Y.id,top:`${((ge+1)/($.length+1)*100).toFixed(2)}%`,colorClass:Y.colorClass,icon:Y.icon,label:Y.label},Y.id)),o.jsx(tt,{type:"source",id:"out",position:ne.Right,className:"!h-3 !w-3 !border-2 !border-surface !bg-indigo-400"})]})}function Hk(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-4 w-4 shrink-0",children:[o.jsx("path",{d:"M12 3l1.9 4.8L18.6 9.7 13.9 11.6 12 16.4 10.1 11.6 5.4 9.7 10.1 7.8Z"}),o.jsx("path",{d:"M19 15l.9 2.1L22 18l-2.1.9L19 21l-.9-2.1L16 18l2.1-.9Z"})]})}function Ik({id:e,data:t,selected:n}){const{frameId:a}=t,l=J(S=>S.frames.find(H=>H.id===a)),r=J(S=>S.inputsByFrame[a])??[],i=J(S=>S.setProvider),s=J(S=>S.addInputs),c=J(S=>S.addSourceInput),u=J(S=>S.removeInputById),d=J(S=>S.setHero),f=J(S=>S.frames),h=J(S=>S.takesByFrame),m=J(S=>S.inputsByFrame),x=un(S=>S.assets),j=he(S=>S.updateItem),[w,p]=k.useState(!1),[y,g]=k.useState(!1),v=k.useRef(null);k.useEffect(()=>{if(!y)return;const S=H=>{var U;(U=v.current)!=null&&U.contains(H.target)||g(!1)};return document.addEventListener("pointerdown",S,!0),()=>document.removeEventListener("pointerdown",S,!0)},[y]);const _=_f(r,{assets:x,allFrames:f,takesByFrame:h,inputsByFrame:m}),M=()=>{i(a,"comfy")},z=S=>{i(a,"fal",S),j(e,{width:240,height:380},!1)},C=S=>S.dataTransfer.types.includes(Di)||S.dataTransfer.types.includes(Bi),B=S=>{C(S)&&(S.preventDefault(),S.stopPropagation(),S.dataTransfer.dropEffect="copy",w||p(!0))},L=S=>{if(!C(S))return;S.preventDefault(),S.stopPropagation(),p(!1);const H=Qs(S.dataTransfer);if(H){if(H!==a){const R=Ks(S.dataTransfer);R&&d(H,R),c(a,H)}return}const U=new Set(r.map(R=>R.assetId)),E=Oi(S.dataTransfer).filter(R=>!U.has(R));E.length&&s(a,E)};return o.jsxs(o.Fragment,{children:[o.jsx(hn,{children:o.jsxs(St,{icon:o.jsx(ey,{}),title:l?`Frame ${l.name}`:void 0,children:["Frame ",(l==null?void 0:l.name)??"—"]})}),o.jsx(Et,{id:e,selected:!!n,minWidth:200,minHeight:170,padded:!1,subtleSelect:!0,overflowVisible:y,children:o.jsxs("div",{className:"relative flex h-full w-full flex-col",onDragOver:B,onDragLeave:()=>p(!1),onDrop:L,children:[o.jsx("div",{className:`relative flex min-h-0 flex-1 flex-col bg-surface/60 ${y?"overflow-visible":"overflow-hidden"}`,children:o.jsxs("div",{className:"relative flex flex-1 flex-col items-center justify-center gap-2.5 p-3",children:[o.jsx(di,{items:_.map(S=>({id:S.id,url:S.url,kind:S.kind,poster:S.poster})),onRemove:S=>void u(a,_[S].id),edge:"top"}),o.jsx("span",{className:"text-[11px] font-medium text-zinc-400",children:"Choose how to generate"}),o.jsxs("div",{className:"flex w-full max-w-[220px] flex-col gap-2",children:[o.jsxs("button",{onClick:M,className:"nodrag flex items-center justify-center gap-2 rounded-md border border-blue-500/40 bg-blue-500/10 px-3 py-2 text-[12px] font-medium text-blue-200 hover:bg-blue-500/20",children:[o.jsx(ty,{className:"h-3.5 w-3.5"}),"ComfyUI Workflow"]}),o.jsxs("div",{ref:v,className:"relative w-full",children:[o.jsxs("button",{onClick:()=>g(S=>!S),className:`nodrag flex w-full items-center justify-center gap-2 border border-emerald-500/40 bg-emerald-500/10 px-3 py-2 text-[12px] font-medium text-emerald-200 hover:bg-emerald-500/20 ${y?"rounded-t-md border-b-transparent":"rounded-md"}`,children:[o.jsx(Hk,{}),"Start with Fal API",o.jsx(ny,{className:`h-3 w-3 transition-transform ${y?"rotate-180":""}`})]}),y&&o.jsx("div",{className:"nodrag nowheel absolute left-0 right-0 top-full z-30 max-h-56 overflow-y-auto rounded-b-md border border-t-0 border-emerald-500/40 bg-panel py-0.5 shadow-xl shadow-black/40",children:Ef(Sf()).map(S=>o.jsxs("div",{children:[o.jsx("div",{className:"px-2.5 pb-0.5 pt-1.5 text-[9px] font-semibold uppercase tracking-wide text-emerald-300/70",children:S.label}),S.defs.map(H=>o.jsxs("button",{onClick:()=>z(H.id),className:"flex w-full flex-col items-start px-2.5 py-1.5 text-left hover:bg-emerald-500/10",children:[o.jsx("span",{className:"w-full truncate text-[11px] text-zinc-100",children:H.title}),o.jsx("span",{className:"text-[10px] text-zinc-500",children:H.category})]},H.id))]},S.owner))})]})]})]})}),w&&o.jsx("div",{className:"pointer-events-none absolute inset-0 z-20 flex items-center justify-center rounded-md border-2 border-dashed border-accent bg-accent/15 text-[11px] font-medium text-panel",children:"Add as input"})]})}),o.jsx(tt,{type:"target",id:"in",position:ne.Left,title:"Input",className:"group !h-3 !w-3 !border-2 !border-surface !bg-emerald-400",children:o.jsx("span",{className:"pointer-events-none absolute right-full top-1/2 mr-1.5 hidden -translate-y-1/2 items-center whitespace-nowrap rounded-md border border-border bg-panel/95 px-1.5 py-0.5 text-[10px] font-medium text-zinc-200 shadow-sm backdrop-blur group-hover:flex",children:"Input"})}),o.jsx(tt,{type:"source",id:"out",position:ne.Right,title:"Output",className:"group !h-3 !w-3 !border-2 !border-surface !bg-indigo-400",children:o.jsx("span",{className:"pointer-events-none absolute left-full top-1/2 ml-1.5 hidden -translate-y-1/2 items-center whitespace-nowrap rounded-md border border-border bg-panel/95 px-1.5 py-0.5 text-[10px] font-medium text-zinc-200 shadow-sm backdrop-blur group-hover:flex",children:"Output"})})]})}function Uk({id:e,selected:t}){const n=he(s=>s.items.find(c=>c.id===e)),a=he(s=>s.updateItem),[l,r]=k.useState(()=>(n==null?void 0:n.data.promptText)??""),i=()=>{n&&a(e,{data:{...n.data,promptText:l}})};return o.jsxs(o.Fragment,{children:[o.jsx(hn,{children:o.jsx(St,{icon:o.jsx("span",{className:"text-sm font-bold leading-none text-zinc-400",children:"T"}),children:"Prompt"})}),o.jsx(Et,{id:e,selected:!!t,minWidth:160,minHeight:80,padded:!1,subtleSelect:!0,children:o.jsx("textarea",{value:l,onChange:s=>r(s.target.value),onBlur:i,spellCheck:!1,placeholder:"Describe what to generate…",className:"nodrag h-full w-full resize-none bg-transparent p-2.5 text-xs leading-snug text-zinc-100 outline-none placeholder:text-zinc-600"})}),o.jsx(tt,{type:"source",id:"out",position:ne.Right,className:"!h-3 !w-3 !border-2 !border-surface !bg-amber-400"})]})}function Vk({field:e,value:t,onChange:n,onCommit:a}){const l="text-[10px] font-medium uppercase tracking-wide text-zinc-500",r="w-full rounded-md border border-border bg-panel px-2 py-1.5 text-xs text-zinc-100 outline-none transition-colors focus:border-accent";if(e.widget==="textarea"||e.widget==="text"){const i=String(t??""),s={value:i,onChange:c=>n(c.target.value),onBlur:()=>a(i),placeholder:e.label,className:r};return o.jsxs("label",{className:"flex flex-col gap-1",children:[o.jsx("span",{className:l,children:e.label}),e.widget==="textarea"?o.jsx("textarea",{...s,rows:3,className:`${r} resize-none leading-snug`}):o.jsx("input",{type:"text",...s})]})}return e.widget==="select"?o.jsxs("label",{className:"flex flex-col gap-1",children:[o.jsx("span",{className:l,children:e.label}),o.jsx("select",{value:String(t??e.default),onChange:i=>a(i.target.value),className:r,children:e.options.map(i=>o.jsx("option",{value:i.value,children:i.label},i.value))})]}):e.widget==="number"?o.jsxs("label",{className:"flex flex-col gap-1",children:[o.jsx("span",{className:l,children:e.label}),o.jsx("input",{type:"number",value:Number(t??e.default),min:e.min,max:e.max,step:e.step,onChange:i=>n(Number(i.target.value)),onBlur:()=>a(Number(t??e.default)),className:r})]}):o.jsxs("label",{className:"flex items-center justify-between gap-2 py-0.5",children:[o.jsx("span",{className:l,children:e.label}),o.jsx("input",{type:"checkbox",checked:!!t,onChange:i=>a(i.target.checked),className:"accent-accent"})]})}function $k(){const e=Ie(f=>f.settingsFrameId),t=Ie(f=>f.closeSettings),n=Ie(f=>f.setParams),a=J(f=>f.frames.find(h=>h.id===e)),l=a!=null&&a.modelId?Zs(a.modelId):void 0,[r,i]=k.useState({}),s=k.useRef(null),c=l==null?void 0:l.id;if(k.useEffect(()=>{l&&a&&i({...qx(l),...a.params})},[e,c]),k.useEffect(()=>{if(!e)return;const f=h=>{var x;const m=h.target;!m||(x=s.current)!=null&&x.contains(m)||m.closest("[data-gen-settings-toggle]")||t()};return document.addEventListener("pointerdown",f),()=>document.removeEventListener("pointerdown",f)},[e,t]),!e||!a||!l)return null;const u=(f,h)=>i(m=>({...m,[f]:h})),d=(f,h)=>i(m=>{const x={...m,[f]:h};return n(e,x),x});return o.jsxs("div",{ref:s,className:"absolute right-0 top-0 z-40 flex h-full w-72 flex-col border-l border-border bg-panel shadow-2xl",children:[o.jsxs("header",{className:"flex items-center justify-between border-b border-border px-3 py-2",children:[o.jsxs("div",{className:"flex min-w-0 flex-col",children:[o.jsx("span",{className:"text-xs font-semibold text-zinc-100",children:"Settings"}),o.jsx("span",{className:"truncate text-[10px] text-zinc-500",children:l.title})]}),o.jsx("button",{onClick:t,className:"flex h-6 w-6 items-center justify-center rounded text-zinc-400 hover:bg-surface hover:text-zinc-100","aria-label":"Close settings",children:o.jsx(sl,{className:"h-3.5 w-3.5"})})]}),o.jsx("div",{className:"flex flex-1 flex-col gap-3 overflow-y-auto p-3",children:l.params.length===0?o.jsx("p",{className:"text-[11px] text-zinc-500",children:"This model has no adjustable settings."}):l.params.map(f=>o.jsx(Vk,{field:f,value:r[f.key],onChange:h=>u(f.key,h),onCommit:h=>d(f.key,h)},f.key))})]})}function Yk({field:e,value:t,onChange:n,onCommit:a}){const l="text-[10px] font-medium uppercase tracking-wide text-zinc-500",r="w-full rounded-md border border-border bg-panel px-2 py-1.5 text-xs text-zinc-100 outline-none transition-colors focus:border-accent";if(e.widget==="boolean")return o.jsxs("label",{className:"flex items-center justify-between gap-2 py-0.5",children:[o.jsx("span",{className:l,children:e.label}),o.jsx("input",{type:"checkbox",checked:!!(t??e.default),onChange:c=>a(c.target.checked),className:"accent-accent"})]});if(e.widget==="select")return o.jsxs("label",{className:"flex flex-col gap-1",children:[o.jsx("span",{className:l,children:e.label}),o.jsx("select",{value:String(t??e.default),onChange:c=>a(c.target.value),className:r,children:(e.options??[]).map(c=>o.jsx("option",{value:c.value,children:c.label},c.value))})]});if(e.widget==="number"||e.widget==="seed"){const c=Number(t??e.default);return o.jsxs("label",{className:"flex flex-col gap-1",children:[o.jsx("span",{className:l,children:e.label}),o.jsx("input",{type:"number",value:c,min:e.min,max:e.max,step:e.step,onChange:u=>n(Number(u.target.value)),onBlur:()=>a(c),className:r})]})}const i=String(t??e.default??""),s={value:i,onChange:c=>n(c.target.value),onBlur:()=>a(i),placeholder:e.label,className:r};return o.jsxs("label",{className:"flex flex-col gap-1",children:[o.jsx("span",{className:l,children:e.label}),e.widget==="textarea"?o.jsx("textarea",{...s,rows:3,className:`${r} resize-none leading-snug`}):o.jsx("input",{type:"text",...s})]})}function Xk(){const e=Ie(m=>m.settingsCoreItemId),t=Ie(m=>m.closeCoreSettings),n=he(m=>m.items.find(x=>x.id===e)),a=he(m=>m.updateItem),l=(n==null?void 0:n.type)==="core"?n.data.core:void 0,r=el(m=>l?m.descriptors.find(x=>x.type===l.type):void 0),i=k.useMemo(()=>Object.fromEntries(((r==null?void 0:r.params)??[]).map(m=>[m.key,m.default])),[r]),[s,c]=k.useState({}),u=k.useRef(null),d=l==null?void 0:l.type;if(k.useEffect(()=>{l&&c({...i,...l.params})},[e,d]),k.useEffect(()=>{if(!e)return;const m=x=>{var w;const j=x.target;!j||(w=u.current)!=null&&w.contains(j)||j.closest("[data-gen-settings-toggle]")||t()};return document.addEventListener("pointerdown",m),()=>document.removeEventListener("pointerdown",m)},[e,t]),!e||!n||!l||!r)return null;const f=(m,x)=>c(j=>{const w={...j,[m]:x};return a(e,{data:{...n.data,core:{...l,params:w}}}),w}),h=(m,x)=>c(j=>({...j,[m]:x}));return o.jsxs("div",{ref:u,className:"absolute right-0 top-0 z-40 flex h-full w-72 flex-col border-l border-border bg-panel shadow-2xl",children:[o.jsxs("header",{className:"flex items-center justify-between border-b border-border px-3 py-2",children:[o.jsxs("div",{className:"flex min-w-0 flex-col",children:[o.jsx("span",{className:"text-xs font-semibold text-zinc-100",children:"Settings"}),o.jsx("span",{className:"truncate text-[10px] text-zinc-500",children:r.title})]}),o.jsx("button",{onClick:t,className:"flex h-6 w-6 items-center justify-center rounded text-zinc-400 hover:bg-surface hover:text-zinc-100","aria-label":"Close settings",children:o.jsx(sl,{className:"h-3.5 w-3.5"})})]}),o.jsx("div",{className:"flex flex-1 flex-col gap-3 overflow-y-auto p-3",children:r.params.length===0?o.jsx("p",{className:"text-[11px] text-zinc-500",children:"This node has no adjustable settings."}):r.params.map(m=>o.jsx(Yk,{field:m,value:s[m.key],onChange:x=>h(m.key,x),onCommit:x=>f(m.key,x)},m.key))})]})}const qk={image:"Image","image[]":"Images",video:"Video",audio:"Audio",text:"Text",path:"File"};function Fk({kind:e}){return e==="video"?o.jsx(kf,{className:"h-4 w-4"}):e==="audio"?o.jsx(Ws,{className:"h-4 w-4"}):e==="text"?o.jsx("span",{className:"text-sm font-bold leading-none",children:"T"}):o.jsx(Ps,{className:"h-4 w-4"})}function Rc({label:e,kind:t,required:n}){return o.jsxs("div",{className:"flex items-center gap-2 rounded-md border border-border bg-surface/60 px-2.5 py-2",children:[o.jsx("span",{className:"flex h-6 w-6 shrink-0 items-center justify-center rounded text-zinc-300",children:o.jsx(Fk,{kind:t})}),o.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[o.jsx("span",{className:"truncate text-[11px] font-medium text-zinc-100",children:e}),o.jsx("span",{className:"text-[10px] text-zinc-500",children:qk[t]})]}),n!==void 0&&o.jsx("span",{className:`shrink-0 rounded-full px-1.5 py-0.5 text-[9px] font-medium ${n?"bg-amber-500/15 text-amber-300":"bg-zinc-500/15 text-zinc-400"}`,children:n?"Required":"Optional"})]})}function Lc({title:e,children:t}){return o.jsxs("section",{className:"flex flex-col gap-1.5",children:[o.jsx("h4",{className:"text-[10px] font-semibold uppercase tracking-wide text-zinc-500",children:e}),t]})}function Gk(){var l;const e=Ie(r=>r.infoModelId),t=Ie(r=>r.closeModelInfo),n=e?Zs(e):void 0;if(!e||!n)return null;const a=((l=n.estimatePrice)==null?void 0:l.call(n,qx(n)))??null;return o.jsxs("div",{className:"absolute right-0 top-0 z-40 flex h-full w-72 flex-col border-l border-border bg-panel shadow-2xl",children:[o.jsxs("header",{className:"flex items-center justify-between gap-2 border-b border-border px-3 py-2",children:[o.jsxs("div",{className:"flex min-w-0 flex-col",children:[o.jsx("span",{className:"truncate text-xs font-semibold text-zinc-100",children:n.title}),o.jsxs("span",{className:"truncate text-[10px] text-zinc-500",children:[Kx(n.id)," · ",n.category]})]}),o.jsx("button",{onClick:t,"aria-label":"Close model info",className:"flex h-6 w-6 shrink-0 items-center justify-center rounded text-zinc-400 hover:bg-surface hover:text-zinc-100",children:o.jsx(sl,{className:"h-3.5 w-3.5"})})]}),o.jsxs("div",{className:"flex flex-1 flex-col gap-4 overflow-y-auto p-3",children:[o.jsxs(Lc,{title:"Inputs",children:[o.jsx(Rc,{label:"Prompt",kind:"text",required:!n.promptOptional}),n.inputs.map(r=>o.jsx(Rc,{label:r.label,kind:r.kind,required:r.required},r.id))]}),o.jsx(Lc,{title:"Outputs",children:n.outputs.map(r=>o.jsx(Rc,{label:r.label,kind:r.kind},r.id))}),o.jsxs(Lc,{title:"Cost",children:[o.jsxs("div",{className:"flex items-baseline gap-2 rounded-md border border-border bg-surface/60 px-2.5 py-2",children:[o.jsx("span",{className:"text-base font-semibold text-emerald-300",children:a?Xx(a):"—"}),o.jsx("span",{className:"text-[10px] text-zinc-500",children:a?"per generation (estimate)":"varies by output"})]}),o.jsx("p",{className:"text-[10px] leading-relaxed text-zinc-600",children:"fal pricing; actual cost may vary with output size and options."})]})]})]})}function Zk({nodeType:e,comp:t}){const n=wt(i=>i.download),a=wt(i=>{var s;return(s=i.downloads[e])==null?void 0:s[t.id]}),l=a!==void 0&&a.error===void 0,r=Math.round(((a==null?void 0:a.fraction)??0)*100);return o.jsxs("div",{className:"flex flex-col gap-1.5 rounded-md border border-border bg-surface/60 px-3 py-2.5",children:[o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[o.jsx("span",{className:"truncate text-[12px] font-medium text-zinc-100",children:t.label}),o.jsx("span",{className:"truncate font-mono text-[10px] text-zinc-500",children:t.localPath})]}),t.present?o.jsx("span",{className:"shrink-0 rounded-full bg-emerald-500/15 px-2 py-0.5 text-[10px] font-medium text-emerald-300",children:"Ready"}):l?o.jsxs("span",{className:"shrink-0 text-[10px] font-medium text-emerald-300",children:[r,"%"]}):o.jsxs("button",{onClick:()=>void n(e,t.id),className:"flex shrink-0 items-center gap-1 rounded-md border border-border bg-panel px-2 py-1 text-[10px] font-medium text-zinc-100 hover:border-emerald-500/50 hover:text-emerald-300",children:[o.jsx(ly,{className:"h-3.5 w-3.5"}),"Download"]})]}),l&&o.jsx("div",{className:"h-1 overflow-hidden rounded-full bg-black/40",children:o.jsx("div",{className:"h-full bg-emerald-400 transition-all",style:{width:`${r}%`}})}),l&&(a==null?void 0:a.status)&&o.jsx("span",{className:"text-[10px] text-zinc-500",children:a.status}),(a==null?void 0:a.error)&&o.jsxs("span",{className:"text-[10px] text-red-400",children:["Download failed: ",a.error]})]})}function Qk(){const e=wt(s=>s.openFor),t=wt(s=>s.close),n=wt(s=>s.download),a=wt(s=>e?s.byType[e]:void 0),l=wt(s=>e?Object.values(s.downloads[e]??{}).some(c=>c.error===void 0):!1),r=el(s=>{var c;return e?((c=s.descriptors.find(u=>u.type===e))==null?void 0:c.title)??e:""});if(!e||!a)return null;const i=a.components.filter(s=>!s.present);return o.jsx("div",{className:"absolute inset-0 z-50 flex items-center justify-center bg-black/60 p-6",onClick:t,children:o.jsxs("div",{className:"flex max-h-full w-[28rem] max-w-[90vw] flex-col overflow-hidden rounded-xl border border-border bg-panel shadow-2xl",onClick:s=>s.stopPropagation(),children:[o.jsxs("header",{className:"flex items-center justify-between gap-2 border-b border-border px-4 py-3",children:[o.jsxs("div",{className:"flex min-w-0 flex-col",children:[o.jsxs("span",{className:"truncate text-sm font-semibold text-zinc-100",children:[r," models"]}),o.jsx("span",{className:"text-[10px] text-zinc-500",children:a.allPresent?"All models are on disk.":`${i.length} missing`})]}),o.jsx("button",{onClick:t,"aria-label":"Close",className:"flex h-7 w-7 shrink-0 items-center justify-center rounded text-zinc-400 hover:bg-surface hover:text-zinc-100",children:o.jsx(sl,{className:"h-4 w-4"})})]}),o.jsxs("p",{className:"border-b border-border px-4 py-2 text-[11px] leading-relaxed text-zinc-500",children:["These files must be on disk to generate. Nothing is downloaded automatically — grab what's missing below and it's saved into"," ",o.jsx("span",{className:"font-mono text-zinc-400",children:"core/models/"}),"."]}),o.jsx("div",{className:"flex flex-col gap-2 overflow-y-auto p-4",children:a.components.map(s=>o.jsx(Zk,{nodeType:e,comp:s},s.id))}),o.jsxs("footer",{className:"flex items-center justify-between gap-2 border-t border-border px-4 py-3",children:[o.jsxs("button",{onClick:()=>void n(e,"all"),disabled:a.allPresent||l,className:"flex items-center gap-1.5 rounded-md bg-emerald-500/90 px-3 py-1.5 text-[11px] font-semibold text-black hover:bg-emerald-400 disabled:cursor-not-allowed disabled:opacity-40",children:[o.jsx(ly,{className:"h-4 w-4"}),"Download all"]}),o.jsx("button",{onClick:t,className:"rounded-md border border-border px-3 py-1.5 text-[11px] font-medium text-zinc-300 hover:bg-surface hover:text-zinc-100",children:"Done"})]})]})})}function Kk({id:e,selected:t}){const n=he(O=>O.connectors),a=he(O=>O.items),l=a.find(O=>O.id===e),r=he(O=>O.updateItem),i=J(O=>O.frames),s=J(O=>O.takesByFrame),c=J(O=>O.inputsByFrame),u=J(O=>O.setHero),d=un(O=>O.assets),f=cl(),h=tl(O=>O.open),[m,x]=k.useState(0),[j,w]=k.useState(null),p=k.useRef(null),y=n.find(O=>O.toItemId===e),g=y?a.find(O=>O.id===y.fromItemId):void 0,v=g!=null&&g.frameId?i.find(O=>O.id===g.frameId):void 0,_=(g==null?void 0:g.type)==="director",M=_?(g==null?void 0:g.data.directorExport)??null:null,z=v?s[v.id]??[]:[],C=(v==null?void 0:v.heroTakeId)??null,B=[...z];if(C){const O=B.findIndex(V=>V.id===C);O>0&&B.unshift(B.splice(O,1)[0])}const L=B.length,S=L?Math.min(m,L-1):0,H=L?B[S]:void 0,U=!!H&&H.id===C,E=()=>{v&&H&&!U&&u(v.id,H.id)},R=(()=>{if(H||!v)return null;const O=(c[v.id]??[]).find(V=>V.assetId);return O!=null&&O.assetId?d.find(V=>V.id===O.assetId)??null:null})(),b=H?{src:ce(H.filePath),saveSrc:ce(H.filePath),kind:H.kind,waveform:ce(mr(H.id))}:R?{src:ce(R.previewPath??R.filePath),saveSrc:ce(R.filePath),kind:R.kind,waveform:R.thumbPath?ce(R.thumbPath):null}:null,N=_||(b==null?void 0:b.kind)==="video"||(b==null?void 0:b.kind)==="image",T=l==null?void 0:l.width,D=l==null?void 0:l.height;k.useLayoutEffect(()=>{const O=p.current;if(!N||!j||!O||T==null)return;const V=Math.round(O.offsetTop+O.offsetWidth/j);D!=null&&Math.abs(V-D)<1||r(e,{height:V},!1)},[N,j,T,D,e,r]);const A=`Preview${v?` · Frame ${v.name}`:_?" · Director":""}`;return o.jsxs(o.Fragment,{children:[o.jsxs(hn,{children:[o.jsx(St,{icon:o.jsx(nk,{}),title:A,children:A}),L>0&&o.jsxs(St,{tone:"info",children:[S+1,"/",L]})]}),o.jsx(tt,{type:"target",position:ne.Left,id:"in",className:"!h-3.5 !w-3.5 !border-2 !border-surface !bg-indigo-400"}),o.jsx(tt,{type:"source",position:ne.Right,id:"out",title:"Feed the selected output into a frame's input",className:"!h-3.5 !w-3.5 !border-2 !border-surface !bg-emerald-400"}),o.jsx(Et,{id:e,selected:!!t,minWidth:220,minHeight:170,padded:!1,subtleSelect:!0,children:o.jsx("div",{className:"flex h-full w-full flex-col",children:o.jsxs("div",{ref:p,className:`relative w-full overflow-hidden bg-black ${N?"":"flex flex-1 items-center justify-center"}`,style:N?{aspectRatio:j??16/9}:void 0,children:[_?M?o.jsx("video",{src:ce(M),controls:!0,onLoadedMetadata:O=>{const V=O.currentTarget;V.videoWidth&&V.videoHeight&&w(V.videoWidth/V.videoHeight)},onContextMenu:O=>f(O,{src:ce(M),name:"director",kind:"video"}),onDoubleClick:()=>h({src:ce(M),kind:"video",name:"director"}),className:"absolute inset-0 h-full w-full object-contain"}):o.jsx("span",{className:"absolute inset-0 flex items-center justify-center p-3 text-center text-[11px] text-zinc-500",children:"Click Export on the director to render the video here."}):b?b.kind==="video"?o.jsx("video",{src:b.src,controls:!0,onLoadedMetadata:O=>{const V=O.currentTarget;V.videoWidth&&V.videoHeight&&w(V.videoWidth/V.videoHeight)},onContextMenu:O=>f(O,{src:b.saveSrc,name:v?`Frame ${v.name}`:"take",kind:"video"}),onDoubleClick:()=>h({src:b.saveSrc,kind:"video",name:v?`Frame ${v.name}`:"take"}),className:"absolute inset-0 h-full w-full object-contain"}):b.kind==="audio"?o.jsxs("div",{className:"flex h-full w-full flex-col justify-center gap-2 px-3",children:[o.jsx(Kn,{url:b.waveform,className:"h-16 w-full text-emerald-400"}),o.jsx("audio",{src:b.src,controls:!0,onContextMenu:O=>f(O,{src:b.saveSrc,name:v?`Frame ${v.name}`:"take",kind:"audio"}),className:"nodrag w-full"})]}):o.jsx("img",{src:b.src,alt:"",onLoad:O=>{const V=O.currentTarget;V.naturalWidth&&V.naturalHeight&&w(V.naturalWidth/V.naturalHeight)},onContextMenu:O=>f(O,{src:b.saveSrc,name:v?`Frame ${v.name}`:"take",kind:b.kind}),onDoubleClick:()=>h({src:b.saveSrc,kind:"image",name:v?`Frame ${v.name}`:"take"}),className:"absolute inset-0 h-full w-full object-contain"}):o.jsx("span",{className:"p-3 text-center text-[11px] text-zinc-500",children:v?"No outputs yet — generate this frame, or it shows its input.":"Connect a frame's output here to preview it"}),o.jsx(di,{items:B.map(O=>({id:O.id,url:ce(O.filePath),kind:O.kind})),selected:S,onSelect:x}),H&&(U?o.jsxs("span",{className:"absolute left-1 top-1 flex items-center gap-1 rounded bg-emerald-500/80 px-1 py-0.5 text-[9px] font-medium text-white",children:[o.jsx(ns,{filled:!0,className:"h-2.5 w-2.5"}),"Hero"]}):o.jsxs("button",{onClick:E,title:"Use this take as the frame's hero",className:"nodrag absolute left-1 top-1 flex items-center gap-1 rounded bg-black/60 px-1 py-0.5 text-[9px] text-amber-300 hover:bg-black/80",children:[o.jsx(ns,{className:"h-2.5 w-2.5"}),"Set hero"]}))]})})})]})}const Pk="#93c5fd",Wk=["#93c5fd","#cbd5e1","#fca5a5","#fdba74","#fcd34d","#86efac","#5eead4","#a5b4fc","#d8b4fe","#f9a8d4"];function Jk({id:e,data:t,selected:n}){const{name:a,color:l}=t,r=a||"Layer",i=l||Pk,s=he(p=>p.updateItem),c=he(p=>p.deleteItem),[u,d]=k.useState(!1),[f,h]=k.useState(r),[m,x]=k.useState(!1),j=()=>{d(!1);const p=f.trim()||"Layer";p!==r&&s(e,{data:{name:p,color:l}})},w=p=>{x(!1),p!==l&&s(e,{data:{name:r,color:p}})};return o.jsxs(o.Fragment,{children:[o.jsx($x,{isVisible:n,minWidth:220,minHeight:160,lineClassName:"!border-accent",handleClassName:"!h-2 !w-2 !rounded-sm !bg-accent !border-white",onResizeEnd:(p,y)=>void s(e,{width:y.width,height:y.height})}),o.jsx("div",{className:"pointer-events-none flex h-full w-full flex-col overflow-hidden rounded-lg border-2",style:{borderColor:i,backgroundColor:`${i}14`},children:o.jsxs("div",{className:"drag-handle pointer-events-auto flex cursor-grab items-center gap-2 border-b border-border bg-panel px-2 py-1",children:[o.jsx("span",{className:"rounded px-1.5 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-zinc-900",style:{backgroundColor:i},children:"Layer"}),u?o.jsx("input",{autoFocus:!0,value:f,onChange:p=>h(p.target.value),onBlur:j,onKeyDown:p=>{p.key==="Enter"&&j(),p.key==="Escape"&&d(!1)},className:"nodrag min-w-0 flex-1 bg-transparent text-xs font-medium text-zinc-100 outline-none"}):o.jsx("span",{onDoubleClick:()=>{h(r),d(!0)},title:"Double-click to rename",className:"min-w-0 flex-1 truncate text-xs font-medium text-zinc-200",children:r}),n&&o.jsx("button",{onClick:()=>void c(e),title:"Delete layer",className:"nodrag nopan flex shrink-0 items-center px-0.5 text-zinc-400 hover:text-red-400",children:o.jsx(sl,{className:"h-3 w-3"})}),o.jsxs("div",{className:"relative shrink-0",children:[o.jsxs("button",{onClick:()=>x(p=>!p),title:"Layer color",className:"nodrag nopan flex items-center gap-0.5 rounded px-0.5 py-0.5 hover:bg-surface",children:[o.jsx("span",{className:"h-3.5 w-3.5 rounded-full border border-white/40",style:{backgroundColor:i}}),o.jsx(ny,{className:"h-3 w-3 text-zinc-400"})]}),m&&o.jsx("div",{className:"nodrag nopan absolute right-0 top-full z-50 mt-1 grid grid-cols-5 gap-1.5 rounded-md border border-border bg-panel p-2 shadow-lg",style:{width:124},children:Wk.map(p=>o.jsx("button",{onClick:()=>w(p),title:p,className:`h-4 w-4 rounded-full border ${p===i?"border-white":"border-white/30"} hover:scale-110`,style:{backgroundColor:p}},p))})]})]})})]})}const Hc="vin-",Ic="ain-",e_=5,t_=2,n_=800,Zm=(e,t)=>{if(typeof e!="string"||!e.startsWith(t))return null;const n=Number(e.slice(t.length));return Number.isFinite(n)?n:null};function Qm({handleId:e,type:t,position:n,label:a,dotClass:l}){return o.jsxs("div",{className:"flex flex-col items-center gap-px",title:a,children:[o.jsx(tt,{type:t,position:n,id:e,style:{position:"relative",left:0,top:0,transform:"none"},className:`!h-3.5 !w-3.5 !min-h-0 !min-w-0 !border-2 !border-surface ${l}`}),o.jsx("span",{className:"text-[11px] font-medium leading-none text-zinc-300",children:a})]})}function a_({id:e,data:t,selected:n}){const{name:a,previewUrl:l}=t,r=he(A=>A.connectors),i=he(A=>A.items),s=he(A=>A.load),c=he(A=>A.setConnectorVolume),{setCenter:u}=Ai(),d=Da(A=>A.timelineByOwner[e]),f=Da(A=>A.progressByOwner[e]),h=Da(A=>A.resolve),m=Da(A=>A.setVolumes),x=Da(A=>A.buildPreview),j=Da(A=>A.exportTimeline),w=k.useMemo(()=>r.filter(A=>A.toItemId===e),[r,e]),p=k.useMemo(()=>w.map(A=>{var ae,ue;const O=i.find(le=>le.id===A.fromItemId),V=(O==null?void 0:O.type)==="trim"?O.data.trim:void 0,Z=V?`${V.inPoint},${V.outPoint}`:"",P=typeof((ae=A.data)==null?void 0:ae.volume)=="number"?A.data.volume:"";return`${A.fromItemId}:${String(((ue=A.data)==null?void 0:ue.targetHandle)??"")}:${Z}:${P}`}).sort().join("|"),[w,i]),y=new Set(w.map(A=>{var O;return Zm((O=A.data)==null?void 0:O.targetHandle,Hc)}).filter(A=>A!==null)),g=new Set(w.map(A=>{var O;return Zm((O=A.data)==null?void 0:O.targetHandle,Ic)}).filter(A=>A!==null)),v=Math.max(e_,y.size+1),_=Math.max(t_,g.size+1),M=(d==null?void 0:d.l1Volume)??1,z=(d==null?void 0:d.l2Volume)??1,C=(d==null?void 0:d.video)??[],B=(d==null?void 0:d.l2)??[],L=C.length>0||B.length>0,S=Math.max(Km(C),Km(B),.001);k.useEffect(()=>{h(e)},[e,p,h]);const H=w.some(A=>{var V;const O=String(((V=A.data)==null?void 0:V.targetHandle)??"");return O.startsWith(Hc)||O.startsWith(Ic)}),U=`${p}|${M}|${z}|${H?1:0}`,E=k.useRef(null);k.useEffect(()=>{if(E.current===null){E.current=U;return}if(E.current===U||(E.current=U,!H))return;const A=setTimeout(async()=>{await x(e)&&await s()},n_);return()=>clearTimeout(A)},[e,U,H,x,s]);const R=f!=null,b=A=>{const O=i.find(V=>V.type==="frame"&&V.frameId===A);O&&u(O.x+O.width/2,O.y+O.height/2,{zoom:1,duration:400})},N=k.useRef(null),[T,D]=k.useState(0);return o.jsxs(o.Fragment,{children:[o.jsx(hn,{children:o.jsx(St,{icon:o.jsx(lk,{}),title:a||"Director",children:a||"Director"})}),o.jsx(Et,{id:e,selected:!!n,minWidth:360,minHeight:320,padded:!1,subtleSelect:!0,children:o.jsxs("div",{className:"flex h-full w-full text-zinc-300",children:[o.jsxs("div",{className:"flex w-11 shrink-0 flex-col items-center gap-1.5 overflow-y-auto border-r border-border bg-panel py-1",children:[Array.from({length:v}).map((A,O)=>o.jsx(Qm,{handleId:`${Hc}${O}`,type:"target",position:ne.Left,label:`V${O+1}`,dotClass:"!bg-indigo-400"},`vin-${O}`)),Array.from({length:_}).map((A,O)=>o.jsx(Qm,{handleId:`${Ic}${O}`,type:"target",position:ne.Left,label:`A${O+1}`,dotClass:"!bg-emerald-400"},`ain-${O}`))]}),o.jsxs("div",{className:"flex min-w-0 flex-1 flex-col",children:[o.jsxs("div",{className:"flex shrink-0 items-center justify-end gap-1 border-b border-border bg-panel px-2 py-1",children:[R&&o.jsxs("span",{className:"mr-auto text-[10px] text-amber-400",children:[Math.round((f??0)*100),"%"]}),o.jsx("button",{onClick:async()=>{await j(e)&&await s()},disabled:R||!L,className:"nodrag rounded bg-accent px-1.5 py-0.5 text-[10px] text-panel hover:brightness-110 disabled:opacity-40",children:"Export"}),o.jsxs("span",{className:"flex items-center gap-1 text-[11px] font-medium text-zinc-300",title:"Video output",children:["Out",o.jsx(tt,{type:"source",position:ne.Right,id:"out",style:{position:"relative",left:0,top:0,transform:"none"},className:"!h-3.5 !w-3.5 !min-h-0 !min-w-0 !border-2 !border-surface !bg-amber-400"})]})]}),o.jsx("div",{className:"relative aspect-video w-full shrink-0 bg-black",children:l?o.jsx("video",{ref:N,src:ce(l),controls:!0,onTimeUpdate:()=>{const A=N.current;A&&A.duration>0&&D(A.currentTime/A.duration)},className:"nodrag absolute inset-0 h-full w-full object-contain"}):o.jsx("span",{className:"absolute inset-0 flex items-center justify-center px-3 text-center text-[11px] text-zinc-500",children:L?R?"Rendering preview…":"Building preview…":"Wire frames into the V (video) or A (audio) inputs on the left"})}),o.jsxs("div",{className:"nodrag relative flex-1 overflow-auto py-1.5",children:[L&&o.jsx("div",{className:"pointer-events-none absolute inset-y-0 z-10 w-px bg-red-500",style:{left:`${(T*100).toFixed(2)}%`}}),L&&o.jsx(l_,{total:S}),o.jsx(Uc,{label:"VIDEO",children:C.map(A=>o.jsx(Vc,{clip:A,total:S,kind:"video",onNavigate:b},A.key))}),o.jsx(Uc,{label:"AUDIO L1",control:o.jsx(Pm,{value:M,onChange:A=>void m(e,A,z)}),children:C.map(A=>o.jsx(Vc,{clip:A,total:S,kind:"audio",onSetVolume:O=>void c(A.connectorId,O)},A.key))}),o.jsx(Uc,{label:"AUDIO L2",control:o.jsx(Pm,{value:z,onChange:A=>void m(e,M,A)}),children:B.length===0?o.jsx("span",{className:"px-1 text-[9px] text-zinc-600",children:"Wire audio into a green input"}):B.map(A=>o.jsx(Vc,{clip:A,total:S,kind:"audio"},A.key))})]})]})]})})]})}function Km(e){return e.reduce((t,n)=>Math.max(t,n.startTime+n.duration),0)}function Uc({label:e,control:t,children:n}){return o.jsxs("div",{className:"mb-1.5",children:[o.jsxs("div",{className:"mb-0.5 flex items-center justify-between",children:[o.jsx("span",{className:"text-[9px] uppercase tracking-wide text-zinc-500",children:e}),t]}),o.jsx("div",{className:"flex h-8 w-full overflow-hidden rounded bg-black/30",children:n})]})}function Vc({clip:e,total:t,kind:n,onNavigate:a,onSetVolume:l}){const r=`${e.duration/t*100}%`;if(n==="audio")return o.jsxs("div",{style:{width:r},className:"relative flex h-full items-center border-r border-black/40 bg-emerald-500/10 px-0.5",title:`${e.label} (${e.duration.toFixed(1)}s)`,children:[o.jsx(Kn,{url:e.audioPeaks?ce(e.audioPeaks):null,rangeStart:e.peaksStart,rangeEnd:e.peaksEnd,className:"h-2/3 w-full text-emerald-400"}),l&&o.jsx(r_,{volume:e.volume,onChange:l})]});const i=e.thumbnail?{width:r,backgroundImage:`url(${ce(e.thumbnail)})`,backgroundSize:e.kind==="video"?"auto 100%":"cover",backgroundRepeat:e.kind==="video"?"repeat-x":"no-repeat",backgroundPosition:"center"}:{width:r};return o.jsx("div",{style:i,className:`relative h-full overflow-hidden border-r border-black/40 ${e.thumbnail?"bg-black/40":"bg-indigo-500/30"}`,title:`${e.label} (${e.duration.toFixed(1)}s)`,children:o.jsxs("button",{onClick:s=>{s.stopPropagation(),e.frameId&&(a==null||a(e.frameId))},disabled:!e.frameId,title:e.frameId?`Go to Frame ${e.label}`:e.label,className:"nodrag absolute left-0.5 top-0.5 max-w-[calc(100%-4px)] truncate rounded bg-black/70 px-1 text-[9px] text-indigo-100 hover:bg-black/90 disabled:cursor-default",children:["Frame ",e.label]})})}function l_({total:e}){const t=e<=10?1:e<=30?2:e<=60?5:e<=180?10:30,n=[];for(let a=t;a<e-t/2;a+=t)n.push(a);return o.jsxs("div",{className:"relative mb-1 h-3 w-full border-b border-border/40",children:[o.jsx("span",{className:"absolute left-0 top-0 text-[8px] text-zinc-500",children:"0s"}),n.map(a=>o.jsxs("span",{className:"absolute top-0 -translate-x-1/2 text-[8px] text-zinc-500",style:{left:`${a/e*100}%`},children:[a,"s"]},a)),o.jsxs("span",{className:"absolute right-0 top-0 text-[8px] text-zinc-500",children:[e<10?e.toFixed(1):Math.round(e),"s"]})]})}function iy({muted:e,className:t}){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:t??"h-3 w-3",children:[o.jsx("polygon",{points:"11 5 6 9 2 9 2 15 6 15 11 19 11 5"}),e?o.jsxs(o.Fragment,{children:[o.jsx("line",{x1:"22",y1:"9",x2:"16",y2:"15"}),o.jsx("line",{x1:"16",y1:"9",x2:"22",y2:"15"})]}):o.jsxs(o.Fragment,{children:[o.jsx("path",{d:"M15.54 8.46a5 5 0 0 1 0 7.07"}),o.jsx("path",{d:"M19.07 4.93a10 10 0 0 1 0 14.14"})]})]})}function r_({volume:e,onChange:t}){const[n,a]=k.useState(!1);return o.jsxs(o.Fragment,{children:[o.jsx("button",{onClick:l=>{l.stopPropagation(),a(r=>!r)},title:`Volume ${Math.round(e*100)}%`,className:"nodrag absolute left-0.5 top-0.5 z-10 flex h-4 w-4 items-center justify-center rounded bg-black/60 text-zinc-100 hover:bg-black/80",children:o.jsx(iy,{muted:e<=0,className:"h-2.5 w-2.5"})}),n&&o.jsx("input",{type:"range",min:0,max:100,value:Math.round(e*100),onChange:l=>t(Number(l.target.value)/100),onPointerDown:l=>l.stopPropagation(),className:"nodrag absolute inset-x-1 bottom-0.5 z-10 h-1 accent-emerald-400"})]})}function Pm({value:e,onChange:t}){return o.jsxs("label",{className:"flex items-center gap-1",title:`Volume ${Math.round(e*100)}%`,children:[o.jsx("span",{className:"text-zinc-400",children:o.jsx(iy,{muted:e<=0,className:"h-3 w-3"})}),o.jsx("input",{type:"range",min:0,max:100,value:Math.round(e*100),onChange:n=>t(Number(n.target.value)/100),className:"nodrag h-1 w-16 accent-emerald-400"})]})}const Wm=.1,$c=e=>`${e.toFixed(1)}s`;function i_({id:e,selected:t}){const n=he(L=>L.connectors),a=he(L=>L.items.find(S=>S.id===e)),l=he(L=>L.updateItem),r=k.useMemo(()=>{const L=n.find(S=>S.toItemId===e);return L?L.fromItemId:""},[n,e]),[i,s]=k.useState(null);k.useEffect(()=>{let L=!1;if(!r){s(null);return}return F().timeline.resolveTrim(e).then(S=>{L||s(S.ok?S.value:null)}),()=>{L=!0}},[e,r]);const[c,u]=k.useState(0),d=Math.max((i==null?void 0:i.durationSec)??0,c),f=a==null?void 0:a.data.trim,h=f?Math.max(0,f.inPoint):0,m=f&&f.outPoint>f.inPoint?f.outPoint:d||(f==null?void 0:f.outPoint)||0,[x,j]=k.useState(null),w=x??{inPoint:h,outPoint:m};k.useEffect(()=>{d>0&&(!f||f.outPoint<=f.inPoint)&&l(e,{data:{...a==null?void 0:a.data,trim:{inPoint:0,outPoint:d}}},!1)},[d,f,e,a==null?void 0:a.data,l]);const p=k.useRef(null),y=k.useRef(null),g=L=>S=>{if(S.stopPropagation(),S.preventDefault(),d<=0)return;y.current=L,j({inPoint:w.inPoint,outPoint:w.outPoint});const H=E=>{var T;const R=(T=p.current)==null?void 0:T.getBoundingClientRect();if(!R||!y.current)return;const N=Math.min(1,Math.max(0,(E.clientX-R.left)/R.width))*d;j(D=>{const A=D??{inPoint:w.inPoint,outPoint:w.outPoint};return y.current==="in"?{...A,inPoint:Math.min(N,A.outPoint-Wm)}:{...A,outPoint:Math.max(N,A.inPoint+Wm)}})},U=()=>{document.removeEventListener("pointermove",H),document.removeEventListener("pointerup",U),y.current=null,j(E=>(E&&l(e,{data:{...a==null?void 0:a.data,trim:{inPoint:E.inPoint,outPoint:E.outPoint}}},!0),null))};document.addEventListener("pointermove",H),document.addEventListener("pointerup",U)},v=d>0?w.inPoint/d*100:0,_=d>0?w.outPoint/d*100:100,M=i?ce(i.mediaPath):null,z=L=>{const S=w.inPoint,H=w.outPoint;H>S&&L.currentTime>=H?(L.pause(),L.currentTime=S):L.currentTime<S-.05&&(L.currentTime=S)},C=L=>{u(L.duration||0),w.inPoint>0&&(L.currentTime=w.inPoint)},B=L=>{(L.currentTime<w.inPoint||L.currentTime>=w.outPoint)&&(L.currentTime=w.inPoint)};return o.jsxs(o.Fragment,{children:[o.jsxs(hn,{children:[o.jsx(St,{icon:o.jsx(ak,{}),title:i?i.label:"Edit Video/Audio",children:i?i.label:"Edit Video/Audio"}),d>0&&o.jsxs(St,{tone:"info",children:[$c(w.inPoint),"–",$c(w.outPoint)," (",$c(w.outPoint-w.inPoint),")"]})]}),o.jsx(tt,{type:"target",position:ne.Left,id:"in",title:"Wire a video or audio output here",className:"!h-3.5 !w-3.5 !border-2 !border-surface !bg-indigo-400"}),o.jsx(tt,{type:"source",position:ne.Right,id:"out",title:"Outputs the trimmed segment",className:"!h-3.5 !w-3.5 !border-2 !border-surface !bg-amber-400"}),o.jsx(Et,{id:e,selected:!!t,minWidth:300,minHeight:150,padded:!1,subtleSelect:!0,children:o.jsx("div",{className:"flex h-full w-full flex-col text-zinc-300",children:i?o.jsxs("div",{className:"flex flex-1 flex-col gap-1 p-2",children:[M&&i.kind==="video"&&o.jsx("div",{className:"relative aspect-video w-full shrink-0",children:o.jsx("video",{src:M,controls:!0,onLoadedMetadata:L=>C(L.currentTarget),onTimeUpdate:L=>z(L.currentTarget),onPlay:L=>B(L.currentTarget),style:{colorScheme:"dark"},className:"nodrag absolute inset-0 h-full w-full object-contain"})}),M&&i.kind==="image"&&o.jsx("div",{className:"relative aspect-video w-full shrink-0",children:o.jsx("img",{src:M,alt:"",className:"absolute inset-0 h-full w-full object-contain"})}),o.jsxs("div",{ref:p,className:"relative h-10 w-full select-none overflow-hidden rounded bg-black/40",style:i.kind==="video"&&i.thumbnail?{backgroundImage:`url(${ce(i.thumbnail)})`,backgroundSize:"auto 100%",backgroundRepeat:"repeat-x"}:void 0,children:[i.kind==="audio"&&o.jsx(Kn,{url:i.audioPeaks?ce(i.audioPeaks):null,className:"absolute inset-0 h-full w-full text-emerald-400"}),o.jsx("div",{className:"pointer-events-none absolute inset-y-0 left-0 bg-black/60",style:{width:`${v}%`}}),o.jsx("div",{className:"pointer-events-none absolute inset-y-0 right-0 bg-black/60",style:{width:`${100-_}%`}}),o.jsx("div",{onPointerDown:g("in"),className:"nodrag absolute inset-y-0 z-10 w-2 -translate-x-1/2 cursor-ew-resize bg-amber-400",style:{left:`${v}%`},title:"Trim start"}),o.jsx("div",{onPointerDown:g("out"),className:"nodrag absolute inset-y-0 z-10 w-2 -translate-x-1/2 cursor-ew-resize bg-amber-400",style:{left:`${_}%`},title:"Trim end"})]}),M&&i.kind==="audio"&&o.jsx("audio",{src:M,controls:!0,onLoadedMetadata:L=>C(L.currentTarget),onTimeUpdate:L=>z(L.currentTarget),onPlay:L=>B(L.currentTarget),className:"flat-audio nodrag w-full"})]}):o.jsx("div",{className:"flex flex-1 items-center justify-center px-3 text-center text-[11px] text-zinc-500",children:"Wire a video or audio output into the input on the left"})})})]})}function Jm(e,t){return`${((e+1)/(t+1)*100).toFixed(2)}%`}function o_(e){switch(e){case"wand":return o.jsx(ik,{});case"box":return o.jsx(ok,{});case"type":return o.jsx(sk,{});case"image":return o.jsx(Ps,{});default:return o.jsx(ck,{})}}function s_({id:e,data:t,selected:n}){var M,z;const{itemId:a}=t,l=he(C=>C.items.find(B=>B.id===a)),r=(l==null?void 0:l.type)==="core"?(M=l.data.core)==null?void 0:M.type:void 0,i=el(C=>r?C.descriptors.find(B=>B.type===r):void 0),s=Ie(C=>C.runWorkflow),c=Ie(C=>C.toggleCoreSettings),u=Ie(C=>C.busyByFrame[a]??!1),d=Ie(C=>C.progressByFrame[a]),f=Ie(C=>C.statusByFrame[a]),h=el(C=>C.registryVersion),m=wt(C=>C.load),x=wt(C=>C.open),j=wt(C=>r?C.byType[r]:void 0),w=wt(C=>r?C.downloads[r]:void 0);if(k.useEffect(()=>{r&&m(r)},[r,h,m]),!l||l.type!=="core"||!l.data.core||!i)return o.jsx(Et,{id:e,selected:!!n,minWidth:200,minHeight:92,subtleSelect:!0,children:o.jsx("div",{className:"flex h-full flex-col items-center justify-center gap-1 p-3 text-center",children:r?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-[11px] font-semibold text-amber-300",children:"Node unavailable"}),o.jsxs("span",{className:"text-[10px] leading-tight text-zinc-400",children:[o.jsx("span",{className:"text-zinc-300",children:r})," is not registered. Start Inline Core and install its runtime (the ",o.jsx("span",{className:"text-zinc-300",children:"zimage"})," ","extra)."]})]}):o.jsx("span",{className:"text-[11px] text-zinc-500",children:"Core node"})})});const p=l.data.core,y=typeof d=="number"?Math.round(d*100):null,g=j?!j.allPresent:!1,v=w?WE(w,j):null,_=v?Math.round(v.fraction*100):null;return o.jsxs(o.Fragment,{children:[o.jsxs(hn,{children:[o.jsx(St,{icon:o_(i.icon),children:i.title}),g&&o.jsxs("button",{onClick:()=>x(i.type),title:"Models missing — click to download",className:"nodrag flex h-6 animate-pulse items-center gap-1 rounded-full border border-amber-500/40 bg-amber-500/10 px-2 text-[10px] font-medium text-amber-300 shadow-sm backdrop-blur hover:animate-none hover:bg-amber-500/20",children:[o.jsx(uk,{className:"h-3.5 w-3.5"}),"Models"]})]}),o.jsx(Et,{id:e,selected:!!n,minWidth:200,minHeight:200,padded:!1,subtleSelect:!0,children:o.jsxs("div",{className:"relative flex h-full w-full flex-col",children:[o.jsxs("div",{className:"relative min-h-0 flex-1 overflow-hidden bg-black",children:[((z=p.output)==null?void 0:z.kind)==="image"?o.jsx("img",{src:ce(p.output.filePath),alt:"",className:"h-full w-full object-cover"}):o.jsx("div",{className:"flex h-full w-full items-center justify-center px-4",children:o.jsx("span",{className:"text-center text-[10px] text-zinc-600",children:u?f??"Working…":v?`Downloading ${v.label}…`:g?"Models missing — click the hint to download":"Run to generate"})}),u?o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"absolute left-2 top-2 flex max-w-[calc(100%-1rem)] items-center gap-1 rounded-full bg-black/75 px-2 py-0.5 text-[10px] font-medium text-emerald-300 backdrop-blur",children:[o.jsx("span",{className:"h-1.5 w-1.5 shrink-0 animate-pulse rounded-full bg-emerald-400"}),o.jsx("span",{className:"truncate",children:f??(y!=null?`${y}%`:"Working…")})]}),o.jsx("div",{className:"absolute inset-x-0 bottom-0 h-1 bg-black/40",children:o.jsx("div",{className:"h-full bg-emerald-400 transition-all",style:{width:`${y??0}%`}})})]}):v&&o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"absolute left-2 top-2 flex max-w-[calc(100%-1rem)] items-center gap-1 rounded-full bg-black/75 px-2 py-0.5 text-[10px] font-medium text-sky-300 backdrop-blur",children:[o.jsx("span",{className:"h-1.5 w-1.5 shrink-0 animate-pulse rounded-full bg-sky-400"}),o.jsxs("span",{className:"truncate",children:[v.label," ",_!=null?`${_}%`:""]})]}),o.jsx("div",{className:"absolute inset-x-0 bottom-0 h-1 bg-black/40",children:o.jsx("div",{className:"h-full bg-sky-400 transition-all",style:{width:`${_??0}%`}})})]})]}),o.jsxs("div",{className:"flex shrink-0 items-center justify-between gap-2 border-t border-border bg-surface/90 px-1.5 py-1",children:[o.jsx("span",{className:"truncate px-1 text-[10px] uppercase tracking-wide text-zinc-500",children:i.category}),o.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[o.jsx("button",{onClick:()=>void s(a),disabled:u,title:"Run up to this node",className:"nodrag flex h-6 w-6 items-center justify-center rounded text-emerald-400 hover:bg-black/40 hover:text-emerald-300 disabled:opacity-40",children:o.jsx(rk,{})}),o.jsx("button",{onClick:()=>c(a),title:"Settings","data-gen-settings-toggle":!0,className:"nodrag flex h-6 w-6 shrink-0 items-center justify-center rounded text-zinc-400 hover:bg-black/40 hover:text-zinc-100",children:o.jsx(ay,{})})]})]})]})}),i.inputs.map((C,B)=>o.jsx(tt,{type:"target",id:C.id,position:ne.Left,style:{top:Jm(B,i.inputs.length),background:Ym(C.kind)},className:"group !h-3 !w-3 !border-2 !border-surface",children:o.jsxs("span",{className:"pointer-events-none absolute right-full top-1/2 z-50 mr-2 hidden -translate-y-1/2 whitespace-nowrap rounded bg-black/90 px-1.5 py-0.5 text-[10px] leading-none text-zinc-100 shadow group-hover:block",children:[C.label," ",o.jsxs("span",{className:"text-zinc-400",children:["· ",C.kind]})]})},C.id)),i.outputs.map((C,B)=>o.jsx(tt,{type:"source",id:C.id,position:ne.Right,style:{top:Jm(B,i.outputs.length),background:Ym(C.kind)},className:"group !h-3 !w-3 !border-2 !border-surface",children:o.jsxs("span",{className:"pointer-events-none absolute left-full top-1/2 z-50 ml-2 hidden -translate-y-1/2 whitespace-nowrap rounded bg-black/90 px-1.5 py-0.5 text-[10px] leading-none text-zinc-100 shadow group-hover:block",children:[C.label," ",o.jsxs("span",{className:"text-zinc-400",children:["· ",C.kind]})]})},C.id))]})}function c_(e){const{id:t,sourceX:n,sourceY:a,targetX:l,targetY:r,sourcePosition:i,targetPosition:s,markerEnd:c,selected:u,data:d}=e,f=he(y=>y.disconnect),[h,m,x]=cf({sourceX:n,sourceY:a,targetX:l,targetY:r,sourcePosition:i,targetPosition:s}),j=d,w=(j==null?void 0:j.functional)??!1,p=u?"#fb7185":w?"#DCE775":(j==null?void 0:j.color)??"#52525b";return o.jsxs(o.Fragment,{children:[o.jsx(Ti,{id:t,path:h,markerEnd:c,interactionWidth:24,style:{stroke:p,strokeWidth:u?3:2}}),u&&o.jsx(X5,{children:o.jsx("button",{style:{position:"absolute",transform:`translate(-50%, -50%) translate(${m}px, ${x}px)`,pointerEvents:"all",zIndex:1e3},className:"nodrag nopan flex h-3.5 w-3.5 items-center justify-center rounded-full bg-rose-500 text-[8px] leading-none text-white shadow-md hover:bg-rose-400",title:"Delete connector",onMouseDown:y=>y.stopPropagation(),onClick:y=>{y.stopPropagation(),f(t)},children:"✕"})})]})}function oy({src:e,waveformUrl:t,className:n}){const a=k.useRef(null),[l,r]=k.useState(!1),[i,s]=k.useState(0),c=d=>{d.stopPropagation(),d.preventDefault();const f=a.current;f&&(f.paused?f.play():f.pause())},u=d=>{const f=a.current;f&&f.duration>0&&(f.currentTime=d*f.duration)};return o.jsxs("div",{className:`relative flex items-center justify-center ${n??""}`,children:[o.jsx(Kn,{url:t,progress:i,onSeek:u,className:"h-1/2 w-full px-2 text-emerald-400"}),o.jsx("audio",{ref:a,src:e,className:"hidden",onPlay:()=>r(!0),onPause:()=>r(!1),onEnded:()=>r(!1),onTimeUpdate:()=>{const d=a.current;d&&d.duration>0&&s(d.currentTime/d.duration)}}),o.jsx("div",{role:"button",tabIndex:-1,onClick:c,onPointerDown:d=>d.stopPropagation(),title:l?"Pause":"Play",className:"absolute left-1/2 top-1/2 flex h-7 w-7 -translate-x-1/2 -translate-y-1/2 cursor-pointer items-center justify-center rounded-full bg-black/60 text-xs text-white hover:bg-black/80",children:l?"⏸":"▶"})]})}function u_(){const{folders:e,assets:t,currentFolderId:n,selectedId:a,loading:l,error:r,load:i,import:s,importFiles:c,remove:u,createFolder:d,deleteFolder:f,navigate:h,select:m}=un(),[x,j]=k.useState(null),[w,p]=k.useState([]),[y,g]=k.useState(!1),v=U=>Array.from(U.dataTransfer.types).includes("Files"),_=U=>{v(U)&&(U.preventDefault(),U.dataTransfer.dropEffect="copy",y||g(!0))},M=U=>{if(!v(U))return;U.preventDefault(),g(!1);const E=Array.from(U.dataTransfer.files??[]);E.length>0&&c(E)},z=U=>p(E=>E.includes(U)?E.filter(R=>R!==U):[...E,U]);k.useEffect(()=>{i()},[i]);const C=y2(e,n),B=e.filter(U=>U.parentId===n),L=t.filter(U=>U.folderId===n),S=B.length===0&&L.length===0,H=()=>{const U=(x??"").trim();U&&d(U),j(null)};return o.jsxs("div",{className:`relative flex h-full flex-col bg-surface ${y?"ring-2 ring-inset ring-accent":""}`,onDragOver:_,onDragLeave:U=>{U.currentTarget.contains(U.relatedTarget)||g(!1)},onDrop:M,children:[y&&o.jsx("div",{className:"pointer-events-none absolute inset-0 z-10 flex items-center justify-center bg-accent/5",children:o.jsxs("span",{className:"rounded-md border border-accent bg-panel/90 px-3 py-1.5 text-xs text-accent",children:["Drop to import into ",C.length>0?C[C.length-1].name:"Library"]})}),o.jsx(d_,{path:C,onNavigate:h,actions:o.jsxs(o.Fragment,{children:[o.jsx("button",{onClick:()=>j(""),title:"New Folder","aria-label":"New Folder",className:"flex h-7 w-7 items-center justify-center rounded text-zinc-400 hover:text-white",children:o.jsx(I2,{className:"h-4 w-4"})}),o.jsx("button",{onClick:()=>void s(),disabled:l,title:"Import assets","aria-label":"Import assets",className:"flex h-7 w-7 items-center justify-center rounded text-zinc-400 hover:text-white disabled:opacity-40",children:o.jsx(U2,{className:"h-4 w-4"})})]})}),r&&o.jsx("p",{className:"px-3 py-2 text-xs text-red-400",children:r}),o.jsxs("div",{className:"grid flex-1 auto-rows-min grid-cols-2 gap-2 overflow-y-auto p-2",children:[x!==null&&o.jsx("div",{className:"col-span-2",children:o.jsx("input",{autoFocus:!0,value:x,onChange:U=>j(U.target.value),onKeyDown:U=>{U.key==="Enter"&&H(),U.key==="Escape"&&j(null)},onBlur:H,placeholder:"Folder name",className:"w-full rounded-md border border-accent bg-surface px-2 py-1.5 text-xs text-zinc-100 outline-none placeholder:text-zinc-500"})}),B.map(U=>o.jsx(f_,{folder:U,onOpen:()=>h(U.id),onDelete:()=>void f(U.id)},U.id)),L.map(U=>o.jsx(h_,{asset:U,selected:U.id===a,dragSelected:w.includes(U.id),dragIds:w,onSelect:()=>{p([]),m(U.id)},onToggleDrag:()=>z(U.id),onDelete:()=>void u(U.id)},U.id)),S&&x===null&&o.jsxs("div",{className:"col-span-2 flex flex-col items-center justify-center gap-1 p-6 text-center",children:[o.jsx("p",{className:"text-sm text-zinc-500",children:"This folder is empty"}),o.jsx("p",{className:"text-xs text-zinc-600",children:"Import media or create a folder."})]})]})]})}function d_({path:e,onNavigate:t,actions:n}){return o.jsxs("div",{className:"flex items-center gap-1 border-b border-border px-3 py-1.5 text-xs text-zinc-400",children:[o.jsxs("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-1",children:[o.jsx("button",{onClick:()=>t(null),className:"hover:text-zinc-200",children:"Library"}),e.map(a=>o.jsxs("span",{className:"flex items-center gap-1",children:[o.jsx("span",{className:"text-zinc-600",children:"/"}),o.jsx("button",{onClick:()=>t(a.id),className:"hover:text-zinc-200",children:a.name})]},a.id))]}),n&&o.jsx("div",{className:"flex shrink-0 items-center gap-1",children:n})]})}function f_({folder:e,onOpen:t,onDelete:n}){return o.jsxs("div",{className:"group relative",children:[o.jsxs("button",{onDoubleClick:t,onClick:t,title:e.name,className:"flex w-full flex-col items-center gap-1 rounded-md border border-border bg-surface px-2 py-3 hover:border-zinc-600",children:[o.jsx(Zd,{className:"h-8 w-8 text-zinc-400"}),o.jsx("span",{className:"w-full truncate text-center text-[11px] text-zinc-300",children:e.name})]}),o.jsx("button",{onClick:a=>{a.stopPropagation(),n()},title:"Delete folder (keeps its media)",className:"absolute right-1 top-1 hidden rounded bg-black/60 p-0.5 text-zinc-300 group-hover:block hover:text-red-400",children:o.jsx(fr,{className:"h-3 w-3"})})]})}function h_({asset:e,selected:t,dragSelected:n,dragIds:a,onSelect:l,onToggleDrag:r,onDelete:i}){const s=ce(e.filePath),c=ce(e.kind==="image"?e.thumbPath??e.filePath:e.filePath),u=ce(e.previewPath??e.filePath),d=e.thumbPath?ce(e.thumbPath):void 0,f=cl();return o.jsxs("div",{className:"group relative",children:[o.jsxs("button",{onClick:h=>h.metaKey||h.ctrlKey?r():l(),onContextMenu:h=>f(h,{src:ce(e.filePath),name:e.name,kind:e.kind}),draggable:!0,onDragStart:h=>{const m=n&&a.length>0?a:[e.id];JE(h.dataTransfer,m)},title:`${e.name} — drag onto the Frames Sequence (⌘/Ctrl-click to multi-select)`,className:`flex w-full flex-col overflow-hidden rounded-md border text-left ${n?"border-accent ring-1 ring-accent":t?"border-accent":"border-border hover:border-zinc-600"}`,children:[o.jsxs("div",{className:"flex aspect-video items-center justify-center bg-black/40",children:[e.kind==="image"&&o.jsx("img",{src:c,alt:e.name,className:"h-full w-full object-cover"}),e.kind==="video"&&o.jsx(Js,{src:u,poster:d,className:"h-full w-full object-cover"}),e.kind==="audio"&&o.jsx(oy,{src:s,waveformUrl:e.thumbPath?ce(e.thumbPath):null,className:"h-full w-full"})]}),o.jsx("span",{className:"truncate px-1.5 py-1 text-[11px] text-zinc-400",children:e.name})]}),o.jsx("button",{onClick:h=>{h.stopPropagation(),i()},title:"Remove asset",className:"absolute right-1 top-1 hidden rounded bg-black/70 p-0.5 text-zinc-300 group-hover:block hover:text-red-400",children:o.jsx(fr,{className:"h-3 w-3"})})]})}function m_({take:e,frameName:t}){const n=ce(e.filePath),a=cl();return o.jsxs("div",{draggable:!0,onDragStart:l=>{Px(l.dataTransfer,e.frameId),ek(l.dataTransfer,e.frameId,e.id)},onContextMenu:l=>a(l,{src:n,name:t,kind:e.kind}),title:`${t} — drag onto a node to use as input, or onto the canvas to make a frame`,className:"flex w-full cursor-grab flex-col overflow-hidden rounded-md border border-border hover:border-zinc-600",children:[o.jsxs("div",{className:"flex aspect-video items-center justify-center bg-black/40",children:[e.kind==="image"&&o.jsx("img",{src:n,alt:t,className:"h-full w-full object-cover"}),e.kind==="video"&&o.jsx(Js,{src:n,className:"h-full w-full object-cover"}),e.kind==="audio"&&o.jsx(oy,{src:n,waveformUrl:ce(mr(e.id)),className:"h-full w-full"})]}),o.jsx("span",{className:"truncate px-1.5 py-1 text-[11px] text-emerald-300/80",children:t})]})}const e0=[{key:"assets",label:"Assets",Icon:B2},{key:"outputs",label:"Outputs",Icon:Zp},{key:"timeline",label:"Timeline",Icon:R2}],p_=200,g_=600;function x_(){const[e,t]=k.useState("assets"),[n,a]=k.useState(!0),[l,r]=k.useState(256),i=s=>{s.preventDefault();const c=s.clientX,u=l,d=h=>{const m=Math.min(g_,Math.max(p_,u+h.clientX-c));r(m)},f=()=>{window.removeEventListener("mousemove",d),window.removeEventListener("mouseup",f),document.body.style.cursor="",document.body.style.userSelect=""};window.addEventListener("mousemove",d),window.addEventListener("mouseup",f),document.body.style.cursor="col-resize",document.body.style.userSelect="none"};return n?o.jsxs("div",{className:"relative flex shrink-0 flex-col border-r border-border bg-surface",style:{width:l},children:[o.jsxs("div",{className:"flex items-center gap-1 border-b border-border px-1.5 py-1.5",children:[o.jsx("div",{className:"flex min-w-0 flex-1 items-center gap-0.5 rounded-lg bg-black/20 p-0.5",children:e0.map(s=>{const c=e===s.key;return o.jsxs("button",{onClick:()=>t(s.key),title:s.label,"aria-pressed":c,className:`flex items-center gap-1.5 rounded-md px-2 py-1.5 text-xs font-medium transition-colors ${c?"bg-accent text-panel shadow-sm":"text-zinc-400 hover:bg-panel hover:text-zinc-200"}`,children:[o.jsx(s.Icon,{className:"h-4 w-4 shrink-0"}),c&&o.jsx("span",{className:"truncate",children:s.label})]},s.key)})}),o.jsx("button",{onClick:()=>a(!1),title:"Collapse menu","aria-label":"Collapse menu",className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-zinc-500 hover:bg-panel hover:text-white",children:o.jsx(q2,{className:"h-4 w-4"})})]}),o.jsxs("div",{className:"min-h-0 flex-1",children:[e==="assets"&&o.jsx(u_,{}),e==="outputs"&&o.jsx(y_,{}),e==="timeline"&&o.jsx(v_,{})]}),o.jsx("div",{onMouseDown:i,title:"Drag to resize",className:"absolute -right-0.5 top-0 z-10 h-full w-1.5 cursor-col-resize hover:bg-accent/40"})]}):o.jsxs("div",{className:"flex w-11 shrink-0 flex-col items-center gap-1 border-r border-border bg-surface py-2",children:[o.jsx("button",{onClick:()=>a(!0),title:"Expand menu","aria-label":"Expand menu",className:"mb-1 flex h-8 w-8 items-center justify-center rounded-md text-zinc-400 hover:bg-panel hover:text-white",children:o.jsx(Qd,{className:"h-5 w-5"})}),e0.map(s=>o.jsx("button",{onClick:()=>{t(s.key),a(!0)},title:s.label,"aria-pressed":e===s.key,className:`flex h-9 w-9 items-center justify-center rounded-md transition-colors ${e===s.key?"bg-accent text-panel shadow-sm":"text-zinc-400 hover:bg-panel hover:text-zinc-200"}`,children:o.jsx(s.Icon,{className:"h-5 w-5"})},s.key))]})}function y_(){const e=J(a=>a.frames),t=J(a=>a.takesByFrame);k.useEffect(()=>{J.getState().load()},[]);const n=e.flatMap(a=>(t[a.id]??[]).map(l=>({take:l,frameName:a.name}))).sort((a,l)=>l.take.createdAt-a.take.createdAt);return n.length===0?o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-1.5 p-6 text-center",children:[o.jsx(Zp,{className:"h-7 w-7 text-zinc-600"}),o.jsx("p",{className:"text-sm text-zinc-500",children:"No outputs yet"}),o.jsx("p",{className:"text-xs text-zinc-600",children:"Generate a frame and its takes show up here."})]}):o.jsxs("div",{className:"flex h-full flex-col",children:[o.jsx("div",{className:"flex items-center justify-between border-b border-border px-2 py-1.5",children:o.jsxs("span",{className:"text-[10px] uppercase tracking-wide text-zinc-500",children:[n.length," output",n.length===1?"":"s"]})}),o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto p-2",children:o.jsx("div",{className:"grid grid-cols-2 gap-2",children:n.map(({take:a,frameName:l})=>o.jsx(m_,{take:a,frameName:l},a.id))})})]})}function v_(){const e=J(s=>s.frames),t=J(s=>s.remove),n=he(s=>s.load),[a,l]=k.useState("updated"),r=[...e].sort((s,c)=>a==="name"?s.name.localeCompare(c.name,void 0,{numeric:!0}):c.updatedAt-s.updatedAt),i=async s=>{window.confirm(`Delete Frame ${s.name}? Its takes, workflow and canvas node are removed.`)&&(await t(s.id),n())};return e.length===0?o.jsx("p",{className:"p-2 text-xs text-zinc-600",children:"No frames yet — drag an asset onto the canvas."}):o.jsxs("div",{className:"flex h-full flex-col",children:[o.jsxs("div",{className:"flex items-center justify-between border-b border-border px-2 py-1.5",children:[o.jsxs("span",{className:"text-[10px] uppercase tracking-wide text-zinc-500",children:[e.length," frame",e.length===1?"":"s"]}),o.jsxs("label",{className:"flex items-center gap-1 text-[10px] text-zinc-500",children:["Sort",o.jsxs("select",{value:a,onChange:s=>l(s.target.value),className:"rounded border border-border bg-surface px-1 py-0.5 text-[10px] text-zinc-300 outline-none",children:[o.jsx("option",{value:"updated",children:"Last updated"}),o.jsx("option",{value:"name",children:"Name A–Z"})]})]})]}),o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto p-2",children:o.jsx("div",{className:"flex flex-col gap-1",children:r.map(s=>o.jsx(b_,{frame:s,onDelete:()=>void i(s)},s.id))})})]})}function b_({frame:e,onDelete:t}){const n=J(d=>d.inputsByFrame[e.id])??[],a=J(d=>d.takesByFrame[e.id])??[],l=un(d=>d.assets),r=Ke(d=>d.setInspectorFrame),[i,s]=k.useState(!1),c=n.map(d=>l.find(f=>f.id===d.assetId)).filter(d=>!!d),u=e.comfyWorkflowName?`${e.comfyWorkflowName.split("/").pop()}.json`:null;return o.jsxs("div",{className:"overflow-hidden rounded border border-border",children:[o.jsxs("div",{draggable:!0,onDragStart:d=>Px(d.dataTransfer,e.id),title:"Drag onto the canvas to place this frame",className:"flex cursor-grab items-center gap-1 bg-surface px-1.5 py-1 active:cursor-grabbing",children:[o.jsxs("button",{onClick:()=>s(d=>!d),className:"flex min-w-0 flex-1 items-center gap-1 text-left",title:"Toggle",children:[i?o.jsx(Qp,{className:"h-3.5 w-3.5 shrink-0 text-zinc-500"}):o.jsx(Qd,{className:"h-3.5 w-3.5 shrink-0 text-zinc-500"}),o.jsx(Zd,{className:"h-3 w-3 shrink-0 text-zinc-500"}),o.jsxs("span",{className:"min-w-0 flex-1 truncate text-xs font-medium text-zinc-200",children:["Frame ",e.name]})]}),e.comfyWorkflowName&&o.jsx("span",{title:"Linked workflow",className:"flex shrink-0 text-zinc-400",children:o.jsx(L2,{className:"h-3.5 w-3.5"})}),o.jsx("button",{onClick:()=>r(e.id),title:"Edit frame",className:"px-1 text-zinc-400 hover:text-white",children:o.jsx(H2,{className:"h-3.5 w-3.5"})}),o.jsx("button",{onClick:t,title:"Delete frame",className:"flex items-center px-1 text-zinc-400 hover:text-red-400",children:o.jsx(fr,{className:"h-3.5 w-3.5"})})]}),i&&o.jsxs("div",{className:"border-t border-border py-1 pl-2 pr-1.5",children:[o.jsx(Yc,{label:"Inputs",count:c.length,children:c.length===0?o.jsx(Xc,{children:"none"}):c.map(d=>o.jsx(t0,{name:d.name,thumb:ce(d.previewPath??d.filePath),kind:d.kind,poster:d.kind==="video"&&d.thumbPath?ce(d.thumbPath):void 0,waveform:d.kind==="audio"&&d.thumbPath?ce(d.thumbPath):void 0},d.id))}),o.jsx(Yc,{label:"Outputs",count:a.length,children:a.length===0?o.jsx(Xc,{children:"none"}):a.map(d=>o.jsx(t0,{name:d.filePath.split("/").pop()??"take",thumb:ce(d.filePath),kind:d.kind,hero:d.id===e.heroTakeId,waveform:d.kind==="audio"?ce(mr(d.id)):void 0},d.id))}),o.jsx(Yc,{label:"Workflow",count:u?1:0,children:u?o.jsxs("div",{className:"flex items-center gap-1 py-0.5 text-[11px] text-zinc-300",children:[o.jsx("span",{className:"text-zinc-500",children:"{ }"}),o.jsx("span",{className:"min-w-0 flex-1 truncate",title:e.comfyWorkflowName??"",children:u}),o.jsx("span",{className:"text-[9px] text-zinc-600",children:"saved"})]}):o.jsx(Xc,{children:"open the frame to create it"})})]})]})}function Yc({label:e,count:t,children:n}){const[a,l]=k.useState(!0);return o.jsxs("div",{className:"flex flex-col",children:[o.jsxs("button",{onClick:()=>l(r=>!r),className:"flex items-center gap-1 py-0.5 text-left text-[10px] uppercase tracking-wide text-zinc-500 hover:text-zinc-300",children:[a?o.jsx(Qp,{className:"h-3 w-3 shrink-0"}):o.jsx(Qd,{className:"h-3 w-3 shrink-0"}),o.jsx(Zd,{className:"h-3 w-3 shrink-0 text-zinc-500"}),e,o.jsxs("span",{className:"text-zinc-600",children:["(",t,")"]})]}),a&&o.jsx("div",{className:"flex flex-col gap-0.5 pb-1 pl-3",children:n})]})}function t0({name:e,thumb:t,kind:n,hero:a,poster:l,waveform:r}){return o.jsxs("div",{className:"flex items-center gap-1.5 py-0.5",children:[o.jsxs("div",{className:"h-7 w-7 shrink-0 overflow-hidden rounded border border-border bg-black/40",children:[n==="image"&&o.jsx("img",{src:t,alt:"",className:"h-full w-full object-cover"}),n==="video"&&o.jsx("video",{src:t,poster:l,muted:!0,preload:"metadata",className:"h-full w-full object-cover"}),n==="audio"&&(r?o.jsx(Kn,{url:r,bars:24,className:"h-full w-full p-0.5 text-emerald-400"}):o.jsx("span",{className:"flex h-full w-full items-center justify-center text-zinc-500",children:o.jsx($2,{className:"h-4 w-4"})}))]}),o.jsx("span",{className:"min-w-0 flex-1 truncate text-[11px] text-zinc-400",title:e,children:e}),a&&o.jsx("span",{title:"Hero take",className:"shrink-0 text-amber-300",children:o.jsx(V2,{className:"h-3 w-3"})})]})}function Xc({children:e}){return o.jsx("span",{className:"py-0.5 text-[10px] text-zinc-600",children:e})}function w_({tool:e,onSelectTool:t,onPanTool:n,onAddText:a,onOpenAdd:l}){return o.jsxs("div",{className:"absolute bottom-4 left-1/2 z-10 flex -translate-x-1/2 flex-row items-center gap-1 rounded-lg border border-border bg-panel/95 p-1 shadow-lg backdrop-blur",children:[o.jsx(oo,{label:"Select (edit)",active:e==="select",onClick:t,children:o.jsx(j_,{})}),o.jsx(oo,{label:"Pan (view)",active:e==="pan",onClick:n,children:o.jsx(N_,{})}),o.jsx("div",{className:"mx-0.5 h-6 w-px self-center bg-border"}),o.jsx(oo,{label:"Add text",onClick:a,children:o.jsx("span",{className:"text-base font-bold leading-none",children:"T"})}),o.jsx(oo,{label:"Add node",onClick:r=>l(r.currentTarget.getBoundingClientRect()),children:o.jsx(S_,{})})]})}function oo({label:e,active:t=!1,onClick:n,children:a}){return o.jsxs("button",{onClick:n,title:e,"aria-label":e,"aria-pressed":t,className:`group relative flex h-9 w-9 items-center justify-center rounded-md transition-colors ${t?"bg-surface text-accent":"text-accent hover:bg-surface hover:brightness-110"}`,children:[a,o.jsx("span",{className:"pointer-events-none absolute bottom-full left-1/2 mb-2 -translate-x-1/2 whitespace-nowrap rounded bg-black/80 px-1.5 py-0.5 text-[11px] text-zinc-100 opacity-0 shadow transition-opacity group-hover:opacity-100",children:e})]})}function j_(){return o.jsxs(Cf,{children:[o.jsx("path",{d:"m3 3 7.5 18 2.6-7.9L21 10.5 3 3z"}),o.jsx("path",{d:"m13 13 6 6"})]})}function N_(){return o.jsxs(Cf,{children:[o.jsx("path",{d:"M18 11V6a2 2 0 0 0-4 0"}),o.jsx("path",{d:"M14 10V4a2 2 0 0 0-4 0v2"}),o.jsx("path",{d:"M10 10.5V6a2 2 0 0 0-4 0v8"}),o.jsx("path",{d:"M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-6-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15"})]})}function S_(){return o.jsx(Cf,{children:o.jsx("path",{d:"M12 5v14M5 12h14"})})}function Cf({children:e}){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-[18px] w-[18px]",children:e})}const E_=[{kind:"frame",label:"Generate",icon:o.jsx(sy,{}),accent:!0},{kind:"layer",label:"Layer",icon:o.jsx(z_,{})},{kind:"preview",label:"Preview",icon:o.jsx(M_,{})},{kind:"director",label:"Video Director",icon:o.jsx(A_,{})},{kind:"trim",label:"Edit Video/Audio",icon:o.jsx(T_,{})},{kind:"prompt",label:"Prompt",icon:o.jsx(D_,{})}];function k_({x:e,y:t,above:n=!1,coreNodes:a=[],onPick:l,onPickCore:r,onPickGen:i,onClose:s}){const c=NE(a),u=Ef(Sf());return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"absolute inset-0 z-20",onClick:s}),o.jsxs("div",{className:`absolute z-30 flex w-64 select-none flex-col overflow-hidden rounded-md border border-border bg-panel text-xs shadow-xl ${n?"-translate-x-1/2 -translate-y-full":""}`,style:{left:e,top:t},children:[o.jsx("div",{className:"border-b border-border px-2.5 py-1 text-[10px] uppercase tracking-wide text-zinc-500",children:"Add node"}),E_.map(d=>o.jsxs("button",{onClick:()=>l(d.kind),className:`flex items-center gap-2 px-2.5 py-1.5 text-left hover:bg-surface ${d.accent?"text-emerald-300":"text-zinc-200"}`,children:[o.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:d.icon}),d.label]},d.kind)),i&&u.length>0&&o.jsxs("div",{className:"max-h-56 overflow-y-auto border-t border-border",children:[o.jsx("div",{className:"px-2.5 py-1 text-[10px] uppercase tracking-wide text-zinc-500",children:"Fal Models"}),u.map(d=>o.jsxs("div",{children:[o.jsx("div",{className:"px-2.5 pt-1 text-[9px] uppercase tracking-wide text-zinc-600",children:d.label}),d.defs.map(f=>o.jsxs("button",{onClick:()=>i(f.id),className:"flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-zinc-200 hover:bg-surface",children:[o.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center text-emerald-300",children:o.jsx(sy,{})}),f.title]},f.id))]},d.owner))]}),c.length>0&&o.jsxs("div",{className:"max-h-56 overflow-y-auto border-t border-border",children:[o.jsx("div",{className:"px-2.5 py-1 text-[10px] uppercase tracking-wide text-zinc-500",children:"Inline Core"}),__(c).map(([d,f])=>o.jsxs("div",{children:[o.jsx("div",{className:"px-2.5 pt-1 text-[9px] uppercase tracking-wide text-zinc-600",children:d}),f.map(h=>o.jsxs("button",{onClick:()=>r==null?void 0:r(h.type),className:"flex w-full items-center gap-2 px-2.5 py-1.5 text-left text-zinc-200 hover:bg-surface",children:[o.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:o.jsx(C_,{})}),h.title]},h.type))]},d))]})]})]})}function __(e){const t=new Map;for(const n of e){const a=t.get(n.category)??[];a.push(n),t.set(n.category,a)}return[...t.entries()]}function C_(){return o.jsxs(ul,{children:[o.jsx("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"}),o.jsx("path",{d:"M4 10h16"})]})}function z_(){return o.jsxs(ul,{children:[o.jsx("polygon",{points:"12 2 2 7 12 12 22 7 12 2"}),o.jsx("polyline",{points:"2 17 12 22 22 17"}),o.jsx("polyline",{points:"2 12 12 17 22 12"})]})}function M_(){return o.jsxs(ul,{children:[o.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),o.jsx("circle",{cx:"8.5",cy:"8.5",r:"1.5"}),o.jsx("path",{d:"M21 15l-5-5L5 21"})]})}function A_(){return o.jsxs(ul,{children:[o.jsx("path",{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3Z"}),o.jsx("path",{d:"m6.2 5.3 3.1 3.9"}),o.jsx("path",{d:"m12.4 3.4 3.1 4"}),o.jsx("path",{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z"}),o.jsx("path",{d:"M8 15.5h8"}),o.jsx("path",{d:"M8 18.5h6"})]})}function T_(){return o.jsxs(ul,{children:[o.jsx("circle",{cx:"6",cy:"6",r:"3"}),o.jsx("circle",{cx:"6",cy:"18",r:"3"}),o.jsx("path",{d:"M20 4 8.12 15.88M14.47 14.48 20 20M8.12 8.12 12 12"})]})}function sy(){return o.jsxs(ul,{children:[o.jsx("path",{d:"M12 3l1.9 4.8L18.6 9.7 13.9 11.6 12 16.4 10.1 11.6 5.4 9.7 10.1 7.8Z"}),o.jsx("path",{d:"M19 15l.9 2.1L22 18l-2.1.9L19 21l-.9-2.1L16 18l2.1-.9Z"})]})}function D_(){return o.jsxs(ul,{children:[o.jsx("path",{d:"M4 5h16M4 5v14M4 12h10"}),o.jsx("path",{d:"M15 19l2 2 4-4"})]})}function ul({children:e}){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-4 w-4",children:e})}const cy=_t(e=>({comfyUrl:"",error:null,load:async()=>{try{const t=await F().settings.get();t.ok&&e({comfyUrl:t.value.comfyUrl})}catch(t){e({error:te(t)})}},setComfyUrl:async t=>{try{const n=await F().settings.setComfyUrl(t);if(!n.ok)return e({error:n.error});e({comfyUrl:n.value.comfyUrl,error:null})}catch(n){e({error:te(n)})}}})),n0="application/x-inlinestudio-frame-input";function O_(){const e=Ke(b=>b.inspectorFrameId),t=Ke(b=>b.setInspectorFrame),n=Ke(b=>b.setMode),a=Ke(b=>b.setLinkedWorkflow),l=Ke(b=>b.setActiveFrame),r=J(b=>b.frames.find(N=>N.id===e)),i=J(b=>e?b.inputsByFrame[e]:void 0)??[],s=J(b=>e?b.takesByFrame[e]:void 0)??[],c=J(b=>b.busyId===e),u=un(b=>b.assets),d=cy(b=>b.comfyUrl),f=J(b=>b.rename),h=J(b=>b.addInputs),m=J(b=>b.removeInput),x=J(b=>b.reorderInputs),j=J(b=>b.setHero),w=J(b=>b.deleteTake),p=J(b=>b.clone),y=J(b=>b.unlink),g=J(b=>b.linkFrame),v=J(b=>b.uploadInputs),[_,M]=k.useState("");if(k.useEffect(()=>{M((r==null?void 0:r.name)??"")},[r==null?void 0:r.name]),!e||!r)return null;const z=i.map(b=>u.find(N=>N.id===b.assetId)).filter(b=>!!b),C=z.map(b=>b.id),B=!!r.comfyWorkflowName,L=r.comfyWorkflowReady,S=()=>{const b=_.trim();b&&b!==r.name&&f(r.id,b)},H=b=>N=>{N.preventDefault();const T=N.dataTransfer.getData(n0);if(!T||T===b)return;const D=C.filter(A=>A!==T);D.splice(D.indexOf(b),0,T),x(r.id,D)},U=b=>{b.preventDefault();const N=Oi(b.dataTransfer).filter(T=>!C.includes(T));N.length&&h(r.id,N)},E=async()=>{if(!await ry(()=>n("generate")))return;const b=await g(r.id);a((b==null?void 0:b.comfyWorkflowName)??r.comfyWorkflowName),l(r.id),n("generate"),v(r.id)},R=()=>{if(!r.comfyWorkflowName)return;const b=`${d.replace(/\/+$/,"")}/userdata/${encodeURIComponent(`workflows/${r.comfyWorkflowName}.json`)}`;F().shell.openExternal(b)};return o.jsxs("div",{className:"absolute right-0 top-0 z-20 flex h-full w-80 flex-col border-l border-border bg-panel shadow-xl",children:[o.jsxs("div",{className:"flex items-center gap-2 border-b border-border px-3 py-2",children:[o.jsx("input",{value:_,onChange:b=>M(b.target.value),onBlur:S,onKeyDown:b=>{b.key==="Enter"&&b.target.blur()},className:"min-w-0 flex-1 rounded border border-transparent bg-transparent px-1 py-0.5 text-sm font-semibold text-white outline-none hover:border-border focus:border-accent"}),o.jsx("button",{onClick:()=>void p(r.id),title:"Clone this frame (inputs + workflow)",className:"rounded border border-border px-2 py-1 text-[11px] text-zinc-300 hover:bg-surface",children:"Clone"}),o.jsx("button",{onClick:()=>t(null),title:"Close",className:"px-1 text-zinc-500 hover:text-white",children:"✕"})]}),o.jsxs("div",{className:"min-h-0 flex-1 overflow-y-auto p-3",children:[o.jsx(qc,{title:"Inputs",children:o.jsxs("div",{onDragOver:b=>b.preventDefault(),onDrop:U,className:"flex flex-wrap gap-2 rounded border border-dashed border-border p-2",children:[z.map(b=>o.jsxs("div",{draggable:!0,onDragStart:N=>N.dataTransfer.setData(n0,b.id),onDragOver:N=>N.preventDefault(),onDrop:H(b.id),title:`${b.name} — drag to reorder`,className:"group relative h-16 w-16 cursor-grab overflow-hidden rounded border border-border bg-black/40",children:[o.jsx(a0,{url:ce(b.previewPath??b.filePath),kind:b.kind,poster:b.kind==="video"&&b.thumbPath?ce(b.thumbPath):void 0,waveform:b.kind==="audio"&&b.thumbPath?ce(b.thumbPath):void 0}),z.length>1&&o.jsx("button",{onClick:()=>void m(r.id,b.id),title:"Remove input",className:"absolute right-0.5 top-0.5 hidden h-4 w-4 items-center justify-center rounded-full bg-black/80 text-[10px] text-zinc-200 hover:text-red-400 group-hover:flex",children:"✕"})]},b.id)),o.jsx("span",{className:"self-center text-[10px] text-zinc-600",children:"Drop assets here to add"})]})}),o.jsx(qc,{title:`Outputs${s.length?` (${s.length})`:""}`,children:s.length===0?o.jsx("p",{className:"text-[11px] text-zinc-600",children:"No outputs yet — generate in ComfyUI and capture."}):o.jsx("div",{className:"grid grid-cols-3 gap-2",children:s.map(b=>{const N=b.id===r.heroTakeId;return o.jsxs("div",{className:`group relative aspect-square overflow-hidden rounded border bg-black/40 ${N?"border-accent ring-1 ring-accent":"border-border"}`,children:[o.jsx("button",{onClick:()=>void j(r.id,b.id),title:N?"Hero output":"Set as hero output",className:"h-full w-full",children:o.jsx(a0,{url:ce(b.filePath),kind:b.kind,waveform:b.kind==="audio"?ce(mr(b.id)):void 0})}),N&&o.jsx("span",{className:"absolute left-0.5 top-0.5 rounded bg-accent px-1 text-[8px] text-panel",children:"Hero"}),o.jsx("button",{onClick:()=>void w(b.id),title:"Delete take",className:"absolute right-0.5 top-0.5 hidden h-4 w-4 items-center justify-center rounded-full bg-black/80 text-[10px] text-zinc-200 hover:text-red-400 group-hover:flex",children:"✕"})]},b.id)})})}),o.jsx(qc,{title:"Workflow",children:B?o.jsxs("div",{className:"flex flex-col gap-1.5",children:[o.jsxs("div",{className:"flex items-center gap-1.5 text-[11px]",children:[o.jsx("span",{className:`h-1.5 w-1.5 rounded-full ${L?"bg-green-500":"bg-amber-500"}`}),o.jsx("span",{className:L?"text-zinc-400":"text-amber-400",children:L?"Workflow ready":"Not built yet — open and add nodes, edits autosave"})]}),o.jsx("button",{onClick:()=>void E(),disabled:c,className:"rounded bg-accent px-2 py-1.5 text-xs font-medium text-panel hover:brightness-110 disabled:opacity-40",children:c?"…":L?"Edit in ComfyUI":"Build in ComfyUI"}),o.jsx("button",{onClick:R,className:"rounded border border-border px-2 py-1.5 text-xs text-zinc-200 hover:bg-surface",children:"Open workflow.json ↗"}),o.jsx("button",{onClick:()=>void y(r.id),className:"rounded border border-border px-2 py-1.5 text-xs text-zinc-400 hover:border-red-500/50 hover:text-red-400",children:"Unlink workflow"})]}):o.jsx("button",{onClick:()=>void E(),disabled:c,className:"w-full rounded bg-accent px-2 py-1.5 text-xs font-medium text-panel hover:brightness-110 disabled:opacity-40",children:c?"…":"Link workflow"})})]})]})}function qc({title:e,children:t}){return o.jsxs("div",{className:"mb-4",children:[o.jsx("h3",{className:"mb-1.5 text-[10px] font-semibold uppercase tracking-wide text-zinc-500",children:e}),t]})}function a0({url:e,kind:t,poster:n,waveform:a}){return t==="video"?o.jsx("video",{src:e,poster:n,muted:!0,preload:"metadata",className:"h-full w-full object-cover"}):t==="audio"?o.jsx("span",{className:"flex h-full w-full items-center justify-center p-1",children:o.jsx(Kn,{url:a??null,className:"h-1/2 w-full text-emerald-400"})}):o.jsx("img",{src:e,alt:"",className:"h-full w-full object-cover"})}function B_(e){const{frameId:t}=e.data,n=J(a=>{var l;return(l=a.frames.find(r=>r.id===t))==null?void 0:l.provider});return n==="fal"?o.jsx(Lk,{...e}):n==="unset"?o.jsx(Ik,{...e}):o.jsx(Ck,{...e})}const R_={image:hk,video:mk,audio:gk,text:Sk,frame:B_,preview:Kk,layer:Jk,director:a_,trim:i_,prompt:Uk,core:s_},L_={deletable:c_},l0=["#fca5a5","#fdba74","#fcd34d","#86efac","#93c5fd","#d8b4fe","#f9a8d4"],H_=e=>{var a,l;const t=((a=e.data)==null?void 0:a.sourceHandle)??"out",n=((l=e.data)==null?void 0:l.targetHandle)??"in";return t==="out"&&n==="in"};function I_(e){var u;const t=e.filter(d=>!H_(d)),n=new Map,a=new Set,l=new Set;for(const d of t)n.has(d.fromItemId)||n.set(d.fromItemId,[]),(u=n.get(d.fromItemId))==null||u.push(d.toItemId),a.add(d.toItemId),l.add(d.fromItemId);const r=new Map,i=[],s=(d,f)=>{r.has(d)||(r.set(d,f),i.push(d))};for(const d of l)a.has(d)||s(d,0);if(i.length===0)for(const d of l)s(d,0);for(;i.length;){const d=i.shift(),f=r.get(d)??0;for(const h of n.get(d)??[])s(h,f+1)}const c=new Map;for(const d of t){const f=r.get(d.fromItemId)??0;c.set(d.id,l0[f%l0.length])}return c}function r0(e,t){if(typeof e!="string"||!e.startsWith(t))return null;const n=Number(e.slice(t.length));return Number.isFinite(n)?n:null}function Fu(e,t,n,a,l,r=0){var i,s,c;if(!e||r>8)return"video";if(e.type==="asset"&&e.assetId)return((i=l.find(u=>u.id===e.assetId))==null?void 0:i.kind)??"video";if(e.type==="frame"&&e.frameId)return((s=a.find(u=>u.id===e.frameId))==null?void 0:s.kind)??"video";if(e.type==="preview"){const u=n.find(f=>f.toItemId===e.id),d=u?t.find(f=>f.id===u.fromItemId):void 0;return d!=null&&d.frameId?((c=a.find(f=>f.id===d.frameId))==null?void 0:c.kind)??"video":"video"}if(e.type==="trim"){const u=n.find(f=>f.toItemId===e.id),d=u?t.find(f=>f.id===u.fromItemId):void 0;return Fu(d,t,n,a,l,r+1)}return"video"}const U_={text:"",fontSize:18,bold:!1,italic:!1,underline:!1,color:"#e4e4e7",align:"left"};function V_(){return o.jsx(Hx,{children:o.jsx($_,{})})}function $_(){const{items:e,connectors:t,error:n,load:a,updateItem:l,deleteItem:r,connect:i,disconnect:s}=he(),c=he(I=>I.addTextAt),u=he(I=>I.addFrameFromAssetInLayer),d=he(I=>I.addFrameItemInLayer),f=he(I=>I.addPreview),h=he(I=>I.addLayer),m=he(I=>I.addDirector),x=he(I=>I.addTrim),j=he(I=>I.addEmptyFrame),w=he(I=>I.addPrompt),p=he(I=>I.addCoreNode),y=he(I=>I.addGenNode),g=he(I=>I.duplicateItems),v=he(I=>I.undo),_=he(I=>I.redo),M=J(I=>I.addSourceInput),z=J(I=>I.setHero),C=Ie(I=>I.error),B=Ie(I=>I.setError),L=J(I=>I.frames),S=un(I=>I.assets),H=el(I=>I.descriptors);k.useEffect(()=>{el.getState().load()},[]);const U=un(I=>I.load),E=J(I=>I.load),R=Ke(I=>I.setCanvasSelection),b=Ke(I=>I.setCanvasCenter),N=Ke(I=>I.mode),T=k.useRef(null),{screenToFlowPosition:D,getNodes:A}=Ai(),O=q5(),[V,Z]=F5([]),[P,ae,ue]=G5([]),le=k.useRef([]),q=k.useRef(0),[W,oe]=k.useState(null),[$,Q]=k.useState("select"),[ee,de]=k.useState(null);k.useEffect(()=>{a(),U(),E()},[a,U,E]);const me=k.useMemo(()=>new Map(S.map(I=>[I.id,I])),[S]);k.useEffect(()=>{Z(q_(e,me))},[e,me,Z]),k.useEffect(()=>F().timeline.onProgress(I=>{Da.getState().setProgress(I.ownerItemId,I.fraction>=1?null:I.fraction)}),[]),k.useEffect(()=>{const I=Ie.getState();I.resumePending();const X=[F().events.onGenerationProgress(K=>{I.setBusy(K.frameId,!0),I.setProgress(K.frameId,K.fraction,K.status)}),F().events.onGenerationNodeDone(K=>{I.setBusy(K.frameId,!1),I.setProgress(K.frameId,null),J.getState().load()}),F().events.onGenerationDone(()=>{I.finishAll(),J.getState().load(),he.getState().load()}),F().events.onGenerationError(K=>{I.finishAll(),I.setError(K.error)}),F().events.onModelDownloadProgress(K=>{wt.getState().onProgress(K)}),F().events.onModelDownloadDone(K=>{wt.getState().onDone(K)}),F().events.onModelDownloadError(K=>{wt.getState().onError(K)})];return()=>X.forEach(K=>K())},[]),k.useEffect(()=>{if(N!=="moodboard")return;const I=()=>{if(document.visibilityState!=="visible")return;const K=he.getState().items.map(ie=>ie.id);K.length&&O(K)},X=requestAnimationFrame(I);return document.addEventListener("visibilitychange",I),window.addEventListener("focus",I),()=>{cancelAnimationFrame(X),document.removeEventListener("visibilitychange",I),window.removeEventListener("focus",I)}},[N,O]),k.useEffect(()=>{const I=I_(t);ae(t.map(X=>{var re,pe;const K=((re=X.data)==null?void 0:re.sourceHandle)??"out",ie=((pe=X.data)==null?void 0:pe.targetHandle)??"in",se=K==="out"&&(ie==="in"||ie==="audio");return{id:X.id,source:X.fromItemId,target:X.toItemId,sourceHandle:K,targetHandle:ie,type:"deletable",animated:!1,data:{functional:se,color:I.get(X.id)}}}))},[t,ae]);const Y=I=>{Z(X=>gf(I,X))},ge=V.filter(I=>I.selected).map(I=>I.id).sort().join(",");k.useEffect(()=>{R(ge?ge.split(","):[])},[ge,R]),k.useEffect(()=>{const I=X=>{if(!(X.metaKey||X.ctrlKey))return;const K=X.target;if(K&&(K.isContentEditable||/^(INPUT|TEXTAREA|SELECT)$/.test(K.tagName)))return;const ie=X.key.toLowerCase();if(ie==="z")X.preventDefault(),X.shiftKey?_():v();else if(ie==="y")X.preventDefault(),_();else if(ie==="c"){const se=new Set(A().filter(pe=>pe.selected).map(pe=>pe.id)),re=he.getState().items.filter(pe=>se.has(pe.id));re.length&&(le.current=re,q.current=0,X.preventDefault())}else if(ie==="v"){if(le.current.length===0)return;X.preventDefault(),q.current+=1;const se=32*q.current;g(le.current,{x:se,y:se})}};return window.addEventListener("keydown",I),()=>window.removeEventListener("keydown",I)},[A,g,v,_]);const Je=()=>{var X;const I=(X=T.current)==null?void 0:X.getBoundingClientRect();return I?D({x:I.left+I.width/2,y:I.top+I.height/2}):{x:0,y:0}},it=(I,X)=>{const K=e.filter(ie=>ie.type==="layer"&&ie.id!==X).filter(ie=>I.x>=ie.x&&I.x<=ie.x+ie.width&&I.y>=ie.y&&I.y<=ie.y+ie.height);return K.length?K[K.length-1]:null},Fe=(I,X,K)=>{var $e;const ie=e.find(Ye=>Ye.id===I),se=(ie==null?void 0:ie.type)==="core"?ie.data.core:void 0;if(!se)return null;const re=H.find(Ye=>Ye.type===se.type),pe=K==="output"?re==null?void 0:re.outputs:re==null?void 0:re.inputs;return(($e=pe==null?void 0:pe.find(Ye=>Ye.id===X))==null?void 0:$e.kind)??null},$t=I=>{var re;if(!I.source||!I.target||I.source===I.target)return!1;const X=Fe(I.source,I.sourceHandle,"output"),K=Fe(I.target,I.targetHandle,"input");if(X&&K&&!SE(X,K))return!1;const ie=((re=e.find(pe=>pe.id===I.source))==null?void 0:re.type)==="prompt",se=(I.targetHandle??void 0)==="prompt";return ie===se},za=I=>{var ie;if(!I.source||!I.target||I.source===I.target||!$t(I))return;const X=e.find(se=>se.id===I.source),K=e.find(se=>se.id===I.target);if((K==null?void 0:K.type)==="director"){const se=Fu(X,e,t,L,S)==="audio"?"ain-":"vin-",re=new Set(t.filter(Ye=>Ye.toItemId===K.id).map(Ye=>{var Ma;return r0((Ma=Ye.data)==null?void 0:Ma.targetHandle,se)}).filter(Ye=>Ye!==null)),pe=r0(I.targetHandle??void 0,se);let $e=pe!==null&&!re.has(pe)?pe:0;for(;re.has($e);)$e++;i(I.source,K.id,I.sourceHandle??"out",`${se}${$e}`);return}if(i(I.source,I.target,I.sourceHandle??null,I.targetHandle??null),(K==null?void 0:K.type)==="frame"&&(I.targetHandle==="in"||I.targetHandle==="audio")&&K.frameId){let se;if((X==null?void 0:X.type)==="frame")se=X.frameId??void 0;else if((X==null?void 0:X.type)==="preview"){const re=t.find(pe=>pe.toItemId===X.id);se=re?((ie=e.find(pe=>pe.id===re.fromItemId))==null?void 0:ie.frameId)??void 0:void 0}se&&se!==K.frameId&&M(K.frameId,se)}},Sn=(I,X)=>{var $e,Ye,Ma;if(X.isValid||(($e=X.fromHandle)==null?void 0:$e.type)!=="source")return;const K=(Ye=X.fromNode)==null?void 0:Ye.id;if(!K)return;const ie="changedTouches"in I?I.changedTouches[0]:I;if(!ie)return;const se={x:ie.clientX,y:ie.clientY},re=D(se),pe=(Ma=T.current)==null?void 0:Ma.getBoundingClientRect();oe({fromItemId:K,flowX:re.x,flowY:re.y,menuX:pe?se.x-pe.left:se.x,menuY:pe?se.y-pe.top:se.y})},En=I=>{var re;const X=(re=T.current)==null?void 0:re.getBoundingClientRect(),{x:K,y:ie}=Je(),se=I.left+I.width/2;de({x:X?se-X.left:se,y:X?I.top-X.top-8:I.top-8,above:!0,flowX:K,flowY:ie})},zt=I=>{var ie,se;if($!=="select"||!I.target.classList.contains("react-flow__pane"))return;(ie=window.getSelection())==null||ie.removeAllRanges();const X=(se=T.current)==null?void 0:se.getBoundingClientRect(),K=D({x:I.clientX,y:I.clientY});de({x:X?I.clientX-X.left:I.clientX,y:X?I.clientY-X.top:I.clientY,above:!1,flowX:K.x,flowY:K.y})},en=I=>{const X=ee;if(de(null),!!X)switch(I){case"frame":j(X.flowX,X.flowY);break;case"layer":h(X.flowX,X.flowY);break;case"preview":f(X.flowX,X.flowY);break;case"director":m(X.flowX,X.flowY);break;case"trim":x(X.flowX,X.flowY);break;case"prompt":w(X.flowX,X.flowY);break}},tn=I=>{const X=ee;de(null),X&&p(I,X.flowX,X.flowY)},kn=I=>{const X=ee;de(null),X&&y(I,X.flowX,X.flowY)},xc=async()=>{const I=W;if(oe(null),!I)return;const X=await f(I.flowX,I.flowY);X&&await i(I.fromItemId,X.id,"out","in")},jr=async()=>{var se;const I=W;if(oe(null),!I)return;const X=await j(I.flowX,I.flowY);if(!X)return;await i(I.fromItemId,X.id,"out","in");const K=e.find(re=>re.id===I.fromItemId);let ie;if((K==null?void 0:K.type)==="frame")ie=K.frameId??void 0;else if((K==null?void 0:K.type)==="preview"){const re=t.find(pe=>pe.toItemId===K.id);ie=re?((se=e.find(pe=>pe.id===re.fromItemId))==null?void 0:se.frameId)??void 0:void 0}ie&&X.frameId&&await M(X.frameId,ie)},yc=async()=>{const I=W;if(oe(null),!I)return;const X=await m(I.flowX,I.flowY);if(!X)return;const K=e.find(se=>se.id===I.fromItemId),ie=Fu(K,e,t,L,S)==="audio"?"ain-0":"vin-0";await i(I.fromItemId,X.id,"out",ie)},vc=async()=>{const I=W;if(oe(null),!I)return;const X=await x(I.flowX,I.flowY);X&&await i(I.fromItemId,X.id,"out","in")},bc=I=>{I.preventDefault();const X=D({x:I.clientX,y:I.clientY}),K=tk(I.dataTransfer);if(K){const re=Ks(I.dataTransfer);(async()=>{re&&await z(K,re);const pe=await j(X.x,X.y);pe!=null&&pe.frameId&&await M(pe.frameId,K)})();return}const ie=Qs(I.dataTransfer);if(ie){if(e.some(Ye=>Ye.type==="frame"&&Ye.frameId===ie))return;const re=it(X),pe=re?X.x-re.x:X.x,$e=re?X.y-re.y:X.y;d(ie,pe,$e,(re==null?void 0:re.id)??null);return}const se=Oi(I.dataTransfer);if(se.length===0){const re=Array.from(I.dataTransfer.files??[]);re.length>0&&wc(re,X);return}Zi(se,X)},Zi=(I,X)=>{I.forEach((K,ie)=>{const se={x:X.x+ie*24,y:X.y+ie*24},re=it(se),pe=re?se.x-re.x:se.x,$e=re?se.y-re.y:se.y;u(K,pe,$e,(re==null?void 0:re.id)??null)})},wc=async(I,X)=>{const K=await Xp(I,null);K.length!==0&&(await U(),Zi(K.map(ie=>ie.id),X))},jc=(I,X)=>{const K=e.find($e=>$e.id===X.id);if(!K)return;if(K.type!=="frame"&&K.type!=="preview"){l(X.id,{x:X.position.x,y:X.position.y});return}const ie=K.parentId?e.find($e=>$e.id===K.parentId):void 0,se=ie?{x:ie.x+X.position.x,y:ie.y+X.position.y}:{x:X.position.x,y:X.position.y},re=it(se),pe=(re==null?void 0:re.id)??null;if(pe!==K.parentId){const $e=re?se.x-re.x:se.x,Ye=re?se.y-re.y:se.y;l(X.id,{parentId:pe,x:$e,y:Ye})}else l(X.id,{x:X.position.x,y:X.position.y})};return o.jsxs("div",{className:"relative flex h-full",children:[o.jsx(x_,{}),o.jsxs("div",{ref:T,className:"relative flex-1 bg-panel",onDoubleClick:zt,children:[n&&o.jsx("div",{className:"absolute left-2 top-2 z-10 rounded bg-red-950/80 px-2 py-1 text-xs text-red-300",children:n}),o.jsx($5,{nodes:V,edges:P,nodeTypes:R_,edgeTypes:L_,connectionMode:Qa.Loose,deleteKeyCode:["Backspace","Delete"],selectionKeyCode:["Meta","Control","Shift"],multiSelectionKeyCode:["Meta","Control","Shift"],selectionMode:Ql.Partial,panOnDrag:$==="pan"?!0:[1,2],selectionOnDrag:$==="select",nodesDraggable:$==="select",zoomOnDoubleClick:!1,defaultEdgeOptions:{interactionWidth:20},onDrop:bc,onDragOver:I=>{I.preventDefault(),I.dataTransfer.dropEffect="copy"},onNodesChange:Y,onEdgesChange:ue,onNodeDragStop:jc,onNodesDelete:I=>I.forEach(X=>void r(X.id)),onConnect:za,onConnectEnd:Sn,isValidConnection:$t,onEdgesDelete:I=>I.forEach(X=>void s(X.id)),onMove:()=>b(Je()),onInit:()=>b(Je()),proOptions:{hideAttribution:!0},minZoom:.1,maxZoom:4,onlyRenderVisibleElements:!0,fitView:!0,fitViewOptions:{maxZoom:1},children:o.jsx(W5,{gap:22,size:2.5,color:"#525a66"})}),e.length===0&&o.jsx(X_,{}),C&&o.jsx(Y_,{message:C,onDismiss:()=>B(null)}),W&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"absolute inset-0 z-20",onClick:()=>oe(null)}),o.jsxs("div",{className:"absolute z-30 flex w-40 flex-col overflow-hidden rounded-md border border-border bg-panel text-xs shadow-xl",style:{left:W.menuX,top:W.menuY},children:[o.jsx("div",{className:"border-b border-border px-2.5 py-1 text-[10px] uppercase tracking-wide text-zinc-500",children:"Connect to…"}),o.jsx("button",{onClick:()=>void xc(),className:"px-2.5 py-1.5 text-left text-zinc-200 hover:bg-surface",children:"Preview node"}),o.jsx("button",{onClick:()=>void jr(),className:"px-2.5 py-1.5 text-left text-zinc-200 hover:bg-surface",children:"New frame (input)"}),o.jsx("button",{onClick:()=>void yc(),className:"px-2.5 py-1.5 text-left text-zinc-200 hover:bg-surface",children:"Video Director"}),o.jsx("button",{onClick:()=>void vc(),className:"px-2.5 py-1.5 text-left text-zinc-200 hover:bg-surface",children:"Edit Video/Audio"})]})]}),ee&&o.jsx(k_,{x:ee.x,y:ee.y,above:ee.above,coreNodes:H,onPick:en,onPickCore:tn,onPickGen:kn,onClose:()=>de(null)}),o.jsx(w_,{tool:$,onSelectTool:()=>Q("select"),onPanTool:()=>Q("pan"),onAddText:()=>{const{x:I,y:X}=Je();c(I,X)},onOpenAdd:En}),o.jsx($k,{}),o.jsx(Xk,{}),o.jsx(Gk,{}),o.jsx(Qk,{})]}),o.jsx(O_,{})]})}function Y_({message:e,onDismiss:t}){const[n,a]=k.useState(!1),l=()=>{navigator.clipboard.writeText(e).then(()=>{a(!0),setTimeout(()=>a(!1),1500)}).catch(()=>{})};return o.jsxs("div",{className:"absolute left-1/2 top-3 z-30 flex max-w-lg -translate-x-1/2 items-start gap-2 rounded-md border border-red-500/40 bg-red-950/90 px-3 py-2 text-xs text-red-200 shadow-lg",children:[o.jsx("span",{className:"max-h-40 min-w-0 flex-1 overflow-y-auto whitespace-pre-wrap break-words",children:e}),o.jsx("button",{onClick:l,title:n?"Copied":"Copy error","aria-label":"Copy error",className:`flex h-5 w-5 shrink-0 items-center justify-center rounded ${n?"text-emerald-300":"text-red-300 hover:text-red-100"}`,children:n?o.jsx(X2,{className:"h-3.5 w-3.5"}):o.jsx(Y2,{className:"h-3.5 w-3.5"})}),o.jsx("button",{onClick:t,"aria-label":"Dismiss",className:"flex h-5 w-5 shrink-0 items-center justify-center rounded text-red-300 hover:text-red-100",children:o.jsx(fr,{className:"h-3.5 w-3.5"})})]})}function X_(){return o.jsx("div",{className:"pointer-events-none absolute inset-0 z-10 flex items-center justify-center",children:o.jsxs("div",{className:"flex max-w-sm flex-col items-center gap-2 text-center",children:[o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"h-9 w-9 text-zinc-600",children:[o.jsx("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2"}),o.jsx("circle",{cx:"8.5",cy:"8.5",r:"1.5"}),o.jsx("path",{d:"m21 15-4.5-4.5L7 20"})]}),o.jsx("p",{className:"text-sm font-medium text-zinc-300",children:"Your canvas is empty"}),o.jsx("p",{className:"text-xs leading-relaxed text-zinc-500",children:"Drag an asset from the Assets panel onto the canvas to create your first frame."})]})})}function q_(e,t){return[...e].sort((a,l)=>(a.type==="layer"?-1:0)-(l.type==="layer"?-1:0)).map(a=>F_(a,t))}function F_(e,t){const n={id:e.id,position:{x:e.x,y:e.y},style:{width:e.width,height:e.height,zIndex:e.zIndex},data:{},...e.parentId?{parentId:e.parentId}:{}};if(e.type==="layer")return{...n,type:"layer",dragHandle:".drag-handle",data:{name:e.data.name??"Layer",color:e.data.color}};if(e.type==="frame")return{...n,type:"frame",data:{frameId:e.frameId}};if(e.type==="preview")return{...n,type:"preview",data:{}};if(e.type==="director")return{...n,type:"director",data:{name:e.data.name??"Director",previewUrl:e.data.directorPreview}};if(e.type==="trim")return{...n,type:"trim",data:{}};if(e.type==="prompt")return{...n,type:"prompt",data:{}};if(e.type==="core")return{...n,type:"core",data:{itemId:e.id}};if(e.type==="text")return{...n,type:"text",data:{text:e.data.text??U_}};const a=e.assetId?t.get(e.assetId):void 0,l=a?ce(a.kind==="image"?a.thumbPath??a.filePath:a.filePath):"",r=(a==null?void 0:a.kind)==="video"?"video":(a==null?void 0:a.kind)==="audio"?"audio":"image",i=(a==null?void 0:a.kind)==="audio"&&a.thumbPath?ce(a.thumbPath):void 0;return{...n,type:r,data:{src:l,name:(a==null?void 0:a.name)??"",waveform:i}}}const uy="JovhfHhxqdM",G_=`https://youtu.be/${uy}?si=lHQo9qzR_fCZwYCL`,Z_="https://2o3y58e14h8z63-8188.proxy.runpod.net";function i0(){return o.jsx("div",{className:"flex h-full flex-col items-center justify-center overflow-y-auto p-6",children:o.jsxs("div",{className:"w-full max-w-3xl",children:[o.jsxs("div",{className:"mb-1 flex items-center gap-2",children:[o.jsx("span",{className:"h-2 w-2 rounded-full bg-zinc-600"}),o.jsx("h2",{className:"text-sm font-semibold text-zinc-200",children:"ComfyUI is not connected"})]}),o.jsx("p",{className:"mb-5 text-xs text-zinc-500",children:"Inline Studio renders every shot through your own ComfyUI. Pick how you want to run it, then paste its address into the URL field above and press Save."}),o.jsxs("div",{className:"grid grid-cols-1 gap-4 lg:grid-cols-2",children:[o.jsx(Q_,{}),o.jsx(K_,{})]}),o.jsx("p",{className:"mt-4 text-center text-xs text-zinc-500",children:"…or any publicly hosted ComfyUI — just paste its URL above."})]})})}function Q_(){return o.jsxs(dy,{icon:o.jsx(J_,{}),title:"Local ComfyUI",subtitle:"You have a GPU + ComfyUI on this machine",children:[o.jsxs(Il,{n:1,children:["Start ComfyUI as usual. Make sure to launch it with the"," ",o.jsx("code",{className:"rounded bg-black/40 px-1 text-[11px] text-accent",children:"--enable-cors-header"})," ","flag — it lets Inline Studio talk to ComfyUI and is needed for full compatibility."]}),o.jsx(W_,{command:"python main.py --enable-cors-header"}),o.jsxs(Il,{n:2,children:["Copy the address ComfyUI prints (usually"," ",o.jsx("code",{className:"rounded bg-black/40 px-1 text-[11px] text-zinc-300",children:"http://127.0.0.1:8188"}),")."]}),o.jsx(Il,{n:3,children:"Paste it into the URL field above and press Save."})]})}function K_(){return o.jsxs(dy,{icon:o.jsx(eC,{}),title:"Cloud GPU (RunPod)",subtitle:"No local GPU — deploy in the cloud",children:[o.jsx(Il,{n:1,children:"Deploy ComfyUI on RunPod using an official template — pick one:"}),o.jsxs("div",{className:"flex flex-col gap-1.5",children:[o.jsx(o0,{label:"ComfyUI",image:"runpod/comfyui:latest",href:"https://console.runpod.io/hub/template/comfyui?id=cw3nka7d08"}),o.jsx(o0,{label:"ComfyUI · CUDA 13",image:"runpod/comfyui:cuda13.0",href:"https://console.runpod.io/hub/template/comfyui?id=cw3nka7d08"})]}),o.jsxs(Il,{n:2,children:["Once the pod is running, copy its ",o.jsx("span",{className:"text-zinc-300",children:"public exposed"})," ","ComfyUI URL — it looks like:"]}),o.jsx("code",{className:"block truncate rounded-md border border-border bg-black/40 px-2 py-1.5 text-[11px] text-zinc-300",children:Z_}),o.jsx(Il,{n:3,children:"Paste that URL into the field above and press Save."}),o.jsx(P_,{videoId:uy,href:G_})]})}function P_({videoId:e,href:t}){return o.jsx("button",{onClick:()=>void F().shell.openExternal(t),title:"Watch the setup video on YouTube",className:"group mt-0.5 overflow-hidden rounded-md border border-border hover:border-accent",children:o.jsxs("span",{className:"relative block",children:[o.jsx("img",{src:`https://img.youtube.com/vi/${e}/hqdefault.jpg`,alt:"ComfyUI on RunPod — setup video",className:"aspect-video w-full object-cover"}),o.jsx("span",{className:"absolute inset-0 flex items-center justify-center bg-black/30 transition-colors group-hover:bg-black/15",children:o.jsx("span",{className:"flex h-9 w-9 items-center justify-center rounded-full bg-red-600 text-white shadow-lg",children:o.jsx(tC,{})})}),o.jsx("span",{className:"absolute bottom-1.5 left-1.5 rounded bg-black/70 px-1.5 py-0.5 text-[10px] font-medium text-white",children:"Watch the setup video"})]})})}function dy({icon:e,title:t,subtitle:n,children:a}){return o.jsxs("div",{className:"flex flex-col gap-2.5 rounded-lg border border-border bg-surface p-4",children:[o.jsxs("div",{className:"flex items-center gap-2.5",children:[o.jsx("span",{className:"flex h-8 w-8 items-center justify-center rounded-md bg-black/30 text-accent",children:e}),o.jsxs("div",{children:[o.jsx("h3",{className:"text-sm font-semibold text-zinc-100",children:t}),o.jsx("p",{className:"text-[11px] text-zinc-500",children:n})]})]}),o.jsx("div",{className:"flex flex-col gap-2.5 pt-1",children:a})]})}function Il({n:e,children:t}){return o.jsxs("div",{className:"flex gap-2 text-xs leading-relaxed text-zinc-400",children:[o.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center rounded-full bg-accent/20 text-[10px] font-semibold text-accent",children:e}),o.jsx("p",{className:"min-w-0",children:t})]})}function W_({command:e}){const[t,n]=k.useState(!1),a=()=>{navigator.clipboard.writeText(e).then(()=>{n(!0),setTimeout(()=>n(!1),1500)})};return o.jsxs("div",{className:"flex items-center gap-2 rounded-md border border-border bg-black/40 px-2 py-1.5",children:[o.jsx("code",{className:"min-w-0 flex-1 truncate text-[11px] text-zinc-200",children:e}),o.jsx("button",{onClick:a,title:"Copy command",className:"shrink-0 rounded px-1.5 py-0.5 text-[10px] text-zinc-400 hover:bg-surface hover:text-white",children:t?"Copied":"Copy"})]})}function o0({label:e,image:t,href:n}){return o.jsxs("button",{onClick:()=>void F().shell.openExternal(n),className:"group flex items-center justify-between gap-2 rounded-md border border-border bg-black/20 px-2.5 py-1.5 text-left hover:border-accent hover:bg-surface",children:[o.jsxs("span",{className:"min-w-0",children:[o.jsx("span",{className:"block text-xs font-medium text-zinc-200",children:e}),o.jsx("code",{className:"block truncate text-[10px] text-zinc-500",children:t})]}),o.jsx(nC,{})]})}function J_(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-4 w-4",children:[o.jsx("rect",{x:"2",y:"6",width:"20",height:"12",rx:"2"}),o.jsx("rect",{x:"6",y:"10",width:"6",height:"4",rx:"1"}),o.jsx("line",{x1:"16",y1:"10",x2:"16",y2:"14"}),o.jsx("line",{x1:"19",y1:"10",x2:"19",y2:"14"})]})}function eC(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:"h-4 w-4",children:o.jsx("path",{d:"M19.35 10.04A7.49 7.49 0 0 0 12 4C9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96z"})})}function tC(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"currentColor",className:"h-3.5 w-3.5",children:o.jsx("path",{d:"M8 5v14l11-7z"})})}function nC(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",className:"h-3.5 w-3.5 shrink-0 text-zinc-500 group-hover:text-accent",children:[o.jsx("path",{d:"M14 3h7v7"}),o.jsx("path",{d:"M10 14 21 3"}),o.jsx("path",{d:"M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5"})]})}function aC(e){const t=JSON.stringify(e);return`(async () => {
50
+ const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
51
+ const waitFor = async (fn) => {
52
+ const start = Date.now();
53
+ while (Date.now() - start < 8000) {
54
+ try { if (fn()) return true; } catch (e) {}
55
+ await sleep(200);
56
+ }
57
+ return false;
58
+ };
59
+ await waitFor(() => window.app && window.app.graph);
60
+ const base = ${t};
61
+ const path = 'workflows/' + base + '.json';
62
+ // Match by BASENAME (filename without folders or .json) so detection is robust
63
+ // across ComfyUI versions that expose the tab as a path, a key, a filename, or a
64
+ // bare string — the cause of duplicate tabs was a too-strict full-path compare.
65
+ const baseOf = (w) => {
66
+ if (!w) return '';
67
+ let p = (typeof w === 'string') ? w : (w.path || w.key || w.filename || '');
68
+ if (typeof p !== 'string') p = '';
69
+ return p.replace(/^.*\\//, '').replace(/\\.json$/i, '');
70
+ };
71
+ const matches = (w) => baseOf(w) === base;
72
+ // The list of currently OPEN tabs, however this version names it.
73
+ const openTabs = (s) => {
74
+ for (const c of [s.openWorkflows, s.openedWorkflows, s.openWorkflowPaths]) {
75
+ const arr = (typeof c === 'function') ? c() : c;
76
+ if (Array.isArray(arr)) return arr;
77
+ }
78
+ return [];
79
+ };
80
+
81
+ // 1) Open the SAVED workflow via the workflow store (so Save targets the same file).
82
+ try {
83
+ const reg = window.comfyAPI || {};
84
+ let useWorkflowStore = reg.workflowStore && reg.workflowStore.useWorkflowStore;
85
+ if (!useWorkflowStore) {
86
+ for (const k in reg) {
87
+ if (reg[k] && reg[k].useWorkflowStore) { useWorkflowStore = reg[k].useWorkflowStore; break; }
88
+ }
89
+ }
90
+ if (useWorkflowStore) {
91
+ const store = useWorkflowStore();
92
+ // 1a) Already the active tab? Nothing to do.
93
+ if (matches(store.activeWorkflow)) return 'active';
94
+ // 1b) Already open in another tab? Switch to it — never open a duplicate.
95
+ const already = openTabs(store).find(matches);
96
+ if (already) {
97
+ // Resolve to a workflow object (the list may hold bare path strings).
98
+ let wf = (already && typeof already === 'object') ? already
99
+ : (typeof store.getWorkflowByPath === 'function' ? store.getWorkflowByPath(path) : null);
100
+ if (!wf) wf = already;
101
+ if (typeof store.openWorkflow === 'function') await store.openWorkflow(wf);
102
+ else store.activeWorkflow = wf;
103
+ return 'switched';
104
+ }
105
+ // 1c) Not open yet. Make sure the store knows the file Inline Studio just pushed
106
+ // (else getWorkflowByPath misses it and we'd open a throwaway Unsaved tab that
107
+ // future opens can't match — the duplicate-tab loop), then open the SAVED file.
108
+ for (const m of ['syncWorkflows','loadWorkflows','reloadWorkflows','refreshWorkflows']) {
109
+ if (typeof store[m] === 'function') { try { await store[m](); break; } catch (e) {} }
110
+ }
111
+ let wf = (typeof store.getWorkflowByPath === 'function') ? store.getWorkflowByPath(path) : null;
112
+ if (!wf && Array.isArray(store.workflows)) wf = store.workflows.find(matches);
113
+ if (wf && typeof store.openWorkflow === 'function') { await store.openWorkflow(wf); return 'opened'; }
114
+ }
115
+ } catch (e) { console.error('[inlinestudio] store open failed', e); }
116
+
117
+ // 2) Fallback: switch to a matching open tab via the workflow manager if there is
118
+ // one; else load the graph (opens as an Unsaved Workflow).
119
+ try {
120
+ const mgr = window.app && window.app.workflowManager;
121
+ const openList = mgr && (mgr.openWorkflows || mgr.workflows);
122
+ if (Array.isArray(openList)) {
123
+ const already = openList.find(matches);
124
+ if (already) {
125
+ if (typeof mgr.setWorkflow === 'function') { mgr.setWorkflow(already); return 'switched'; }
126
+ if (already.load) { already.load(); return 'switched'; }
127
+ }
128
+ }
129
+ } catch (e) { console.error('[inlinestudio] tab switch failed', e); }
130
+ try {
131
+ if (window.app && typeof window.app.loadGraphData === 'function') {
132
+ const res = await fetch('/userdata/' + encodeURIComponent(path));
133
+ if (res.ok) { window.app.loadGraphData(await res.json(), true, true, ${t}); return 'loaded'; }
134
+ }
135
+ } catch (e) { console.error('[inlinestudio] loadGraphData failed', e); }
136
+ return 'failed';
137
+ })();`}function lC(){return`(() => {
138
+ const out = { name: null, graph: null };
139
+ try {
140
+ const app = window.app;
141
+ const g = app && app.graph;
142
+ if (g && typeof g.serialize === 'function') out.graph = g.serialize();
143
+ // Identify the active workflow via the workflow store (modern) or manager (older).
144
+ let active = null;
145
+ try {
146
+ const reg = window.comfyAPI || {};
147
+ let useWorkflowStore = reg.workflowStore && reg.workflowStore.useWorkflowStore;
148
+ if (!useWorkflowStore) {
149
+ for (const k in reg) { if (reg[k] && reg[k].useWorkflowStore) { useWorkflowStore = reg[k].useWorkflowStore; break; } }
150
+ }
151
+ if (useWorkflowStore) active = useWorkflowStore().activeWorkflow;
152
+ } catch (e) {}
153
+ if (!active) { try { active = app.workflowManager && app.workflowManager.activeWorkflow; } catch (e) {} }
154
+ if (active) {
155
+ const p = active.path || active.key || active.filename;
156
+ if (typeof p === 'string') out.name = p;
157
+ }
158
+ } catch (e) {}
159
+ return JSON.stringify(out);
160
+ })();`}function rC(e){return e.replace(/^.*\//,"").replace(/\.json$/i,"")}const Gu="[inlinestudio:wf-saved]";function iC(){return`(() => {
161
+ if (window.__inlineStudioSaveHook) return 'already';
162
+ const findApi = () => {
163
+ if (window.app && window.app.api && typeof window.app.api.storeUserData === 'function') return window.app.api;
164
+ const reg = window.comfyAPI || {};
165
+ if (reg.api && reg.api.api && typeof reg.api.api.storeUserData === 'function') return reg.api.api;
166
+ for (const k in reg) { try { if (reg[k] && typeof reg[k].storeUserData === 'function') return reg[k]; } catch (e) {} }
167
+ return null;
168
+ };
169
+ const api = findApi();
170
+ if (!api) return 'no-api';
171
+
172
+ // (A) Network-level guard: force overwrite=true on every POST to a userdata *workflow*
173
+ // file. This is the robust fix — ComfyUI's workflow service calls \`this.fetchApi\`
174
+ // dynamically, so it lands here even when the service captured the original
175
+ // \`storeUserData\` before our patch below, and regardless of whether the workflow
176
+ // opened as a saved tab or as an "Unsaved Workflow". Without it, a freshly-linked
177
+ // frame (whose file Inline Studio already pushed) 409s on the first Save until an app
178
+ // restart re-indexes ComfyUI's workflow store. The route is URL-encoded, so slashes
179
+ // in the name appear as %2F and 'workflows' is still a substring.
180
+ if (api.fetchApi && !window.__inlineStudioFetchHook) {
181
+ const origFetch = api.fetchApi.bind(api);
182
+ api.fetchApi = (route, options) => {
183
+ try {
184
+ const method = ((options && options.method) || 'GET').toUpperCase();
185
+ if (method === 'POST' && typeof route === 'string'
186
+ && route.indexOf('/userdata/') !== -1 && route.indexOf('workflows') !== -1) {
187
+ if (/[?&]overwrite=false/i.test(route)) {
188
+ route = route.replace(/([?&])overwrite=false/i, '$1overwrite=true');
189
+ } else if (!/[?&]overwrite=/i.test(route)) {
190
+ route += (route.indexOf('?') === -1 ? '?' : '&') + 'overwrite=true';
191
+ }
192
+ }
193
+ } catch (e) {}
194
+ return origFetch(route, options);
195
+ };
196
+ window.__inlineStudioFetchHook = true;
197
+ }
198
+
199
+ // (B) storeUserData patch: force overwrite for direct callers AND log a marker after a
200
+ // workflow save so the host can pull the JSON back into Inline Studio's durable copy.
201
+ const orig = api.storeUserData.bind(api);
202
+ api.storeUserData = async (file, data, options) => {
203
+ let opts = options;
204
+ const isWorkflow = typeof file === 'string' && file.indexOf('workflows/') !== -1;
205
+ // Force overwrite for our workflow files so re-saving never 409s. Only touch a
206
+ // real options object so ComfyUI's defaults (stringify/throwOnError) survive.
207
+ if (isWorkflow && options && typeof options === 'object') {
208
+ opts = Object.assign({}, options, { overwrite: true });
209
+ }
210
+ const r = await orig(file, data, opts);
211
+ try { if (isWorkflow) console.log('${Gu} ' + file); } catch (e) {}
212
+ return r;
213
+ };
214
+ window.__inlineStudioSaveHook = true;
215
+ return 'hooked';
216
+ })();`}function oC(){const{comfyUrl:e,load:t,setComfyUrl:n}=cy(),a=Ke(N=>N.linkedWorkflow),l=Ke(N=>N.setLinkedWorkflow),r=Ke(N=>N.activeFrameId),i=Ke(N=>N.mode),s=J(N=>N.frames.find(T=>T.id===r)),c=J(N=>N.captureOutput),u=J(N=>N.pullWorkflow),d=J(N=>N.saveLiveWorkflow),[f,h]=k.useState(null),[m,x]=k.useState(""),j=k.useRef(null),[w,p]=k.useState(!1),[y,g]=k.useState(null),[v,_]=k.useState(new Set),M=k.useRef(null),z=k.useRef(null),C=k.useRef(0),[B,L]=k.useState(!1),S=(f==null?void 0:f.running)??!1,H=(f==null?void 0:f.url)??e,U=N=>{r&&(c(r,N),_(T=>new Set(T).add(N.url)))},E=()=>{var T;p(!1);const N=j.current;if(N)try{N.reloadIgnoringCache()}catch{try{N.reload()}catch{N.src=((T=N.getURL)==null?void 0:T.call(N))||H}}},R=k.useCallback(async(N,T=!1)=>{const D=j.current;if(!D)return;let A=null;try{const V=await D.executeJavaScript(lC());A=typeof V=="string"?JSON.parse(V):null}catch{A=null}const O=A==null?void 0:A.graph;if(O&&typeof O=="object"){const V=typeof(A==null?void 0:A.name)=="string"?rC(A.name):null,Z=V?J.getState().frames.find(P=>P.comfyWorkflowName===V):void 0;Z?await d(Z.id,O):T&&N&&await d(N,O);return}N&&u(N)},[d,u]),b=async()=>{let N=!1,T=e;try{const D=await F().comfy.status();D.ok?(T=D.value.url,N=!D.value.running):N=!0}catch{N=!0}if(!N){C.current=0,h({running:!0,url:T});return}C.current+=1,C.current>=3&&h({running:!1,url:T})};return k.useEffect(()=>{t()},[t]),k.useEffect(()=>{x(e)},[e]),k.useEffect(()=>{b();const N=setInterval(()=>void b(),4e3);return()=>clearInterval(N)},[e]),k.useEffect(()=>{if(!S)return;let N=!1;const T=async()=>{try{const A=await F().comfy.latestRun();if(N||!A.ok||!A.value)return;const O=A.value;M.current===null?M.current=O.promptId:O.promptId!==M.current&&(M.current=O.promptId,O.outputs.length>0&&(g(O),_(new Set)))}catch{}};T();const D=setInterval(()=>void T(),2e3);return()=>{N=!0,clearInterval(D)}},[S]),k.useEffect(()=>{const N=j.current;if(!N){p(!1);return}const T=()=>p(!0);return N.addEventListener("dom-ready",T),()=>N.removeEventListener("dom-ready",T)},[S]),k.useEffect(()=>{if(!w||!a||!j.current)return;const N=j.current,T=z.current,D=r;(async()=>{T&&T!==D&&await R(T,!0),await N.executeJavaScript(aC(a)).catch(()=>{}),z.current=D})().finally(()=>l(null))},[w,a,r,R,l]),k.useEffect(()=>{const N=j.current;if(!w||!N)return;N.executeJavaScript(iC()).catch(()=>{});const T=D=>{const A=D.message??"";if(!A.startsWith(Gu))return;const O=A.slice(Gu.length).trim(),Z=J.getState().frames.find(ae=>ae.comfyWorkflowName&&O.includes(ae.comfyWorkflowName)),P=(Z==null?void 0:Z.id)??z.current;P&&u(P)};return N.addEventListener("console-message",T),()=>N.removeEventListener("console-message",T)},[w,u]),k.useEffect(()=>{if(i!=="generate"||!w)return;const N=setInterval(()=>void R(z.current),5e3);return()=>clearInterval(N)},[i,w,R]),k.useEffect(()=>{i!=="generate"&&R(z.current)},[i,R]),k.useEffect(()=>{S&&L(!0)},[S]),o.jsxs("div",{className:"flex h-full flex-col bg-panel",children:[o.jsxs("div",{className:"flex items-center gap-2 border-b border-border px-3 py-2",children:[o.jsx("span",{className:`h-2 w-2 rounded-full ${S?"bg-green-500":"bg-zinc-600"}`,title:S?"ComfyUI is running":"ComfyUI is not reachable"}),o.jsx("span",{className:"text-xs uppercase tracking-wide text-zinc-400",children:"ComfyUI"}),o.jsx("input",{value:m,onChange:N=>x(N.target.value),onKeyDown:N=>{N.key==="Enter"&&n(m)},spellCheck:!1,className:"ml-2 w-72 rounded border border-border bg-surface px-2 py-1 text-xs text-zinc-200 outline-none focus:border-accent"}),o.jsx("button",{onClick:()=>void n(m),className:"rounded border border-border px-2 py-1 text-xs text-zinc-300 hover:bg-surface",children:"Save"}),o.jsxs("button",{onClick:E,disabled:!S,title:"Reload the embedded ComfyUI page",className:"flex items-center gap-1 rounded border border-border px-2 py-1 text-xs text-zinc-300 hover:bg-surface disabled:opacity-40",children:[o.jsx(sC,{}),"Refresh"]})]}),o.jsxs("div",{className:"relative flex-1",children:[S||B?o.jsx("webview",{ref:j,src:H,partition:"persist:comfyui",className:"h-full w-full border-0 bg-white"}):o.jsx(i0,{}),B&&!S&&o.jsx("div",{className:"absolute inset-0 z-20 bg-panel",children:o.jsx(i0,{})}),y&&y.outputs.length>0&&o.jsx(cC,{run:y,captured:v,targetFrameName:(s==null?void 0:s.name)??null,onCapture:U,onDismiss:()=>g(null)})]})]})}function sC(){return o.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-3.5 w-3.5",children:[o.jsx("path",{d:"M21 12a9 9 0 1 1-2.64-6.36"}),o.jsx("path",{d:"M21 3v6h-6"})]})}function cC({run:e,captured:t,targetFrameName:n,onCapture:a,onDismiss:l}){const r=Array.from(new Map(e.outputs.map(i=>[i.url,i])).values());return o.jsxs("div",{className:"absolute inset-x-0 bottom-0 z-10 border-t border-border bg-panel/95 p-2 backdrop-blur",children:[o.jsxs("div",{className:"mb-1.5 flex items-center justify-between",children:[o.jsxs("span",{className:"text-[11px] text-zinc-300",children:["New outputs ·"," ",n?o.jsxs(o.Fragment,{children:["capture to ",o.jsxs("span",{className:"font-medium text-white",children:["Frame ",n]})]}):o.jsx("span",{className:"text-amber-400",children:"open a frame's workflow to capture"})]}),o.jsx("button",{onClick:l,className:"rounded border border-border px-2 py-0.5 text-[11px] text-zinc-300 hover:bg-surface",children:"Dismiss"})]}),o.jsx("div",{className:"flex gap-2 overflow-x-auto pb-1",children:r.map(i=>o.jsx(uC,{output:i,captured:t.has(i.url),disabled:!n,onCapture:()=>a(i)},i.url))})]})}function uC({output:e,captured:t,disabled:n,onCapture:a}){return o.jsxs("div",{className:"group relative h-24 w-24 shrink-0 overflow-hidden rounded border border-border bg-black/40",children:[e.kind==="video"?o.jsx("video",{src:e.url,muted:!0,preload:"metadata",className:"h-full w-full object-cover"}):o.jsx("img",{src:e.url,alt:"",className:"h-full w-full object-cover"}),o.jsx("button",{onClick:a,disabled:n||t,className:"absolute inset-0 flex items-center justify-center bg-black/60 text-[10px] font-medium text-white opacity-0 transition-opacity group-hover:opacity-100 disabled:cursor-not-allowed",children:t?"✓ Captured":"Update frame output"}),t&&o.jsx("span",{className:"absolute right-1 top-1 rounded bg-accent px-1 text-[9px] text-panel",children:"✓"})]})}const xl=_t(e=>({configured:!1,encrypted:!0,error:null,load:async()=>{try{const t=await F().falSettings.status();t.ok&&e({configured:t.value.configured,encrypted:t.value.encrypted})}catch(t){e({error:te(t)})}},setApiKey:async t=>{try{const n=await F().falSettings.setApiKey(t);return n.ok?(e({configured:n.value.configured,encrypted:n.value.encrypted,error:null}),!0):(e({error:n.error}),!1)}catch(n){return e({error:te(n)}),!1}},clearApiKey:async()=>{try{const t=await F().falSettings.clearApiKey();if(!t.ok)return e({error:t.error});e({configured:t.value.configured,encrypted:t.value.encrypted,error:null})}catch(t){e({error:te(t)})}}}));function dC(){const e=xl(u=>u.configured),t=xl(u=>u.encrypted),n=xl(u=>u.error),a=xl(u=>u.load),l=xl(u=>u.setApiKey),r=xl(u=>u.clearApiKey),[i,s]=k.useState("");k.useEffect(()=>{a()},[a]);const c=async()=>{if(!i.trim())return;await l(i.trim())&&s("")};return o.jsxs("div",{className:"flex flex-col gap-2",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("span",{className:"text-xs font-medium text-zinc-200",children:"fal.ai API key"}),o.jsxs("span",{className:"flex items-center gap-1.5",children:[o.jsx("span",{className:`h-2 w-2 rounded-full ${e?"bg-green-500":"bg-zinc-600"}`}),o.jsx("span",{className:"text-[10px] uppercase tracking-wide text-zinc-500",children:e?"Connected":"Not set"})]})]}),o.jsx("p",{className:"text-[11px] leading-relaxed text-zinc-500",children:"Bring your own key to run the canvas generation nodes. Stored encrypted on this machine — it never leaves it. Get one from fal.ai/dashboard/keys."}),o.jsx("input",{type:"password",value:i,onChange:u=>s(u.target.value),onKeyDown:u=>{u.key==="Enter"&&c()},spellCheck:!1,placeholder:e?"•••••••• saved":"Paste fal.ai API key",className:"w-full rounded-md border border-border bg-surface px-2.5 py-1.5 text-xs text-zinc-200 outline-none placeholder:text-zinc-500 focus:border-accent"}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("button",{onClick:()=>void c(),disabled:!i.trim(),className:"rounded-md bg-accent px-3 py-1.5 text-xs font-medium text-panel hover:brightness-110 disabled:opacity-40",children:"Save"}),e&&o.jsx("button",{onClick:()=>void r(),className:"rounded-md border border-border px-3 py-1.5 text-xs text-zinc-400 hover:bg-surface",children:"Clear"})]}),n&&o.jsx("p",{className:"text-[11px] text-red-400",children:n}),e&&!t&&o.jsx("p",{className:"text-[11px] text-amber-400",children:"No OS keystore available — the key is stored as plaintext (0600)."})]})}function fC({onClose:e}){return o.jsxs("div",{className:"flex h-full flex-col border-l border-border bg-surface",children:[o.jsxs("header",{className:"flex h-12 shrink-0 items-center justify-between border-b border-border px-3",children:[o.jsxs("div",{className:"flex items-center gap-2 text-zinc-200",children:[o.jsx(Gp,{className:"h-4 w-4"}),o.jsx("span",{className:"text-sm font-semibold",children:"Settings"})]}),o.jsx("button",{onClick:e,title:"Close settings","aria-label":"Close settings",className:"flex h-7 w-7 items-center justify-center rounded-md text-zinc-400 hover:bg-panel hover:text-zinc-100",children:o.jsx(fr,{className:"h-4 w-4"})})]}),o.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto p-3",children:o.jsx("section",{className:"rounded-lg border border-border bg-panel/40 p-3",children:o.jsx(dC,{})})})]})}function hC(){const e=qu(r=>r.menu),t=qu(r=>r.close);if(k.useEffect(()=>{if(!e)return;const r=i=>{i.key==="Escape"&&t()};return window.addEventListener("keydown",r),()=>window.removeEventListener("keydown",r)},[e,t]),!e)return null;const n=180,a=Math.min(e.x,window.innerWidth-n-8),l=Math.min(e.y,window.innerHeight-e.items.length*32-8);return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"fixed inset-0 z-[200]",onClick:t,onContextMenu:r=>{r.preventDefault(),t()}}),o.jsx("div",{className:"fixed z-[201] overflow-hidden rounded-md border border-border bg-panel py-1 text-xs shadow-xl",style:{left:a,top:l,minWidth:n},children:e.items.map((r,i)=>o.jsx("button",{onClick:()=>{t(),r.onClick()},className:`block w-full px-3 py-1.5 text-left hover:bg-surface ${r.danger?"text-red-400":"text-zinc-200"}`,children:r.label},i))})]})}function mC(){const e=tl(n=>n.media),t=tl(n=>n.close);return k.useEffect(()=>{if(!e)return;const n=a=>{a.key==="Escape"&&t()};return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n)},[e,t]),e?pf.createPortal(o.jsxs("div",{className:"fixed inset-0 z-[100] flex items-center justify-center bg-black/85 p-8 backdrop-blur-sm",onClick:t,children:[e.kind==="video"?o.jsx("video",{src:e.src,controls:!0,autoPlay:!0,onClick:n=>n.stopPropagation(),className:"max-h-full max-w-full rounded-lg shadow-2xl"}):o.jsx("img",{src:e.src,alt:e.name??"",onClick:n=>n.stopPropagation(),className:"max-h-full max-w-full rounded-lg object-contain shadow-2xl"}),o.jsx("button",{onClick:t,"aria-label":"Close",title:"Close (Esc)",className:"absolute right-4 top-4 flex h-9 w-9 items-center justify-center rounded-full bg-black/60 text-zinc-200 hover:bg-black/80 hover:text-white",children:o.jsx(fr,{className:"h-5 w-5"})})]}),document.body):null}function pC({project:e}){const t=Ke(d=>d.mode),n=Ke(d=>d.setMode),a=Ke(d=>d.settingsOpen),l=Ke(d=>d.setSettingsOpen),r=qo(d=>d.closeProject),i=un(d=>d.reset),s=he(d=>d.reset),c=J(d=>d.reset),u=()=>{n("moodboard"),i(),s(),c(),r()};return o.jsxs("div",{className:"flex h-full flex-col",children:[o.jsxs("header",{className:"relative flex h-12 shrink-0 items-center justify-between border-b border-border bg-surface px-3",children:[o.jsxs("div",{className:"flex items-center gap-2.5",children:[o.jsxs("button",{onClick:u,title:"Back to your projects",className:"-m-1 flex items-center gap-2.5 rounded p-1 transition-opacity hover:opacity-75",children:[o.jsx(Fp,{size:26}),o.jsx("span",{className:"text-sm font-semibold text-white",children:"Inline Studio"})]}),o.jsx("span",{className:"text-zinc-600",children:"/"}),o.jsx("span",{className:"text-sm text-zinc-300",children:e.name})]}),o.jsx("div",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",children:o.jsx(gC,{mode:t,onChange:n})}),o.jsx("div",{className:"flex items-center",children:o.jsx("button",{onClick:()=>l(!a),title:"Settings","aria-label":"Settings","aria-pressed":a,className:`flex h-8 w-8 items-center justify-center rounded-md transition-colors ${a?"bg-panel text-white":"text-zinc-400 hover:bg-panel hover:text-zinc-200"}`,children:o.jsx(Gp,{className:"h-5 w-5"})})})]}),o.jsxs("main",{className:"flex min-h-0 flex-1",children:[o.jsxs("div",{className:"relative min-h-0 flex-1",children:[o.jsx("div",{className:t==="generate"?"h-full":"hidden",children:o.jsx(oC,{})}),o.jsx("div",{className:t==="moodboard"?"h-full":"hidden",children:o.jsx(V_,{})})]}),a&&o.jsx("div",{className:"min-h-0 w-80 shrink-0",children:o.jsx(fC,{onClose:()=>l(!1)})})]}),o.jsx(hC,{}),o.jsx(mC,{})]})}function gC({mode:e,onChange:t}){const n={moodboard:"Inline Studio",generate:"Generate"};return o.jsx("div",{className:"flex rounded-md border border-border bg-panel p-0.5 text-xs",children:["moodboard","generate"].map(a=>o.jsx("button",{onClick:()=>t(a),className:`rounded px-3 py-1 ${e===a?"bg-accent text-panel":"text-zinc-400 hover:text-zinc-200"}`,children:n[a]},a))})}function xC(){const e=rn(i=>i.status),t=rn(i=>i.version),n=rn(i=>i.percent),a=rn(i=>i.install),l=rn(i=>i.openReleases);if(e==="idle")return null;const r=t?`Inline Studio ${t}`:"A new version";return o.jsx("div",{className:"pointer-events-none fixed left-0 right-0 top-3 z-50 flex justify-center",children:o.jsx("div",{className:"pointer-events-auto flex items-center gap-3 rounded-lg border border-accent/40 bg-surface px-4 py-2 text-sm text-zinc-200 shadow-lg",children:e==="downloading"?o.jsxs(o.Fragment,{children:[o.jsxs("span",{children:["Downloading update… ",n,"%"]}),o.jsx("span",{className:"h-1 w-24 overflow-hidden rounded bg-panel",children:o.jsx("span",{className:"block h-full bg-accent transition-all",style:{width:`${n}%`}})})]}):e==="ready"?o.jsxs(o.Fragment,{children:[o.jsxs("span",{children:[r," is ready."]}),o.jsx("button",{onClick:()=>void a(),className:"rounded-md bg-accent px-3 py-1 text-xs font-medium text-panel hover:opacity-90",children:"Restart to install"})]}):o.jsxs(o.Fragment,{children:[o.jsxs("span",{children:[r," is available."]}),o.jsx("button",{onClick:()=>void l(),className:"rounded-md bg-accent px-3 py-1 text-xs font-medium text-panel hover:opacity-90",children:"Download"})]})})})}function yC(){const e=qo(a=>a.current),t=qo(a=>a.loadRecents),n=rn(a=>a.subscribeToEvents);return k.useEffect(()=>{t()},[t]),k.useEffect(()=>n(),[n]),k.useEffect(()=>x2(),[]),o.jsxs(o.Fragment,{children:[o.jsx(xC,{}),e?o.jsx(pC,{project:e}):o.jsx(T2,{})]})}var fy={exports:{}},ec={},hy={exports:{}},my={};/**
217
+ * @license React
218
+ * scheduler.production.js
219
+ *
220
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
221
+ *
222
+ * This source code is licensed under the MIT license found in the
223
+ * LICENSE file in the root directory of this source tree.
224
+ */(function(e){function t(b,N){var T=b.length;b.push(N);e:for(;0<T;){var D=T-1>>>1,A=b[D];if(0<l(A,N))b[D]=N,b[T]=A,T=D;else break e}}function n(b){return b.length===0?null:b[0]}function a(b){if(b.length===0)return null;var N=b[0],T=b.pop();if(T!==N){b[0]=T;e:for(var D=0,A=b.length,O=A>>>1;D<O;){var V=2*(D+1)-1,Z=b[V],P=V+1,ae=b[P];if(0>l(Z,T))P<A&&0>l(ae,Z)?(b[D]=ae,b[P]=T,D=P):(b[D]=Z,b[V]=T,D=V);else if(P<A&&0>l(ae,T))b[D]=ae,b[P]=T,D=P;else break e}}return N}function l(b,N){var T=b.sortIndex-N.sortIndex;return T!==0?T:b.id-N.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var r=performance;e.unstable_now=function(){return r.now()}}else{var i=Date,s=i.now();e.unstable_now=function(){return i.now()-s}}var c=[],u=[],d=1,f=null,h=3,m=!1,x=!1,j=!1,w=!1,p=typeof setTimeout=="function"?setTimeout:null,y=typeof clearTimeout=="function"?clearTimeout:null,g=typeof setImmediate<"u"?setImmediate:null;function v(b){for(var N=n(u);N!==null;){if(N.callback===null)a(u);else if(N.startTime<=b)a(u),N.sortIndex=N.expirationTime,t(c,N);else break;N=n(u)}}function _(b){if(j=!1,v(b),!x)if(n(c)!==null)x=!0,M||(M=!0,H());else{var N=n(u);N!==null&&R(_,N.startTime-b)}}var M=!1,z=-1,C=5,B=-1;function L(){return w?!0:!(e.unstable_now()-B<C)}function S(){if(w=!1,M){var b=e.unstable_now();B=b;var N=!0;try{e:{x=!1,j&&(j=!1,y(z),z=-1),m=!0;var T=h;try{t:{for(v(b),f=n(c);f!==null&&!(f.expirationTime>b&&L());){var D=f.callback;if(typeof D=="function"){f.callback=null,h=f.priorityLevel;var A=D(f.expirationTime<=b);if(b=e.unstable_now(),typeof A=="function"){f.callback=A,v(b),N=!0;break t}f===n(c)&&a(c),v(b)}else a(c);f=n(c)}if(f!==null)N=!0;else{var O=n(u);O!==null&&R(_,O.startTime-b),N=!1}}break e}finally{f=null,h=T,m=!1}N=void 0}}finally{N?H():M=!1}}}var H;if(typeof g=="function")H=function(){g(S)};else if(typeof MessageChannel<"u"){var U=new MessageChannel,E=U.port2;U.port1.onmessage=S,H=function(){E.postMessage(null)}}else H=function(){p(S,0)};function R(b,N){z=p(function(){b(e.unstable_now())},N)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(b){b.callback=null},e.unstable_forceFrameRate=function(b){0>b||125<b?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):C=0<b?Math.floor(1e3/b):5},e.unstable_getCurrentPriorityLevel=function(){return h},e.unstable_next=function(b){switch(h){case 1:case 2:case 3:var N=3;break;default:N=h}var T=h;h=N;try{return b()}finally{h=T}},e.unstable_requestPaint=function(){w=!0},e.unstable_runWithPriority=function(b,N){switch(b){case 1:case 2:case 3:case 4:case 5:break;default:b=3}var T=h;h=b;try{return N()}finally{h=T}},e.unstable_scheduleCallback=function(b,N,T){var D=e.unstable_now();switch(typeof T=="object"&&T!==null?(T=T.delay,T=typeof T=="number"&&0<T?D+T:D):T=D,b){case 1:var A=-1;break;case 2:A=250;break;case 5:A=1073741823;break;case 4:A=1e4;break;default:A=5e3}return A=T+A,b={id:d++,callback:N,priorityLevel:b,startTime:T,expirationTime:A,sortIndex:-1},T>D?(b.sortIndex=T,t(u,b),n(c)===null&&b===n(u)&&(j?(y(z),z=-1):j=!0,R(_,T-D))):(b.sortIndex=A,t(c,b),x||m||(x=!0,M||(M=!0,H()))),b},e.unstable_shouldYield=L,e.unstable_wrapCallback=function(b){var N=h;return function(){var T=h;h=N;try{return b.apply(this,arguments)}finally{h=T}}}})(my);hy.exports=my;var vC=hy.exports;/**
225
+ * @license React
226
+ * react-dom-client.production.js
227
+ *
228
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
229
+ *
230
+ * This source code is licensed under the MIT license found in the
231
+ * LICENSE file in the root directory of this source tree.
232
+ */var nt=vC,py=k,bC=pf;function G(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function gy(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Ri(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function xy(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function yy(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function s0(e){if(Ri(e)!==e)throw Error(G(188))}function wC(e){var t=e.alternate;if(!t){if(t=Ri(e),t===null)throw Error(G(188));return t!==e?null:e}for(var n=e,a=t;;){var l=n.return;if(l===null)break;var r=l.alternate;if(r===null){if(a=l.return,a!==null){n=a;continue}break}if(l.child===r.child){for(r=l.child;r;){if(r===n)return s0(l),e;if(r===a)return s0(l),t;r=r.sibling}throw Error(G(188))}if(n.return!==a.return)n=l,a=r;else{for(var i=!1,s=l.child;s;){if(s===n){i=!0,n=l,a=r;break}if(s===a){i=!0,a=l,n=r;break}s=s.sibling}if(!i){for(s=r.child;s;){if(s===n){i=!0,n=r,a=l;break}if(s===a){i=!0,a=r,n=l;break}s=s.sibling}if(!i)throw Error(G(189))}}if(n.alternate!==a)throw Error(G(190))}if(n.tag!==3)throw Error(G(188));return n.stateNode.current===n?e:t}function vy(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=vy(e),t!==null)return t;e=e.sibling}return null}var Be=Object.assign,jC=Symbol.for("react.element"),so=Symbol.for("react.transitional.element"),Rr=Symbol.for("react.portal"),El=Symbol.for("react.fragment"),by=Symbol.for("react.strict_mode"),Zu=Symbol.for("react.profiler"),wy=Symbol.for("react.consumer"),Rn=Symbol.for("react.context"),zf=Symbol.for("react.forward_ref"),Qu=Symbol.for("react.suspense"),Ku=Symbol.for("react.suspense_list"),Mf=Symbol.for("react.memo"),ta=Symbol.for("react.lazy"),Pu=Symbol.for("react.activity"),NC=Symbol.for("react.memo_cache_sentinel"),c0=Symbol.iterator;function kr(e){return e===null||typeof e!="object"?null:(e=c0&&e[c0]||e["@@iterator"],typeof e=="function"?e:null)}var SC=Symbol.for("react.client.reference");function Wu(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===SC?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case El:return"Fragment";case Zu:return"Profiler";case by:return"StrictMode";case Qu:return"Suspense";case Ku:return"SuspenseList";case Pu:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case Rr:return"Portal";case Rn:return e.displayName||"Context";case wy:return(e._context.displayName||"Context")+".Consumer";case zf:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Mf:return t=e.displayName||null,t!==null?t:Wu(e.type)||"Memo";case ta:t=e._payload,e=e._init;try{return Wu(e(t))}catch{}}return null}var Lr=Array.isArray,fe=py.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ee=bC.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,$a={pending:!1,data:null,method:null,action:null},Ju=[],kl=-1;function jn(e){return{current:e}}function rt(e){0>kl||(e.current=Ju[kl],Ju[kl]=null,kl--)}function Ae(e,t){kl++,Ju[kl]=e.current,e.current=t}var bn=jn(null),fi=jn(null),ma=jn(null),as=jn(null);function ls(e,t){switch(Ae(ma,t),Ae(fi,e),Ae(bn,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?pp(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=pp(t),e=V1(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}rt(bn),Ae(bn,e)}function er(){rt(bn),rt(fi),rt(ma)}function ed(e){e.memoizedState!==null&&Ae(as,e);var t=bn.current,n=V1(t,e.type);t!==n&&(Ae(fi,e),Ae(bn,n))}function rs(e){fi.current===e&&(rt(bn),rt(fi)),as.current===e&&(rt(as),Ni._currentValue=$a)}var Fc,u0;function Oa(e){if(Fc===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Fc=t&&t[1]||"",u0=-1<n.stack.indexOf(`
233
+ at`)?" (<anonymous>)":-1<n.stack.indexOf("@")?"@unknown:0:0":""}return`
234
+ `+Fc+e+u0}var Gc=!1;function Zc(e,t){if(!e||Gc)return"";Gc=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var a={DetermineComponentFrameRoot:function(){try{if(t){var f=function(){throw Error()};if(Object.defineProperty(f.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(f,[])}catch(m){var h=m}Reflect.construct(e,[],f)}else{try{f.call()}catch(m){h=m}e.call(f.prototype)}}else{try{throw Error()}catch(m){h=m}(f=e())&&typeof f.catch=="function"&&f.catch(function(){})}}catch(m){if(m&&h&&typeof m.stack=="string")return[m.stack,h.stack]}return[null,null]}};a.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var l=Object.getOwnPropertyDescriptor(a.DetermineComponentFrameRoot,"name");l&&l.configurable&&Object.defineProperty(a.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var r=a.DetermineComponentFrameRoot(),i=r[0],s=r[1];if(i&&s){var c=i.split(`
235
+ `),u=s.split(`
236
+ `);for(l=a=0;a<c.length&&!c[a].includes("DetermineComponentFrameRoot");)a++;for(;l<u.length&&!u[l].includes("DetermineComponentFrameRoot");)l++;if(a===c.length||l===u.length)for(a=c.length-1,l=u.length-1;1<=a&&0<=l&&c[a]!==u[l];)l--;for(;1<=a&&0<=l;a--,l--)if(c[a]!==u[l]){if(a!==1||l!==1)do if(a--,l--,0>l||c[a]!==u[l]){var d=`
237
+ `+c[a].replace(" at new "," at ");return e.displayName&&d.includes("<anonymous>")&&(d=d.replace("<anonymous>",e.displayName)),d}while(1<=a&&0<=l);break}}}finally{Gc=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?Oa(n):""}function EC(e,t){switch(e.tag){case 26:case 27:case 5:return Oa(e.type);case 16:return Oa("Lazy");case 13:return e.child!==t&&t!==null?Oa("Suspense Fallback"):Oa("Suspense");case 19:return Oa("SuspenseList");case 0:case 15:return Zc(e.type,!1);case 11:return Zc(e.type.render,!1);case 1:return Zc(e.type,!0);case 31:return Oa("Activity");default:return""}}function d0(e){try{var t="",n=null;do t+=EC(e,n),n=e,e=e.return;while(e);return t}catch(a){return`
238
+ Error generating stack: `+a.message+`
239
+ `+a.stack}}var td=Object.prototype.hasOwnProperty,Af=nt.unstable_scheduleCallback,Qc=nt.unstable_cancelCallback,kC=nt.unstable_shouldYield,_C=nt.unstable_requestPaint,Bt=nt.unstable_now,CC=nt.unstable_getCurrentPriorityLevel,jy=nt.unstable_ImmediatePriority,Ny=nt.unstable_UserBlockingPriority,is=nt.unstable_NormalPriority,zC=nt.unstable_LowPriority,Sy=nt.unstable_IdlePriority,MC=nt.log,AC=nt.unstable_setDisableYieldValue,Li=null,Rt=null;function sa(e){if(typeof MC=="function"&&AC(e),Rt&&typeof Rt.setStrictMode=="function")try{Rt.setStrictMode(Li,e)}catch{}}var Lt=Math.clz32?Math.clz32:OC,TC=Math.log,DC=Math.LN2;function OC(e){return e>>>=0,e===0?32:31-(TC(e)/DC|0)|0}var co=256,uo=262144,fo=4194304;function Ba(e){var t=e&42;if(t!==0)return t;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 tc(e,t,n){var a=e.pendingLanes;if(a===0)return 0;var l=0,r=e.suspendedLanes,i=e.pingedLanes;e=e.warmLanes;var s=a&134217727;return s!==0?(a=s&~r,a!==0?l=Ba(a):(i&=s,i!==0?l=Ba(i):n||(n=s&~e,n!==0&&(l=Ba(n))))):(s=a&~r,s!==0?l=Ba(s):i!==0?l=Ba(i):n||(n=a&~e,n!==0&&(l=Ba(n)))),l===0?0:t!==0&&t!==l&&!(t&r)&&(r=l&-l,n=t&-t,r>=n||r===32&&(n&4194048)!==0)?t:l}function Hi(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function BC(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+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 t+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 Ey(){var e=fo;return fo<<=1,!(fo&62914560)&&(fo=4194304),e}function Kc(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Ii(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function RC(e,t,n,a,l,r){var i=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,u=e.hiddenUpdates;for(n=i&~n;0<n;){var d=31-Lt(n),f=1<<d;s[d]=0,c[d]=-1;var h=u[d];if(h!==null)for(u[d]=null,d=0;d<h.length;d++){var m=h[d];m!==null&&(m.lane&=-536870913)}n&=~f}a!==0&&ky(e,a,0),r!==0&&l===0&&e.tag!==0&&(e.suspendedLanes|=r&~(i&~t))}function ky(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var a=31-Lt(t);e.entangledLanes|=t,e.entanglements[a]=e.entanglements[a]|1073741824|n&261930}function _y(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var a=31-Lt(n),l=1<<a;l&t|e[a]&t&&(e[a]|=t),n&=~l}}function Cy(e,t){var n=t&-t;return n=n&42?1:Tf(n),n&(e.suspendedLanes|t)?0:n}function Tf(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 Df(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function zy(){var e=Ee.p;return e!==0?e:(e=window.event,e===void 0?32:W1(e.type))}function f0(e,t){var n=Ee.p;try{return Ee.p=e,t()}finally{Ee.p=n}}var _a=Math.random().toString(36).slice(2),st="__reactFiber$"+_a,kt="__reactProps$"+_a,pr="__reactContainer$"+_a,nd="__reactEvents$"+_a,LC="__reactListeners$"+_a,HC="__reactHandles$"+_a,h0="__reactResources$"+_a,Ui="__reactMarker$"+_a;function Of(e){delete e[st],delete e[kt],delete e[nd],delete e[LC],delete e[HC]}function _l(e){var t=e[st];if(t)return t;for(var n=e.parentNode;n;){if(t=n[pr]||n[st]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=bp(e);e!==null;){if(n=e[st])return n;e=bp(e)}return t}e=n,n=e.parentNode}return null}function gr(e){if(e=e[st]||e[pr]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Hr(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(G(33))}function Ul(e){var t=e[h0];return t||(t=e[h0]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function lt(e){e[Ui]=!0}var My=new Set,Ay={};function dl(e,t){tr(e,t),tr(e+"Capture",t)}function tr(e,t){for(Ay[e]=t,e=0;e<t.length;e++)My.add(t[e])}var IC=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]*$"),m0={},p0={};function UC(e){return td.call(p0,e)?!0:td.call(m0,e)?!1:IC.test(e)?p0[e]=!0:(m0[e]=!0,!1)}function Mo(e,t,n){if(UC(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var a=t.toLowerCase().slice(0,5);if(a!=="data-"&&a!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,""+n)}}function ho(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,""+n)}}function Cn(e,t,n,a){if(a===null)e.removeAttribute(n);else{switch(typeof a){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(n);return}e.setAttributeNS(t,n,""+a)}}function Xt(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Ty(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function VC(e,t,n){var a=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof a<"u"&&typeof a.get=="function"&&typeof a.set=="function"){var l=a.get,r=a.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(i){n=""+i,r.call(this,i)}}),Object.defineProperty(e,t,{enumerable:a.enumerable}),{getValue:function(){return n},setValue:function(i){n=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function ad(e){if(!e._valueTracker){var t=Ty(e)?"checked":"value";e._valueTracker=VC(e,t,""+e[t])}}function Dy(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),a="";return e&&(a=Ty(e)?e.checked?"true":"false":e.value),e=a,e!==n?(t.setValue(e),!0):!1}function os(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 $C=/[\n"\\]/g;function Gt(e){return e.replace($C,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function ld(e,t,n,a,l,r,i,s){e.name="",i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"?e.type=i:e.removeAttribute("type"),t!=null?i==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Xt(t)):e.value!==""+Xt(t)&&(e.value=""+Xt(t)):i!=="submit"&&i!=="reset"||e.removeAttribute("value"),t!=null?rd(e,i,Xt(t)):n!=null?rd(e,i,Xt(n)):a!=null&&e.removeAttribute("value"),l==null&&r!=null&&(e.defaultChecked=!!r),l!=null&&(e.checked=l&&typeof l!="function"&&typeof l!="symbol"),s!=null&&typeof s!="function"&&typeof s!="symbol"&&typeof s!="boolean"?e.name=""+Xt(s):e.removeAttribute("name")}function Oy(e,t,n,a,l,r,i,s){if(r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"&&(e.type=r),t!=null||n!=null){if(!(r!=="submit"&&r!=="reset"||t!=null)){ad(e);return}n=n!=null?""+Xt(n):"",t=t!=null?""+Xt(t):n,s||t===e.value||(e.value=t),e.defaultValue=t}a=a??l,a=typeof a!="function"&&typeof a!="symbol"&&!!a,e.checked=s?e.checked:!!a,e.defaultChecked=!!a,i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(e.name=i),ad(e)}function rd(e,t,n){t==="number"&&os(e.ownerDocument)===e||e.defaultValue===""+n||(e.defaultValue=""+n)}function Vl(e,t,n,a){if(e=e.options,t){t={};for(var l=0;l<n.length;l++)t["$"+n[l]]=!0;for(n=0;n<e.length;n++)l=t.hasOwnProperty("$"+e[n].value),e[n].selected!==l&&(e[n].selected=l),l&&a&&(e[n].defaultSelected=!0)}else{for(n=""+Xt(n),t=null,l=0;l<e.length;l++){if(e[l].value===n){e[l].selected=!0,a&&(e[l].defaultSelected=!0);return}t!==null||e[l].disabled||(t=e[l])}t!==null&&(t.selected=!0)}}function By(e,t,n){if(t!=null&&(t=""+Xt(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n!=null?""+Xt(n):""}function Ry(e,t,n,a){if(t==null){if(a!=null){if(n!=null)throw Error(G(92));if(Lr(a)){if(1<a.length)throw Error(G(93));a=a[0]}n=a}n==null&&(n=""),t=n}n=Xt(t),e.defaultValue=n,a=e.textContent,a===n&&a!==""&&a!==null&&(e.value=a),ad(e)}function nr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var YC=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 g0(e,t,n){var a=t.indexOf("--")===0;n==null||typeof n=="boolean"||n===""?a?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":a?e.setProperty(t,n):typeof n!="number"||n===0||YC.has(t)?t==="float"?e.cssFloat=n:e[t]=(""+n).trim():e[t]=n+"px"}function Ly(e,t,n){if(t!=null&&typeof t!="object")throw Error(G(62));if(e=e.style,n!=null){for(var a in n)!n.hasOwnProperty(a)||t!=null&&t.hasOwnProperty(a)||(a.indexOf("--")===0?e.setProperty(a,""):a==="float"?e.cssFloat="":e[a]="");for(var l in t)a=t[l],t.hasOwnProperty(l)&&n[l]!==a&&g0(e,l,a)}else for(var r in t)t.hasOwnProperty(r)&&g0(e,r,t[r])}function Bf(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 XC=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"]]),qC=/^[\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 Ao(e){return qC.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function Ln(){}var id=null;function Rf(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Cl=null,$l=null;function x0(e){var t=gr(e);if(t&&(e=t.stateNode)){var n=e[kt]||null;e:switch(e=t.stateNode,t.type){case"input":if(ld(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll('input[name="'+Gt(""+t)+'"][type="radio"]'),t=0;t<n.length;t++){var a=n[t];if(a!==e&&a.form===e.form){var l=a[kt]||null;if(!l)throw Error(G(90));ld(a,l.value,l.defaultValue,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name)}}for(t=0;t<n.length;t++)a=n[t],a.form===e.form&&Dy(a)}break e;case"textarea":By(e,n.value,n.defaultValue);break e;case"select":t=n.value,t!=null&&Vl(e,!!n.multiple,t,!1)}}}var Pc=!1;function Hy(e,t,n){if(Pc)return e(t,n);Pc=!0;try{var a=e(t);return a}finally{if(Pc=!1,(Cl!==null||$l!==null)&&(hc(),Cl&&(t=Cl,e=$l,$l=Cl=null,x0(t),e)))for(t=0;t<e.length;t++)x0(e[t])}}function hi(e,t){var n=e.stateNode;if(n===null)return null;var a=n[kt]||null;if(a===null)return null;n=a[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(a=!a.disabled)||(e=e.type,a=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!a;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(G(231,t,typeof n));return n}var Yn=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),od=!1;if(Yn)try{var _r={};Object.defineProperty(_r,"passive",{get:function(){od=!0}}),window.addEventListener("test",_r,_r),window.removeEventListener("test",_r,_r)}catch{od=!1}var ca=null,Lf=null,To=null;function Iy(){if(To)return To;var e,t=Lf,n=t.length,a,l="value"in ca?ca.value:ca.textContent,r=l.length;for(e=0;e<n&&t[e]===l[e];e++);var i=n-e;for(a=1;a<=i&&t[n-a]===l[r-a];a++);return To=l.slice(e,1<a?1-a:void 0)}function Do(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function mo(){return!0}function y0(){return!1}function Ct(e){function t(n,a,l,r,i){this._reactName=n,this._targetInst=l,this.type=a,this.nativeEvent=r,this.target=i,this.currentTarget=null;for(var s in e)e.hasOwnProperty(s)&&(n=e[s],this[s]=n?n(r):r[s]);return this.isDefaultPrevented=(r.defaultPrevented!=null?r.defaultPrevented:r.returnValue===!1)?mo:y0,this.isPropagationStopped=y0,this}return Be(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=mo)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=mo)},persist:function(){},isPersistent:mo}),t}var fl={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},nc=Ct(fl),Vi=Be({},fl,{view:0,detail:0}),FC=Ct(Vi),Wc,Jc,Cr,ac=Be({},Vi,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Hf,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!==Cr&&(Cr&&e.type==="mousemove"?(Wc=e.screenX-Cr.screenX,Jc=e.screenY-Cr.screenY):Jc=Wc=0,Cr=e),Wc)},movementY:function(e){return"movementY"in e?e.movementY:Jc}}),v0=Ct(ac),GC=Be({},ac,{dataTransfer:0}),ZC=Ct(GC),QC=Be({},Vi,{relatedTarget:0}),eu=Ct(QC),KC=Be({},fl,{animationName:0,elapsedTime:0,pseudoElement:0}),PC=Ct(KC),WC=Be({},fl,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),JC=Ct(WC),ez=Be({},fl,{data:0}),b0=Ct(ez),tz={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},nz={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"},az={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function lz(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=az[e])?!!t[e]:!1}function Hf(){return lz}var rz=Be({},Vi,{key:function(e){if(e.key){var t=tz[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Do(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?nz[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Hf,charCode:function(e){return e.type==="keypress"?Do(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Do(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),iz=Ct(rz),oz=Be({},ac,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),w0=Ct(oz),sz=Be({},Vi,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Hf}),cz=Ct(sz),uz=Be({},fl,{propertyName:0,elapsedTime:0,pseudoElement:0}),dz=Ct(uz),fz=Be({},ac,{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}),hz=Ct(fz),mz=Be({},fl,{newState:0,oldState:0}),pz=Ct(mz),gz=[9,13,27,32],If=Yn&&"CompositionEvent"in window,Xr=null;Yn&&"documentMode"in document&&(Xr=document.documentMode);var xz=Yn&&"TextEvent"in window&&!Xr,Uy=Yn&&(!If||Xr&&8<Xr&&11>=Xr),j0=" ",N0=!1;function Vy(e,t){switch(e){case"keyup":return gz.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function $y(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var zl=!1;function yz(e,t){switch(e){case"compositionend":return $y(t);case"keypress":return t.which!==32?null:(N0=!0,j0);case"textInput":return e=t.data,e===j0&&N0?null:e;default:return null}}function vz(e,t){if(zl)return e==="compositionend"||!If&&Vy(e,t)?(e=Iy(),To=Lf=ca=null,zl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Uy&&t.locale!=="ko"?null:t.data;default:return null}}var bz={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 S0(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!bz[e.type]:t==="textarea"}function Yy(e,t,n,a){Cl?$l?$l.push(a):$l=[a]:Cl=a,t=Es(t,"onChange"),0<t.length&&(n=new nc("onChange","change",null,n,a),e.push({event:n,listeners:t}))}var qr=null,mi=null;function wz(e){H1(e,0)}function lc(e){var t=Hr(e);if(Dy(t))return e}function E0(e,t){if(e==="change")return t}var Xy=!1;if(Yn){var tu;if(Yn){var nu="oninput"in document;if(!nu){var k0=document.createElement("div");k0.setAttribute("oninput","return;"),nu=typeof k0.oninput=="function"}tu=nu}else tu=!1;Xy=tu&&(!document.documentMode||9<document.documentMode)}function _0(){qr&&(qr.detachEvent("onpropertychange",qy),mi=qr=null)}function qy(e){if(e.propertyName==="value"&&lc(mi)){var t=[];Yy(t,mi,e,Rf(e)),Hy(wz,t)}}function jz(e,t,n){e==="focusin"?(_0(),qr=t,mi=n,qr.attachEvent("onpropertychange",qy)):e==="focusout"&&_0()}function Nz(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return lc(mi)}function Sz(e,t){if(e==="click")return lc(t)}function Ez(e,t){if(e==="input"||e==="change")return lc(t)}function kz(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Ut=typeof Object.is=="function"?Object.is:kz;function pi(e,t){if(Ut(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),a=Object.keys(t);if(n.length!==a.length)return!1;for(a=0;a<n.length;a++){var l=n[a];if(!td.call(t,l)||!Ut(e[l],t[l]))return!1}return!0}function C0(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function z0(e,t){var n=C0(e);e=0;for(var a;n;){if(n.nodeType===3){if(a=e+n.textContent.length,e<=t&&a>=t)return{node:n,offset:t-e};e=a}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=C0(n)}}function Fy(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Fy(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Gy(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=os(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=os(e.document)}return t}function Uf(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var _z=Yn&&"documentMode"in document&&11>=document.documentMode,Ml=null,sd=null,Fr=null,cd=!1;function M0(e,t,n){var a=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;cd||Ml==null||Ml!==os(a)||(a=Ml,"selectionStart"in a&&Uf(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),Fr&&pi(Fr,a)||(Fr=a,a=Es(sd,"onSelect"),0<a.length&&(t=new nc("onSelect","select",null,t,n),e.push({event:t,listeners:a}),t.target=Ml)))}function Aa(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Al={animationend:Aa("Animation","AnimationEnd"),animationiteration:Aa("Animation","AnimationIteration"),animationstart:Aa("Animation","AnimationStart"),transitionrun:Aa("Transition","TransitionRun"),transitionstart:Aa("Transition","TransitionStart"),transitioncancel:Aa("Transition","TransitionCancel"),transitionend:Aa("Transition","TransitionEnd")},au={},Zy={};Yn&&(Zy=document.createElement("div").style,"AnimationEvent"in window||(delete Al.animationend.animation,delete Al.animationiteration.animation,delete Al.animationstart.animation),"TransitionEvent"in window||delete Al.transitionend.transition);function hl(e){if(au[e])return au[e];if(!Al[e])return e;var t=Al[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Zy)return au[e]=t[n];return e}var Qy=hl("animationend"),Ky=hl("animationiteration"),Py=hl("animationstart"),Cz=hl("transitionrun"),zz=hl("transitionstart"),Mz=hl("transitioncancel"),Wy=hl("transitionend"),Jy=new Map,ud="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(" ");ud.push("scrollEnd");function mn(e,t){Jy.set(e,t),dl(t,[e])}var ss=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=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(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Yt=[],Tl=0,Vf=0;function rc(){for(var e=Tl,t=Vf=Tl=0;t<e;){var n=Yt[t];Yt[t++]=null;var a=Yt[t];Yt[t++]=null;var l=Yt[t];Yt[t++]=null;var r=Yt[t];if(Yt[t++]=null,a!==null&&l!==null){var i=a.pending;i===null?l.next=l:(l.next=i.next,i.next=l),a.pending=l}r!==0&&ev(n,l,r)}}function ic(e,t,n,a){Yt[Tl++]=e,Yt[Tl++]=t,Yt[Tl++]=n,Yt[Tl++]=a,Vf|=a,e.lanes|=a,e=e.alternate,e!==null&&(e.lanes|=a)}function $f(e,t,n,a){return ic(e,t,n,a),cs(e)}function ml(e,t){return ic(e,null,null,t),cs(e)}function ev(e,t,n){e.lanes|=n;var a=e.alternate;a!==null&&(a.lanes|=n);for(var l=!1,r=e.return;r!==null;)r.childLanes|=n,a=r.alternate,a!==null&&(a.childLanes|=n),r.tag===22&&(e=r.stateNode,e===null||e._visibility&1||(l=!0)),e=r,r=r.return;return e.tag===3?(r=e.stateNode,l&&t!==null&&(l=31-Lt(n),e=r.hiddenUpdates,a=e[l],a===null?e[l]=[t]:a.push(t),t.lane=n|536870912),r):null}function cs(e){if(50<ti)throw ti=0,Ad=null,Error(G(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Dl={};function Az(e,t,n,a){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=a,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Dt(e,t,n,a){return new Az(e,t,n,a)}function Yf(e){return e=e.prototype,!(!e||!e.isReactComponent)}function In(e,t){var n=e.alternate;return n===null?(n=Dt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function tv(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function Oo(e,t,n,a,l,r){var i=0;if(a=e,typeof e=="function")Yf(e)&&(i=1);else if(typeof e=="string")i=RM(e,n,bn.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case Pu:return e=Dt(31,n,t,l),e.elementType=Pu,e.lanes=r,e;case El:return Ya(n.children,l,r,t);case by:i=8,l|=24;break;case Zu:return e=Dt(12,n,t,l|2),e.elementType=Zu,e.lanes=r,e;case Qu:return e=Dt(13,n,t,l),e.elementType=Qu,e.lanes=r,e;case Ku:return e=Dt(19,n,t,l),e.elementType=Ku,e.lanes=r,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Rn:i=10;break e;case wy:i=9;break e;case zf:i=11;break e;case Mf:i=14;break e;case ta:i=16,a=null;break e}i=29,n=Error(G(130,e===null?"null":typeof e,"")),a=null}return t=Dt(i,n,t,l),t.elementType=e,t.type=a,t.lanes=r,t}function Ya(e,t,n,a){return e=Dt(7,e,a,t),e.lanes=n,e}function lu(e,t,n){return e=Dt(6,e,null,t),e.lanes=n,e}function nv(e){var t=Dt(18,null,null,0);return t.stateNode=e,t}function ru(e,t,n){return t=Dt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var A0=new WeakMap;function Zt(e,t){if(typeof e=="object"&&e!==null){var n=A0.get(e);return n!==void 0?n:(t={value:e,source:t,stack:d0(t)},A0.set(e,t),t)}return{value:e,source:t,stack:d0(t)}}var Ol=[],Bl=0,us=null,gi=0,qt=[],Ft=0,Na=null,gn=1,xn="";function Dn(e,t){Ol[Bl++]=gi,Ol[Bl++]=us,us=e,gi=t}function av(e,t,n){qt[Ft++]=gn,qt[Ft++]=xn,qt[Ft++]=Na,Na=e;var a=gn;e=xn;var l=32-Lt(a)-1;a&=~(1<<l),n+=1;var r=32-Lt(t)+l;if(30<r){var i=l-l%5;r=(a&(1<<i)-1).toString(32),a>>=i,l-=i,gn=1<<32-Lt(t)+l|n<<l|a,xn=r+e}else gn=1<<r|n<<l|a,xn=e}function Xf(e){e.return!==null&&(Dn(e,1),av(e,1,0))}function qf(e){for(;e===us;)us=Ol[--Bl],Ol[Bl]=null,gi=Ol[--Bl],Ol[Bl]=null;for(;e===Na;)Na=qt[--Ft],qt[Ft]=null,xn=qt[--Ft],qt[Ft]=null,gn=qt[--Ft],qt[Ft]=null}function lv(e,t){qt[Ft++]=gn,qt[Ft++]=xn,qt[Ft++]=Na,gn=t.id,xn=t.overflow,Na=e}var ct=null,De=null,je=!1,pa=null,Qt=!1,dd=Error(G(519));function Sa(e){var t=Error(G(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw xi(Zt(t,e)),dd}function T0(e){var t=e.stateNode,n=e.type,a=e.memoizedProps;switch(t[st]=e,t[kt]=a,n){case"dialog":ve("cancel",t),ve("close",t);break;case"iframe":case"object":case"embed":ve("load",t);break;case"video":case"audio":for(n=0;n<wi.length;n++)ve(wi[n],t);break;case"source":ve("error",t);break;case"img":case"image":case"link":ve("error",t),ve("load",t);break;case"details":ve("toggle",t);break;case"input":ve("invalid",t),Oy(t,a.value,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name,!0);break;case"select":ve("invalid",t);break;case"textarea":ve("invalid",t),Ry(t,a.value,a.defaultValue,a.children)}n=a.children,typeof n!="string"&&typeof n!="number"&&typeof n!="bigint"||t.textContent===""+n||a.suppressHydrationWarning===!0||U1(t.textContent,n)?(a.popover!=null&&(ve("beforetoggle",t),ve("toggle",t)),a.onScroll!=null&&ve("scroll",t),a.onScrollEnd!=null&&ve("scrollend",t),a.onClick!=null&&(t.onclick=Ln),t=!0):t=!1,t||Sa(e,!0)}function D0(e){for(ct=e.return;ct;)switch(ct.tag){case 5:case 31:case 13:Qt=!1;return;case 27:case 3:Qt=!0;return;default:ct=ct.return}}function yl(e){if(e!==ct)return!1;if(!je)return D0(e),je=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!=="form"&&n!=="button")||Rd(e.type,e.memoizedProps)),n=!n),n&&De&&Sa(e),D0(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(G(317));De=vp(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(G(317));De=vp(e)}else t===27?(t=De,Ca(e.type)?(e=Ud,Ud=null,De=e):De=t):De=ct?Wt(e.stateNode.nextSibling):null;return!0}function nl(){De=ct=null,je=!1}function iu(){var e=pa;return e!==null&&(bt===null?bt=e:bt.push.apply(bt,e),pa=null),e}function xi(e){pa===null?pa=[e]:pa.push(e)}var fd=jn(null),pl=null,Hn=null;function la(e,t,n){Ae(fd,t._currentValue),t._currentValue=n}function Un(e){e._currentValue=fd.current,rt(fd)}function hd(e,t,n){for(;e!==null;){var a=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,a!==null&&(a.childLanes|=t)):a!==null&&(a.childLanes&t)!==t&&(a.childLanes|=t),e===n)break;e=e.return}}function md(e,t,n,a){var l=e.child;for(l!==null&&(l.return=e);l!==null;){var r=l.dependencies;if(r!==null){var i=l.child;r=r.firstContext;e:for(;r!==null;){var s=r;r=l;for(var c=0;c<t.length;c++)if(s.context===t[c]){r.lanes|=n,s=r.alternate,s!==null&&(s.lanes|=n),hd(r.return,n,e),a||(i=null);break e}r=s.next}}else if(l.tag===18){if(i=l.return,i===null)throw Error(G(341));i.lanes|=n,r=i.alternate,r!==null&&(r.lanes|=n),hd(i,n,e),i=null}else i=l.child;if(i!==null)i.return=l;else for(i=l;i!==null;){if(i===e){i=null;break}if(l=i.sibling,l!==null){l.return=i.return,i=l;break}i=i.return}l=i}}function xr(e,t,n,a){e=null;for(var l=t,r=!1;l!==null;){if(!r){if(l.flags&524288)r=!0;else if(l.flags&262144)break}if(l.tag===10){var i=l.alternate;if(i===null)throw Error(G(387));if(i=i.memoizedProps,i!==null){var s=l.type;Ut(l.pendingProps.value,i.value)||(e!==null?e.push(s):e=[s])}}else if(l===as.current){if(i=l.alternate,i===null)throw Error(G(387));i.memoizedState.memoizedState!==l.memoizedState.memoizedState&&(e!==null?e.push(Ni):e=[Ni])}l=l.return}e!==null&&md(t,e,n,a),t.flags|=262144}function ds(e){for(e=e.firstContext;e!==null;){if(!Ut(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function al(e){pl=e,Hn=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function ut(e){return rv(pl,e)}function po(e,t){return pl===null&&al(e),rv(e,t)}function rv(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Hn===null){if(e===null)throw Error(G(308));Hn=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Hn=Hn.next=t;return n}var Tz=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(n,a){e.push(a)}};this.abort=function(){t.aborted=!0,e.forEach(function(n){return n()})}},Dz=nt.unstable_scheduleCallback,Oz=nt.unstable_NormalPriority,Qe={$$typeof:Rn,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Ff(){return{controller:new Tz,data:new Map,refCount:0}}function $i(e){e.refCount--,e.refCount===0&&Dz(Oz,function(){e.controller.abort()})}var Gr=null,pd=0,ar=0,Yl=null;function Bz(e,t){if(Gr===null){var n=Gr=[];pd=0,ar=xh(),Yl={status:"pending",value:void 0,then:function(a){n.push(a)}}}return pd++,t.then(O0,O0),t}function O0(){if(--pd===0&&Gr!==null){Yl!==null&&(Yl.status="fulfilled");var e=Gr;Gr=null,ar=0,Yl=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function Rz(e,t){var n=[],a={status:"pending",value:null,reason:null,then:function(l){n.push(l)}};return e.then(function(){a.status="fulfilled",a.value=t;for(var l=0;l<n.length;l++)(0,n[l])(t)},function(l){for(a.status="rejected",a.reason=l,l=0;l<n.length;l++)(0,n[l])(void 0)}),a}var B0=fe.S;fe.S=function(e,t){v1=Bt(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&Bz(e,t),B0!==null&&B0(e,t)};var Xa=jn(null);function Gf(){var e=Xa.current;return e!==null?e:Me.pooledCache}function Bo(e,t){t===null?Ae(Xa,Xa.current):Ae(Xa,t.pool)}function iv(){var e=Gf();return e===null?null:{parent:Qe._currentValue,pool:e}}var yr=Error(G(460)),Zf=Error(G(474)),oc=Error(G(542)),fs={then:function(){}};function R0(e){return e=e.status,e==="fulfilled"||e==="rejected"}function ov(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(Ln,Ln),t=n),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,H0(e),e;default:if(typeof t.status=="string")t.then(Ln,Ln);else{if(e=Me,e!==null&&100<e.shellSuspendCounter)throw Error(G(482));e=t,e.status="pending",e.then(function(a){if(t.status==="pending"){var l=t;l.status="fulfilled",l.value=a}},function(a){if(t.status==="pending"){var l=t;l.status="rejected",l.reason=a}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,H0(e),e}throw qa=t,yr}}function Ra(e){try{var t=e._init;return t(e._payload)}catch(n){throw n!==null&&typeof n=="object"&&typeof n.then=="function"?(qa=n,yr):n}}var qa=null;function L0(){if(qa===null)throw Error(G(459));var e=qa;return qa=null,e}function H0(e){if(e===yr||e===oc)throw Error(G(483))}var Xl=null,yi=0;function go(e){var t=yi;return yi+=1,Xl===null&&(Xl=[]),ov(Xl,e,t)}function zr(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function xo(e,t){throw t.$$typeof===jC?Error(G(525)):(e=Object.prototype.toString.call(t),Error(G(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function sv(e){function t(p,y){if(e){var g=p.deletions;g===null?(p.deletions=[y],p.flags|=16):g.push(y)}}function n(p,y){if(!e)return null;for(;y!==null;)t(p,y),y=y.sibling;return null}function a(p){for(var y=new Map;p!==null;)p.key!==null?y.set(p.key,p):y.set(p.index,p),p=p.sibling;return y}function l(p,y){return p=In(p,y),p.index=0,p.sibling=null,p}function r(p,y,g){return p.index=g,e?(g=p.alternate,g!==null?(g=g.index,g<y?(p.flags|=67108866,y):g):(p.flags|=67108866,y)):(p.flags|=1048576,y)}function i(p){return e&&p.alternate===null&&(p.flags|=67108866),p}function s(p,y,g,v){return y===null||y.tag!==6?(y=lu(g,p.mode,v),y.return=p,y):(y=l(y,g),y.return=p,y)}function c(p,y,g,v){var _=g.type;return _===El?d(p,y,g.props.children,v,g.key):y!==null&&(y.elementType===_||typeof _=="object"&&_!==null&&_.$$typeof===ta&&Ra(_)===y.type)?(y=l(y,g.props),zr(y,g),y.return=p,y):(y=Oo(g.type,g.key,g.props,null,p.mode,v),zr(y,g),y.return=p,y)}function u(p,y,g,v){return y===null||y.tag!==4||y.stateNode.containerInfo!==g.containerInfo||y.stateNode.implementation!==g.implementation?(y=ru(g,p.mode,v),y.return=p,y):(y=l(y,g.children||[]),y.return=p,y)}function d(p,y,g,v,_){return y===null||y.tag!==7?(y=Ya(g,p.mode,v,_),y.return=p,y):(y=l(y,g),y.return=p,y)}function f(p,y,g){if(typeof y=="string"&&y!==""||typeof y=="number"||typeof y=="bigint")return y=lu(""+y,p.mode,g),y.return=p,y;if(typeof y=="object"&&y!==null){switch(y.$$typeof){case so:return g=Oo(y.type,y.key,y.props,null,p.mode,g),zr(g,y),g.return=p,g;case Rr:return y=ru(y,p.mode,g),y.return=p,y;case ta:return y=Ra(y),f(p,y,g)}if(Lr(y)||kr(y))return y=Ya(y,p.mode,g,null),y.return=p,y;if(typeof y.then=="function")return f(p,go(y),g);if(y.$$typeof===Rn)return f(p,po(p,y),g);xo(p,y)}return null}function h(p,y,g,v){var _=y!==null?y.key:null;if(typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint")return _!==null?null:s(p,y,""+g,v);if(typeof g=="object"&&g!==null){switch(g.$$typeof){case so:return g.key===_?c(p,y,g,v):null;case Rr:return g.key===_?u(p,y,g,v):null;case ta:return g=Ra(g),h(p,y,g,v)}if(Lr(g)||kr(g))return _!==null?null:d(p,y,g,v,null);if(typeof g.then=="function")return h(p,y,go(g),v);if(g.$$typeof===Rn)return h(p,y,po(p,g),v);xo(p,g)}return null}function m(p,y,g,v,_){if(typeof v=="string"&&v!==""||typeof v=="number"||typeof v=="bigint")return p=p.get(g)||null,s(y,p,""+v,_);if(typeof v=="object"&&v!==null){switch(v.$$typeof){case so:return p=p.get(v.key===null?g:v.key)||null,c(y,p,v,_);case Rr:return p=p.get(v.key===null?g:v.key)||null,u(y,p,v,_);case ta:return v=Ra(v),m(p,y,g,v,_)}if(Lr(v)||kr(v))return p=p.get(g)||null,d(y,p,v,_,null);if(typeof v.then=="function")return m(p,y,g,go(v),_);if(v.$$typeof===Rn)return m(p,y,g,po(y,v),_);xo(y,v)}return null}function x(p,y,g,v){for(var _=null,M=null,z=y,C=y=0,B=null;z!==null&&C<g.length;C++){z.index>C?(B=z,z=null):B=z.sibling;var L=h(p,z,g[C],v);if(L===null){z===null&&(z=B);break}e&&z&&L.alternate===null&&t(p,z),y=r(L,y,C),M===null?_=L:M.sibling=L,M=L,z=B}if(C===g.length)return n(p,z),je&&Dn(p,C),_;if(z===null){for(;C<g.length;C++)z=f(p,g[C],v),z!==null&&(y=r(z,y,C),M===null?_=z:M.sibling=z,M=z);return je&&Dn(p,C),_}for(z=a(z);C<g.length;C++)B=m(z,p,C,g[C],v),B!==null&&(e&&B.alternate!==null&&z.delete(B.key===null?C:B.key),y=r(B,y,C),M===null?_=B:M.sibling=B,M=B);return e&&z.forEach(function(S){return t(p,S)}),je&&Dn(p,C),_}function j(p,y,g,v){if(g==null)throw Error(G(151));for(var _=null,M=null,z=y,C=y=0,B=null,L=g.next();z!==null&&!L.done;C++,L=g.next()){z.index>C?(B=z,z=null):B=z.sibling;var S=h(p,z,L.value,v);if(S===null){z===null&&(z=B);break}e&&z&&S.alternate===null&&t(p,z),y=r(S,y,C),M===null?_=S:M.sibling=S,M=S,z=B}if(L.done)return n(p,z),je&&Dn(p,C),_;if(z===null){for(;!L.done;C++,L=g.next())L=f(p,L.value,v),L!==null&&(y=r(L,y,C),M===null?_=L:M.sibling=L,M=L);return je&&Dn(p,C),_}for(z=a(z);!L.done;C++,L=g.next())L=m(z,p,C,L.value,v),L!==null&&(e&&L.alternate!==null&&z.delete(L.key===null?C:L.key),y=r(L,y,C),M===null?_=L:M.sibling=L,M=L);return e&&z.forEach(function(H){return t(p,H)}),je&&Dn(p,C),_}function w(p,y,g,v){if(typeof g=="object"&&g!==null&&g.type===El&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case so:e:{for(var _=g.key;y!==null;){if(y.key===_){if(_=g.type,_===El){if(y.tag===7){n(p,y.sibling),v=l(y,g.props.children),v.return=p,p=v;break e}}else if(y.elementType===_||typeof _=="object"&&_!==null&&_.$$typeof===ta&&Ra(_)===y.type){n(p,y.sibling),v=l(y,g.props),zr(v,g),v.return=p,p=v;break e}n(p,y);break}else t(p,y);y=y.sibling}g.type===El?(v=Ya(g.props.children,p.mode,v,g.key),v.return=p,p=v):(v=Oo(g.type,g.key,g.props,null,p.mode,v),zr(v,g),v.return=p,p=v)}return i(p);case Rr:e:{for(_=g.key;y!==null;){if(y.key===_)if(y.tag===4&&y.stateNode.containerInfo===g.containerInfo&&y.stateNode.implementation===g.implementation){n(p,y.sibling),v=l(y,g.children||[]),v.return=p,p=v;break e}else{n(p,y);break}else t(p,y);y=y.sibling}v=ru(g,p.mode,v),v.return=p,p=v}return i(p);case ta:return g=Ra(g),w(p,y,g,v)}if(Lr(g))return x(p,y,g,v);if(kr(g)){if(_=kr(g),typeof _!="function")throw Error(G(150));return g=_.call(g),j(p,y,g,v)}if(typeof g.then=="function")return w(p,y,go(g),v);if(g.$$typeof===Rn)return w(p,y,po(p,g),v);xo(p,g)}return typeof g=="string"&&g!==""||typeof g=="number"||typeof g=="bigint"?(g=""+g,y!==null&&y.tag===6?(n(p,y.sibling),v=l(y,g),v.return=p,p=v):(n(p,y),v=lu(g,p.mode,v),v.return=p,p=v),i(p)):n(p,y)}return function(p,y,g,v){try{yi=0;var _=w(p,y,g,v);return Xl=null,_}catch(z){if(z===yr||z===oc)throw z;var M=Dt(29,z,null,p.mode);return M.lanes=v,M.return=p,M}finally{}}}var ll=sv(!0),cv=sv(!1),na=!1;function Qf(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function gd(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function ga(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function xa(e,t,n){var a=e.updateQueue;if(a===null)return null;if(a=a.shared,Se&2){var l=a.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),a.pending=t,t=cs(e),ev(e,null,n),t}return ic(e,a,t,n),cs(e)}function Zr(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,_y(e,n)}}function ou(e,t){var n=e.updateQueue,a=e.alternate;if(a!==null&&(a=a.updateQueue,n===a)){var l=null,r=null;if(n=n.firstBaseUpdate,n!==null){do{var i={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};r===null?l=r=i:r=r.next=i,n=n.next}while(n!==null);r===null?l=r=t:r=r.next=t}else l=r=t;n={baseState:a.baseState,firstBaseUpdate:l,lastBaseUpdate:r,shared:a.shared,callbacks:a.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var xd=!1;function Qr(){if(xd){var e=Yl;if(e!==null)throw e}}function Kr(e,t,n,a){xd=!1;var l=e.updateQueue;na=!1;var r=l.firstBaseUpdate,i=l.lastBaseUpdate,s=l.shared.pending;if(s!==null){l.shared.pending=null;var c=s,u=c.next;c.next=null,i===null?r=u:i.next=u,i=c;var d=e.alternate;d!==null&&(d=d.updateQueue,s=d.lastBaseUpdate,s!==i&&(s===null?d.firstBaseUpdate=u:s.next=u,d.lastBaseUpdate=c))}if(r!==null){var f=l.baseState;i=0,d=u=c=null,s=r;do{var h=s.lane&-536870913,m=h!==s.lane;if(m?(we&h)===h:(a&h)===h){h!==0&&h===ar&&(xd=!0),d!==null&&(d=d.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});e:{var x=e,j=s;h=t;var w=n;switch(j.tag){case 1:if(x=j.payload,typeof x=="function"){f=x.call(w,f,h);break e}f=x;break e;case 3:x.flags=x.flags&-65537|128;case 0:if(x=j.payload,h=typeof x=="function"?x.call(w,f,h):x,h==null)break e;f=Be({},f,h);break e;case 2:na=!0}}h=s.callback,h!==null&&(e.flags|=64,m&&(e.flags|=8192),m=l.callbacks,m===null?l.callbacks=[h]:m.push(h))}else m={lane:h,tag:s.tag,payload:s.payload,callback:s.callback,next:null},d===null?(u=d=m,c=f):d=d.next=m,i|=h;if(s=s.next,s===null){if(s=l.shared.pending,s===null)break;m=s,s=m.next,m.next=null,l.lastBaseUpdate=m,l.shared.pending=null}}while(!0);d===null&&(c=f),l.baseState=c,l.firstBaseUpdate=u,l.lastBaseUpdate=d,r===null&&(l.shared.lanes=0),ka|=i,e.lanes=i,e.memoizedState=f}}function uv(e,t){if(typeof e!="function")throw Error(G(191,e));e.call(t)}function dv(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)uv(n[e],t)}var lr=jn(null),hs=jn(0);function I0(e,t){e=Gn,Ae(hs,e),Ae(lr,t),Gn=e|t.baseLanes}function yd(){Ae(hs,Gn),Ae(lr,lr.current)}function Kf(){Gn=hs.current,rt(lr),rt(hs)}var Vt=jn(null),Pt=null;function ra(e){var t=e.alternate;Ae(Xe,Xe.current&1),Ae(Vt,e),Pt===null&&(t===null||lr.current!==null||t.memoizedState!==null)&&(Pt=e)}function vd(e){Ae(Xe,Xe.current),Ae(Vt,e),Pt===null&&(Pt=e)}function fv(e){e.tag===22?(Ae(Xe,Xe.current),Ae(Vt,e),Pt===null&&(Pt=e)):ia()}function ia(){Ae(Xe,Xe.current),Ae(Vt,Vt.current)}function At(e){rt(Vt),Pt===e&&(Pt=null),rt(Xe)}var Xe=jn(0);function ms(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||Hd(n)||Id(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder==="forwards"||t.memoizedProps.revealOrder==="backwards"||t.memoizedProps.revealOrder==="unstable_legacy-backwards"||t.memoizedProps.revealOrder==="together")){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Xn=0,ye=null,ze=null,Ge=null,ps=!1,ql=!1,rl=!1,gs=0,vi=0,Fl=null,Lz=0;function Ue(){throw Error(G(321))}function Pf(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Ut(e[n],t[n]))return!1;return!0}function Wf(e,t,n,a,l,r){return Xn=r,ye=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,fe.H=e===null||e.memoizedState===null?Yv:ch,rl=!1,r=n(a,l),rl=!1,ql&&(r=mv(t,n,a,l)),hv(e),r}function hv(e){fe.H=bi;var t=ze!==null&&ze.next!==null;if(Xn=0,Ge=ze=ye=null,ps=!1,vi=0,Fl=null,t)throw Error(G(300));e===null||Pe||(e=e.dependencies,e!==null&&ds(e)&&(Pe=!0))}function mv(e,t,n,a){ye=e;var l=0;do{if(ql&&(Fl=null),vi=0,ql=!1,25<=l)throw Error(G(301));if(l+=1,Ge=ze=null,e.updateQueue!=null){var r=e.updateQueue;r.lastEffect=null,r.events=null,r.stores=null,r.memoCache!=null&&(r.memoCache.index=0)}fe.H=Xv,r=t(n,a)}while(ql);return r}function Hz(){var e=fe.H,t=e.useState()[0];return t=typeof t.then=="function"?Yi(t):t,e=e.useState()[0],(ze!==null?ze.memoizedState:null)!==e&&(ye.flags|=1024),t}function Jf(){var e=gs!==0;return gs=0,e}function eh(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function th(e){if(ps){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}ps=!1}Xn=0,Ge=ze=ye=null,ql=!1,vi=gs=0,Fl=null}function mt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Ge===null?ye.memoizedState=Ge=e:Ge=Ge.next=e,Ge}function qe(){if(ze===null){var e=ye.alternate;e=e!==null?e.memoizedState:null}else e=ze.next;var t=Ge===null?ye.memoizedState:Ge.next;if(t!==null)Ge=t,ze=e;else{if(e===null)throw ye.alternate===null?Error(G(467)):Error(G(310));ze=e,e={memoizedState:ze.memoizedState,baseState:ze.baseState,baseQueue:ze.baseQueue,queue:ze.queue,next:null},Ge===null?ye.memoizedState=Ge=e:Ge=Ge.next=e}return Ge}function sc(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Yi(e){var t=vi;return vi+=1,Fl===null&&(Fl=[]),e=ov(Fl,e,t),t=ye,(Ge===null?t.memoizedState:Ge.next)===null&&(t=t.alternate,fe.H=t===null||t.memoizedState===null?Yv:ch),e}function cc(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return Yi(e);if(e.$$typeof===Rn)return ut(e)}throw Error(G(438,String(e)))}function nh(e){var t=null,n=ye.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var a=ye.alternate;a!==null&&(a=a.updateQueue,a!==null&&(a=a.memoCache,a!=null&&(t={data:a.data.map(function(l){return l.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),n===null&&(n=sc(),ye.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),a=0;a<e;a++)n[a]=NC;return t.index++,n}function qn(e,t){return typeof t=="function"?t(e):t}function Ro(e){var t=qe();return ah(t,ze,e)}function ah(e,t,n){var a=e.queue;if(a===null)throw Error(G(311));a.lastRenderedReducer=n;var l=e.baseQueue,r=a.pending;if(r!==null){if(l!==null){var i=l.next;l.next=r.next,r.next=i}t.baseQueue=l=r,a.pending=null}if(r=e.baseState,l===null)e.memoizedState=r;else{t=l.next;var s=i=null,c=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f!==u.lane?(we&f)===f:(Xn&f)===f){var h=u.revertLane;if(h===0)c!==null&&(c=c.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===ar&&(d=!0);else if((Xn&h)===h){u=u.next,h===ar&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},c===null?(s=c=f,i=r):c=c.next=f,ye.lanes|=h,ka|=h;f=u.action,rl&&n(r,f),r=u.hasEagerState?u.eagerState:n(r,f)}else h={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},c===null?(s=c=h,i=r):c=c.next=h,ye.lanes|=f,ka|=f;u=u.next}while(u!==null&&u!==t);if(c===null?i=r:c.next=s,!Ut(r,e.memoizedState)&&(Pe=!0,d&&(n=Yl,n!==null)))throw n;e.memoizedState=r,e.baseState=i,e.baseQueue=c,a.lastRenderedState=r}return l===null&&(a.lanes=0),[e.memoizedState,a.dispatch]}function su(e){var t=qe(),n=t.queue;if(n===null)throw Error(G(311));n.lastRenderedReducer=e;var a=n.dispatch,l=n.pending,r=t.memoizedState;if(l!==null){n.pending=null;var i=l=l.next;do r=e(r,i.action),i=i.next;while(i!==l);Ut(r,t.memoizedState)||(Pe=!0),t.memoizedState=r,t.baseQueue===null&&(t.baseState=r),n.lastRenderedState=r}return[r,a]}function pv(e,t,n){var a=ye,l=qe(),r=je;if(r){if(n===void 0)throw Error(G(407));n=n()}else n=t();var i=!Ut((ze||l).memoizedState,n);if(i&&(l.memoizedState=n,Pe=!0),l=l.queue,lh(yv.bind(null,a,l,e),[e]),l.getSnapshot!==t||i||Ge!==null&&Ge.memoizedState.tag&1){if(a.flags|=2048,rr(9,{destroy:void 0},xv.bind(null,a,l,n,t),null),Me===null)throw Error(G(349));r||Xn&127||gv(a,t,n)}return n}function gv(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=ye.updateQueue,t===null?(t=sc(),ye.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function xv(e,t,n,a){t.value=n,t.getSnapshot=a,vv(t)&&bv(e)}function yv(e,t,n){return n(function(){vv(t)&&bv(e)})}function vv(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Ut(e,n)}catch{return!0}}function bv(e){var t=ml(e,2);t!==null&&Nt(t,e,2)}function bd(e){var t=mt();if(typeof e=="function"){var n=e;if(e=n(),rl){sa(!0);try{n()}finally{sa(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:qn,lastRenderedState:e},t}function wv(e,t,n,a){return e.baseState=n,ah(e,ze,typeof a=="function"?a:qn)}function Iz(e,t,n,a,l){if(dc(e))throw Error(G(485));if(e=t.action,e!==null){var r={payload:l,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(i){r.listeners.push(i)}};fe.T!==null?n(!0):r.isTransition=!1,a(r),n=t.pending,n===null?(r.next=t.pending=r,jv(t,r)):(r.next=n.next,t.pending=n.next=r)}}function jv(e,t){var n=t.action,a=t.payload,l=e.state;if(t.isTransition){var r=fe.T,i={};fe.T=i;try{var s=n(l,a),c=fe.S;c!==null&&c(i,s),U0(e,t,s)}catch(u){wd(e,t,u)}finally{r!==null&&i.types!==null&&(r.types=i.types),fe.T=r}}else try{r=n(l,a),U0(e,t,r)}catch(u){wd(e,t,u)}}function U0(e,t,n){n!==null&&typeof n=="object"&&typeof n.then=="function"?n.then(function(a){V0(e,t,a)},function(a){return wd(e,t,a)}):V0(e,t,n)}function V0(e,t,n){t.status="fulfilled",t.value=n,Nv(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,jv(e,n)))}function wd(e,t,n){var a=e.pending;if(e.pending=null,a!==null){a=a.next;do t.status="rejected",t.reason=n,Nv(t),t=t.next;while(t!==a)}e.action=null}function Nv(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Sv(e,t){return t}function $0(e,t){if(je){var n=Me.formState;if(n!==null){e:{var a=ye;if(je){if(De){t:{for(var l=De,r=Qt;l.nodeType!==8;){if(!r){l=null;break t}if(l=Wt(l.nextSibling),l===null){l=null;break t}}r=l.data,l=r==="F!"||r==="F"?l:null}if(l){De=Wt(l.nextSibling),a=l.data==="F!";break e}}Sa(a)}a=!1}a&&(t=n[0])}}return n=mt(),n.memoizedState=n.baseState=t,a={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Sv,lastRenderedState:t},n.queue=a,n=Uv.bind(null,ye,a),a.dispatch=n,a=bd(!1),r=sh.bind(null,ye,!1,a.queue),a=mt(),l={state:t,dispatch:null,action:e,pending:null},a.queue=l,n=Iz.bind(null,ye,l,r,n),l.dispatch=n,a.memoizedState=e,[t,n,!1]}function Y0(e){var t=qe();return Ev(t,ze,e)}function Ev(e,t,n){if(t=ah(e,t,Sv)[0],e=Ro(qn)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var a=Yi(t)}catch(i){throw i===yr?oc:i}else a=t;t=qe();var l=t.queue,r=l.dispatch;return n!==t.memoizedState&&(ye.flags|=2048,rr(9,{destroy:void 0},Uz.bind(null,l,n),null)),[a,r,e]}function Uz(e,t){e.action=t}function X0(e){var t=qe(),n=ze;if(n!==null)return Ev(t,n,e);qe(),t=t.memoizedState,n=qe();var a=n.queue.dispatch;return n.memoizedState=e,[t,a,!1]}function rr(e,t,n,a){return e={tag:e,create:n,deps:a,inst:t,next:null},t=ye.updateQueue,t===null&&(t=sc(),ye.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(a=n.next,n.next=e,e.next=a,t.lastEffect=e),e}function kv(){return qe().memoizedState}function Lo(e,t,n,a){var l=mt();ye.flags|=e,l.memoizedState=rr(1|t,{destroy:void 0},n,a===void 0?null:a)}function uc(e,t,n,a){var l=qe();a=a===void 0?null:a;var r=l.memoizedState.inst;ze!==null&&a!==null&&Pf(a,ze.memoizedState.deps)?l.memoizedState=rr(t,r,n,a):(ye.flags|=e,l.memoizedState=rr(1|t,r,n,a))}function q0(e,t){Lo(8390656,8,e,t)}function lh(e,t){uc(2048,8,e,t)}function Vz(e){ye.flags|=4;var t=ye.updateQueue;if(t===null)t=sc(),ye.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function _v(e){var t=qe().memoizedState;return Vz({ref:t,nextImpl:e}),function(){if(Se&2)throw Error(G(440));return t.impl.apply(void 0,arguments)}}function Cv(e,t){return uc(4,2,e,t)}function zv(e,t){return uc(4,4,e,t)}function Mv(e,t){if(typeof t=="function"){e=e();var n=t(e);return function(){typeof n=="function"?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Av(e,t,n){n=n!=null?n.concat([e]):null,uc(4,4,Mv.bind(null,t,e),n)}function rh(){}function Tv(e,t){var n=qe();t=t===void 0?null:t;var a=n.memoizedState;return t!==null&&Pf(t,a[1])?a[0]:(n.memoizedState=[e,t],e)}function Dv(e,t){var n=qe();t=t===void 0?null:t;var a=n.memoizedState;if(t!==null&&Pf(t,a[1]))return a[0];if(a=e(),rl){sa(!0);try{e()}finally{sa(!1)}}return n.memoizedState=[a,t],a}function ih(e,t,n){return n===void 0||Xn&1073741824&&!(we&261930)?e.memoizedState=t:(e.memoizedState=n,e=w1(),ye.lanes|=e,ka|=e,n)}function Ov(e,t,n,a){return Ut(n,t)?n:lr.current!==null?(e=ih(e,n,a),Ut(e,t)||(Pe=!0),e):!(Xn&42)||Xn&1073741824&&!(we&261930)?(Pe=!0,e.memoizedState=n):(e=w1(),ye.lanes|=e,ka|=e,t)}function Bv(e,t,n,a,l){var r=Ee.p;Ee.p=r!==0&&8>r?r:8;var i=fe.T,s={};fe.T=s,sh(e,!1,t,n);try{var c=l(),u=fe.S;if(u!==null&&u(s,c),c!==null&&typeof c=="object"&&typeof c.then=="function"){var d=Rz(c,a);Pr(e,t,d,Ht(e))}else Pr(e,t,a,Ht(e))}catch(f){Pr(e,t,{then:function(){},status:"rejected",reason:f},Ht())}finally{Ee.p=r,i!==null&&s.types!==null&&(i.types=s.types),fe.T=i}}function $z(){}function jd(e,t,n,a){if(e.tag!==5)throw Error(G(476));var l=Rv(e).queue;Bv(e,l,t,$a,n===null?$z:function(){return Lv(e),n(a)})}function Rv(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:$a,baseState:$a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:qn,lastRenderedState:$a},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:qn,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Lv(e){var t=Rv(e);t.next===null&&(t=e.alternate.memoizedState),Pr(e,t.next.queue,{},Ht())}function oh(){return ut(Ni)}function Hv(){return qe().memoizedState}function Iv(){return qe().memoizedState}function Yz(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Ht();e=ga(n);var a=xa(t,e,n);a!==null&&(Nt(a,t,n),Zr(a,t,n)),t={cache:Ff()},e.payload=t;return}t=t.return}}function Xz(e,t,n){var a=Ht();n={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},dc(e)?Vv(t,n):(n=$f(e,t,n,a),n!==null&&(Nt(n,e,a),$v(n,t,a)))}function Uv(e,t,n){var a=Ht();Pr(e,t,n,a)}function Pr(e,t,n,a){var l={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(dc(e))Vv(t,l);else{var r=e.alternate;if(e.lanes===0&&(r===null||r.lanes===0)&&(r=t.lastRenderedReducer,r!==null))try{var i=t.lastRenderedState,s=r(i,n);if(l.hasEagerState=!0,l.eagerState=s,Ut(s,i))return ic(e,t,l,0),Me===null&&rc(),!1}catch{}finally{}if(n=$f(e,t,l,a),n!==null)return Nt(n,e,a),$v(n,t,a),!0}return!1}function sh(e,t,n,a){if(a={lane:2,revertLane:xh(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},dc(e)){if(t)throw Error(G(479))}else t=$f(e,n,a,2),t!==null&&Nt(t,e,2)}function dc(e){var t=e.alternate;return e===ye||t!==null&&t===ye}function Vv(e,t){ql=ps=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function $v(e,t,n){if(n&4194048){var a=t.lanes;a&=e.pendingLanes,n|=a,t.lanes=n,_y(e,n)}}var bi={readContext:ut,use:cc,useCallback:Ue,useContext:Ue,useEffect:Ue,useImperativeHandle:Ue,useLayoutEffect:Ue,useInsertionEffect:Ue,useMemo:Ue,useReducer:Ue,useRef:Ue,useState:Ue,useDebugValue:Ue,useDeferredValue:Ue,useTransition:Ue,useSyncExternalStore:Ue,useId:Ue,useHostTransitionStatus:Ue,useFormState:Ue,useActionState:Ue,useOptimistic:Ue,useMemoCache:Ue,useCacheRefresh:Ue};bi.useEffectEvent=Ue;var Yv={readContext:ut,use:cc,useCallback:function(e,t){return mt().memoizedState=[e,t===void 0?null:t],e},useContext:ut,useEffect:q0,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,Lo(4194308,4,Mv.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Lo(4194308,4,e,t)},useInsertionEffect:function(e,t){Lo(4,2,e,t)},useMemo:function(e,t){var n=mt();t=t===void 0?null:t;var a=e();if(rl){sa(!0);try{e()}finally{sa(!1)}}return n.memoizedState=[a,t],a},useReducer:function(e,t,n){var a=mt();if(n!==void 0){var l=n(t);if(rl){sa(!0);try{n(t)}finally{sa(!1)}}}else l=t;return a.memoizedState=a.baseState=l,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:l},a.queue=e,e=e.dispatch=Xz.bind(null,ye,e),[a.memoizedState,e]},useRef:function(e){var t=mt();return e={current:e},t.memoizedState=e},useState:function(e){e=bd(e);var t=e.queue,n=Uv.bind(null,ye,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:rh,useDeferredValue:function(e,t){var n=mt();return ih(n,e,t)},useTransition:function(){var e=bd(!1);return e=Bv.bind(null,ye,e.queue,!0,!1),mt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var a=ye,l=mt();if(je){if(n===void 0)throw Error(G(407));n=n()}else{if(n=t(),Me===null)throw Error(G(349));we&127||gv(a,t,n)}l.memoizedState=n;var r={value:n,getSnapshot:t};return l.queue=r,q0(yv.bind(null,a,r,e),[e]),a.flags|=2048,rr(9,{destroy:void 0},xv.bind(null,a,r,n,t),null),n},useId:function(){var e=mt(),t=Me.identifierPrefix;if(je){var n=xn,a=gn;n=(a&~(1<<32-Lt(a)-1)).toString(32)+n,t="_"+t+"R_"+n,n=gs++,0<n&&(t+="H"+n.toString(32)),t+="_"}else n=Lz++,t="_"+t+"r_"+n.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:oh,useFormState:$0,useActionState:$0,useOptimistic:function(e){var t=mt();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=sh.bind(null,ye,!0,n),n.dispatch=t,[e,t]},useMemoCache:nh,useCacheRefresh:function(){return mt().memoizedState=Yz.bind(null,ye)},useEffectEvent:function(e){var t=mt(),n={impl:e};return t.memoizedState=n,function(){if(Se&2)throw Error(G(440));return n.impl.apply(void 0,arguments)}}},ch={readContext:ut,use:cc,useCallback:Tv,useContext:ut,useEffect:lh,useImperativeHandle:Av,useInsertionEffect:Cv,useLayoutEffect:zv,useMemo:Dv,useReducer:Ro,useRef:kv,useState:function(){return Ro(qn)},useDebugValue:rh,useDeferredValue:function(e,t){var n=qe();return Ov(n,ze.memoizedState,e,t)},useTransition:function(){var e=Ro(qn)[0],t=qe().memoizedState;return[typeof e=="boolean"?e:Yi(e),t]},useSyncExternalStore:pv,useId:Hv,useHostTransitionStatus:oh,useFormState:Y0,useActionState:Y0,useOptimistic:function(e,t){var n=qe();return wv(n,ze,e,t)},useMemoCache:nh,useCacheRefresh:Iv};ch.useEffectEvent=_v;var Xv={readContext:ut,use:cc,useCallback:Tv,useContext:ut,useEffect:lh,useImperativeHandle:Av,useInsertionEffect:Cv,useLayoutEffect:zv,useMemo:Dv,useReducer:su,useRef:kv,useState:function(){return su(qn)},useDebugValue:rh,useDeferredValue:function(e,t){var n=qe();return ze===null?ih(n,e,t):Ov(n,ze.memoizedState,e,t)},useTransition:function(){var e=su(qn)[0],t=qe().memoizedState;return[typeof e=="boolean"?e:Yi(e),t]},useSyncExternalStore:pv,useId:Hv,useHostTransitionStatus:oh,useFormState:X0,useActionState:X0,useOptimistic:function(e,t){var n=qe();return ze!==null?wv(n,ze,e,t):(n.baseState=e,[e,n.queue.dispatch])},useMemoCache:nh,useCacheRefresh:Iv};Xv.useEffectEvent=_v;function cu(e,t,n,a){t=e.memoizedState,n=n(a,t),n=n==null?t:Be({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Nd={enqueueSetState:function(e,t,n){e=e._reactInternals;var a=Ht(),l=ga(a);l.payload=t,n!=null&&(l.callback=n),t=xa(e,l,a),t!==null&&(Nt(t,e,a),Zr(t,e,a))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var a=Ht(),l=ga(a);l.tag=1,l.payload=t,n!=null&&(l.callback=n),t=xa(e,l,a),t!==null&&(Nt(t,e,a),Zr(t,e,a))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Ht(),a=ga(n);a.tag=2,t!=null&&(a.callback=t),t=xa(e,a,n),t!==null&&(Nt(t,e,n),Zr(t,e,n))}};function F0(e,t,n,a,l,r,i){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(a,r,i):t.prototype&&t.prototype.isPureReactComponent?!pi(n,a)||!pi(l,r):!0}function G0(e,t,n,a){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,a),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,a),t.state!==e&&Nd.enqueueReplaceState(t,t.state,null)}function il(e,t){var n=t;if("ref"in t){n={};for(var a in t)a!=="ref"&&(n[a]=t[a])}if(e=e.defaultProps){n===t&&(n=Be({},n));for(var l in e)n[l]===void 0&&(n[l]=e[l])}return n}function qv(e){ss(e)}function Fv(e){console.error(e)}function Gv(e){ss(e)}function xs(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(a){setTimeout(function(){throw a})}}function Z0(e,t,n){try{var a=e.onCaughtError;a(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(l){setTimeout(function(){throw l})}}function Sd(e,t,n){return n=ga(n),n.tag=3,n.payload={element:null},n.callback=function(){xs(e,t)},n}function Zv(e){return e=ga(e),e.tag=3,e}function Qv(e,t,n,a){var l=n.type.getDerivedStateFromError;if(typeof l=="function"){var r=a.value;e.payload=function(){return l(r)},e.callback=function(){Z0(t,n,a)}}var i=n.stateNode;i!==null&&typeof i.componentDidCatch=="function"&&(e.callback=function(){Z0(t,n,a),typeof l!="function"&&(ya===null?ya=new Set([this]):ya.add(this));var s=a.stack;this.componentDidCatch(a.value,{componentStack:s!==null?s:""})})}function qz(e,t,n,a,l){if(n.flags|=32768,a!==null&&typeof a=="object"&&typeof a.then=="function"){if(t=n.alternate,t!==null&&xr(t,n,l,!0),n=Vt.current,n!==null){switch(n.tag){case 31:case 13:return Pt===null?js():n.alternate===null&&Ve===0&&(Ve=3),n.flags&=-257,n.flags|=65536,n.lanes=l,a===fs?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([a]):t.add(a),bu(e,a,l)),!1;case 22:return n.flags|=65536,a===fs?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([a])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([a]):n.add(a)),bu(e,a,l)),!1}throw Error(G(435,n.tag))}return bu(e,a,l),js(),!1}if(je)return t=Vt.current,t!==null?(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=l,a!==dd&&(e=Error(G(422),{cause:a}),xi(Zt(e,n)))):(a!==dd&&(t=Error(G(423),{cause:a}),xi(Zt(t,n))),e=e.current.alternate,e.flags|=65536,l&=-l,e.lanes|=l,a=Zt(a,n),l=Sd(e.stateNode,a,l),ou(e,l),Ve!==4&&(Ve=2)),!1;var r=Error(G(520),{cause:a});if(r=Zt(r,n),ei===null?ei=[r]:ei.push(r),Ve!==4&&(Ve=2),t===null)return!0;a=Zt(a,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=l&-l,n.lanes|=e,e=Sd(n.stateNode,a,e),ou(n,e),!1;case 1:if(t=n.type,r=n.stateNode,(n.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||r!==null&&typeof r.componentDidCatch=="function"&&(ya===null||!ya.has(r))))return n.flags|=65536,l&=-l,n.lanes|=l,l=Zv(l),Qv(l,e,n,a),ou(n,l),!1}n=n.return}while(n!==null);return!1}var uh=Error(G(461)),Pe=!1;function ot(e,t,n,a){t.child=e===null?cv(t,null,n,a):ll(t,e.child,n,a)}function Q0(e,t,n,a,l){n=n.render;var r=t.ref;if("ref"in a){var i={};for(var s in a)s!=="ref"&&(i[s]=a[s])}else i=a;return al(t),a=Wf(e,t,n,i,r,l),s=Jf(),e!==null&&!Pe?(eh(e,t,l),Fn(e,t,l)):(je&&s&&Xf(t),t.flags|=1,ot(e,t,a,l),t.child)}function K0(e,t,n,a,l){if(e===null){var r=n.type;return typeof r=="function"&&!Yf(r)&&r.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=r,Kv(e,t,r,a,l)):(e=Oo(n.type,null,a,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(r=e.child,!dh(e,l)){var i=r.memoizedProps;if(n=n.compare,n=n!==null?n:pi,n(i,a)&&e.ref===t.ref)return Fn(e,t,l)}return t.flags|=1,e=In(r,a),e.ref=t.ref,e.return=t,t.child=e}function Kv(e,t,n,a,l){if(e!==null){var r=e.memoizedProps;if(pi(r,a)&&e.ref===t.ref)if(Pe=!1,t.pendingProps=a=r,dh(e,l))e.flags&131072&&(Pe=!0);else return t.lanes=e.lanes,Fn(e,t,l)}return Ed(e,t,n,a,l)}function Pv(e,t,n,a){var l=a.children,r=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),a.mode==="hidden"){if(t.flags&128){if(r=r!==null?r.baseLanes|n:n,e!==null){for(a=t.child=e.child,l=0;a!==null;)l=l|a.lanes|a.childLanes,a=a.sibling;a=l&~r}else a=0,t.child=null;return P0(e,t,r,n,a)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Bo(t,r!==null?r.cachePool:null),r!==null?I0(t,r):yd(),fv(t);else return a=t.lanes=536870912,P0(e,t,r!==null?r.baseLanes|n:n,n,a)}else r!==null?(Bo(t,r.cachePool),I0(t,r),ia(),t.memoizedState=null):(e!==null&&Bo(t,null),yd(),ia());return ot(e,t,l,n),t.child}function Ir(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function P0(e,t,n,a,l){var r=Gf();return r=r===null?null:{parent:Qe._currentValue,pool:r},t.memoizedState={baseLanes:n,cachePool:r},e!==null&&Bo(t,null),yd(),fv(t),e!==null&&xr(e,t,a,!0),t.childLanes=l,null}function Ho(e,t){return t=ys({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function W0(e,t,n){return ll(t,e.child,null,n),e=Ho(t,t.pendingProps),e.flags|=2,At(t),t.memoizedState=null,e}function Fz(e,t,n){var a=t.pendingProps,l=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(je){if(a.mode==="hidden")return e=Ho(t,a),t.lanes=536870912,Ir(null,e);if(vd(t),(e=De)?(e=Y1(e,Qt),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Na!==null?{id:gn,overflow:xn}:null,retryLane:536870912,hydrationErrors:null},n=nv(e),n.return=t,t.child=n,ct=t,De=null)):e=null,e===null)throw Sa(t);return t.lanes=536870912,null}return Ho(t,a)}var r=e.memoizedState;if(r!==null){var i=r.dehydrated;if(vd(t),l)if(t.flags&256)t.flags&=-257,t=W0(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(G(558));else if(Pe||xr(e,t,n,!1),l=(n&e.childLanes)!==0,Pe||l){if(a=Me,a!==null&&(i=Cy(a,n),i!==0&&i!==r.retryLane))throw r.retryLane=i,ml(e,i),Nt(a,e,i),uh;js(),t=W0(e,t,n)}else e=r.treeContext,De=Wt(i.nextSibling),ct=t,je=!0,pa=null,Qt=!1,e!==null&&lv(t,e),t=Ho(t,a),t.flags|=4096;return t}return e=In(e.child,{mode:a.mode,children:a.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Io(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!="function"&&typeof n!="object")throw Error(G(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function Ed(e,t,n,a,l){return al(t),n=Wf(e,t,n,a,void 0,l),a=Jf(),e!==null&&!Pe?(eh(e,t,l),Fn(e,t,l)):(je&&a&&Xf(t),t.flags|=1,ot(e,t,n,l),t.child)}function J0(e,t,n,a,l,r){return al(t),t.updateQueue=null,n=mv(t,a,n,l),hv(e),a=Jf(),e!==null&&!Pe?(eh(e,t,r),Fn(e,t,r)):(je&&a&&Xf(t),t.flags|=1,ot(e,t,n,r),t.child)}function ep(e,t,n,a,l){if(al(t),t.stateNode===null){var r=Dl,i=n.contextType;typeof i=="object"&&i!==null&&(r=ut(i)),r=new n(a,r),t.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,r.updater=Nd,t.stateNode=r,r._reactInternals=t,r=t.stateNode,r.props=a,r.state=t.memoizedState,r.refs={},Qf(t),i=n.contextType,r.context=typeof i=="object"&&i!==null?ut(i):Dl,r.state=t.memoizedState,i=n.getDerivedStateFromProps,typeof i=="function"&&(cu(t,n,i,a),r.state=t.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof r.getSnapshotBeforeUpdate=="function"||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(i=r.state,typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount(),i!==r.state&&Nd.enqueueReplaceState(r,r.state,null),Kr(t,a,r,l),Qr(),r.state=t.memoizedState),typeof r.componentDidMount=="function"&&(t.flags|=4194308),a=!0}else if(e===null){r=t.stateNode;var s=t.memoizedProps,c=il(n,s);r.props=c;var u=r.context,d=n.contextType;i=Dl,typeof d=="object"&&d!==null&&(i=ut(d));var f=n.getDerivedStateFromProps;d=typeof f=="function"||typeof r.getSnapshotBeforeUpdate=="function",s=t.pendingProps!==s,d||typeof r.UNSAFE_componentWillReceiveProps!="function"&&typeof r.componentWillReceiveProps!="function"||(s||u!==i)&&G0(t,r,a,i),na=!1;var h=t.memoizedState;r.state=h,Kr(t,a,r,l),Qr(),u=t.memoizedState,s||h!==u||na?(typeof f=="function"&&(cu(t,n,f,a),u=t.memoizedState),(c=na||F0(t,n,c,a,h,u,i))?(d||typeof r.UNSAFE_componentWillMount!="function"&&typeof r.componentWillMount!="function"||(typeof r.componentWillMount=="function"&&r.componentWillMount(),typeof r.UNSAFE_componentWillMount=="function"&&r.UNSAFE_componentWillMount()),typeof r.componentDidMount=="function"&&(t.flags|=4194308)):(typeof r.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=a,t.memoizedState=u),r.props=a,r.state=u,r.context=i,a=c):(typeof r.componentDidMount=="function"&&(t.flags|=4194308),a=!1)}else{r=t.stateNode,gd(e,t),i=t.memoizedProps,d=il(n,i),r.props=d,f=t.pendingProps,h=r.context,u=n.contextType,c=Dl,typeof u=="object"&&u!==null&&(c=ut(u)),s=n.getDerivedStateFromProps,(u=typeof s=="function"||typeof r.getSnapshotBeforeUpdate=="function")||typeof r.UNSAFE_componentWillReceiveProps!="function"&&typeof r.componentWillReceiveProps!="function"||(i!==f||h!==c)&&G0(t,r,a,c),na=!1,h=t.memoizedState,r.state=h,Kr(t,a,r,l),Qr();var m=t.memoizedState;i!==f||h!==m||na||e!==null&&e.dependencies!==null&&ds(e.dependencies)?(typeof s=="function"&&(cu(t,n,s,a),m=t.memoizedState),(d=na||F0(t,n,d,a,h,m,c)||e!==null&&e.dependencies!==null&&ds(e.dependencies))?(u||typeof r.UNSAFE_componentWillUpdate!="function"&&typeof r.componentWillUpdate!="function"||(typeof r.componentWillUpdate=="function"&&r.componentWillUpdate(a,m,c),typeof r.UNSAFE_componentWillUpdate=="function"&&r.UNSAFE_componentWillUpdate(a,m,c)),typeof r.componentDidUpdate=="function"&&(t.flags|=4),typeof r.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof r.componentDidUpdate!="function"||i===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof r.getSnapshotBeforeUpdate!="function"||i===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=a,t.memoizedState=m),r.props=a,r.state=m,r.context=c,a=d):(typeof r.componentDidUpdate!="function"||i===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof r.getSnapshotBeforeUpdate!="function"||i===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),a=!1)}return r=a,Io(e,t),a=(t.flags&128)!==0,r||a?(r=t.stateNode,n=a&&typeof n.getDerivedStateFromError!="function"?null:r.render(),t.flags|=1,e!==null&&a?(t.child=ll(t,e.child,null,l),t.child=ll(t,null,n,l)):ot(e,t,n,l),t.memoizedState=r.state,e=t.child):e=Fn(e,t,l),e}function tp(e,t,n,a){return nl(),t.flags|=256,ot(e,t,n,a),t.child}var uu={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function du(e){return{baseLanes:e,cachePool:iv()}}function fu(e,t,n){return e=e!==null?e.childLanes&~n:0,t&&(e|=Ot),e}function Wv(e,t,n){var a=t.pendingProps,l=!1,r=(t.flags&128)!==0,i;if((i=r)||(i=e!==null&&e.memoizedState===null?!1:(Xe.current&2)!==0),i&&(l=!0,t.flags&=-129),i=(t.flags&32)!==0,t.flags&=-33,e===null){if(je){if(l?ra(t):ia(),(e=De)?(e=Y1(e,Qt),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Na!==null?{id:gn,overflow:xn}:null,retryLane:536870912,hydrationErrors:null},n=nv(e),n.return=t,t.child=n,ct=t,De=null)):e=null,e===null)throw Sa(t);return Id(e)?t.lanes=32:t.lanes=536870912,null}var s=a.children;return a=a.fallback,l?(ia(),l=t.mode,s=ys({mode:"hidden",children:s},l),a=Ya(a,l,n,null),s.return=t,a.return=t,s.sibling=a,t.child=s,a=t.child,a.memoizedState=du(n),a.childLanes=fu(e,i,n),t.memoizedState=uu,Ir(null,a)):(ra(t),kd(t,s))}var c=e.memoizedState;if(c!==null&&(s=c.dehydrated,s!==null)){if(r)t.flags&256?(ra(t),t.flags&=-257,t=hu(e,t,n)):t.memoizedState!==null?(ia(),t.child=e.child,t.flags|=128,t=null):(ia(),s=a.fallback,l=t.mode,a=ys({mode:"visible",children:a.children},l),s=Ya(s,l,n,null),s.flags|=2,a.return=t,s.return=t,a.sibling=s,t.child=a,ll(t,e.child,null,n),a=t.child,a.memoizedState=du(n),a.childLanes=fu(e,i,n),t.memoizedState=uu,t=Ir(null,a));else if(ra(t),Id(s)){if(i=s.nextSibling&&s.nextSibling.dataset,i)var u=i.dgst;i=u,a=Error(G(419)),a.stack="",a.digest=i,xi({value:a,source:null,stack:null}),t=hu(e,t,n)}else if(Pe||xr(e,t,n,!1),i=(n&e.childLanes)!==0,Pe||i){if(i=Me,i!==null&&(a=Cy(i,n),a!==0&&a!==c.retryLane))throw c.retryLane=a,ml(e,a),Nt(i,e,a),uh;Hd(s)||js(),t=hu(e,t,n)}else Hd(s)?(t.flags|=192,t.child=e.child,t=null):(e=c.treeContext,De=Wt(s.nextSibling),ct=t,je=!0,pa=null,Qt=!1,e!==null&&lv(t,e),t=kd(t,a.children),t.flags|=4096);return t}return l?(ia(),s=a.fallback,l=t.mode,c=e.child,u=c.sibling,a=In(c,{mode:"hidden",children:a.children}),a.subtreeFlags=c.subtreeFlags&65011712,u!==null?s=In(u,s):(s=Ya(s,l,n,null),s.flags|=2),s.return=t,a.return=t,a.sibling=s,t.child=a,Ir(null,a),a=t.child,s=e.child.memoizedState,s===null?s=du(n):(l=s.cachePool,l!==null?(c=Qe._currentValue,l=l.parent!==c?{parent:c,pool:c}:l):l=iv(),s={baseLanes:s.baseLanes|n,cachePool:l}),a.memoizedState=s,a.childLanes=fu(e,i,n),t.memoizedState=uu,Ir(e.child,a)):(ra(t),n=e.child,e=n.sibling,n=In(n,{mode:"visible",children:a.children}),n.return=t,n.sibling=null,e!==null&&(i=t.deletions,i===null?(t.deletions=[e],t.flags|=16):i.push(e)),t.child=n,t.memoizedState=null,n)}function kd(e,t){return t=ys({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function ys(e,t){return e=Dt(22,e,null,t),e.lanes=0,e}function hu(e,t,n){return ll(t,e.child,null,n),e=kd(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function np(e,t,n){e.lanes|=t;var a=e.alternate;a!==null&&(a.lanes|=t),hd(e.return,t,n)}function mu(e,t,n,a,l,r){var i=e.memoizedState;i===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:a,tail:n,tailMode:l,treeForkCount:r}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=a,i.tail=n,i.tailMode=l,i.treeForkCount=r)}function Jv(e,t,n){var a=t.pendingProps,l=a.revealOrder,r=a.tail;a=a.children;var i=Xe.current,s=(i&2)!==0;if(s?(i=i&1|2,t.flags|=128):i&=1,Ae(Xe,i),ot(e,t,a,n),a=je?gi:0,!s&&e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&np(e,n,t);else if(e.tag===19)np(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(l){case"forwards":for(n=t.child,l=null;n!==null;)e=n.alternate,e!==null&&ms(e)===null&&(l=n),n=n.sibling;n=l,n===null?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),mu(t,!1,l,n,r,a);break;case"backwards":case"unstable_legacy-backwards":for(n=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&ms(e)===null){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}mu(t,!0,n,null,r,a);break;case"together":mu(t,!1,null,null,void 0,a);break;default:t.memoizedState=null}return t.child}function Fn(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),ka|=t.lanes,!(n&t.childLanes))if(e!==null){if(xr(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(G(153));if(t.child!==null){for(e=t.child,n=In(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=In(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function dh(e,t){return e.lanes&t?!0:(e=e.dependencies,!!(e!==null&&ds(e)))}function Gz(e,t,n){switch(t.tag){case 3:ls(t,t.stateNode.containerInfo),la(t,Qe,e.memoizedState.cache),nl();break;case 27:case 5:ed(t);break;case 4:ls(t,t.stateNode.containerInfo);break;case 10:la(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,vd(t),null;break;case 13:var a=t.memoizedState;if(a!==null)return a.dehydrated!==null?(ra(t),t.flags|=128,null):n&t.child.childLanes?Wv(e,t,n):(ra(t),e=Fn(e,t,n),e!==null?e.sibling:null);ra(t);break;case 19:var l=(e.flags&128)!==0;if(a=(n&t.childLanes)!==0,a||(xr(e,t,n,!1),a=(n&t.childLanes)!==0),l){if(a)return Jv(e,t,n);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),Ae(Xe,Xe.current),a)break;return null;case 22:return t.lanes=0,Pv(e,t,n,t.pendingProps);case 24:la(t,Qe,e.memoizedState.cache)}return Fn(e,t,n)}function e1(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)Pe=!0;else{if(!dh(e,n)&&!(t.flags&128))return Pe=!1,Gz(e,t,n);Pe=!!(e.flags&131072)}else Pe=!1,je&&t.flags&1048576&&av(t,gi,t.index);switch(t.lanes=0,t.tag){case 16:e:{var a=t.pendingProps;if(e=Ra(t.elementType),t.type=e,typeof e=="function")Yf(e)?(a=il(e,a),t.tag=1,t=ep(null,t,e,a,n)):(t.tag=0,t=Ed(null,t,e,a,n));else{if(e!=null){var l=e.$$typeof;if(l===zf){t.tag=11,t=Q0(null,t,e,a,n);break e}else if(l===Mf){t.tag=14,t=K0(null,t,e,a,n);break e}}throw t=Wu(e)||e,Error(G(306,t,""))}}return t;case 0:return Ed(e,t,t.type,t.pendingProps,n);case 1:return a=t.type,l=il(a,t.pendingProps),ep(e,t,a,l,n);case 3:e:{if(ls(t,t.stateNode.containerInfo),e===null)throw Error(G(387));a=t.pendingProps;var r=t.memoizedState;l=r.element,gd(e,t),Kr(t,a,null,n);var i=t.memoizedState;if(a=i.cache,la(t,Qe,a),a!==r.cache&&md(t,[Qe],n,!0),Qr(),a=i.element,r.isDehydrated)if(r={element:a,isDehydrated:!1,cache:i.cache},t.updateQueue.baseState=r,t.memoizedState=r,t.flags&256){t=tp(e,t,a,n);break e}else if(a!==l){l=Zt(Error(G(424)),t),xi(l),t=tp(e,t,a,n);break e}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName==="HTML"?e.ownerDocument.body:e}for(De=Wt(e.firstChild),ct=t,je=!0,pa=null,Qt=!0,n=cv(t,null,a,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(nl(),a===l){t=Fn(e,t,n);break e}ot(e,t,a,n)}t=t.child}return t;case 26:return Io(e,t),e===null?(n=jp(t.type,null,t.pendingProps,null))?t.memoizedState=n:je||(n=t.type,e=t.pendingProps,a=ks(ma.current).createElement(n),a[st]=t,a[kt]=e,dt(a,n,e),lt(a),t.stateNode=a):t.memoizedState=jp(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return ed(t),e===null&&je&&(a=t.stateNode=X1(t.type,t.pendingProps,ma.current),ct=t,Qt=!0,l=De,Ca(t.type)?(Ud=l,De=Wt(a.firstChild)):De=l),ot(e,t,t.pendingProps.children,n),Io(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&je&&((l=a=De)&&(a=NM(a,t.type,t.pendingProps,Qt),a!==null?(t.stateNode=a,ct=t,De=Wt(a.firstChild),Qt=!1,l=!0):l=!1),l||Sa(t)),ed(t),l=t.type,r=t.pendingProps,i=e!==null?e.memoizedProps:null,a=r.children,Rd(l,r)?a=null:i!==null&&Rd(l,i)&&(t.flags|=32),t.memoizedState!==null&&(l=Wf(e,t,Hz,null,null,n),Ni._currentValue=l),Io(e,t),ot(e,t,a,n),t.child;case 6:return e===null&&je&&((e=n=De)&&(n=SM(n,t.pendingProps,Qt),n!==null?(t.stateNode=n,ct=t,De=null,e=!0):e=!1),e||Sa(t)),null;case 13:return Wv(e,t,n);case 4:return ls(t,t.stateNode.containerInfo),a=t.pendingProps,e===null?t.child=ll(t,null,a,n):ot(e,t,a,n),t.child;case 11:return Q0(e,t,t.type,t.pendingProps,n);case 7:return ot(e,t,t.pendingProps,n),t.child;case 8:return ot(e,t,t.pendingProps.children,n),t.child;case 12:return ot(e,t,t.pendingProps.children,n),t.child;case 10:return a=t.pendingProps,la(t,t.type,a.value),ot(e,t,a.children,n),t.child;case 9:return l=t.type._context,a=t.pendingProps.children,al(t),l=ut(l),a=a(l),t.flags|=1,ot(e,t,a,n),t.child;case 14:return K0(e,t,t.type,t.pendingProps,n);case 15:return Kv(e,t,t.type,t.pendingProps,n);case 19:return Jv(e,t,n);case 31:return Fz(e,t,n);case 22:return Pv(e,t,n,t.pendingProps);case 24:return al(t),a=ut(Qe),e===null?(l=Gf(),l===null&&(l=Me,r=Ff(),l.pooledCache=r,r.refCount++,r!==null&&(l.pooledCacheLanes|=n),l=r),t.memoizedState={parent:a,cache:l},Qf(t),la(t,Qe,l)):(e.lanes&n&&(gd(e,t),Kr(t,null,null,n),Qr()),l=e.memoizedState,r=t.memoizedState,l.parent!==a?(l={parent:a,cache:a},t.memoizedState=l,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=l),la(t,Qe,a)):(a=r.cache,la(t,Qe,a),a!==l.cache&&md(t,[Qe],n,!0))),ot(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(G(156,t.tag))}function zn(e){e.flags|=4}function pu(e,t,n,a,l){if((t=(e.mode&32)!==0)&&(t=!1),t){if(e.flags|=16777216,(l&335544128)===l)if(e.stateNode.complete)e.flags|=8192;else if(S1())e.flags|=8192;else throw qa=fs,Zf}else e.flags&=-16777217}function ap(e,t){if(t.type!=="stylesheet"||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!G1(t))if(S1())e.flags|=8192;else throw qa=fs,Zf}function yo(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?Ey():536870912,e.lanes|=t,ir|=t)}function Mr(e,t){if(!je)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var a=null;n!==null;)n.alternate!==null&&(a=n),n=n.sibling;a===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:a.sibling=null}}function Te(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,a=0;if(t)for(var l=e.child;l!==null;)n|=l.lanes|l.childLanes,a|=l.subtreeFlags&65011712,a|=l.flags&65011712,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)n|=l.lanes|l.childLanes,a|=l.subtreeFlags,a|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=a,e.childLanes=n,t}function Zz(e,t,n){var a=t.pendingProps;switch(qf(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Te(t),null;case 1:return Te(t),null;case 3:return n=t.stateNode,a=null,e!==null&&(a=e.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),Un(Qe),er(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(yl(t)?zn(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,iu())),Te(t),null;case 26:var l=t.type,r=t.memoizedState;return e===null?(zn(t),r!==null?(Te(t),ap(t,r)):(Te(t),pu(t,l,null,a,n))):r?r!==e.memoizedState?(zn(t),Te(t),ap(t,r)):(Te(t),t.flags&=-16777217):(e=e.memoizedProps,e!==a&&zn(t),Te(t),pu(t,l,e,a,n)),null;case 27:if(rs(t),n=ma.current,l=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==a&&zn(t);else{if(!a){if(t.stateNode===null)throw Error(G(166));return Te(t),null}e=bn.current,yl(t)?T0(t):(e=X1(l,a,n),t.stateNode=e,zn(t))}return Te(t),null;case 5:if(rs(t),l=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==a&&zn(t);else{if(!a){if(t.stateNode===null)throw Error(G(166));return Te(t),null}if(r=bn.current,yl(t))T0(t);else{var i=ks(ma.current);switch(r){case 1:r=i.createElementNS("http://www.w3.org/2000/svg",l);break;case 2:r=i.createElementNS("http://www.w3.org/1998/Math/MathML",l);break;default:switch(l){case"svg":r=i.createElementNS("http://www.w3.org/2000/svg",l);break;case"math":r=i.createElementNS("http://www.w3.org/1998/Math/MathML",l);break;case"script":r=i.createElement("div"),r.innerHTML="<script><\/script>",r=r.removeChild(r.firstChild);break;case"select":r=typeof a.is=="string"?i.createElement("select",{is:a.is}):i.createElement("select"),a.multiple?r.multiple=!0:a.size&&(r.size=a.size);break;default:r=typeof a.is=="string"?i.createElement(l,{is:a.is}):i.createElement(l)}}r[st]=t,r[kt]=a;e:for(i=t.child;i!==null;){if(i.tag===5||i.tag===6)r.appendChild(i.stateNode);else if(i.tag!==4&&i.tag!==27&&i.child!==null){i.child.return=i,i=i.child;continue}if(i===t)break e;for(;i.sibling===null;){if(i.return===null||i.return===t)break e;i=i.return}i.sibling.return=i.return,i=i.sibling}t.stateNode=r;e:switch(dt(r,l,a),l){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break e;case"img":a=!0;break e;default:a=!1}a&&zn(t)}}return Te(t),pu(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==a&&zn(t);else{if(typeof a!="string"&&t.stateNode===null)throw Error(G(166));if(e=ma.current,yl(t)){if(e=t.stateNode,n=t.memoizedProps,a=null,l=ct,l!==null)switch(l.tag){case 27:case 5:a=l.memoizedProps}e[st]=t,e=!!(e.nodeValue===n||a!==null&&a.suppressHydrationWarning===!0||U1(e.nodeValue,n)),e||Sa(t,!0)}else e=ks(e).createTextNode(a),e[st]=t,t.stateNode=e}return Te(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(a=yl(t),n!==null){if(e===null){if(!a)throw Error(G(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(G(557));e[st]=t}else nl(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Te(t),e=!1}else n=iu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(At(t),t):(At(t),null);if(t.flags&128)throw Error(G(558))}return Te(t),null;case 13:if(a=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(l=yl(t),a!==null&&a.dehydrated!==null){if(e===null){if(!l)throw Error(G(318));if(l=t.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(G(317));l[st]=t}else nl(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Te(t),l=!1}else l=iu(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),l=!0;if(!l)return t.flags&256?(At(t),t):(At(t),null)}return At(t),t.flags&128?(t.lanes=n,t):(n=a!==null,e=e!==null&&e.memoizedState!==null,n&&(a=t.child,l=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(l=a.alternate.memoizedState.cachePool.pool),r=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(r=a.memoizedState.cachePool.pool),r!==l&&(a.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),yo(t,t.updateQueue),Te(t),null);case 4:return er(),e===null&&yh(t.stateNode.containerInfo),Te(t),null;case 10:return Un(t.type),Te(t),null;case 19:if(rt(Xe),a=t.memoizedState,a===null)return Te(t),null;if(l=(t.flags&128)!==0,r=a.rendering,r===null)if(l)Mr(a,!1);else{if(Ve!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(r=ms(e),r!==null){for(t.flags|=128,Mr(a,!1),e=r.updateQueue,t.updateQueue=e,yo(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)tv(n,e),n=n.sibling;return Ae(Xe,Xe.current&1|2),je&&Dn(t,a.treeForkCount),t.child}e=e.sibling}a.tail!==null&&Bt()>bs&&(t.flags|=128,l=!0,Mr(a,!1),t.lanes=4194304)}else{if(!l)if(e=ms(r),e!==null){if(t.flags|=128,l=!0,e=e.updateQueue,t.updateQueue=e,yo(t,e),Mr(a,!0),a.tail===null&&a.tailMode==="hidden"&&!r.alternate&&!je)return Te(t),null}else 2*Bt()-a.renderingStartTime>bs&&n!==536870912&&(t.flags|=128,l=!0,Mr(a,!1),t.lanes=4194304);a.isBackwards?(r.sibling=t.child,t.child=r):(e=a.last,e!==null?e.sibling=r:t.child=r,a.last=r)}return a.tail!==null?(e=a.tail,a.rendering=e,a.tail=e.sibling,a.renderingStartTime=Bt(),e.sibling=null,n=Xe.current,Ae(Xe,l?n&1|2:n&1),je&&Dn(t,a.treeForkCount),e):(Te(t),null);case 22:case 23:return At(t),Kf(),a=t.memoizedState!==null,e!==null?e.memoizedState!==null!==a&&(t.flags|=8192):a&&(t.flags|=8192),a?n&536870912&&!(t.flags&128)&&(Te(t),t.subtreeFlags&6&&(t.flags|=8192)):Te(t),n=t.updateQueue,n!==null&&yo(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),a=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),a!==n&&(t.flags|=2048),e!==null&&rt(Xa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Un(Qe),Te(t),null;case 25:return null;case 30:return null}throw Error(G(156,t.tag))}function Qz(e,t){switch(qf(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Un(Qe),er(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return rs(t),null;case 31:if(t.memoizedState!==null){if(At(t),t.alternate===null)throw Error(G(340));nl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(At(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(G(340));nl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return rt(Xe),null;case 4:return er(),null;case 10:return Un(t.type),null;case 22:case 23:return At(t),Kf(),e!==null&&rt(Xa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Un(Qe),null;case 25:return null;default:return null}}function t1(e,t){switch(qf(t),t.tag){case 3:Un(Qe),er();break;case 26:case 27:case 5:rs(t);break;case 4:er();break;case 31:t.memoizedState!==null&&At(t);break;case 13:At(t);break;case 19:rt(Xe);break;case 10:Un(t.type);break;case 22:case 23:At(t),Kf(),e!==null&&rt(Xa);break;case 24:Un(Qe)}}function Xi(e,t){try{var n=t.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var l=a.next;n=l;do{if((n.tag&e)===e){a=void 0;var r=n.create,i=n.inst;a=r(),i.destroy=a}n=n.next}while(n!==l)}}catch(s){_e(t,t.return,s)}}function Ea(e,t,n){try{var a=t.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var r=l.next;a=r;do{if((a.tag&e)===e){var i=a.inst,s=i.destroy;if(s!==void 0){i.destroy=void 0,l=t;var c=n,u=s;try{u()}catch(d){_e(l,c,d)}}}a=a.next}while(a!==r)}}catch(d){_e(t,t.return,d)}}function n1(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{dv(t,n)}catch(a){_e(e,e.return,a)}}}function a1(e,t,n){n.props=il(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(a){_e(e,t,a)}}function Wr(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var a=e.stateNode;break;case 30:a=e.stateNode;break;default:a=e.stateNode}typeof n=="function"?e.refCleanup=n(a):n.current=a}}catch(l){_e(e,t,l)}}function yn(e,t){var n=e.ref,a=e.refCleanup;if(n!==null)if(typeof a=="function")try{a()}catch(l){_e(e,t,l)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(l){_e(e,t,l)}else n.current=null}function l1(e){var t=e.type,n=e.memoizedProps,a=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&a.focus();break e;case"img":n.src?a.src=n.src:n.srcSet&&(a.srcset=n.srcSet)}}catch(l){_e(e,e.return,l)}}function gu(e,t,n){try{var a=e.stateNode;xM(a,e.type,n,t),a[kt]=t}catch(l){_e(e,e.return,l)}}function r1(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Ca(e.type)||e.tag===4}function xu(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||r1(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&&Ca(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 _d(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Ln));else if(a!==4&&(a===27&&Ca(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(_d(e,t,n),e=e.sibling;e!==null;)_d(e,t,n),e=e.sibling}function vs(e,t,n){var a=e.tag;if(a===5||a===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(a!==4&&(a===27&&Ca(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(vs(e,t,n),e=e.sibling;e!==null;)vs(e,t,n),e=e.sibling}function i1(e){var t=e.stateNode,n=e.memoizedProps;try{for(var a=e.type,l=t.attributes;l.length;)t.removeAttributeNode(l[0]);dt(t,a,n),t[st]=e,t[kt]=n}catch(r){_e(e,e.return,r)}}var On=!1,Ze=!1,yu=!1,lp=typeof WeakSet=="function"?WeakSet:Set,at=null;function Kz(e,t){if(e=e.containerInfo,Od=Ms,e=Gy(e),Uf(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var a=n.getSelection&&n.getSelection();if(a&&a.rangeCount!==0){n=a.anchorNode;var l=a.anchorOffset,r=a.focusNode;a=a.focusOffset;try{n.nodeType,r.nodeType}catch{n=null;break e}var i=0,s=-1,c=-1,u=0,d=0,f=e,h=null;t:for(;;){for(var m;f!==n||l!==0&&f.nodeType!==3||(s=i+l),f!==r||a!==0&&f.nodeType!==3||(c=i+a),f.nodeType===3&&(i+=f.nodeValue.length),(m=f.firstChild)!==null;)h=f,f=m;for(;;){if(f===e)break t;if(h===n&&++u===l&&(s=i),h===r&&++d===a&&(c=i),(m=f.nextSibling)!==null)break;f=h,h=f.parentNode}f=m}n=s===-1||c===-1?null:{start:s,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Bd={focusedElem:e,selectionRange:n},Ms=!1,at=t;at!==null;)if(t=at,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,at=e;else for(;at!==null;){switch(t=at,r=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(n=0;n<e.length;n++)l=e[n],l.ref.impl=l.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&r!==null){e=void 0,n=t,l=r.memoizedProps,r=r.memoizedState,a=n.stateNode;try{var x=il(n.type,l);e=a.getSnapshotBeforeUpdate(x,r),a.__reactInternalSnapshotBeforeUpdate=e}catch(j){_e(n,n.return,j)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)Ld(e);else if(n===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":Ld(e);break;default:e.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(G(163))}if(e=t.sibling,e!==null){e.return=t.return,at=e;break}at=t.return}}function o1(e,t,n){var a=n.flags;switch(n.tag){case 0:case 11:case 15:An(e,n),a&4&&Xi(5,n);break;case 1:if(An(e,n),a&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(i){_e(n,n.return,i)}else{var l=il(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(l,t,e.__reactInternalSnapshotBeforeUpdate)}catch(i){_e(n,n.return,i)}}a&64&&n1(n),a&512&&Wr(n,n.return);break;case 3:if(An(e,n),a&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{dv(e,t)}catch(i){_e(n,n.return,i)}}break;case 27:t===null&&a&4&&i1(n);case 26:case 5:An(e,n),t===null&&a&4&&l1(n),a&512&&Wr(n,n.return);break;case 12:An(e,n);break;case 31:An(e,n),a&4&&u1(e,n);break;case 13:An(e,n),a&4&&d1(e,n),a&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=rM.bind(null,n),EM(e,n))));break;case 22:if(a=n.memoizedState!==null||On,!a){t=t!==null&&t.memoizedState!==null||Ze,l=On;var r=Ze;On=a,(Ze=t)&&!r?Tn(e,n,(n.subtreeFlags&8772)!==0):An(e,n),On=l,Ze=r}break;case 30:break;default:An(e,n)}}function s1(e){var t=e.alternate;t!==null&&(e.alternate=null,s1(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Of(t)),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 Le=null,vt=!1;function Mn(e,t,n){for(n=n.child;n!==null;)c1(e,t,n),n=n.sibling}function c1(e,t,n){if(Rt&&typeof Rt.onCommitFiberUnmount=="function")try{Rt.onCommitFiberUnmount(Li,n)}catch{}switch(n.tag){case 26:Ze||yn(n,t),Mn(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:Ze||yn(n,t);var a=Le,l=vt;Ca(n.type)&&(Le=n.stateNode,vt=!1),Mn(e,t,n),ni(n.stateNode),Le=a,vt=l;break;case 5:Ze||yn(n,t);case 6:if(a=Le,l=vt,Le=null,Mn(e,t,n),Le=a,vt=l,Le!==null)if(vt)try{(Le.nodeType===9?Le.body:Le.nodeName==="HTML"?Le.ownerDocument.body:Le).removeChild(n.stateNode)}catch(r){_e(n,t,r)}else try{Le.removeChild(n.stateNode)}catch(r){_e(n,t,r)}break;case 18:Le!==null&&(vt?(e=Le,xp(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,n.stateNode),ur(e)):xp(Le,n.stateNode));break;case 4:a=Le,l=vt,Le=n.stateNode.containerInfo,vt=!0,Mn(e,t,n),Le=a,vt=l;break;case 0:case 11:case 14:case 15:Ea(2,n,t),Ze||Ea(4,n,t),Mn(e,t,n);break;case 1:Ze||(yn(n,t),a=n.stateNode,typeof a.componentWillUnmount=="function"&&a1(n,t,a)),Mn(e,t,n);break;case 21:Mn(e,t,n);break;case 22:Ze=(a=Ze)||n.memoizedState!==null,Mn(e,t,n),Ze=a;break;default:Mn(e,t,n)}}function u1(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{ur(e)}catch(n){_e(t,t.return,n)}}}function d1(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{ur(e)}catch(n){_e(t,t.return,n)}}function Pz(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new lp),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new lp),t;default:throw Error(G(435,e.tag))}}function vo(e,t){var n=Pz(e);t.forEach(function(a){if(!n.has(a)){n.add(a);var l=iM.bind(null,e,a);a.then(l,l)}})}function xt(e,t){var n=t.deletions;if(n!==null)for(var a=0;a<n.length;a++){var l=n[a],r=e,i=t,s=i;e:for(;s!==null;){switch(s.tag){case 27:if(Ca(s.type)){Le=s.stateNode,vt=!1;break e}break;case 5:Le=s.stateNode,vt=!1;break e;case 3:case 4:Le=s.stateNode.containerInfo,vt=!0;break e}s=s.return}if(Le===null)throw Error(G(160));c1(r,i,l),Le=null,vt=!1,r=l.alternate,r!==null&&(r.return=null),l.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)f1(t,e),t=t.sibling}var ln=null;function f1(e,t){var n=e.alternate,a=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:xt(t,e),yt(e),a&4&&(Ea(3,e,e.return),Xi(3,e),Ea(5,e,e.return));break;case 1:xt(t,e),yt(e),a&512&&(Ze||n===null||yn(n,n.return)),a&64&&On&&(e=e.updateQueue,e!==null&&(a=e.callbacks,a!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?a:n.concat(a))));break;case 26:var l=ln;if(xt(t,e),yt(e),a&512&&(Ze||n===null||yn(n,n.return)),a&4){var r=n!==null?n.memoizedState:null;if(a=e.memoizedState,n===null)if(a===null)if(e.stateNode===null){e:{a=e.type,n=e.memoizedProps,l=l.ownerDocument||l;t:switch(a){case"title":r=l.getElementsByTagName("title")[0],(!r||r[Ui]||r[st]||r.namespaceURI==="http://www.w3.org/2000/svg"||r.hasAttribute("itemprop"))&&(r=l.createElement(a),l.head.insertBefore(r,l.querySelector("head > title"))),dt(r,a,n),r[st]=e,lt(r),a=r;break e;case"link":var i=Sp("link","href",l).get(a+(n.href||""));if(i){for(var s=0;s<i.length;s++)if(r=i[s],r.getAttribute("href")===(n.href==null||n.href===""?null:n.href)&&r.getAttribute("rel")===(n.rel==null?null:n.rel)&&r.getAttribute("title")===(n.title==null?null:n.title)&&r.getAttribute("crossorigin")===(n.crossOrigin==null?null:n.crossOrigin)){i.splice(s,1);break t}}r=l.createElement(a),dt(r,a,n),l.head.appendChild(r);break;case"meta":if(i=Sp("meta","content",l).get(a+(n.content||""))){for(s=0;s<i.length;s++)if(r=i[s],r.getAttribute("content")===(n.content==null?null:""+n.content)&&r.getAttribute("name")===(n.name==null?null:n.name)&&r.getAttribute("property")===(n.property==null?null:n.property)&&r.getAttribute("http-equiv")===(n.httpEquiv==null?null:n.httpEquiv)&&r.getAttribute("charset")===(n.charSet==null?null:n.charSet)){i.splice(s,1);break t}}r=l.createElement(a),dt(r,a,n),l.head.appendChild(r);break;default:throw Error(G(468,a))}r[st]=e,lt(r),a=r}e.stateNode=a}else Ep(l,e.type,e.stateNode);else e.stateNode=Np(l,a,e.memoizedProps);else r!==a?(r===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):r.count--,a===null?Ep(l,e.type,e.stateNode):Np(l,a,e.memoizedProps)):a===null&&e.stateNode!==null&&gu(e,e.memoizedProps,n.memoizedProps)}break;case 27:xt(t,e),yt(e),a&512&&(Ze||n===null||yn(n,n.return)),n!==null&&a&4&&gu(e,e.memoizedProps,n.memoizedProps);break;case 5:if(xt(t,e),yt(e),a&512&&(Ze||n===null||yn(n,n.return)),e.flags&32){l=e.stateNode;try{nr(l,"")}catch(x){_e(e,e.return,x)}}a&4&&e.stateNode!=null&&(l=e.memoizedProps,gu(e,l,n!==null?n.memoizedProps:l)),a&1024&&(yu=!0);break;case 6:if(xt(t,e),yt(e),a&4){if(e.stateNode===null)throw Error(G(162));a=e.memoizedProps,n=e.stateNode;try{n.nodeValue=a}catch(x){_e(e,e.return,x)}}break;case 3:if($o=null,l=ln,ln=_s(t.containerInfo),xt(t,e),ln=l,yt(e),a&4&&n!==null&&n.memoizedState.isDehydrated)try{ur(t.containerInfo)}catch(x){_e(e,e.return,x)}yu&&(yu=!1,h1(e));break;case 4:a=ln,ln=_s(e.stateNode.containerInfo),xt(t,e),yt(e),ln=a;break;case 12:xt(t,e),yt(e);break;case 31:xt(t,e),yt(e),a&4&&(a=e.updateQueue,a!==null&&(e.updateQueue=null,vo(e,a)));break;case 13:xt(t,e),yt(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(fc=Bt()),a&4&&(a=e.updateQueue,a!==null&&(e.updateQueue=null,vo(e,a)));break;case 22:l=e.memoizedState!==null;var c=n!==null&&n.memoizedState!==null,u=On,d=Ze;if(On=u||l,Ze=d||c,xt(t,e),Ze=d,On=u,yt(e),a&8192)e:for(t=e.stateNode,t._visibility=l?t._visibility&-2:t._visibility|1,l&&(n===null||c||On||Ze||La(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){c=n=t;try{if(r=c.stateNode,l)i=r.style,typeof i.setProperty=="function"?i.setProperty("display","none","important"):i.display="none";else{s=c.stateNode;var f=c.memoizedProps.style,h=f!=null&&f.hasOwnProperty("display")?f.display:null;s.style.display=h==null||typeof h=="boolean"?"":(""+h).trim()}}catch(x){_e(c,c.return,x)}}}else if(t.tag===6){if(n===null){c=t;try{c.stateNode.nodeValue=l?"":c.memoizedProps}catch(x){_e(c,c.return,x)}}}else if(t.tag===18){if(n===null){c=t;try{var m=c.stateNode;l?yp(m,!0):yp(c.stateNode,!1)}catch(x){_e(c,c.return,x)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}a&4&&(a=e.updateQueue,a!==null&&(n=a.retryQueue,n!==null&&(a.retryQueue=null,vo(e,n))));break;case 19:xt(t,e),yt(e),a&4&&(a=e.updateQueue,a!==null&&(e.updateQueue=null,vo(e,a)));break;case 30:break;case 21:break;default:xt(t,e),yt(e)}}function yt(e){var t=e.flags;if(t&2){try{for(var n,a=e.return;a!==null;){if(r1(a)){n=a;break}a=a.return}if(n==null)throw Error(G(160));switch(n.tag){case 27:var l=n.stateNode,r=xu(e);vs(e,r,l);break;case 5:var i=n.stateNode;n.flags&32&&(nr(i,""),n.flags&=-33);var s=xu(e);vs(e,s,i);break;case 3:case 4:var c=n.stateNode.containerInfo,u=xu(e);_d(e,u,c);break;default:throw Error(G(161))}}catch(d){_e(e,e.return,d)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function h1(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;h1(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function An(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)o1(e,t.alternate,t),t=t.sibling}function La(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Ea(4,t,t.return),La(t);break;case 1:yn(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount=="function"&&a1(t,t.return,n),La(t);break;case 27:ni(t.stateNode);case 26:case 5:yn(t,t.return),La(t);break;case 22:t.memoizedState===null&&La(t);break;case 30:La(t);break;default:La(t)}e=e.sibling}}function Tn(e,t,n){for(n=n&&(t.subtreeFlags&8772)!==0,t=t.child;t!==null;){var a=t.alternate,l=e,r=t,i=r.flags;switch(r.tag){case 0:case 11:case 15:Tn(l,r,n),Xi(4,r);break;case 1:if(Tn(l,r,n),a=r,l=a.stateNode,typeof l.componentDidMount=="function")try{l.componentDidMount()}catch(u){_e(a,a.return,u)}if(a=r,l=a.updateQueue,l!==null){var s=a.stateNode;try{var c=l.shared.hiddenCallbacks;if(c!==null)for(l.shared.hiddenCallbacks=null,l=0;l<c.length;l++)uv(c[l],s)}catch(u){_e(a,a.return,u)}}n&&i&64&&n1(r),Wr(r,r.return);break;case 27:i1(r);case 26:case 5:Tn(l,r,n),n&&a===null&&i&4&&l1(r),Wr(r,r.return);break;case 12:Tn(l,r,n);break;case 31:Tn(l,r,n),n&&i&4&&u1(l,r);break;case 13:Tn(l,r,n),n&&i&4&&d1(l,r);break;case 22:r.memoizedState===null&&Tn(l,r,n),Wr(r,r.return);break;case 30:break;default:Tn(l,r,n)}t=t.sibling}}function fh(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&$i(n))}function hh(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&$i(e))}function nn(e,t,n,a){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)m1(e,t,n,a),t=t.sibling}function m1(e,t,n,a){var l=t.flags;switch(t.tag){case 0:case 11:case 15:nn(e,t,n,a),l&2048&&Xi(9,t);break;case 1:nn(e,t,n,a);break;case 3:nn(e,t,n,a),l&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&$i(e)));break;case 12:if(l&2048){nn(e,t,n,a),e=t.stateNode;try{var r=t.memoizedProps,i=r.id,s=r.onPostCommit;typeof s=="function"&&s(i,t.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(c){_e(t,t.return,c)}}else nn(e,t,n,a);break;case 31:nn(e,t,n,a);break;case 13:nn(e,t,n,a);break;case 23:break;case 22:r=t.stateNode,i=t.alternate,t.memoizedState!==null?r._visibility&2?nn(e,t,n,a):Jr(e,t):r._visibility&2?nn(e,t,n,a):(r._visibility|=2,wl(e,t,n,a,(t.subtreeFlags&10256)!==0||!1)),l&2048&&fh(i,t);break;case 24:nn(e,t,n,a),l&2048&&hh(t.alternate,t);break;default:nn(e,t,n,a)}}function wl(e,t,n,a,l){for(l=l&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var r=e,i=t,s=n,c=a,u=i.flags;switch(i.tag){case 0:case 11:case 15:wl(r,i,s,c,l),Xi(8,i);break;case 23:break;case 22:var d=i.stateNode;i.memoizedState!==null?d._visibility&2?wl(r,i,s,c,l):Jr(r,i):(d._visibility|=2,wl(r,i,s,c,l)),l&&u&2048&&fh(i.alternate,i);break;case 24:wl(r,i,s,c,l),l&&u&2048&&hh(i.alternate,i);break;default:wl(r,i,s,c,l)}t=t.sibling}}function Jr(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,a=t,l=a.flags;switch(a.tag){case 22:Jr(n,a),l&2048&&fh(a.alternate,a);break;case 24:Jr(n,a),l&2048&&hh(a.alternate,a);break;default:Jr(n,a)}t=t.sibling}}var Ur=8192;function vl(e,t,n){if(e.subtreeFlags&Ur)for(e=e.child;e!==null;)p1(e,t,n),e=e.sibling}function p1(e,t,n){switch(e.tag){case 26:vl(e,t,n),e.flags&Ur&&e.memoizedState!==null&&LM(n,ln,e.memoizedState,e.memoizedProps);break;case 5:vl(e,t,n);break;case 3:case 4:var a=ln;ln=_s(e.stateNode.containerInfo),vl(e,t,n),ln=a;break;case 22:e.memoizedState===null&&(a=e.alternate,a!==null&&a.memoizedState!==null?(a=Ur,Ur=16777216,vl(e,t,n),Ur=a):vl(e,t,n));break;default:vl(e,t,n)}}function g1(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Ar(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var a=t[n];at=a,y1(a,e)}g1(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)x1(e),e=e.sibling}function x1(e){switch(e.tag){case 0:case 11:case 15:Ar(e),e.flags&2048&&Ea(9,e,e.return);break;case 3:Ar(e);break;case 12:Ar(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Uo(e)):Ar(e);break;default:Ar(e)}}function Uo(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var a=t[n];at=a,y1(a,e)}g1(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Ea(8,t,t.return),Uo(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,Uo(t));break;default:Uo(t)}e=e.sibling}}function y1(e,t){for(;at!==null;){var n=at;switch(n.tag){case 0:case 11:case 15:Ea(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var a=n.memoizedState.cachePool.pool;a!=null&&a.refCount++}break;case 24:$i(n.memoizedState.cache)}if(a=n.child,a!==null)a.return=n,at=a;else e:for(n=e;at!==null;){a=at;var l=a.sibling,r=a.return;if(s1(a),a===n){at=null;break e}if(l!==null){l.return=r,at=l;break e}at=r}}}var Wz={getCacheForType:function(e){var t=ut(Qe),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return ut(Qe).controller.signal}},Jz=typeof WeakMap=="function"?WeakMap:Map,Se=0,Me=null,be=null,we=0,ke=0,Mt=null,ua=!1,vr=!1,mh=!1,Gn=0,Ve=0,ka=0,Fa=0,ph=0,Ot=0,ir=0,ei=null,bt=null,Cd=!1,fc=0,v1=0,bs=1/0,ws=null,ya=null,et=0,va=null,or=null,Vn=0,zd=0,Md=null,b1=null,ti=0,Ad=null;function Ht(){return Se&2&&we!==0?we&-we:fe.T!==null?xh():zy()}function w1(){if(Ot===0)if(!(we&536870912)||je){var e=uo;uo<<=1,!(uo&3932160)&&(uo=262144),Ot=e}else Ot=536870912;return e=Vt.current,e!==null&&(e.flags|=32),Ot}function Nt(e,t,n){(e===Me&&(ke===2||ke===9)||e.cancelPendingCommit!==null)&&(sr(e,0),da(e,we,Ot,!1)),Ii(e,n),(!(Se&2)||e!==Me)&&(e===Me&&(!(Se&2)&&(Fa|=n),Ve===4&&da(e,we,Ot,!1)),Nn(e))}function j1(e,t,n){if(Se&6)throw Error(G(327));var a=!n&&(t&127)===0&&(t&e.expiredLanes)===0||Hi(e,t),l=a?nM(e,t):vu(e,t,!0),r=a;do{if(l===0){vr&&!a&&da(e,t,0,!1);break}else{if(n=e.current.alternate,r&&!eM(n)){l=vu(e,t,!1),r=!1;continue}if(l===2){if(r=t,e.errorRecoveryDisabledLanes&r)var i=0;else i=e.pendingLanes&-536870913,i=i!==0?i:i&536870912?536870912:0;if(i!==0){t=i;e:{var s=e;l=ei;var c=s.current.memoizedState.isDehydrated;if(c&&(sr(s,i).flags|=256),i=vu(s,i,!1),i!==2){if(mh&&!c){s.errorRecoveryDisabledLanes|=r,Fa|=r,l=4;break e}r=bt,bt=l,r!==null&&(bt===null?bt=r:bt.push.apply(bt,r))}l=i}if(r=!1,l!==2)continue}}if(l===1){sr(e,0),da(e,t,0,!0);break}e:{switch(a=e,r=l,r){case 0:case 1:throw Error(G(345));case 4:if((t&4194048)!==t)break;case 6:da(a,t,Ot,!ua);break e;case 2:bt=null;break;case 3:case 5:break;default:throw Error(G(329))}if((t&62914560)===t&&(l=fc+300-Bt(),10<l)){if(da(a,t,Ot,!ua),tc(a,0,!0)!==0)break e;Vn=t,a.timeoutHandle=$1(rp.bind(null,a,n,bt,ws,Cd,t,Ot,Fa,ir,ua,r,"Throttled",-0,0),l);break e}rp(a,n,bt,ws,Cd,t,Ot,Fa,ir,ua,r,null,-0,0)}}break}while(!0);Nn(e)}function rp(e,t,n,a,l,r,i,s,c,u,d,f,h,m){if(e.timeoutHandle=-1,f=t.subtreeFlags,f&8192||(f&16785408)===16785408){f={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Ln},p1(t,r,f);var x=(r&62914560)===r?fc-Bt():(r&4194048)===r?v1-Bt():0;if(x=HM(f,x),x!==null){Vn=r,e.cancelPendingCommit=x(op.bind(null,e,t,r,n,a,l,i,s,c,d,f,null,h,m)),da(e,r,i,!u);return}}op(e,t,r,n,a,l,i,s,c)}function eM(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var a=0;a<n.length;a++){var l=n[a],r=l.getSnapshot;l=l.value;try{if(!Ut(r(),l))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function da(e,t,n,a){t&=~ph,t&=~Fa,e.suspendedLanes|=t,e.pingedLanes&=~t,a&&(e.warmLanes|=t),a=e.expirationTimes;for(var l=t;0<l;){var r=31-Lt(l),i=1<<r;a[r]=-1,l&=~i}n!==0&&ky(e,n,t)}function hc(){return Se&6?!0:(qi(0),!1)}function gh(){if(be!==null){if(ke===0)var e=be.return;else e=be,Hn=pl=null,th(e),Xl=null,yi=0,e=be;for(;e!==null;)t1(e.alternate,e),e=e.return;be=null}}function sr(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,bM(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),Vn=0,gh(),Me=e,be=n=In(e.current,null),we=t,ke=0,Mt=null,ua=!1,vr=Hi(e,t),mh=!1,ir=Ot=ph=Fa=ka=Ve=0,bt=ei=null,Cd=!1,t&8&&(t|=t&32);var a=e.entangledLanes;if(a!==0)for(e=e.entanglements,a&=t;0<a;){var l=31-Lt(a),r=1<<l;t|=e[l],a&=~r}return Gn=t,rc(),n}function N1(e,t){ye=null,fe.H=bi,t===yr||t===oc?(t=L0(),ke=3):t===Zf?(t=L0(),ke=4):ke=t===uh?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,Mt=t,be===null&&(Ve=1,xs(e,Zt(t,e.current)))}function S1(){var e=Vt.current;return e===null?!0:(we&4194048)===we?Pt===null:(we&62914560)===we||we&536870912?e===Pt:!1}function E1(){var e=fe.H;return fe.H=bi,e===null?bi:e}function k1(){var e=fe.A;return fe.A=Wz,e}function js(){Ve=4,ua||(we&4194048)!==we&&Vt.current!==null||(vr=!0),!(ka&134217727)&&!(Fa&134217727)||Me===null||da(Me,we,Ot,!1)}function vu(e,t,n){var a=Se;Se|=2;var l=E1(),r=k1();(Me!==e||we!==t)&&(ws=null,sr(e,t)),t=!1;var i=Ve;e:do try{if(ke!==0&&be!==null){var s=be,c=Mt;switch(ke){case 8:gh(),i=6;break e;case 3:case 2:case 9:case 6:Vt.current===null&&(t=!0);var u=ke;if(ke=0,Mt=null,Rl(e,s,c,u),n&&vr){i=0;break e}break;default:u=ke,ke=0,Mt=null,Rl(e,s,c,u)}}tM(),i=Ve;break}catch(d){N1(e,d)}while(!0);return t&&e.shellSuspendCounter++,Hn=pl=null,Se=a,fe.H=l,fe.A=r,be===null&&(Me=null,we=0,rc()),i}function tM(){for(;be!==null;)_1(be)}function nM(e,t){var n=Se;Se|=2;var a=E1(),l=k1();Me!==e||we!==t?(ws=null,bs=Bt()+500,sr(e,t)):vr=Hi(e,t);e:do try{if(ke!==0&&be!==null){t=be;var r=Mt;t:switch(ke){case 1:ke=0,Mt=null,Rl(e,t,r,1);break;case 2:case 9:if(R0(r)){ke=0,Mt=null,ip(t);break}t=function(){ke!==2&&ke!==9||Me!==e||(ke=7),Nn(e)},r.then(t,t);break e;case 3:ke=7;break e;case 4:ke=5;break e;case 7:R0(r)?(ke=0,Mt=null,ip(t)):(ke=0,Mt=null,Rl(e,t,r,7));break;case 5:var i=null;switch(be.tag){case 26:i=be.memoizedState;case 5:case 27:var s=be;if(i?G1(i):s.stateNode.complete){ke=0,Mt=null;var c=s.sibling;if(c!==null)be=c;else{var u=s.return;u!==null?(be=u,mc(u)):be=null}break t}}ke=0,Mt=null,Rl(e,t,r,5);break;case 6:ke=0,Mt=null,Rl(e,t,r,6);break;case 8:gh(),Ve=6;break e;default:throw Error(G(462))}}aM();break}catch(d){N1(e,d)}while(!0);return Hn=pl=null,fe.H=a,fe.A=l,Se=n,be!==null?0:(Me=null,we=0,rc(),Ve)}function aM(){for(;be!==null&&!kC();)_1(be)}function _1(e){var t=e1(e.alternate,e,Gn);e.memoizedProps=e.pendingProps,t===null?mc(e):be=t}function ip(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=J0(n,t,t.pendingProps,t.type,void 0,we);break;case 11:t=J0(n,t,t.pendingProps,t.type.render,t.ref,we);break;case 5:th(t);default:t1(n,t),t=be=tv(t,Gn),t=e1(n,t,Gn)}e.memoizedProps=e.pendingProps,t===null?mc(e):be=t}function Rl(e,t,n,a){Hn=pl=null,th(t),Xl=null,yi=0;var l=t.return;try{if(qz(e,l,t,n,we)){Ve=1,xs(e,Zt(n,e.current)),be=null;return}}catch(r){if(l!==null)throw be=l,r;Ve=1,xs(e,Zt(n,e.current)),be=null;return}t.flags&32768?(je||a===1?e=!0:vr||we&536870912?e=!1:(ua=e=!0,(a===2||a===9||a===3||a===6)&&(a=Vt.current,a!==null&&a.tag===13&&(a.flags|=16384))),C1(t,e)):mc(t)}function mc(e){var t=e;do{if(t.flags&32768){C1(t,ua);return}e=t.return;var n=Zz(t.alternate,t,Gn);if(n!==null){be=n;return}if(t=t.sibling,t!==null){be=t;return}be=t=e}while(t!==null);Ve===0&&(Ve=5)}function C1(e,t){do{var n=Qz(e.alternate,e);if(n!==null){n.flags&=32767,be=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){be=e;return}be=e=n}while(e!==null);Ve=6,be=null}function op(e,t,n,a,l,r,i,s,c){e.cancelPendingCommit=null;do pc();while(et!==0);if(Se&6)throw Error(G(327));if(t!==null){if(t===e.current)throw Error(G(177));if(r=t.lanes|t.childLanes,r|=Vf,RC(e,n,r,i,s,c),e===Me&&(be=Me=null,we=0),or=t,va=e,Vn=n,zd=r,Md=l,b1=a,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,oM(is,function(){return D1(),null})):(e.callbackNode=null,e.callbackPriority=0),a=(t.flags&13878)!==0,t.subtreeFlags&13878||a){a=fe.T,fe.T=null,l=Ee.p,Ee.p=2,i=Se,Se|=4;try{Kz(e,t,n)}finally{Se=i,Ee.p=l,fe.T=a}}et=1,z1(),M1(),A1()}}function z1(){if(et===1){et=0;var e=va,t=or,n=(t.flags&13878)!==0;if(t.subtreeFlags&13878||n){n=fe.T,fe.T=null;var a=Ee.p;Ee.p=2;var l=Se;Se|=4;try{f1(t,e);var r=Bd,i=Gy(e.containerInfo),s=r.focusedElem,c=r.selectionRange;if(i!==s&&s&&s.ownerDocument&&Fy(s.ownerDocument.documentElement,s)){if(c!==null&&Uf(s)){var u=c.start,d=c.end;if(d===void 0&&(d=u),"selectionStart"in s)s.selectionStart=u,s.selectionEnd=Math.min(d,s.value.length);else{var f=s.ownerDocument||document,h=f&&f.defaultView||window;if(h.getSelection){var m=h.getSelection(),x=s.textContent.length,j=Math.min(c.start,x),w=c.end===void 0?j:Math.min(c.end,x);!m.extend&&j>w&&(i=w,w=j,j=i);var p=z0(s,j),y=z0(s,w);if(p&&y&&(m.rangeCount!==1||m.anchorNode!==p.node||m.anchorOffset!==p.offset||m.focusNode!==y.node||m.focusOffset!==y.offset)){var g=f.createRange();g.setStart(p.node,p.offset),m.removeAllRanges(),j>w?(m.addRange(g),m.extend(y.node,y.offset)):(g.setEnd(y.node,y.offset),m.addRange(g))}}}}for(f=[],m=s;m=m.parentNode;)m.nodeType===1&&f.push({element:m,left:m.scrollLeft,top:m.scrollTop});for(typeof s.focus=="function"&&s.focus(),s=0;s<f.length;s++){var v=f[s];v.element.scrollLeft=v.left,v.element.scrollTop=v.top}}Ms=!!Od,Bd=Od=null}finally{Se=l,Ee.p=a,fe.T=n}}e.current=t,et=2}}function M1(){if(et===2){et=0;var e=va,t=or,n=(t.flags&8772)!==0;if(t.subtreeFlags&8772||n){n=fe.T,fe.T=null;var a=Ee.p;Ee.p=2;var l=Se;Se|=4;try{o1(e,t.alternate,t)}finally{Se=l,Ee.p=a,fe.T=n}}et=3}}function A1(){if(et===4||et===3){et=0,_C();var e=va,t=or,n=Vn,a=b1;t.subtreeFlags&10256||t.flags&10256?et=5:(et=0,or=va=null,T1(e,e.pendingLanes));var l=e.pendingLanes;if(l===0&&(ya=null),Df(n),t=t.stateNode,Rt&&typeof Rt.onCommitFiberRoot=="function")try{Rt.onCommitFiberRoot(Li,t,void 0,(t.current.flags&128)===128)}catch{}if(a!==null){t=fe.T,l=Ee.p,Ee.p=2,fe.T=null;try{for(var r=e.onRecoverableError,i=0;i<a.length;i++){var s=a[i];r(s.value,{componentStack:s.stack})}}finally{fe.T=t,Ee.p=l}}Vn&3&&pc(),Nn(e),l=e.pendingLanes,n&261930&&l&42?e===Ad?ti++:(ti=0,Ad=e):ti=0,qi(0)}}function T1(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,$i(t)))}function pc(){return z1(),M1(),A1(),D1()}function D1(){if(et!==5)return!1;var e=va,t=zd;zd=0;var n=Df(Vn),a=fe.T,l=Ee.p;try{Ee.p=32>n?32:n,fe.T=null,n=Md,Md=null;var r=va,i=Vn;if(et=0,or=va=null,Vn=0,Se&6)throw Error(G(331));var s=Se;if(Se|=4,x1(r.current),m1(r,r.current,i,n),Se=s,qi(0,!1),Rt&&typeof Rt.onPostCommitFiberRoot=="function")try{Rt.onPostCommitFiberRoot(Li,r)}catch{}return!0}finally{Ee.p=l,fe.T=a,T1(e,t)}}function sp(e,t,n){t=Zt(n,t),t=Sd(e.stateNode,t,2),e=xa(e,t,2),e!==null&&(Ii(e,2),Nn(e))}function _e(e,t,n){if(e.tag===3)sp(e,e,n);else for(;t!==null;){if(t.tag===3){sp(t,e,n);break}else if(t.tag===1){var a=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(ya===null||!ya.has(a))){e=Zt(n,e),n=Zv(2),a=xa(t,n,2),a!==null&&(Qv(n,a,t,e),Ii(a,2),Nn(a));break}}t=t.return}}function bu(e,t,n){var a=e.pingCache;if(a===null){a=e.pingCache=new Jz;var l=new Set;a.set(t,l)}else l=a.get(t),l===void 0&&(l=new Set,a.set(t,l));l.has(n)||(mh=!0,l.add(n),e=lM.bind(null,e,t,n),t.then(e,e))}function lM(e,t,n){var a=e.pingCache;a!==null&&a.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Me===e&&(we&n)===n&&(Ve===4||Ve===3&&(we&62914560)===we&&300>Bt()-fc?!(Se&2)&&sr(e,0):ph|=n,ir===we&&(ir=0)),Nn(e)}function O1(e,t){t===0&&(t=Ey()),e=ml(e,t),e!==null&&(Ii(e,t),Nn(e))}function rM(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),O1(e,n)}function iM(e,t){var n=0;switch(e.tag){case 31:case 13:var a=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:a=e.stateNode;break;case 22:a=e.stateNode._retryCache;break;default:throw Error(G(314))}a!==null&&a.delete(t),O1(e,n)}function oM(e,t){return Af(e,t)}var Ns=null,jl=null,Td=!1,Ss=!1,wu=!1,fa=0;function Nn(e){e!==jl&&e.next===null&&(jl===null?Ns=jl=e:jl=jl.next=e),Ss=!0,Td||(Td=!0,cM())}function qi(e,t){if(!wu&&Ss){wu=!0;do for(var n=!1,a=Ns;a!==null;){if(e!==0){var l=a.pendingLanes;if(l===0)var r=0;else{var i=a.suspendedLanes,s=a.pingedLanes;r=(1<<31-Lt(42|e)+1)-1,r&=l&~(i&~s),r=r&201326741?r&201326741|1:r?r|2:0}r!==0&&(n=!0,cp(a,r))}else r=we,r=tc(a,a===Me?r:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),!(r&3)||Hi(a,r)||(n=!0,cp(a,r));a=a.next}while(n);wu=!1}}function sM(){B1()}function B1(){Ss=Td=!1;var e=0;fa!==0&&vM()&&(e=fa);for(var t=Bt(),n=null,a=Ns;a!==null;){var l=a.next,r=R1(a,t);r===0?(a.next=null,n===null?Ns=l:n.next=l,l===null&&(jl=n)):(n=a,(e!==0||r&3)&&(Ss=!0)),a=l}et!==0&&et!==5||qi(e),fa!==0&&(fa=0)}function R1(e,t){for(var n=e.suspendedLanes,a=e.pingedLanes,l=e.expirationTimes,r=e.pendingLanes&-62914561;0<r;){var i=31-Lt(r),s=1<<i,c=l[i];c===-1?(!(s&n)||s&a)&&(l[i]=BC(s,t)):c<=t&&(e.expiredLanes|=s),r&=~s}if(t=Me,n=we,n=tc(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),a=e.callbackNode,n===0||e===t&&(ke===2||ke===9)||e.cancelPendingCommit!==null)return a!==null&&a!==null&&Qc(a),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Hi(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(a!==null&&Qc(a),Df(n)){case 2:case 8:n=Ny;break;case 32:n=is;break;case 268435456:n=Sy;break;default:n=is}return a=L1.bind(null,e),n=Af(n,a),e.callbackPriority=t,e.callbackNode=n,t}return a!==null&&a!==null&&Qc(a),e.callbackPriority=2,e.callbackNode=null,2}function L1(e,t){if(et!==0&&et!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(pc()&&e.callbackNode!==n)return null;var a=we;return a=tc(e,e===Me?a:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),a===0?null:(j1(e,a,t),R1(e,Bt()),e.callbackNode!=null&&e.callbackNode===n?L1.bind(null,e):null)}function cp(e,t){if(pc())return null;j1(e,t,!0)}function cM(){wM(function(){Se&6?Af(jy,sM):B1()})}function xh(){if(fa===0){var e=ar;e===0&&(e=co,co<<=1,!(co&261888)&&(co=256)),fa=e}return fa}function up(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:Ao(""+e)}function dp(e,t){var n=t.ownerDocument.createElement("input");return n.name=t.name,n.value=t.value,e.id&&n.setAttribute("form",e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function uM(e,t,n,a,l){if(t==="submit"&&n&&n.stateNode===l){var r=up((l[kt]||null).action),i=a.submitter;i&&(t=(t=i[kt]||null)?up(t.formAction):i.getAttribute("formAction"),t!==null&&(r=t,i=null));var s=new nc("action","action",null,a,l);e.push({event:s,listeners:[{instance:null,listener:function(){if(a.defaultPrevented){if(fa!==0){var c=i?dp(l,i):new FormData(l);jd(n,{pending:!0,data:c,method:l.method,action:r},null,c)}}else typeof r=="function"&&(s.preventDefault(),c=i?dp(l,i):new FormData(l),jd(n,{pending:!0,data:c,method:l.method,action:r},r,c))},currentTarget:l}]})}}for(var ju=0;ju<ud.length;ju++){var Nu=ud[ju],dM=Nu.toLowerCase(),fM=Nu[0].toUpperCase()+Nu.slice(1);mn(dM,"on"+fM)}mn(Qy,"onAnimationEnd");mn(Ky,"onAnimationIteration");mn(Py,"onAnimationStart");mn("dblclick","onDoubleClick");mn("focusin","onFocus");mn("focusout","onBlur");mn(Cz,"onTransitionRun");mn(zz,"onTransitionStart");mn(Mz,"onTransitionCancel");mn(Wy,"onTransitionEnd");tr("onMouseEnter",["mouseout","mouseover"]);tr("onMouseLeave",["mouseout","mouseover"]);tr("onPointerEnter",["pointerout","pointerover"]);tr("onPointerLeave",["pointerout","pointerover"]);dl("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));dl("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));dl("onBeforeInput",["compositionend","keypress","textInput","paste"]);dl("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));dl("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));dl("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var wi="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(" "),hM=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(wi));function H1(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var a=e[n],l=a.event;a=a.listeners;e:{var r=void 0;if(t)for(var i=a.length-1;0<=i;i--){var s=a[i],c=s.instance,u=s.currentTarget;if(s=s.listener,c!==r&&l.isPropagationStopped())break e;r=s,l.currentTarget=u;try{r(l)}catch(d){ss(d)}l.currentTarget=null,r=c}else for(i=0;i<a.length;i++){if(s=a[i],c=s.instance,u=s.currentTarget,s=s.listener,c!==r&&l.isPropagationStopped())break e;r=s,l.currentTarget=u;try{r(l)}catch(d){ss(d)}l.currentTarget=null,r=c}}}}function ve(e,t){var n=t[nd];n===void 0&&(n=t[nd]=new Set);var a=e+"__bubble";n.has(a)||(I1(t,e,2,!1),n.add(a))}function Su(e,t,n){var a=0;t&&(a|=4),I1(n,e,a,t)}var bo="_reactListening"+Math.random().toString(36).slice(2);function yh(e){if(!e[bo]){e[bo]=!0,My.forEach(function(n){n!=="selectionchange"&&(hM.has(n)||Su(n,!1,e),Su(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[bo]||(t[bo]=!0,Su("selectionchange",!1,t))}}function I1(e,t,n,a){switch(W1(t)){case 2:var l=VM;break;case 8:l=$M;break;default:l=jh}n=l.bind(null,t,n,e),l=void 0,!od||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(l=!0),a?l!==void 0?e.addEventListener(t,n,{capture:!0,passive:l}):e.addEventListener(t,n,!0):l!==void 0?e.addEventListener(t,n,{passive:l}):e.addEventListener(t,n,!1)}function Eu(e,t,n,a,l){var r=a;if(!(t&1)&&!(t&2)&&a!==null)e:for(;;){if(a===null)return;var i=a.tag;if(i===3||i===4){var s=a.stateNode.containerInfo;if(s===l)break;if(i===4)for(i=a.return;i!==null;){var c=i.tag;if((c===3||c===4)&&i.stateNode.containerInfo===l)return;i=i.return}for(;s!==null;){if(i=_l(s),i===null)return;if(c=i.tag,c===5||c===6||c===26||c===27){a=r=i;continue e}s=s.parentNode}}a=a.return}Hy(function(){var u=r,d=Rf(n),f=[];e:{var h=Jy.get(e);if(h!==void 0){var m=nc,x=e;switch(e){case"keypress":if(Do(n)===0)break e;case"keydown":case"keyup":m=iz;break;case"focusin":x="focus",m=eu;break;case"focusout":x="blur",m=eu;break;case"beforeblur":case"afterblur":m=eu;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":m=v0;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":m=ZC;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":m=cz;break;case Qy:case Ky:case Py:m=PC;break;case Wy:m=dz;break;case"scroll":case"scrollend":m=FC;break;case"wheel":m=hz;break;case"copy":case"cut":case"paste":m=JC;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":m=w0;break;case"toggle":case"beforetoggle":m=pz}var j=(t&4)!==0,w=!j&&(e==="scroll"||e==="scrollend"),p=j?h!==null?h+"Capture":null:h;j=[];for(var y=u,g;y!==null;){var v=y;if(g=v.stateNode,v=v.tag,v!==5&&v!==26&&v!==27||g===null||p===null||(v=hi(y,p),v!=null&&j.push(ji(y,v,g))),w)break;y=y.return}0<j.length&&(h=new m(h,x,null,n,d),f.push({event:h,listeners:j}))}}if(!(t&7)){e:{if(h=e==="mouseover"||e==="pointerover",m=e==="mouseout"||e==="pointerout",h&&n!==id&&(x=n.relatedTarget||n.fromElement)&&(_l(x)||x[pr]))break e;if((m||h)&&(h=d.window===d?d:(h=d.ownerDocument)?h.defaultView||h.parentWindow:window,m?(x=n.relatedTarget||n.toElement,m=u,x=x?_l(x):null,x!==null&&(w=Ri(x),j=x.tag,x!==w||j!==5&&j!==27&&j!==6)&&(x=null)):(m=null,x=u),m!==x)){if(j=v0,v="onMouseLeave",p="onMouseEnter",y="mouse",(e==="pointerout"||e==="pointerover")&&(j=w0,v="onPointerLeave",p="onPointerEnter",y="pointer"),w=m==null?h:Hr(m),g=x==null?h:Hr(x),h=new j(v,y+"leave",m,n,d),h.target=w,h.relatedTarget=g,v=null,_l(d)===u&&(j=new j(p,y+"enter",x,n,d),j.target=g,j.relatedTarget=w,v=j),w=v,m&&x)t:{for(j=mM,p=m,y=x,g=0,v=p;v;v=j(v))g++;v=0;for(var _=y;_;_=j(_))v++;for(;0<g-v;)p=j(p),g--;for(;0<v-g;)y=j(y),v--;for(;g--;){if(p===y||y!==null&&p===y.alternate){j=p;break t}p=j(p),y=j(y)}j=null}else j=null;m!==null&&fp(f,h,m,j,!1),x!==null&&w!==null&&fp(f,w,x,j,!0)}}e:{if(h=u?Hr(u):window,m=h.nodeName&&h.nodeName.toLowerCase(),m==="select"||m==="input"&&h.type==="file")var M=E0;else if(S0(h))if(Xy)M=Ez;else{M=Nz;var z=jz}else m=h.nodeName,!m||m.toLowerCase()!=="input"||h.type!=="checkbox"&&h.type!=="radio"?u&&Bf(u.elementType)&&(M=E0):M=Sz;if(M&&(M=M(e,u))){Yy(f,M,n,d);break e}z&&z(e,h,u),e==="focusout"&&u&&h.type==="number"&&u.memoizedProps.value!=null&&rd(h,"number",h.value)}switch(z=u?Hr(u):window,e){case"focusin":(S0(z)||z.contentEditable==="true")&&(Ml=z,sd=u,Fr=null);break;case"focusout":Fr=sd=Ml=null;break;case"mousedown":cd=!0;break;case"contextmenu":case"mouseup":case"dragend":cd=!1,M0(f,n,d);break;case"selectionchange":if(_z)break;case"keydown":case"keyup":M0(f,n,d)}var C;if(If)e:{switch(e){case"compositionstart":var B="onCompositionStart";break e;case"compositionend":B="onCompositionEnd";break e;case"compositionupdate":B="onCompositionUpdate";break e}B=void 0}else zl?Vy(e,n)&&(B="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(B="onCompositionStart");B&&(Uy&&n.locale!=="ko"&&(zl||B!=="onCompositionStart"?B==="onCompositionEnd"&&zl&&(C=Iy()):(ca=d,Lf="value"in ca?ca.value:ca.textContent,zl=!0)),z=Es(u,B),0<z.length&&(B=new b0(B,e,null,n,d),f.push({event:B,listeners:z}),C?B.data=C:(C=$y(n),C!==null&&(B.data=C)))),(C=xz?yz(e,n):vz(e,n))&&(B=Es(u,"onBeforeInput"),0<B.length&&(z=new b0("onBeforeInput","beforeinput",null,n,d),f.push({event:z,listeners:B}),z.data=C)),uM(f,e,u,n,d)}H1(f,t)})}function ji(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Es(e,t){for(var n=t+"Capture",a=[];e!==null;){var l=e,r=l.stateNode;if(l=l.tag,l!==5&&l!==26&&l!==27||r===null||(l=hi(e,n),l!=null&&a.unshift(ji(e,l,r)),l=hi(e,t),l!=null&&a.push(ji(e,l,r))),e.tag===3)return a;e=e.return}return[]}function mM(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function fp(e,t,n,a,l){for(var r=t._reactName,i=[];n!==null&&n!==a;){var s=n,c=s.alternate,u=s.stateNode;if(s=s.tag,c!==null&&c===a)break;s!==5&&s!==26&&s!==27||u===null||(c=u,l?(u=hi(n,r),u!=null&&i.unshift(ji(n,u,c))):l||(u=hi(n,r),u!=null&&i.push(ji(n,u,c)))),n=n.return}i.length!==0&&e.push({event:t,listeners:i})}var pM=/\r\n?/g,gM=/\u0000|\uFFFD/g;function hp(e){return(typeof e=="string"?e:""+e).replace(pM,`
240
+ `).replace(gM,"")}function U1(e,t){return t=hp(t),hp(e)===t}function Ce(e,t,n,a,l,r){switch(n){case"children":typeof a=="string"?t==="body"||t==="textarea"&&a===""||nr(e,a):(typeof a=="number"||typeof a=="bigint")&&t!=="body"&&nr(e,""+a);break;case"className":ho(e,"class",a);break;case"tabIndex":ho(e,"tabindex",a);break;case"dir":case"role":case"viewBox":case"width":case"height":ho(e,n,a);break;case"style":Ly(e,a,r);break;case"data":if(t!=="object"){ho(e,"data",a);break}case"src":case"href":if(a===""&&(t!=="a"||n!=="href")){e.removeAttribute(n);break}if(a==null||typeof a=="function"||typeof a=="symbol"||typeof a=="boolean"){e.removeAttribute(n);break}a=Ao(""+a),e.setAttribute(n,a);break;case"action":case"formAction":if(typeof a=="function"){e.setAttribute(n,"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 r=="function"&&(n==="formAction"?(t!=="input"&&Ce(e,t,"name",l.name,l,null),Ce(e,t,"formEncType",l.formEncType,l,null),Ce(e,t,"formMethod",l.formMethod,l,null),Ce(e,t,"formTarget",l.formTarget,l,null)):(Ce(e,t,"encType",l.encType,l,null),Ce(e,t,"method",l.method,l,null),Ce(e,t,"target",l.target,l,null)));if(a==null||typeof a=="symbol"||typeof a=="boolean"){e.removeAttribute(n);break}a=Ao(""+a),e.setAttribute(n,a);break;case"onClick":a!=null&&(e.onclick=Ln);break;case"onScroll":a!=null&&ve("scroll",e);break;case"onScrollEnd":a!=null&&ve("scrollend",e);break;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(G(61));if(n=a.__html,n!=null){if(l.children!=null)throw Error(G(60));e.innerHTML=n}}break;case"multiple":e.multiple=a&&typeof a!="function"&&typeof a!="symbol";break;case"muted":e.muted=a&&typeof a!="function"&&typeof a!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(a==null||typeof a=="function"||typeof a=="boolean"||typeof a=="symbol"){e.removeAttribute("xlink:href");break}n=Ao(""+a),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",n);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":a!=null&&typeof a!="function"&&typeof a!="symbol"?e.setAttribute(n,""+a):e.removeAttribute(n);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":a&&typeof a!="function"&&typeof a!="symbol"?e.setAttribute(n,""):e.removeAttribute(n);break;case"capture":case"download":a===!0?e.setAttribute(n,""):a!==!1&&a!=null&&typeof a!="function"&&typeof a!="symbol"?e.setAttribute(n,a):e.removeAttribute(n);break;case"cols":case"rows":case"size":case"span":a!=null&&typeof a!="function"&&typeof a!="symbol"&&!isNaN(a)&&1<=a?e.setAttribute(n,a):e.removeAttribute(n);break;case"rowSpan":case"start":a==null||typeof a=="function"||typeof a=="symbol"||isNaN(a)?e.removeAttribute(n):e.setAttribute(n,a);break;case"popover":ve("beforetoggle",e),ve("toggle",e),Mo(e,"popover",a);break;case"xlinkActuate":Cn(e,"http://www.w3.org/1999/xlink","xlink:actuate",a);break;case"xlinkArcrole":Cn(e,"http://www.w3.org/1999/xlink","xlink:arcrole",a);break;case"xlinkRole":Cn(e,"http://www.w3.org/1999/xlink","xlink:role",a);break;case"xlinkShow":Cn(e,"http://www.w3.org/1999/xlink","xlink:show",a);break;case"xlinkTitle":Cn(e,"http://www.w3.org/1999/xlink","xlink:title",a);break;case"xlinkType":Cn(e,"http://www.w3.org/1999/xlink","xlink:type",a);break;case"xmlBase":Cn(e,"http://www.w3.org/XML/1998/namespace","xml:base",a);break;case"xmlLang":Cn(e,"http://www.w3.org/XML/1998/namespace","xml:lang",a);break;case"xmlSpace":Cn(e,"http://www.w3.org/XML/1998/namespace","xml:space",a);break;case"is":Mo(e,"is",a);break;case"innerText":case"textContent":break;default:(!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(n=XC.get(n)||n,Mo(e,n,a))}}function Dd(e,t,n,a,l,r){switch(n){case"style":Ly(e,a,r);break;case"dangerouslySetInnerHTML":if(a!=null){if(typeof a!="object"||!("__html"in a))throw Error(G(61));if(n=a.__html,n!=null){if(l.children!=null)throw Error(G(60));e.innerHTML=n}}break;case"children":typeof a=="string"?nr(e,a):(typeof a=="number"||typeof a=="bigint")&&nr(e,""+a);break;case"onScroll":a!=null&&ve("scroll",e);break;case"onScrollEnd":a!=null&&ve("scrollend",e);break;case"onClick":a!=null&&(e.onclick=Ln);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Ay.hasOwnProperty(n))e:{if(n[0]==="o"&&n[1]==="n"&&(l=n.endsWith("Capture"),t=n.slice(2,l?n.length-7:void 0),r=e[kt]||null,r=r!=null?r[n]:null,typeof r=="function"&&e.removeEventListener(t,r,l),typeof a=="function")){typeof r!="function"&&r!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,a,l);break e}n in e?e[n]=a:a===!0?e.setAttribute(n,""):Mo(e,n,a)}}}function dt(e,t,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":ve("error",e),ve("load",e);var a=!1,l=!1,r;for(r in n)if(n.hasOwnProperty(r)){var i=n[r];if(i!=null)switch(r){case"src":a=!0;break;case"srcSet":l=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(G(137,t));default:Ce(e,t,r,i,n,null)}}l&&Ce(e,t,"srcSet",n.srcSet,n,null),a&&Ce(e,t,"src",n.src,n,null);return;case"input":ve("invalid",e);var s=r=i=l=null,c=null,u=null;for(a in n)if(n.hasOwnProperty(a)){var d=n[a];if(d!=null)switch(a){case"name":l=d;break;case"type":i=d;break;case"checked":c=d;break;case"defaultChecked":u=d;break;case"value":r=d;break;case"defaultValue":s=d;break;case"children":case"dangerouslySetInnerHTML":if(d!=null)throw Error(G(137,t));break;default:Ce(e,t,a,d,n,null)}}Oy(e,r,s,c,u,i,l,!1);return;case"select":ve("invalid",e),a=i=r=null;for(l in n)if(n.hasOwnProperty(l)&&(s=n[l],s!=null))switch(l){case"value":r=s;break;case"defaultValue":i=s;break;case"multiple":a=s;default:Ce(e,t,l,s,n,null)}t=r,n=i,e.multiple=!!a,t!=null?Vl(e,!!a,t,!1):n!=null&&Vl(e,!!a,n,!0);return;case"textarea":ve("invalid",e),r=l=a=null;for(i in n)if(n.hasOwnProperty(i)&&(s=n[i],s!=null))switch(i){case"value":a=s;break;case"defaultValue":l=s;break;case"children":r=s;break;case"dangerouslySetInnerHTML":if(s!=null)throw Error(G(91));break;default:Ce(e,t,i,s,n,null)}Ry(e,a,l,r);return;case"option":for(c in n)if(n.hasOwnProperty(c)&&(a=n[c],a!=null))switch(c){case"selected":e.selected=a&&typeof a!="function"&&typeof a!="symbol";break;default:Ce(e,t,c,a,n,null)}return;case"dialog":ve("beforetoggle",e),ve("toggle",e),ve("cancel",e),ve("close",e);break;case"iframe":case"object":ve("load",e);break;case"video":case"audio":for(a=0;a<wi.length;a++)ve(wi[a],e);break;case"image":ve("error",e),ve("load",e);break;case"details":ve("toggle",e);break;case"embed":case"source":case"link":ve("error",e),ve("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(u in n)if(n.hasOwnProperty(u)&&(a=n[u],a!=null))switch(u){case"children":case"dangerouslySetInnerHTML":throw Error(G(137,t));default:Ce(e,t,u,a,n,null)}return;default:if(Bf(t)){for(d in n)n.hasOwnProperty(d)&&(a=n[d],a!==void 0&&Dd(e,t,d,a,n,void 0));return}}for(s in n)n.hasOwnProperty(s)&&(a=n[s],a!=null&&Ce(e,t,s,a,n,null))}function xM(e,t,n,a){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var l=null,r=null,i=null,s=null,c=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case"checked":break;case"value":break;case"defaultValue":c=f;default:a.hasOwnProperty(m)||Ce(e,t,m,null,a,f)}}for(var h in a){var m=a[h];if(f=n[h],a.hasOwnProperty(h)&&(m!=null||f!=null))switch(h){case"type":r=m;break;case"name":l=m;break;case"checked":u=m;break;case"defaultChecked":d=m;break;case"value":i=m;break;case"defaultValue":s=m;break;case"children":case"dangerouslySetInnerHTML":if(m!=null)throw Error(G(137,t));break;default:m!==f&&Ce(e,t,h,m,a,f)}}ld(e,i,s,c,u,d,r,l);return;case"select":m=i=s=h=null;for(r in n)if(c=n[r],n.hasOwnProperty(r)&&c!=null)switch(r){case"value":break;case"multiple":m=c;default:a.hasOwnProperty(r)||Ce(e,t,r,null,a,c)}for(l in a)if(r=a[l],c=n[l],a.hasOwnProperty(l)&&(r!=null||c!=null))switch(l){case"value":h=r;break;case"defaultValue":s=r;break;case"multiple":i=r;default:r!==c&&Ce(e,t,l,r,a,c)}t=s,n=i,a=m,h!=null?Vl(e,!!n,h,!1):!!a!=!!n&&(t!=null?Vl(e,!!n,t,!0):Vl(e,!!n,n?[]:"",!1));return;case"textarea":m=h=null;for(s in n)if(l=n[s],n.hasOwnProperty(s)&&l!=null&&!a.hasOwnProperty(s))switch(s){case"value":break;case"children":break;default:Ce(e,t,s,null,a,l)}for(i in a)if(l=a[i],r=n[i],a.hasOwnProperty(i)&&(l!=null||r!=null))switch(i){case"value":h=l;break;case"defaultValue":m=l;break;case"children":break;case"dangerouslySetInnerHTML":if(l!=null)throw Error(G(91));break;default:l!==r&&Ce(e,t,i,l,a,r)}By(e,h,m);return;case"option":for(var x in n)if(h=n[x],n.hasOwnProperty(x)&&h!=null&&!a.hasOwnProperty(x))switch(x){case"selected":e.selected=!1;break;default:Ce(e,t,x,null,a,h)}for(c in a)if(h=a[c],m=n[c],a.hasOwnProperty(c)&&h!==m&&(h!=null||m!=null))switch(c){case"selected":e.selected=h&&typeof h!="function"&&typeof h!="symbol";break;default:Ce(e,t,c,h,a,m)}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 j in n)h=n[j],n.hasOwnProperty(j)&&h!=null&&!a.hasOwnProperty(j)&&Ce(e,t,j,null,a,h);for(u in a)if(h=a[u],m=n[u],a.hasOwnProperty(u)&&h!==m&&(h!=null||m!=null))switch(u){case"children":case"dangerouslySetInnerHTML":if(h!=null)throw Error(G(137,t));break;default:Ce(e,t,u,h,a,m)}return;default:if(Bf(t)){for(var w in n)h=n[w],n.hasOwnProperty(w)&&h!==void 0&&!a.hasOwnProperty(w)&&Dd(e,t,w,void 0,a,h);for(d in a)h=a[d],m=n[d],!a.hasOwnProperty(d)||h===m||h===void 0&&m===void 0||Dd(e,t,d,h,a,m);return}}for(var p in n)h=n[p],n.hasOwnProperty(p)&&h!=null&&!a.hasOwnProperty(p)&&Ce(e,t,p,null,a,h);for(f in a)h=a[f],m=n[f],!a.hasOwnProperty(f)||h===m||h==null&&m==null||Ce(e,t,f,h,a,m)}function mp(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function yM(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,n=performance.getEntriesByType("resource"),a=0;a<n.length;a++){var l=n[a],r=l.transferSize,i=l.initiatorType,s=l.duration;if(r&&s&&mp(i)){for(i=0,s=l.responseEnd,a+=1;a<n.length;a++){var c=n[a],u=c.startTime;if(u>s)break;var d=c.transferSize,f=c.initiatorType;d&&mp(f)&&(c=c.responseEnd,i+=d*(c<s?1:(s-u)/(c-u)))}if(--a,t+=8*(r+i)/(l.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var Od=null,Bd=null;function ks(e){return e.nodeType===9?e:e.ownerDocument}function pp(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 V1(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function Rd(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var ku=null;function vM(){var e=window.event;return e&&e.type==="popstate"?e===ku?!1:(ku=e,!0):(ku=null,!1)}var $1=typeof setTimeout=="function"?setTimeout:void 0,bM=typeof clearTimeout=="function"?clearTimeout:void 0,gp=typeof Promise=="function"?Promise:void 0,wM=typeof queueMicrotask=="function"?queueMicrotask:typeof gp<"u"?function(e){return gp.resolve(null).then(e).catch(jM)}:$1;function jM(e){setTimeout(function(){throw e})}function Ca(e){return e==="head"}function xp(e,t){var n=t,a=0;do{var l=n.nextSibling;if(e.removeChild(n),l&&l.nodeType===8)if(n=l.data,n==="/$"||n==="/&"){if(a===0){e.removeChild(l),ur(t);return}a--}else if(n==="$"||n==="$?"||n==="$~"||n==="$!"||n==="&")a++;else if(n==="html")ni(e.ownerDocument.documentElement);else if(n==="head"){n=e.ownerDocument.head,ni(n);for(var r=n.firstChild;r;){var i=r.nextSibling,s=r.nodeName;r[Ui]||s==="SCRIPT"||s==="STYLE"||s==="LINK"&&r.rel.toLowerCase()==="stylesheet"||n.removeChild(r),r=i}}else n==="body"&&ni(e.ownerDocument.body);n=l}while(n);ur(t)}function yp(e,t){var n=e;e=0;do{var a=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display="none"):(n.style.display=n._stashedDisplay||"",n.getAttribute("style")===""&&n.removeAttribute("style")):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=""):n.nodeValue=n._stashedText||""),a&&a.nodeType===8)if(n=a.data,n==="/$"){if(e===0)break;e--}else n!=="$"&&n!=="$?"&&n!=="$~"&&n!=="$!"||e++;n=a}while(n)}function Ld(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case"HTML":case"HEAD":case"BODY":Ld(n),Of(n);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(n.rel.toLowerCase()==="stylesheet")continue}e.removeChild(n)}}function NM(e,t,n,a){for(;e.nodeType===1;){var l=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!a&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(a){if(!e[Ui])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(r=e.getAttribute("rel"),r==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(r!==l.rel||e.getAttribute("href")!==(l.href==null||l.href===""?null:l.href)||e.getAttribute("crossorigin")!==(l.crossOrigin==null?null:l.crossOrigin)||e.getAttribute("title")!==(l.title==null?null:l.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(r=e.getAttribute("src"),(r!==(l.src==null?null:l.src)||e.getAttribute("type")!==(l.type==null?null:l.type)||e.getAttribute("crossorigin")!==(l.crossOrigin==null?null:l.crossOrigin))&&r&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var r=l.name==null?null:""+l.name;if(l.type==="hidden"&&e.getAttribute("name")===r)return e}else return e;if(e=Wt(e.nextSibling),e===null)break}return null}function SM(e,t,n){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!n||(e=Wt(e.nextSibling),e===null))return null;return e}function Y1(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=Wt(e.nextSibling),e===null))return null;return e}function Hd(e){return e.data==="$?"||e.data==="$~"}function Id(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function EM(e,t){var n=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||n.readyState!=="loading")t();else{var a=function(){t(),n.removeEventListener("DOMContentLoaded",a)};n.addEventListener("DOMContentLoaded",a),e._reactRetry=a}}function Wt(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var Ud=null;function vp(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"||n==="/&"){if(t===0)return Wt(e.nextSibling);t--}else n!=="$"&&n!=="$!"&&n!=="$?"&&n!=="$~"&&n!=="&"||t++}e=e.nextSibling}return null}function bp(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"){if(t===0)return e;t--}else n!=="/$"&&n!=="/&"||t++}e=e.previousSibling}return null}function X1(e,t,n){switch(t=ks(n),e){case"html":if(e=t.documentElement,!e)throw Error(G(452));return e;case"head":if(e=t.head,!e)throw Error(G(453));return e;case"body":if(e=t.body,!e)throw Error(G(454));return e;default:throw Error(G(451))}}function ni(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Of(e)}var Jt=new Map,wp=new Set;function _s(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Pn=Ee.d;Ee.d={f:kM,r:_M,D:CM,C:zM,L:MM,m:AM,X:DM,S:TM,M:OM};function kM(){var e=Pn.f(),t=hc();return e||t}function _M(e){var t=gr(e);t!==null&&t.tag===5&&t.type==="form"?Lv(t):Pn.r(e)}var br=typeof document>"u"?null:document;function q1(e,t,n){var a=br;if(a&&typeof t=="string"&&t){var l=Gt(t);l='link[rel="'+e+'"][href="'+l+'"]',typeof n=="string"&&(l+='[crossorigin="'+n+'"]'),wp.has(l)||(wp.add(l),e={rel:e,crossOrigin:n,href:t},a.querySelector(l)===null&&(t=a.createElement("link"),dt(t,"link",e),lt(t),a.head.appendChild(t)))}}function CM(e){Pn.D(e),q1("dns-prefetch",e,null)}function zM(e,t){Pn.C(e,t),q1("preconnect",e,t)}function MM(e,t,n){Pn.L(e,t,n);var a=br;if(a&&e&&t){var l='link[rel="preload"][as="'+Gt(t)+'"]';t==="image"&&n&&n.imageSrcSet?(l+='[imagesrcset="'+Gt(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(l+='[imagesizes="'+Gt(n.imageSizes)+'"]')):l+='[href="'+Gt(e)+'"]';var r=l;switch(t){case"style":r=cr(e);break;case"script":r=wr(e)}Jt.has(r)||(e=Be({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),Jt.set(r,e),a.querySelector(l)!==null||t==="style"&&a.querySelector(Fi(r))||t==="script"&&a.querySelector(Gi(r))||(t=a.createElement("link"),dt(t,"link",e),lt(t),a.head.appendChild(t)))}}function AM(e,t){Pn.m(e,t);var n=br;if(n&&e){var a=t&&typeof t.as=="string"?t.as:"script",l='link[rel="modulepreload"][as="'+Gt(a)+'"][href="'+Gt(e)+'"]',r=l;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":r=wr(e)}if(!Jt.has(r)&&(e=Be({rel:"modulepreload",href:e},t),Jt.set(r,e),n.querySelector(l)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Gi(r)))return}a=n.createElement("link"),dt(a,"link",e),lt(a),n.head.appendChild(a)}}}function TM(e,t,n){Pn.S(e,t,n);var a=br;if(a&&e){var l=Ul(a).hoistableStyles,r=cr(e);t=t||"default";var i=l.get(r);if(!i){var s={loading:0,preload:null};if(i=a.querySelector(Fi(r)))s.loading=5;else{e=Be({rel:"stylesheet",href:e,"data-precedence":t},n),(n=Jt.get(r))&&vh(e,n);var c=i=a.createElement("link");lt(c),dt(c,"link",e),c._p=new Promise(function(u,d){c.onload=u,c.onerror=d}),c.addEventListener("load",function(){s.loading|=1}),c.addEventListener("error",function(){s.loading|=2}),s.loading|=4,Vo(i,t,a)}i={type:"stylesheet",instance:i,count:1,state:s},l.set(r,i)}}}function DM(e,t){Pn.X(e,t);var n=br;if(n&&e){var a=Ul(n).hoistableScripts,l=wr(e),r=a.get(l);r||(r=n.querySelector(Gi(l)),r||(e=Be({src:e,async:!0},t),(t=Jt.get(l))&&bh(e,t),r=n.createElement("script"),lt(r),dt(r,"link",e),n.head.appendChild(r)),r={type:"script",instance:r,count:1,state:null},a.set(l,r))}}function OM(e,t){Pn.M(e,t);var n=br;if(n&&e){var a=Ul(n).hoistableScripts,l=wr(e),r=a.get(l);r||(r=n.querySelector(Gi(l)),r||(e=Be({src:e,async:!0,type:"module"},t),(t=Jt.get(l))&&bh(e,t),r=n.createElement("script"),lt(r),dt(r,"link",e),n.head.appendChild(r)),r={type:"script",instance:r,count:1,state:null},a.set(l,r))}}function jp(e,t,n,a){var l=(l=ma.current)?_s(l):null;if(!l)throw Error(G(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(t=cr(n.href),n=Ul(l).hoistableStyles,a=n.get(t),a||(a={type:"style",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=cr(n.href);var r=Ul(l).hoistableStyles,i=r.get(e);if(i||(l=l.ownerDocument||l,i={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},r.set(e,i),(r=l.querySelector(Fi(e)))&&!r._p&&(i.instance=r,i.state.loading=5),Jt.has(e)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Jt.set(e,n),r||BM(l,e,n,i.state))),t&&a===null)throw Error(G(528,""));return i}if(t&&a!==null)throw Error(G(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=wr(n),n=Ul(l).hoistableScripts,a=n.get(t),a||(a={type:"script",instance:null,count:0,state:null},n.set(t,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(G(444,e))}}function cr(e){return'href="'+Gt(e)+'"'}function Fi(e){return'link[rel="stylesheet"]['+e+"]"}function F1(e){return Be({},e,{"data-precedence":e.precedence,precedence:null})}function BM(e,t,n,a){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?a.loading=1:(t=e.createElement("link"),a.preload=t,t.addEventListener("load",function(){return a.loading|=1}),t.addEventListener("error",function(){return a.loading|=2}),dt(t,"link",n),lt(t),e.head.appendChild(t))}function wr(e){return'[src="'+Gt(e)+'"]'}function Gi(e){return"script[async]"+e}function Np(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var a=e.querySelector('style[data-href~="'+Gt(n.href)+'"]');if(a)return t.instance=a,lt(a),a;var l=Be({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return a=(e.ownerDocument||e).createElement("style"),lt(a),dt(a,"style",l),Vo(a,n.precedence,e),t.instance=a;case"stylesheet":l=cr(n.href);var r=e.querySelector(Fi(l));if(r)return t.state.loading|=4,t.instance=r,lt(r),r;a=F1(n),(l=Jt.get(l))&&vh(a,l),r=(e.ownerDocument||e).createElement("link"),lt(r);var i=r;return i._p=new Promise(function(s,c){i.onload=s,i.onerror=c}),dt(r,"link",a),t.state.loading|=4,Vo(r,n.precedence,e),t.instance=r;case"script":return r=wr(n.src),(l=e.querySelector(Gi(r)))?(t.instance=l,lt(l),l):(a=n,(l=Jt.get(r))&&(a=Be({},n),bh(a,l)),e=e.ownerDocument||e,l=e.createElement("script"),lt(l),dt(l,"link",a),e.head.appendChild(l),t.instance=l);case"void":return null;default:throw Error(G(443,t.type))}else t.type==="stylesheet"&&!(t.state.loading&4)&&(a=t.instance,t.state.loading|=4,Vo(a,n.precedence,e));return t.instance}function Vo(e,t,n){for(var a=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),l=a.length?a[a.length-1]:null,r=l,i=0;i<a.length;i++){var s=a[i];if(s.dataset.precedence===t)r=s;else if(r!==l)break}r?r.parentNode.insertBefore(e,r.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function vh(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function bh(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var $o=null;function Sp(e,t,n){if($o===null){var a=new Map,l=$o=new Map;l.set(n,a)}else l=$o,a=l.get(n),a||(a=new Map,l.set(n,a));if(a.has(e))return a;for(a.set(e,null),n=n.getElementsByTagName(e),l=0;l<n.length;l++){var r=n[l];if(!(r[Ui]||r[st]||e==="link"&&r.getAttribute("rel")==="stylesheet")&&r.namespaceURI!=="http://www.w3.org/2000/svg"){var i=r.getAttribute(t)||"";i=e+i;var s=a.get(i);s?s.push(r):a.set(i,[r])}}return a}function Ep(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t==="title"?e.querySelector("head > title"):null)}function RM(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function G1(e){return!(e.type==="stylesheet"&&!(e.state.loading&3))}function LM(e,t,n,a){if(n.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&!(n.state.loading&4)){if(n.instance===null){var l=cr(a.href),r=t.querySelector(Fi(l));if(r){t=r._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=Cs.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=r,lt(r);return}r=t.ownerDocument||t,a=F1(a),(l=Jt.get(l))&&vh(a,l),r=r.createElement("link"),lt(r);var i=r;i._p=new Promise(function(s,c){i.onload=s,i.onerror=c}),dt(r,"link",a),n.instance=r}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Cs.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var _u=0;function HM(e,t){return e.stylesheets&&e.count===0&&Yo(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var a=setTimeout(function(){if(e.stylesheets&&Yo(e,e.stylesheets),e.unsuspend){var r=e.unsuspend;e.unsuspend=null,r()}},6e4+t);0<e.imgBytes&&_u===0&&(_u=62500*yM());var l=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Yo(e,e.stylesheets),e.unsuspend)){var r=e.unsuspend;e.unsuspend=null,r()}},(e.imgBytes>_u?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(a),clearTimeout(l)}}:null}function Cs(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Yo(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var zs=null;function Yo(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,zs=new Map,t.forEach(IM,e),zs=null,Cs.call(e))}function IM(e,t){if(!(t.state.loading&4)){var n=zs.get(e);if(n)var a=n.get(null);else{n=new Map,zs.set(e,n);for(var l=e.querySelectorAll("link[data-precedence],style[data-precedence]"),r=0;r<l.length;r++){var i=l[r];(i.nodeName==="LINK"||i.getAttribute("media")!=="not all")&&(n.set(i.dataset.precedence,i),a=i)}a&&n.set(null,a)}l=t.instance,i=l.getAttribute("data-precedence"),r=n.get(i)||a,r===a&&n.set(null,l),n.set(i,l),this.count++,a=Cs.bind(this),l.addEventListener("load",a),l.addEventListener("error",a),r?r.parentNode.insertBefore(l,r.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(l,e.firstChild)),t.state.loading|=4}}var Ni={$$typeof:Rn,Provider:null,Consumer:null,_currentValue:$a,_currentValue2:$a,_threadCount:0};function UM(e,t,n,a,l,r,i,s,c){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=Kc(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Kc(0),this.hiddenUpdates=Kc(null),this.identifierPrefix=a,this.onUncaughtError=l,this.onCaughtError=r,this.onRecoverableError=i,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function Z1(e,t,n,a,l,r,i,s,c,u,d,f){return e=new UM(e,t,n,i,c,u,d,f,s),t=1,r===!0&&(t|=24),r=Dt(3,null,null,t),e.current=r,r.stateNode=e,t=Ff(),t.refCount++,e.pooledCache=t,t.refCount++,r.memoizedState={element:a,isDehydrated:n,cache:t},Qf(r),e}function Q1(e){return e?(e=Dl,e):Dl}function K1(e,t,n,a,l,r){l=Q1(l),a.context===null?a.context=l:a.pendingContext=l,a=ga(t),a.payload={element:n},r=r===void 0?null:r,r!==null&&(a.callback=r),n=xa(e,a,t),n!==null&&(Nt(n,e,t),Zr(n,e,t))}function kp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function wh(e,t){kp(e,t),(e=e.alternate)&&kp(e,t)}function P1(e){if(e.tag===13||e.tag===31){var t=ml(e,67108864);t!==null&&Nt(t,e,67108864),wh(e,67108864)}}function _p(e){if(e.tag===13||e.tag===31){var t=Ht();t=Tf(t);var n=ml(e,t);n!==null&&Nt(n,e,t),wh(e,t)}}var Ms=!0;function VM(e,t,n,a){var l=fe.T;fe.T=null;var r=Ee.p;try{Ee.p=2,jh(e,t,n,a)}finally{Ee.p=r,fe.T=l}}function $M(e,t,n,a){var l=fe.T;fe.T=null;var r=Ee.p;try{Ee.p=8,jh(e,t,n,a)}finally{Ee.p=r,fe.T=l}}function jh(e,t,n,a){if(Ms){var l=Vd(a);if(l===null)Eu(e,t,a,As,n),Cp(e,a);else if(XM(l,e,t,n,a))a.stopPropagation();else if(Cp(e,a),t&4&&-1<YM.indexOf(e)){for(;l!==null;){var r=gr(l);if(r!==null)switch(r.tag){case 3:if(r=r.stateNode,r.current.memoizedState.isDehydrated){var i=Ba(r.pendingLanes);if(i!==0){var s=r;for(s.pendingLanes|=2,s.entangledLanes|=2;i;){var c=1<<31-Lt(i);s.entanglements[1]|=c,i&=~c}Nn(r),!(Se&6)&&(bs=Bt()+500,qi(0))}}break;case 31:case 13:s=ml(r,2),s!==null&&Nt(s,r,2),hc(),wh(r,2)}if(r=Vd(a),r===null&&Eu(e,t,a,As,n),r===l)break;l=r}l!==null&&a.stopPropagation()}else Eu(e,t,a,null,n)}}function Vd(e){return e=Rf(e),Nh(e)}var As=null;function Nh(e){if(As=null,e=_l(e),e!==null){var t=Ri(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=xy(t),e!==null)return e;e=null}else if(n===31){if(e=yy(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return As=e,null}function W1(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(CC()){case jy:return 2;case Ny:return 8;case is:case zC:return 32;case Sy:return 268435456;default:return 32}default:return 32}}var $d=!1,ba=null,wa=null,ja=null,Si=new Map,Ei=new Map,oa=[],YM="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 Cp(e,t){switch(e){case"focusin":case"focusout":ba=null;break;case"dragenter":case"dragleave":wa=null;break;case"mouseover":case"mouseout":ja=null;break;case"pointerover":case"pointerout":Si.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Ei.delete(t.pointerId)}}function Tr(e,t,n,a,l,r){return e===null||e.nativeEvent!==r?(e={blockedOn:t,domEventName:n,eventSystemFlags:a,nativeEvent:r,targetContainers:[l]},t!==null&&(t=gr(t),t!==null&&P1(t)),e):(e.eventSystemFlags|=a,t=e.targetContainers,l!==null&&t.indexOf(l)===-1&&t.push(l),e)}function XM(e,t,n,a,l){switch(t){case"focusin":return ba=Tr(ba,e,t,n,a,l),!0;case"dragenter":return wa=Tr(wa,e,t,n,a,l),!0;case"mouseover":return ja=Tr(ja,e,t,n,a,l),!0;case"pointerover":var r=l.pointerId;return Si.set(r,Tr(Si.get(r)||null,e,t,n,a,l)),!0;case"gotpointercapture":return r=l.pointerId,Ei.set(r,Tr(Ei.get(r)||null,e,t,n,a,l)),!0}return!1}function J1(e){var t=_l(e.target);if(t!==null){var n=Ri(t);if(n!==null){if(t=n.tag,t===13){if(t=xy(n),t!==null){e.blockedOn=t,f0(e.priority,function(){_p(n)});return}}else if(t===31){if(t=yy(n),t!==null){e.blockedOn=t,f0(e.priority,function(){_p(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Xo(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Vd(e.nativeEvent);if(n===null){n=e.nativeEvent;var a=new n.constructor(n.type,n);id=a,n.target.dispatchEvent(a),id=null}else return t=gr(n),t!==null&&P1(t),e.blockedOn=n,!1;t.shift()}return!0}function zp(e,t,n){Xo(e)&&n.delete(t)}function qM(){$d=!1,ba!==null&&Xo(ba)&&(ba=null),wa!==null&&Xo(wa)&&(wa=null),ja!==null&&Xo(ja)&&(ja=null),Si.forEach(zp),Ei.forEach(zp)}function wo(e,t){e.blockedOn===t&&(e.blockedOn=null,$d||($d=!0,nt.unstable_scheduleCallback(nt.unstable_NormalPriority,qM)))}var jo=null;function Mp(e){jo!==e&&(jo=e,nt.unstable_scheduleCallback(nt.unstable_NormalPriority,function(){jo===e&&(jo=null);for(var t=0;t<e.length;t+=3){var n=e[t],a=e[t+1],l=e[t+2];if(typeof a!="function"){if(Nh(a||n)===null)continue;break}var r=gr(n);r!==null&&(e.splice(t,3),t-=3,jd(r,{pending:!0,data:l,method:n.method,action:a},a,l))}}))}function ur(e){function t(c){return wo(c,e)}ba!==null&&wo(ba,e),wa!==null&&wo(wa,e),ja!==null&&wo(ja,e),Si.forEach(t),Ei.forEach(t);for(var n=0;n<oa.length;n++){var a=oa[n];a.blockedOn===e&&(a.blockedOn=null)}for(;0<oa.length&&(n=oa[0],n.blockedOn===null);)J1(n),n.blockedOn===null&&oa.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(a=0;a<n.length;a+=3){var l=n[a],r=n[a+1],i=l[kt]||null;if(typeof r=="function")i||Mp(n);else if(i){var s=null;if(r&&r.hasAttribute("formAction")){if(l=r,i=r[kt]||null)s=i.formAction;else if(Nh(l)!==null)continue}else s=i.action;typeof s=="function"?n[a+1]=s:(n.splice(a,3),a-=3),Mp(n)}}}function eb(){function e(r){r.canIntercept&&r.info==="react-transition"&&r.intercept({handler:function(){return new Promise(function(i){return l=i})},focusReset:"manual",scroll:"manual"})}function t(){l!==null&&(l(),l=null),a||setTimeout(n,20)}function n(){if(!a&&!navigation.transition){var r=navigation.currentEntry;r&&r.url!=null&&navigation.navigate(r.url,{state:r.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var a=!1,l=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(n,100),function(){a=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),l!==null&&(l(),l=null)}}}function Sh(e){this._internalRoot=e}gc.prototype.render=Sh.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(G(409));var n=t.current,a=Ht();K1(n,a,e,t,null,null)};gc.prototype.unmount=Sh.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;K1(e.current,2,null,e,null,null),hc(),t[pr]=null}};function gc(e){this._internalRoot=e}gc.prototype.unstable_scheduleHydration=function(e){if(e){var t=zy();e={blockedOn:null,target:e,priority:t};for(var n=0;n<oa.length&&t!==0&&t<oa[n].priority;n++);oa.splice(n,0,e),n===0&&J1(e)}};var Ap=py.version;if(Ap!=="19.2.7")throw Error(G(527,Ap,"19.2.7"));Ee.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(G(188)):(e=Object.keys(e).join(","),Error(G(268,e)));return e=wC(t),e=e!==null?vy(e):null,e=e===null?null:e.stateNode,e};var FM={bundleType:0,version:"19.2.7",rendererPackageName:"react-dom",currentDispatcherRef:fe,reconcilerVersion:"19.2.7"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var No=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!No.isDisabled&&No.supportsFiber)try{Li=No.inject(FM),Rt=No}catch{}}ec.createRoot=function(e,t){if(!gy(e))throw Error(G(299));var n=!1,a="",l=qv,r=Fv,i=Gv;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(a=t.identifierPrefix),t.onUncaughtError!==void 0&&(l=t.onUncaughtError),t.onCaughtError!==void 0&&(r=t.onCaughtError),t.onRecoverableError!==void 0&&(i=t.onRecoverableError)),t=Z1(e,1,!1,null,null,n,a,null,l,r,i,eb),e[pr]=t.current,yh(e),new Sh(t)};ec.hydrateRoot=function(e,t,n){if(!gy(e))throw Error(G(299));var a=!1,l="",r=qv,i=Fv,s=Gv,c=null;return n!=null&&(n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(l=n.identifierPrefix),n.onUncaughtError!==void 0&&(r=n.onUncaughtError),n.onCaughtError!==void 0&&(i=n.onCaughtError),n.onRecoverableError!==void 0&&(s=n.onRecoverableError),n.formState!==void 0&&(c=n.formState)),t=Z1(e,1,!0,t,n??null,a,l,c,r,i,s,eb),t.context=Q1(null),n=t.current,a=Ht(),a=Tf(a),l=ga(a),l.callback=null,xa(n,l,a),n=a,t.current.lanes=n,Ii(t,n),Nn(t),e[pr]=t.current,yh(e),new gc(t)};ec.version="19.2.7";function tb(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(tb)}catch(e){console.error(e)}}tb(),fy.exports=ec;var GM=fy.exports;function ZM(e,t){t!=null&&t.client&&h2(t.client),GM.createRoot(e).render(o.jsx(k.StrictMode,{children:o.jsx(yC,{})}))}const Cu={project:{create:"project:create",open:"project:open",openDialog:"project:openDialog",openZip:"project:openZip",listRecent:"project:listRecent",current:"project:current",mediaDirs:"project:mediaDirs",export:"project:export"},clipboard:{writeText:"clipboard:writeText"},assets:{importDialog:"assets:importDialog",importPaths:"assets:importPaths",list:"assets:list",delete:"assets:delete"},folders:{list:"folders:list",create:"folders:create",rename:"folders:rename",delete:"folders:delete"},frames:{list:"frames:list",importAsFrames:"frames:importAsFrames",addFromAsset:"frames:addFromAsset",rename:"frames:rename",reorder:"frames:reorder",delete:"frames:delete",clone:"frames:clone",unlink:"frames:unlink",setHero:"frames:setHero",listTakes:"frames:listTakes",heroTakes:"frames:heroTakes",listInputs:"frames:listInputs",addInput:"frames:addInput",addInputs:"frames:addInputs",addSourceInput:"frames:addSourceInput",removeInput:"frames:removeInput",removeInputById:"frames:removeInputById",reorderInputs:"frames:reorderInputs",listAllTakes:"frames:listAllTakes",deleteTake:"frames:deleteTake",setFalParams:"frames:setFalParams",setModel:"frames:setModel",setProvider:"frames:setProvider",resolveFalInputs:"frames:resolveFalInputs"},generation:{run:"generation:run",runWorkflow:"generation:runWorkflow",cancel:"generation:cancel",resumePending:"generation:resumePending"},falSettings:{status:"falSettings:status",setApiKey:"falSettings:setApiKey",clearApiKey:"falSettings:clearApiKey"},comfy:{status:"comfy:status",linkFrame:"comfy:linkFrame",uploadInputs:"comfy:uploadInputs",pullWorkflow:"comfy:pullWorkflow",saveLiveWorkflow:"comfy:saveLiveWorkflow",pushWorkflow:"comfy:pushWorkflow",pullLatest:"comfy:pullLatest",latestRun:"comfy:latestRun",captureOutput:"comfy:captureOutput"},settings:{get:"settings:get",setComfyUrl:"settings:setComfyUrl",setCoreUrl:"settings:setCoreUrl"},core:{status:"core:status",models:"core:models"},models:{requirements:"models:requirements",download:"models:download"},export:{exportFrames:"export:exportFrames"},moodboard:{list:"moodboard:list",addAsset:"moodboard:addAsset",addText:"moodboard:addText",addFrameFromAsset:"moodboard:addFrameFromAsset",addEmptyFrame:"moodboard:addEmptyFrame",addFrameItem:"moodboard:addFrameItem",addPreview:"moodboard:addPreview",addLayer:"moodboard:addLayer",addDirector:"moodboard:addDirector",addTrim:"moodboard:addTrim",addGenNode:"moodboard:addGenNode",addPrompt:"moodboard:addPrompt",addCoreNode:"moodboard:addCoreNode",updateItem:"moodboard:updateItem",deleteItem:"moodboard:deleteItem",importAndPlace:"moodboard:importAndPlace",createConnector:"moodboard:createConnector",deleteConnector:"moodboard:deleteConnector",setConnectorVolume:"moodboard:setConnectorVolume",replaceBoard:"moodboard:replaceBoard"},timeline:{resolve:"timeline:resolve",resolveTrim:"timeline:resolveTrim",setVolumes:"timeline:setVolumes",buildPreview:"timeline:buildPreview",export:"timeline:export"},dialog:{pickDirectory:"dialog:pickDirectory"},media:{save:"media:save",copyImage:"media:copyImage"},shell:{openExternal:"shell:openExternal"},updates:{check:"updates:check",quitAndInstall:"updates:quitAndInstall"},app:{version:"app:version"},events:{libraryChanged:"events:libraryChanged",timelineProgress:"events:timelineProgress",generationProgress:"events:generationProgress",generationNodeDone:"events:generationNodeDone",generationDone:"events:generationDone",generationError:"events:generationError",modelDownloadProgress:"events:modelDownloadProgress",modelDownloadDone:"events:modelDownloadDone",modelDownloadError:"events:modelDownloadError",updateAvailable:"events:updateAvailable",updateProgress:"events:updateProgress",updateDownloaded:"events:updateDownloaded"}};function QM(e){const t=e.replace(/\/$/,""),n=async(h,m)=>{try{const x=await fetch(`${t}/rpc`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({channel:h,args:m})});return x.ok?await x.json():{ok:!1,error:`Request failed (HTTP ${x.status}).`}}catch(x){return{ok:!1,error:x instanceof Error?x.message:String(x)}}},a=new Map,l=(h,m)=>{const x=a.get(h)??new Set;return x.add(m),a.set(h,x),()=>{var j;(j=a.get(h))==null||j.delete(m)}};PM(t.replace(/^http/,"ws")+"/events",a);const r={};for(const[h,m]of Object.entries(Cu)){if(h==="events")continue;const x={};for(const[j,w]of Object.entries(m))x[j]=(...p)=>n(w,p);r[h]=x}const i={};for(const[h,m]of Object.entries(Cu.events))h!=="timelineProgress"&&(i[`on${h.charAt(0).toUpperCase()}${h.slice(1)}`]=x=>l(m,x));r.events=i;const s=r.timeline;s.onProgress=h=>l(Cu.events.timelineProgress,h),r.getPathForFile=()=>"";const c=r.assets;c.importDialog=async h=>{const m=await g2();return{ok:!0,value:await qp(m,h)}};const u=r.shell;u.openExternal=h=>(window.open(h,"_blank","noopener,noreferrer"),Promise.resolve({ok:!0,value:void 0}));const d=r.clipboard;d.writeText=h=>Dp(()=>navigator.clipboard.writeText(h));const f=r.media;return f.save=async(h,m)=>{try{return await KM(Tp(h),m),{ok:!0,value:!0}}catch(x){return{ok:!1,error:nb(x)}}},f.copyImage=h=>Dp(async()=>{const m=await(await fetch(Tp(h))).blob();await navigator.clipboard.write([new ClipboardItem({[m.type]:m})])}),r}function Tp(e){return/^(https?:|blob:|data:)/.test(e)||e.startsWith("/")?e:ce(e)}async function KM(e,t){const n=await(await fetch(e)).blob(),a=URL.createObjectURL(n),l=document.createElement("a");l.href=a,l.download=t||"download",document.body.appendChild(l),l.click(),l.remove(),URL.revokeObjectURL(a)}async function Dp(e){try{return await e(),{ok:!0,value:void 0}}catch(t){return{ok:!1,error:nb(t)}}}function nb(e){return e instanceof Error?e.message:String(e)}function PM(e,t){const n=()=>{const a=new WebSocket(e);a.onmessage=l=>{try{const{channel:r,payload:i}=JSON.parse(l.data),s=t.get(r);if(s)for(const c of s)c(i)}catch{}},a.onclose=()=>{setTimeout(n,1e3)}};n()}const ab=document.getElementById("root");if(!ab)throw new Error("Missing #root element");const lb=window.location.origin;jE(e=>`${lb}/media/`+e.split("/").map(encodeURIComponent).join("/"));ZM(ab,{client:QM(lb)});