AppManager: Add API endpoint to install dodo app

Refactors cue definitions.

Next steps:
* Needs some cleanup, namespace is hard coded ...
* Maybe merge with regular install API
* Support exposing ports across clusters

Change-Id: Ibfc3c3f742b61f2c5874012fe6c77b958eae81d9
diff --git a/apps/app-runner/Dockerfile.golang.1.24.0 b/apps/app-runner/Dockerfile.golang.1.24.0
new file mode 100644
index 0000000..692818b
--- /dev/null
+++ b/apps/app-runner/Dockerfile.golang.1.24.0
@@ -0,0 +1,5 @@
+FROM golang:1.24.0-alpine3.21
+
+ARG TARGETARCH
+
+COPY app-runner_${TARGETARCH} /usr/bin/app-runner
diff --git a/apps/app-runner/Makefile b/apps/app-runner/Makefile
index 9c76326..8f11f8b 100644
--- a/apps/app-runner/Makefile
+++ b/apps/app-runner/Makefile
@@ -1,6 +1,7 @@
 repo_name ?= giolekva
 podman ?= docker
 ifeq ($(podman), podman)
+manifest_dest_golang_1_24_0=docker://docker.io/$(repo_name)/app-runner:golang-1.24.0
 manifest_dest_golang_1_22_0=docker://docker.io/$(repo_name)/app-runner:golang-1.22.0
 manifest_dest_golang_1_20_0=docker://docker.io/$(repo_name)/app-runner:golang-1.20.0
 manifest_dest_hugo_latest=docker://docker.io/$(repo_name)/app-runner:hugo-latest
@@ -26,6 +27,21 @@
 build_amd64:
 	/usr/local/go/bin/go build -o app-runner_amd64 *.go
 
+# Golang 1.24.0
+
+push_golang_1_24_0_arm64: clean build_arm64
+	$(podman) build --platform linux/arm64 --tag=$(repo_name)/app-runner:golang-1.24.0-arm64 -f Dockerfile.golang.1.24.0 .
+	$(podman) push $(repo_name)/app-runner:golang-1.24.0-arm64
+
+push_golang_1_24_0_amd64: clean build_amd64
+	$(podman) build --platform linux/amd64 --tag=$(repo_name)/app-runner:golang-1.24.0-amd64 -f Dockerfile.golang.1.24.0 .
+	$(podman) push $(repo_name)/app-runner:golang-1.24.0-amd64
+
+push_golang_1_24_0: push_golang_1_24_0_arm64 push_golang_1_24_0_amd64
+	$(podman) manifest create $(repo_name)/app-runner:golang-1.24.0 $(repo_name)/app-runner:golang-1.24.0-arm64 $(repo_name)/app-runner:golang-1.24.0-amd64
+	$(podman) manifest push $(repo_name)/app-runner:golang-1.24.0 $(manifest_dest_golang_1_24_0)
+	$(podman) manifest rm $(repo_name)/app-runner:golang-1.24.0
+
 # Golang 1.22.0
 
 push_golang_1_22_0_arm64: clean build_arm64
diff --git a/apps/app-runner/main.go b/apps/app-runner/main.go
index 9296749..2f4f5a8 100644
--- a/apps/app-runner/main.go
+++ b/apps/app-runner/main.go
@@ -21,6 +21,7 @@
 var appId = flag.String("app-id", "", "Application ID")
 var repoAddr = flag.String("repo-addr", "", "Git repository address")
 var branch = flag.String("branch", "", "Name of the branch to process")
+var rootDir = flag.String("root-dir", "/", "Path to the app code")
 var sshKey = flag.String("ssh-key", "", "Private SSH key to access Git repository")
 var appDir = flag.String("app-dir", "", "Path to store application repository locally")
 var runCfg = flag.String("run-cfg", "", "Run configuration")
@@ -32,11 +33,19 @@
 	Env  []string `json:"env"`
 }
 
-func CloneRepositoryBranch(addr, branch string, signer ssh.Signer, path string) error {
+func CloneRepositoryBranch(addr, branch, rootDir string, signer ssh.Signer, path string) error {
 	ref := fmt.Sprintf("refs/heads/%s", branch)
-	c, err := git.Clone(memory.NewStorage(), osfs.New(path, osfs.WithBoundOS()), &git.CloneOptions{
-		URL: addr,
-		Auth: &gitssh.PublicKeys{
+	opts := &git.CloneOptions{
+		URL:             addr,
+		RemoteName:      "origin",
+		ReferenceName:   plumbing.ReferenceName(ref),
+		SingleBranch:    true,
+		Depth:           1,
+		InsecureSkipTLS: true,
+		Progress:        os.Stdout,
+	}
+	if signer != nil {
+		opts.Auth = &gitssh.PublicKeys{
 			User:   "git",
 			Signer: signer,
 			HostKeyCallbackHelper: gitssh.HostKeyCallbackHelper{
@@ -46,14 +55,9 @@
 					return nil
 				},
 			},
-		},
-		RemoteName:      "origin",
-		ReferenceName:   plumbing.ReferenceName(ref),
-		SingleBranch:    true,
-		Depth:           1,
-		InsecureSkipTLS: true,
-		Progress:        os.Stdout,
-	})
+		}
+	}
+	c, err := git.Clone(memory.NewStorage(), osfs.New(path, osfs.WithBoundOS()), opts)
 	if err != nil {
 		return err
 	}
@@ -61,18 +65,22 @@
 	if err != nil {
 		return err
 	}
-	sb, err := wt.Submodules()
-	if err != nil {
-		return err
+	if wt == nil {
+		panic(wt)
 	}
-	if err := sb.Init(); err != nil {
-		return err
-	}
-	if err := sb.Update(&git.SubmoduleUpdateOptions{
-		Depth: 1,
-	}); err != nil {
-		return err
-	}
+	// TODO(gio): This should probably be removed.
+	// sb, err := wt.Submodules()
+	// if err != nil {
+	// 	return err
+	// }
+	// if err := sb.Init(); err != nil {
+	// 	return err
+	// }
+	// if err := sb.Update(&git.SubmoduleUpdateOptions{
+	// 	Depth: 1,
+	// }); err != nil {
+	// 	return err
+	// }
 	return err
 }
 
@@ -82,15 +90,18 @@
 	if !ok {
 		panic("no SELF_IP")
 	}
-	key, err := os.ReadFile(*sshKey)
-	if err != nil {
-		panic(err)
+	var signer ssh.Signer
+	if *sshKey != "" {
+		key, err := os.ReadFile(*sshKey)
+		if err != nil {
+			panic(err)
+		}
+		signer, err = ssh.ParsePrivateKey(key)
+		if err != nil {
+			panic(err)
+		}
 	}
-	signer, err := ssh.ParsePrivateKey(key)
-	if err != nil {
-		panic(err)
-	}
-	if err := CloneRepositoryBranch(*repoAddr, *branch, signer, *appDir); err != nil {
+	if err := CloneRepositoryBranch(*repoAddr, *branch, *rootDir, signer, *appDir); err != nil {
 		panic(err)
 	}
 	r, err := os.Open(*runCfg)
@@ -102,7 +113,7 @@
 	if err := json.NewDecoder(r).Decode(&cmds); err != nil {
 		panic(err)
 	}
-	s := NewServer(*port, *appId, *repoAddr, *branch, signer, *appDir, cmds, self, *managerAddr)
+	s := NewServer(*port, *appId, *repoAddr, *branch, *rootDir, signer, *appDir, cmds, self, *managerAddr)
 	if err := s.Start(); err != nil {
 		log.Fatal(err)
 	}
diff --git a/apps/app-runner/server.go b/apps/app-runner/server.go
index 1779a76..ad8c7bc 100644
--- a/apps/app-runner/server.go
+++ b/apps/app-runner/server.go
@@ -8,6 +8,7 @@
 	"net/http"
 	"os"
 	"os/exec"
+	"path/filepath"
 	"sync"
 	"syscall"
 	"time"
@@ -23,6 +24,7 @@
 	cmd         *exec.Cmd
 	repoAddr    string
 	branch      string
+	rootDir     string
 	signer      ssh.Signer
 	appDir      string
 	runCommands []Command
@@ -32,7 +34,7 @@
 	currDir     string
 }
 
-func NewServer(port int, appId string, repoAddr, branch string, signer ssh.Signer, appDir string, runCommands []Command, self string, manager string) *Server {
+func NewServer(port int, appId string, repoAddr, branch, rootDir string, signer ssh.Signer, appDir string, runCommands []Command, self string, manager string) *Server {
 	return &Server{
 		l:           &sync.Mutex{},
 		port:        port,
@@ -40,6 +42,7 @@
 		appId:       appId,
 		repoAddr:    repoAddr,
 		branch:      branch,
+		rootDir:     rootDir,
 		signer:      signer,
 		appDir:      appDir,
 		runCommands: runCommands,
@@ -94,7 +97,7 @@
 	if err != nil {
 		return err
 	}
-	if err := CloneRepositoryBranch(s.repoAddr, s.branch, s.signer, newDir); err != nil {
+	if err := CloneRepositoryBranch(s.repoAddr, s.branch, s.rootDir, s.signer, newDir); err != nil {
 		return err
 	}
 	logM := io.MultiWriter(os.Stdout, s.logs)
@@ -102,7 +105,7 @@
 		args := []string{c.Bin}
 		args = append(args, c.Args...)
 		cmd := &exec.Cmd{
-			Dir:    newDir,
+			Dir:    filepath.Join(newDir, s.rootDir),
 			Path:   c.Bin,
 			Args:   args,
 			Env:    append(os.Environ(), c.Env...),
diff --git a/apps/canvas/server/front/assets/index-DITJ3yy7.css b/apps/canvas/server/front/assets/index-DITJ3yy7.css
new file mode 100644
index 0000000..400cea4
--- /dev/null
+++ b/apps/canvas/server/front/assets/index-DITJ3yy7.css
@@ -0,0 +1 @@
+*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 0 0% 3.9%;--card: 0 0% 100%;--card-foreground: 0 0% 3.9%;--popover: 0 0% 100%;--popover-foreground: 0 0% 3.9%;--primary: 0 0% 9%;--primary-foreground: 0 0% 98%;--secondary: 0 0% 96.1%;--secondary-foreground: 0 0% 9%;--muted: 0 0% 96.1%;--muted-foreground: 0 0% 45.1%;--accent: 0 0% 96.1%;--accent-foreground: 0 0% 9%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 0 0% 89.8%;--input: 0 0% 89.8%;--ring: 0 0% 3.9%;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%;--radius: .5rem ;--sidebar-background: 0 0% 98%;--sidebar-foreground: 240 5.3% 26.1%;--sidebar-primary: 240 5.9% 10%;--sidebar-primary-foreground: 0 0% 98%;--sidebar-accent: 240 4.8% 95.9%;--sidebar-accent-foreground: 240 5.9% 10%;--sidebar-border: 220 13% 91%;--sidebar-ring: 217.2 91.2% 59.8%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.bottom-0{bottom:0}.left-0{left:0}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\.5{top:.375rem}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[100\]{z-index:100}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.size-4{width:1rem;height:1rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-2\.5{height:.625rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-96{max-height:24rem}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-svh{min-height:100svh}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-9{width:2.25rem}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[1px\]{width:1px}.w-\[400px\]{width:400px}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-5{min-width:1.25rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-\[--skeleton-width\]{max-width:var(--skeleton-width)}.max-w-lg{max-width:32rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.caption-top{caption-side:top}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-px{--tw-translate-x: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-px{--tw-translate-x: 1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.\!justify-end{justify-content:flex-end!important}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.\!space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0 !important;margin-right:calc(1rem * var(--tw-space-x-reverse))!important;margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))!important}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity))}.border-destructive{border-color:hsl(var(--destructive))}.border-input{border-color:hsl(var(--input))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity))}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:transparent}.border-yellow-500{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity))}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity))}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-border{background-color:hsl(var(--border))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar-background))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-\[1px\]{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-\[0\.8rem\]{font-size:.8rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground) / .5)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground) / .7)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-sidebar-ring{--tw-ring-color: hsl(var(--sidebar-ring))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[margin\,opa\]{transition-property:margin,opa;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.duration-200{animation-duration:.2s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{animation-timing-function:linear}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-sidebar-ring:focus-visible{--tw-ring-color: hsl(var(--sidebar-ring))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(var(--sidebar-accent-foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100{opacity:1}.group\/menu-item:hover .group-hover\/menu-item\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted) / .4)}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive) / .3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar-background))}.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8{padding-right:2rem}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\[side\=left\]\:-right-4{right:-1rem}.group[data-side=right] .group-data-\[side\=right\]\:left-0{left:0}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8{width:2rem!important;height:2rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\]{width:var(--sidebar-width-icon)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]{width:calc(var(--sidebar-width-icon) + 1rem)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]{width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0{width:0px}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-side=right] .group-data-\[side\=right\]\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg{border-radius:var(--radius)}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border{border-width:1px}.group[data-side=left] .group-data-\[side\=left\]\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\[side\=right\]\:border-l{border-left-width:1px}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border{border-color:hsl(var(--sidebar-border))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0{padding:0!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2{padding:.5rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover{background-color:hsl(var(--sidebar-background))}.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5{top:.375rem}.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5{top:.625rem}.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1{top:.25rem}.peer[data-variant=inset]~.peer-data-\[variant\=inset\]\:min-h-\[calc\(100svh-theme\(spacing\.4\)\)\]{min-height:calc(100svh - 1rem)}.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}@media (min-width: 640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:flex{display:flex}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media (min-width: 768px){.md\:block{display:block}.md\:flex{display:flex}.md\:max-w-\[420px\]{max-width:420px}.md\:opacity-0{opacity:0}.after\:md\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}.\[\&\+div\]\:text-xs+div{font-size:.75rem;line-height:1rem}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}.react-flow__handle.connectingto{background:#ff6060}.react-flow__handle.valid{background:#5d9}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgb(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgb(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color, var(--xy-background-color-props, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}
diff --git a/apps/canvas/server/front/assets/index-DRnLehre.js b/apps/canvas/server/front/assets/index-DRnLehre.js
new file mode 100644
index 0000000..606d3cd
--- /dev/null
+++ b/apps/canvas/server/front/assets/index-DRnLehre.js
@@ -0,0 +1,126 @@
+function h3(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const o in r)if(o!=="default"&&!(o in e)){const i=Object.getOwnPropertyDescriptor(r,o);i&&Object.defineProperty(e,o,i.get?i:{enumerable:!0,get:()=>r[o]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const s of i.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerPolicy&&(i.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?i.credentials="include":o.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(o){if(o.ep)return;o.ep=!0;const i=n(o);fetch(o.href,i)}})();function Sh(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Hy={exports:{}},Cu={},By={exports:{}},Ee={};/**
+ * @license React
+ * react.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */var qa=Symbol.for("react.element"),m3=Symbol.for("react.portal"),g3=Symbol.for("react.fragment"),v3=Symbol.for("react.strict_mode"),y3=Symbol.for("react.profiler"),x3=Symbol.for("react.provider"),w3=Symbol.for("react.context"),_3=Symbol.for("react.forward_ref"),S3=Symbol.for("react.suspense"),b3=Symbol.for("react.memo"),C3=Symbol.for("react.lazy"),Pg=Symbol.iterator;function E3(e){return e===null||typeof e!="object"?null:(e=Pg&&e[Pg]||e["@@iterator"],typeof e=="function"?e:null)}var Uy={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Wy=Object.assign,Zy={};function ls(e,t,n){this.props=e,this.context=t,this.refs=Zy,this.updater=n||Uy}ls.prototype.isReactComponent={};ls.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};ls.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Gy(){}Gy.prototype=ls.prototype;function bh(e,t,n){this.props=e,this.context=t,this.refs=Zy,this.updater=n||Uy}var Ch=bh.prototype=new Gy;Ch.constructor=bh;Wy(Ch,ls.prototype);Ch.isPureReactComponent=!0;var Ig=Array.isArray,Yy=Object.prototype.hasOwnProperty,Eh={current:null},Ky={key:!0,ref:!0,__self:!0,__source:!0};function Xy(e,t,n){var r,o={},i=null,s=null;if(t!=null)for(r in t.ref!==void 0&&(s=t.ref),t.key!==void 0&&(i=""+t.key),t)Yy.call(t,r)&&!Ky.hasOwnProperty(r)&&(o[r]=t[r]);var a=arguments.length-2;if(a===1)o.children=n;else if(1<a){for(var l=Array(a),c=0;c<a;c++)l[c]=arguments[c+2];o.children=l}if(e&&e.defaultProps)for(r in a=e.defaultProps,a)o[r]===void 0&&(o[r]=a[r]);return{$$typeof:qa,type:e,key:i,ref:s,props:o,_owner:Eh.current}}function k3(e,t){return{$$typeof:qa,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function kh(e){return typeof e=="object"&&e!==null&&e.$$typeof===qa}function N3(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var Rg=/\/+/g;function jd(e,t){return typeof e=="object"&&e!==null&&e.key!=null?N3(""+e.key):t.toString(36)}function Ql(e,t,n,r,o){var i=typeof e;(i==="undefined"||i==="boolean")&&(e=null);var s=!1;if(e===null)s=!0;else switch(i){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case qa:case m3:s=!0}}if(s)return s=e,o=o(s),e=r===""?"."+jd(s,0):r,Ig(o)?(n="",e!=null&&(n=e.replace(Rg,"$&/")+"/"),Ql(o,t,n,"",function(c){return c})):o!=null&&(kh(o)&&(o=k3(o,n+(!o.key||s&&s.key===o.key?"":(""+o.key).replace(Rg,"$&/")+"/")+e)),t.push(o)),1;if(s=0,r=r===""?".":r+":",Ig(e))for(var a=0;a<e.length;a++){i=e[a];var l=r+jd(i,a);s+=Ql(i,t,n,l,o)}else if(l=E3(e),typeof l=="function")for(e=l.call(e),a=0;!(i=e.next()).done;)i=i.value,l=r+jd(i,a++),s+=Ql(i,t,n,l,o);else if(i==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return s}function yl(e,t,n){if(e==null)return e;var r=[],o=0;return Ql(e,r,"","",function(i){return t.call(n,i,o++)}),r}function T3(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 bt={current:null},Jl={transition:null},P3={ReactCurrentDispatcher:bt,ReactCurrentBatchConfig:Jl,ReactCurrentOwner:Eh};function qy(){throw Error("act(...) is not supported in production builds of React.")}Ee.Children={map:yl,forEach:function(e,t,n){yl(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return yl(e,function(){t++}),t},toArray:function(e){return yl(e,function(t){return t})||[]},only:function(e){if(!kh(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};Ee.Component=ls;Ee.Fragment=g3;Ee.Profiler=y3;Ee.PureComponent=bh;Ee.StrictMode=v3;Ee.Suspense=S3;Ee.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=P3;Ee.act=qy;Ee.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=Wy({},e.props),o=e.key,i=e.ref,s=e._owner;if(t!=null){if(t.ref!==void 0&&(i=t.ref,s=Eh.current),t.key!==void 0&&(o=""+t.key),e.type&&e.type.defaultProps)var a=e.type.defaultProps;for(l in t)Yy.call(t,l)&&!Ky.hasOwnProperty(l)&&(r[l]=t[l]===void 0&&a!==void 0?a[l]:t[l])}var l=arguments.length-2;if(l===1)r.children=n;else if(1<l){a=Array(l);for(var c=0;c<l;c++)a[c]=arguments[c+2];r.children=a}return{$$typeof:qa,type:e.type,key:o,ref:i,props:r,_owner:s}};Ee.createContext=function(e){return e={$$typeof:w3,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:x3,_context:e},e.Consumer=e};Ee.createElement=Xy;Ee.createFactory=function(e){var t=Xy.bind(null,e);return t.type=e,t};Ee.createRef=function(){return{current:null}};Ee.forwardRef=function(e){return{$$typeof:_3,render:e}};Ee.isValidElement=kh;Ee.lazy=function(e){return{$$typeof:C3,_payload:{_status:-1,_result:e},_init:T3}};Ee.memo=function(e,t){return{$$typeof:b3,type:e,compare:t===void 0?null:t}};Ee.startTransition=function(e){var t=Jl.transition;Jl.transition={};try{e()}finally{Jl.transition=t}};Ee.unstable_act=qy;Ee.useCallback=function(e,t){return bt.current.useCallback(e,t)};Ee.useContext=function(e){return bt.current.useContext(e)};Ee.useDebugValue=function(){};Ee.useDeferredValue=function(e){return bt.current.useDeferredValue(e)};Ee.useEffect=function(e,t){return bt.current.useEffect(e,t)};Ee.useId=function(){return bt.current.useId()};Ee.useImperativeHandle=function(e,t,n){return bt.current.useImperativeHandle(e,t,n)};Ee.useInsertionEffect=function(e,t){return bt.current.useInsertionEffect(e,t)};Ee.useLayoutEffect=function(e,t){return bt.current.useLayoutEffect(e,t)};Ee.useMemo=function(e,t){return bt.current.useMemo(e,t)};Ee.useReducer=function(e,t,n){return bt.current.useReducer(e,t,n)};Ee.useRef=function(e){return bt.current.useRef(e)};Ee.useState=function(e){return bt.current.useState(e)};Ee.useSyncExternalStore=function(e,t,n){return bt.current.useSyncExternalStore(e,t,n)};Ee.useTransition=function(){return bt.current.useTransition()};Ee.version="18.3.1";By.exports=Ee;var x=By.exports;const de=Sh(x),Nh=h3({__proto__:null,default:de},[x]);/**
+ * @license React
+ * react-jsx-runtime.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */var I3=x,R3=Symbol.for("react.element"),A3=Symbol.for("react.fragment"),M3=Object.prototype.hasOwnProperty,j3=I3.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,O3={key:!0,ref:!0,__self:!0,__source:!0};function Qy(e,t,n){var r,o={},i=null,s=null;n!==void 0&&(i=""+n),t.key!==void 0&&(i=""+t.key),t.ref!==void 0&&(s=t.ref);for(r in t)M3.call(t,r)&&!O3.hasOwnProperty(r)&&(o[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)o[r]===void 0&&(o[r]=t[r]);return{$$typeof:R3,type:e,key:i,ref:s,props:o,_owner:j3.current}}Cu.Fragment=A3;Cu.jsx=Qy;Cu.jsxs=Qy;Hy.exports=Cu;var h=Hy.exports,Jy={exports:{}},Xt={},e1={exports:{}},t1={};/**
+ * @license React
+ * scheduler.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */(function(e){function t(k,I){var z=k.length;k.push(I);e:for(;0<z;){var U=z-1>>>1,Y=k[U];if(0<o(Y,I))k[U]=I,k[z]=Y,z=U;else break e}}function n(k){return k.length===0?null:k[0]}function r(k){if(k.length===0)return null;var I=k[0],z=k.pop();if(z!==I){k[0]=z;e:for(var U=0,Y=k.length,H=Y>>>1;U<H;){var Z=2*(U+1)-1,K=k[Z],G=Z+1,V=k[G];if(0>o(K,z))G<Y&&0>o(V,K)?(k[U]=V,k[G]=z,U=G):(k[U]=K,k[Z]=z,U=Z);else if(G<Y&&0>o(V,z))k[U]=V,k[G]=z,U=G;else break e}}return I}function o(k,I){var z=k.sortIndex-I.sortIndex;return z!==0?z:k.id-I.id}if(typeof performance=="object"&&typeof performance.now=="function"){var i=performance;e.unstable_now=function(){return i.now()}}else{var s=Date,a=s.now();e.unstable_now=function(){return s.now()-a}}var l=[],c=[],d=1,u=null,f=3,p=!1,y=!1,v=!1,_=typeof setTimeout=="function"?setTimeout:null,m=typeof clearTimeout=="function"?clearTimeout:null,g=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function w(k){for(var I=n(c);I!==null;){if(I.callback===null)r(c);else if(I.startTime<=k)r(c),I.sortIndex=I.expirationTime,t(l,I);else break;I=n(c)}}function S(k){if(v=!1,w(k),!y)if(n(l)!==null)y=!0,T(C);else{var I=n(c);I!==null&&D(S,I.startTime-k)}}function C(k,I){y=!1,v&&(v=!1,m(P),P=-1),p=!0;var z=f;try{for(w(I),u=n(l);u!==null&&(!(u.expirationTime>I)||k&&!$());){var U=u.callback;if(typeof U=="function"){u.callback=null,f=u.priorityLevel;var Y=U(u.expirationTime<=I);I=e.unstable_now(),typeof Y=="function"?u.callback=Y:u===n(l)&&r(l),w(I)}else r(l);u=n(l)}if(u!==null)var H=!0;else{var Z=n(c);Z!==null&&D(S,Z.startTime-I),H=!1}return H}finally{u=null,f=z,p=!1}}var N=!1,E=null,P=-1,O=5,j=-1;function $(){return!(e.unstable_now()-j<O)}function A(){if(E!==null){var k=e.unstable_now();j=k;var I=!0;try{I=E(!0,k)}finally{I?L():(N=!1,E=null)}}else N=!1}var L;if(typeof g=="function")L=function(){g(A)};else if(typeof MessageChannel<"u"){var b=new MessageChannel,M=b.port2;b.port1.onmessage=A,L=function(){M.postMessage(null)}}else L=function(){_(A,0)};function T(k){E=k,N||(N=!0,L())}function D(k,I){P=_(function(){k(e.unstable_now())},I)}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(k){k.callback=null},e.unstable_continueExecution=function(){y||p||(y=!0,T(C))},e.unstable_forceFrameRate=function(k){0>k||125<k?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):O=0<k?Math.floor(1e3/k):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_getFirstCallbackNode=function(){return n(l)},e.unstable_next=function(k){switch(f){case 1:case 2:case 3:var I=3;break;default:I=f}var z=f;f=I;try{return k()}finally{f=z}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(k,I){switch(k){case 1:case 2:case 3:case 4:case 5:break;default:k=3}var z=f;f=k;try{return I()}finally{f=z}},e.unstable_scheduleCallback=function(k,I,z){var U=e.unstable_now();switch(typeof z=="object"&&z!==null?(z=z.delay,z=typeof z=="number"&&0<z?U+z:U):z=U,k){case 1:var Y=-1;break;case 2:Y=250;break;case 5:Y=1073741823;break;case 4:Y=1e4;break;default:Y=5e3}return Y=z+Y,k={id:d++,callback:I,priorityLevel:k,startTime:z,expirationTime:Y,sortIndex:-1},z>U?(k.sortIndex=z,t(c,k),n(l)===null&&k===n(c)&&(v?(m(P),P=-1):v=!0,D(S,z-U))):(k.sortIndex=Y,t(l,k),y||p||(y=!0,T(C))),k},e.unstable_shouldYield=$,e.unstable_wrapCallback=function(k){var I=f;return function(){var z=f;f=I;try{return k.apply(this,arguments)}finally{f=z}}}})(t1);e1.exports=t1;var D3=e1.exports;/**
+ * @license React
+ * react-dom.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */var L3=x,Yt=D3;function Q(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var n1=new Set,ia={};function Wo(e,t){Vi(e,t),Vi(e+"Capture",t)}function Vi(e,t){for(ia[e]=t,e=0;e<t.length;e++)n1.add(t[e])}var fr=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ff=Object.prototype.hasOwnProperty,z3=/^[: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]*$/,Ag={},Mg={};function $3(e){return Ff.call(Mg,e)?!0:Ff.call(Ag,e)?!1:z3.test(e)?Mg[e]=!0:(Ag[e]=!0,!1)}function F3(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function V3(e,t,n,r){if(t===null||typeof t>"u"||F3(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Ct(e,t,n,r,o,i,s){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=s}var ft={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){ft[e]=new Ct(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];ft[t]=new Ct(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){ft[e]=new Ct(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){ft[e]=new Ct(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){ft[e]=new Ct(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){ft[e]=new Ct(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){ft[e]=new Ct(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){ft[e]=new Ct(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){ft[e]=new Ct(e,5,!1,e.toLowerCase(),null,!1,!1)});var Th=/[\-:]([a-z])/g;function Ph(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Th,Ph);ft[t]=new Ct(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Th,Ph);ft[t]=new Ct(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Th,Ph);ft[t]=new Ct(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){ft[e]=new Ct(e,1,!1,e.toLowerCase(),null,!1,!1)});ft.xlinkHref=new Ct("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){ft[e]=new Ct(e,1,!1,e.toLowerCase(),null,!0,!0)});function Ih(e,t,n,r){var o=ft.hasOwnProperty(t)?ft[t]:null;(o!==null?o.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(V3(t,n,o,r)&&(n=null),r||o===null?$3(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=n===null?o.type===3?!1:"":n:(t=o.attributeName,r=o.attributeNamespace,n===null?e.removeAttribute(t):(o=o.type,n=o===3||o===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var br=L3.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,xl=Symbol.for("react.element"),ci=Symbol.for("react.portal"),ui=Symbol.for("react.fragment"),Rh=Symbol.for("react.strict_mode"),Vf=Symbol.for("react.profiler"),r1=Symbol.for("react.provider"),o1=Symbol.for("react.context"),Ah=Symbol.for("react.forward_ref"),Hf=Symbol.for("react.suspense"),Bf=Symbol.for("react.suspense_list"),Mh=Symbol.for("react.memo"),jr=Symbol.for("react.lazy"),i1=Symbol.for("react.offscreen"),jg=Symbol.iterator;function xs(e){return e===null||typeof e!="object"?null:(e=jg&&e[jg]||e["@@iterator"],typeof e=="function"?e:null)}var We=Object.assign,Od;function js(e){if(Od===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Od=t&&t[1]||""}return`
+`+Od+e}var Dd=!1;function Ld(e,t){if(!e||Dd)return"";Dd=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}catch(c){if(c&&r&&typeof c.stack=="string"){for(var o=c.stack.split(`
+`),i=r.stack.split(`
+`),s=o.length-1,a=i.length-1;1<=s&&0<=a&&o[s]!==i[a];)a--;for(;1<=s&&0<=a;s--,a--)if(o[s]!==i[a]){if(s!==1||a!==1)do if(s--,a--,0>a||o[s]!==i[a]){var l=`
+`+o[s].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}while(1<=s&&0<=a);break}}}finally{Dd=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?js(e):""}function H3(e){switch(e.tag){case 5:return js(e.type);case 16:return js("Lazy");case 13:return js("Suspense");case 19:return js("SuspenseList");case 0:case 2:case 15:return e=Ld(e.type,!1),e;case 11:return e=Ld(e.type.render,!1),e;case 1:return e=Ld(e.type,!0),e;default:return""}}function Uf(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case ui:return"Fragment";case ci:return"Portal";case Vf:return"Profiler";case Rh:return"StrictMode";case Hf:return"Suspense";case Bf:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case o1:return(e.displayName||"Context")+".Consumer";case r1:return(e._context.displayName||"Context")+".Provider";case Ah:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Mh:return t=e.displayName||null,t!==null?t:Uf(e.type)||"Memo";case jr:t=e._payload,e=e._init;try{return Uf(e(t))}catch{}}return null}function B3(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Uf(t);case 8:return t===Rh?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Jr(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function s1(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function U3(e){var t=s1(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var o=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(s){r=""+s,i.call(this,s)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(s){r=""+s},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function wl(e){e._valueTracker||(e._valueTracker=U3(e))}function a1(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=s1(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Sc(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function Wf(e,t){var n=t.checked;return We({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Og(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Jr(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function l1(e,t){t=t.checked,t!=null&&Ih(e,"checked",t,!1)}function Zf(e,t){l1(e,t);var n=Jr(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Gf(e,t.type,n):t.hasOwnProperty("defaultValue")&&Gf(e,t.type,Jr(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Dg(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Gf(e,t,n){(t!=="number"||Sc(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Os=Array.isArray;function Ei(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Jr(n),t=null,o=0;o<e.length;o++){if(e[o].value===n){e[o].selected=!0,r&&(e[o].defaultSelected=!0);return}t!==null||e[o].disabled||(t=e[o])}t!==null&&(t.selected=!0)}}function Yf(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(Q(91));return We({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Lg(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(Q(92));if(Os(n)){if(1<n.length)throw Error(Q(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Jr(n)}}function c1(e,t){var n=Jr(t.value),r=Jr(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function zg(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function u1(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Kf(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?u1(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var _l,d1=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,o){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,o)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(_l=_l||document.createElement("div"),_l.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=_l.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function sa(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Ws={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},W3=["Webkit","ms","Moz","O"];Object.keys(Ws).forEach(function(e){W3.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Ws[t]=Ws[e]})});function f1(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Ws.hasOwnProperty(e)&&Ws[e]?(""+t).trim():t+"px"}function p1(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,o=f1(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}var Z3=We({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Xf(e,t){if(t){if(Z3[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(Q(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(Q(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(Q(61))}if(t.style!=null&&typeof t.style!="object")throw Error(Q(62))}}function qf(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Qf=null;function jh(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Jf=null,ki=null,Ni=null;function $g(e){if(e=el(e)){if(typeof Jf!="function")throw Error(Q(280));var t=e.stateNode;t&&(t=Pu(t),Jf(e.stateNode,e.type,t))}}function h1(e){ki?Ni?Ni.push(e):Ni=[e]:ki=e}function m1(){if(ki){var e=ki,t=Ni;if(Ni=ki=null,$g(e),t)for(e=0;e<t.length;e++)$g(t[e])}}function g1(e,t){return e(t)}function v1(){}var zd=!1;function y1(e,t,n){if(zd)return e(t,n);zd=!0;try{return g1(e,t,n)}finally{zd=!1,(ki!==null||Ni!==null)&&(v1(),m1())}}function aa(e,t){var n=e.stateNode;if(n===null)return null;var r=Pu(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(Q(231,t,typeof n));return n}var ep=!1;if(fr)try{var ws={};Object.defineProperty(ws,"passive",{get:function(){ep=!0}}),window.addEventListener("test",ws,ws),window.removeEventListener("test",ws,ws)}catch{ep=!1}function G3(e,t,n,r,o,i,s,a,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(d){this.onError(d)}}var Zs=!1,bc=null,Cc=!1,tp=null,Y3={onError:function(e){Zs=!0,bc=e}};function K3(e,t,n,r,o,i,s,a,l){Zs=!1,bc=null,G3.apply(Y3,arguments)}function X3(e,t,n,r,o,i,s,a,l){if(K3.apply(this,arguments),Zs){if(Zs){var c=bc;Zs=!1,bc=null}else throw Error(Q(198));Cc||(Cc=!0,tp=c)}}function Zo(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 x1(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 Fg(e){if(Zo(e)!==e)throw Error(Q(188))}function q3(e){var t=e.alternate;if(!t){if(t=Zo(e),t===null)throw Error(Q(188));return t!==e?null:e}for(var n=e,r=t;;){var o=n.return;if(o===null)break;var i=o.alternate;if(i===null){if(r=o.return,r!==null){n=r;continue}break}if(o.child===i.child){for(i=o.child;i;){if(i===n)return Fg(o),e;if(i===r)return Fg(o),t;i=i.sibling}throw Error(Q(188))}if(n.return!==r.return)n=o,r=i;else{for(var s=!1,a=o.child;a;){if(a===n){s=!0,n=o,r=i;break}if(a===r){s=!0,r=o,n=i;break}a=a.sibling}if(!s){for(a=i.child;a;){if(a===n){s=!0,n=i,r=o;break}if(a===r){s=!0,r=i,n=o;break}a=a.sibling}if(!s)throw Error(Q(189))}}if(n.alternate!==r)throw Error(Q(190))}if(n.tag!==3)throw Error(Q(188));return n.stateNode.current===n?e:t}function w1(e){return e=q3(e),e!==null?_1(e):null}function _1(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=_1(e);if(t!==null)return t;e=e.sibling}return null}var S1=Yt.unstable_scheduleCallback,Vg=Yt.unstable_cancelCallback,Q3=Yt.unstable_shouldYield,J3=Yt.unstable_requestPaint,Ke=Yt.unstable_now,ek=Yt.unstable_getCurrentPriorityLevel,Oh=Yt.unstable_ImmediatePriority,b1=Yt.unstable_UserBlockingPriority,Ec=Yt.unstable_NormalPriority,tk=Yt.unstable_LowPriority,C1=Yt.unstable_IdlePriority,Eu=null,jn=null;function nk(e){if(jn&&typeof jn.onCommitFiberRoot=="function")try{jn.onCommitFiberRoot(Eu,e,void 0,(e.current.flags&128)===128)}catch{}}var vn=Math.clz32?Math.clz32:ik,rk=Math.log,ok=Math.LN2;function ik(e){return e>>>=0,e===0?32:31-(rk(e)/ok|0)|0}var Sl=64,bl=4194304;function Ds(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function kc(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,o=e.suspendedLanes,i=e.pingedLanes,s=n&268435455;if(s!==0){var a=s&~o;a!==0?r=Ds(a):(i&=s,i!==0&&(r=Ds(i)))}else s=n&~o,s!==0?r=Ds(s):i!==0&&(r=Ds(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&o)&&(o=r&-r,i=t&-t,o>=i||o===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-vn(t),o=1<<n,r|=e[n],t&=~o;return r}function sk(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ak(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,o=e.expirationTimes,i=e.pendingLanes;0<i;){var s=31-vn(i),a=1<<s,l=o[s];l===-1?(!(a&n)||a&r)&&(o[s]=sk(a,t)):l<=t&&(e.expiredLanes|=a),i&=~a}}function np(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function E1(){var e=Sl;return Sl<<=1,!(Sl&4194240)&&(Sl=64),e}function $d(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Qa(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-vn(t),e[t]=n}function lk(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-vn(n),i=1<<o;t[o]=0,r[o]=-1,e[o]=-1,n&=~i}}function Dh(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-vn(n),o=1<<r;o&t|e[r]&t&&(e[r]|=t),n&=~o}}var Re=0;function k1(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var N1,Lh,T1,P1,I1,rp=!1,Cl=[],Wr=null,Zr=null,Gr=null,la=new Map,ca=new Map,Lr=[],ck="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Hg(e,t){switch(e){case"focusin":case"focusout":Wr=null;break;case"dragenter":case"dragleave":Zr=null;break;case"mouseover":case"mouseout":Gr=null;break;case"pointerover":case"pointerout":la.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":ca.delete(t.pointerId)}}function _s(e,t,n,r,o,i){return e===null||e.nativeEvent!==i?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:i,targetContainers:[o]},t!==null&&(t=el(t),t!==null&&Lh(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,o!==null&&t.indexOf(o)===-1&&t.push(o),e)}function uk(e,t,n,r,o){switch(t){case"focusin":return Wr=_s(Wr,e,t,n,r,o),!0;case"dragenter":return Zr=_s(Zr,e,t,n,r,o),!0;case"mouseover":return Gr=_s(Gr,e,t,n,r,o),!0;case"pointerover":var i=o.pointerId;return la.set(i,_s(la.get(i)||null,e,t,n,r,o)),!0;case"gotpointercapture":return i=o.pointerId,ca.set(i,_s(ca.get(i)||null,e,t,n,r,o)),!0}return!1}function R1(e){var t=xo(e.target);if(t!==null){var n=Zo(t);if(n!==null){if(t=n.tag,t===13){if(t=x1(n),t!==null){e.blockedOn=t,I1(e.priority,function(){T1(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 ec(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=op(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Qf=r,n.target.dispatchEvent(r),Qf=null}else return t=el(n),t!==null&&Lh(t),e.blockedOn=n,!1;t.shift()}return!0}function Bg(e,t,n){ec(e)&&n.delete(t)}function dk(){rp=!1,Wr!==null&&ec(Wr)&&(Wr=null),Zr!==null&&ec(Zr)&&(Zr=null),Gr!==null&&ec(Gr)&&(Gr=null),la.forEach(Bg),ca.forEach(Bg)}function Ss(e,t){e.blockedOn===t&&(e.blockedOn=null,rp||(rp=!0,Yt.unstable_scheduleCallback(Yt.unstable_NormalPriority,dk)))}function ua(e){function t(o){return Ss(o,e)}if(0<Cl.length){Ss(Cl[0],e);for(var n=1;n<Cl.length;n++){var r=Cl[n];r.blockedOn===e&&(r.blockedOn=null)}}for(Wr!==null&&Ss(Wr,e),Zr!==null&&Ss(Zr,e),Gr!==null&&Ss(Gr,e),la.forEach(t),ca.forEach(t),n=0;n<Lr.length;n++)r=Lr[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<Lr.length&&(n=Lr[0],n.blockedOn===null);)R1(n),n.blockedOn===null&&Lr.shift()}var Ti=br.ReactCurrentBatchConfig,Nc=!0;function fk(e,t,n,r){var o=Re,i=Ti.transition;Ti.transition=null;try{Re=1,zh(e,t,n,r)}finally{Re=o,Ti.transition=i}}function pk(e,t,n,r){var o=Re,i=Ti.transition;Ti.transition=null;try{Re=4,zh(e,t,n,r)}finally{Re=o,Ti.transition=i}}function zh(e,t,n,r){if(Nc){var o=op(e,t,n,r);if(o===null)Kd(e,t,r,Tc,n),Hg(e,r);else if(uk(o,e,t,n,r))r.stopPropagation();else if(Hg(e,r),t&4&&-1<ck.indexOf(e)){for(;o!==null;){var i=el(o);if(i!==null&&N1(i),i=op(e,t,n,r),i===null&&Kd(e,t,r,Tc,n),i===o)break;o=i}o!==null&&r.stopPropagation()}else Kd(e,t,r,null,n)}}var Tc=null;function op(e,t,n,r){if(Tc=null,e=jh(r),e=xo(e),e!==null)if(t=Zo(e),t===null)e=null;else if(n=t.tag,n===13){if(e=x1(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 Tc=e,null}function A1(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(ek()){case Oh:return 1;case b1:return 4;case Ec:case tk:return 16;case C1:return 536870912;default:return 16}default:return 16}}var Br=null,$h=null,tc=null;function M1(){if(tc)return tc;var e,t=$h,n=t.length,r,o="value"in Br?Br.value:Br.textContent,i=o.length;for(e=0;e<n&&t[e]===o[e];e++);var s=n-e;for(r=1;r<=s&&t[n-r]===o[i-r];r++);return tc=o.slice(e,1<r?1-r:void 0)}function nc(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 El(){return!0}function Ug(){return!1}function qt(e){function t(n,r,o,i,s){this._reactName=n,this._targetInst=o,this.type=r,this.nativeEvent=i,this.target=s,this.currentTarget=null;for(var a in e)e.hasOwnProperty(a)&&(n=e[a],this[a]=n?n(i):i[a]);return this.isDefaultPrevented=(i.defaultPrevented!=null?i.defaultPrevented:i.returnValue===!1)?El:Ug,this.isPropagationStopped=Ug,this}return We(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=El)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=El)},persist:function(){},isPersistent:El}),t}var cs={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Fh=qt(cs),Ja=We({},cs,{view:0,detail:0}),hk=qt(Ja),Fd,Vd,bs,ku=We({},Ja,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Vh,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!==bs&&(bs&&e.type==="mousemove"?(Fd=e.screenX-bs.screenX,Vd=e.screenY-bs.screenY):Vd=Fd=0,bs=e),Fd)},movementY:function(e){return"movementY"in e?e.movementY:Vd}}),Wg=qt(ku),mk=We({},ku,{dataTransfer:0}),gk=qt(mk),vk=We({},Ja,{relatedTarget:0}),Hd=qt(vk),yk=We({},cs,{animationName:0,elapsedTime:0,pseudoElement:0}),xk=qt(yk),wk=We({},cs,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),_k=qt(wk),Sk=We({},cs,{data:0}),Zg=qt(Sk),bk={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Ck={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"},Ek={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function kk(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Ek[e])?!!t[e]:!1}function Vh(){return kk}var Nk=We({},Ja,{key:function(e){if(e.key){var t=bk[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=nc(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Ck[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Vh,charCode:function(e){return e.type==="keypress"?nc(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?nc(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Tk=qt(Nk),Pk=We({},ku,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Gg=qt(Pk),Ik=We({},Ja,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Vh}),Rk=qt(Ik),Ak=We({},cs,{propertyName:0,elapsedTime:0,pseudoElement:0}),Mk=qt(Ak),jk=We({},ku,{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}),Ok=qt(jk),Dk=[9,13,27,32],Hh=fr&&"CompositionEvent"in window,Gs=null;fr&&"documentMode"in document&&(Gs=document.documentMode);var Lk=fr&&"TextEvent"in window&&!Gs,j1=fr&&(!Hh||Gs&&8<Gs&&11>=Gs),Yg=" ",Kg=!1;function O1(e,t){switch(e){case"keyup":return Dk.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function D1(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var di=!1;function zk(e,t){switch(e){case"compositionend":return D1(t);case"keypress":return t.which!==32?null:(Kg=!0,Yg);case"textInput":return e=t.data,e===Yg&&Kg?null:e;default:return null}}function $k(e,t){if(di)return e==="compositionend"||!Hh&&O1(e,t)?(e=M1(),tc=$h=Br=null,di=!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 j1&&t.locale!=="ko"?null:t.data;default:return null}}var Fk={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 Xg(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!Fk[e.type]:t==="textarea"}function L1(e,t,n,r){h1(r),t=Pc(t,"onChange"),0<t.length&&(n=new Fh("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Ys=null,da=null;function Vk(e){Y1(e,0)}function Nu(e){var t=hi(e);if(a1(t))return e}function Hk(e,t){if(e==="change")return t}var z1=!1;if(fr){var Bd;if(fr){var Ud="oninput"in document;if(!Ud){var qg=document.createElement("div");qg.setAttribute("oninput","return;"),Ud=typeof qg.oninput=="function"}Bd=Ud}else Bd=!1;z1=Bd&&(!document.documentMode||9<document.documentMode)}function Qg(){Ys&&(Ys.detachEvent("onpropertychange",$1),da=Ys=null)}function $1(e){if(e.propertyName==="value"&&Nu(da)){var t=[];L1(t,da,e,jh(e)),y1(Vk,t)}}function Bk(e,t,n){e==="focusin"?(Qg(),Ys=t,da=n,Ys.attachEvent("onpropertychange",$1)):e==="focusout"&&Qg()}function Uk(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Nu(da)}function Wk(e,t){if(e==="click")return Nu(t)}function Zk(e,t){if(e==="input"||e==="change")return Nu(t)}function Gk(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var bn=typeof Object.is=="function"?Object.is:Gk;function fa(e,t){if(bn(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var o=n[r];if(!Ff.call(t,o)||!bn(e[o],t[o]))return!1}return!0}function Jg(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function e0(e,t){var n=Jg(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Jg(n)}}function F1(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?F1(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function V1(){for(var e=window,t=Sc();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Sc(e.document)}return t}function Bh(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Yk(e){var t=V1(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&F1(n.ownerDocument.documentElement,n)){if(r!==null&&Bh(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var o=n.textContent.length,i=Math.min(r.start,o);r=r.end===void 0?i:Math.min(r.end,o),!e.extend&&i>r&&(o=r,r=i,i=o),o=e0(n,i);var s=e0(n,r);o&&s&&(e.rangeCount!==1||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==s.node||e.focusOffset!==s.offset)&&(t=t.createRange(),t.setStart(o.node,o.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(s.node,s.offset)):(t.setEnd(s.node,s.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Kk=fr&&"documentMode"in document&&11>=document.documentMode,fi=null,ip=null,Ks=null,sp=!1;function t0(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;sp||fi==null||fi!==Sc(r)||(r=fi,"selectionStart"in r&&Bh(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Ks&&fa(Ks,r)||(Ks=r,r=Pc(ip,"onSelect"),0<r.length&&(t=new Fh("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=fi)))}function kl(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var pi={animationend:kl("Animation","AnimationEnd"),animationiteration:kl("Animation","AnimationIteration"),animationstart:kl("Animation","AnimationStart"),transitionend:kl("Transition","TransitionEnd")},Wd={},H1={};fr&&(H1=document.createElement("div").style,"AnimationEvent"in window||(delete pi.animationend.animation,delete pi.animationiteration.animation,delete pi.animationstart.animation),"TransitionEvent"in window||delete pi.transitionend.transition);function Tu(e){if(Wd[e])return Wd[e];if(!pi[e])return e;var t=pi[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in H1)return Wd[e]=t[n];return e}var B1=Tu("animationend"),U1=Tu("animationiteration"),W1=Tu("animationstart"),Z1=Tu("transitionend"),G1=new Map,n0="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function co(e,t){G1.set(e,t),Wo(t,[e])}for(var Zd=0;Zd<n0.length;Zd++){var Gd=n0[Zd],Xk=Gd.toLowerCase(),qk=Gd[0].toUpperCase()+Gd.slice(1);co(Xk,"on"+qk)}co(B1,"onAnimationEnd");co(U1,"onAnimationIteration");co(W1,"onAnimationStart");co("dblclick","onDoubleClick");co("focusin","onFocus");co("focusout","onBlur");co(Z1,"onTransitionEnd");Vi("onMouseEnter",["mouseout","mouseover"]);Vi("onMouseLeave",["mouseout","mouseover"]);Vi("onPointerEnter",["pointerout","pointerover"]);Vi("onPointerLeave",["pointerout","pointerover"]);Wo("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Wo("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Wo("onBeforeInput",["compositionend","keypress","textInput","paste"]);Wo("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Wo("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Wo("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Ls="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(" "),Qk=new Set("cancel close invalid load scroll toggle".split(" ").concat(Ls));function r0(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,X3(r,t,void 0,e),e.currentTarget=null}function Y1(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],o=r.event;r=r.listeners;e:{var i=void 0;if(t)for(var s=r.length-1;0<=s;s--){var a=r[s],l=a.instance,c=a.currentTarget;if(a=a.listener,l!==i&&o.isPropagationStopped())break e;r0(o,a,c),i=l}else for(s=0;s<r.length;s++){if(a=r[s],l=a.instance,c=a.currentTarget,a=a.listener,l!==i&&o.isPropagationStopped())break e;r0(o,a,c),i=l}}}if(Cc)throw e=tp,Cc=!1,tp=null,e}function Oe(e,t){var n=t[dp];n===void 0&&(n=t[dp]=new Set);var r=e+"__bubble";n.has(r)||(K1(t,e,2,!1),n.add(r))}function Yd(e,t,n){var r=0;t&&(r|=4),K1(n,e,r,t)}var Nl="_reactListening"+Math.random().toString(36).slice(2);function pa(e){if(!e[Nl]){e[Nl]=!0,n1.forEach(function(n){n!=="selectionchange"&&(Qk.has(n)||Yd(n,!1,e),Yd(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Nl]||(t[Nl]=!0,Yd("selectionchange",!1,t))}}function K1(e,t,n,r){switch(A1(t)){case 1:var o=fk;break;case 4:o=pk;break;default:o=zh}n=o.bind(null,t,n,e),o=void 0,!ep||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(o=!0),r?o!==void 0?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):o!==void 0?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function Kd(e,t,n,r,o){var i=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var a=r.stateNode.containerInfo;if(a===o||a.nodeType===8&&a.parentNode===o)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&(l=s.stateNode.containerInfo,l===o||l.nodeType===8&&l.parentNode===o))return;s=s.return}for(;a!==null;){if(s=xo(a),s===null)return;if(l=s.tag,l===5||l===6){r=i=s;continue e}a=a.parentNode}}r=r.return}y1(function(){var c=i,d=jh(n),u=[];e:{var f=G1.get(e);if(f!==void 0){var p=Fh,y=e;switch(e){case"keypress":if(nc(n)===0)break e;case"keydown":case"keyup":p=Tk;break;case"focusin":y="focus",p=Hd;break;case"focusout":y="blur",p=Hd;break;case"beforeblur":case"afterblur":p=Hd;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":p=Wg;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":p=gk;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":p=Rk;break;case B1:case U1:case W1:p=xk;break;case Z1:p=Mk;break;case"scroll":p=hk;break;case"wheel":p=Ok;break;case"copy":case"cut":case"paste":p=_k;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":p=Gg}var v=(t&4)!==0,_=!v&&e==="scroll",m=v?f!==null?f+"Capture":null:f;v=[];for(var g=c,w;g!==null;){w=g;var S=w.stateNode;if(w.tag===5&&S!==null&&(w=S,m!==null&&(S=aa(g,m),S!=null&&v.push(ha(g,S,w)))),_)break;g=g.return}0<v.length&&(f=new p(f,y,null,n,d),u.push({event:f,listeners:v}))}}if(!(t&7)){e:{if(f=e==="mouseover"||e==="pointerover",p=e==="mouseout"||e==="pointerout",f&&n!==Qf&&(y=n.relatedTarget||n.fromElement)&&(xo(y)||y[pr]))break e;if((p||f)&&(f=d.window===d?d:(f=d.ownerDocument)?f.defaultView||f.parentWindow:window,p?(y=n.relatedTarget||n.toElement,p=c,y=y?xo(y):null,y!==null&&(_=Zo(y),y!==_||y.tag!==5&&y.tag!==6)&&(y=null)):(p=null,y=c),p!==y)){if(v=Wg,S="onMouseLeave",m="onMouseEnter",g="mouse",(e==="pointerout"||e==="pointerover")&&(v=Gg,S="onPointerLeave",m="onPointerEnter",g="pointer"),_=p==null?f:hi(p),w=y==null?f:hi(y),f=new v(S,g+"leave",p,n,d),f.target=_,f.relatedTarget=w,S=null,xo(d)===c&&(v=new v(m,g+"enter",y,n,d),v.target=w,v.relatedTarget=_,S=v),_=S,p&&y)t:{for(v=p,m=y,g=0,w=v;w;w=Jo(w))g++;for(w=0,S=m;S;S=Jo(S))w++;for(;0<g-w;)v=Jo(v),g--;for(;0<w-g;)m=Jo(m),w--;for(;g--;){if(v===m||m!==null&&v===m.alternate)break t;v=Jo(v),m=Jo(m)}v=null}else v=null;p!==null&&o0(u,f,p,v,!1),y!==null&&_!==null&&o0(u,_,y,v,!0)}}e:{if(f=c?hi(c):window,p=f.nodeName&&f.nodeName.toLowerCase(),p==="select"||p==="input"&&f.type==="file")var C=Hk;else if(Xg(f))if(z1)C=Zk;else{C=Uk;var N=Bk}else(p=f.nodeName)&&p.toLowerCase()==="input"&&(f.type==="checkbox"||f.type==="radio")&&(C=Wk);if(C&&(C=C(e,c))){L1(u,C,n,d);break e}N&&N(e,f,c),e==="focusout"&&(N=f._wrapperState)&&N.controlled&&f.type==="number"&&Gf(f,"number",f.value)}switch(N=c?hi(c):window,e){case"focusin":(Xg(N)||N.contentEditable==="true")&&(fi=N,ip=c,Ks=null);break;case"focusout":Ks=ip=fi=null;break;case"mousedown":sp=!0;break;case"contextmenu":case"mouseup":case"dragend":sp=!1,t0(u,n,d);break;case"selectionchange":if(Kk)break;case"keydown":case"keyup":t0(u,n,d)}var E;if(Hh)e:{switch(e){case"compositionstart":var P="onCompositionStart";break e;case"compositionend":P="onCompositionEnd";break e;case"compositionupdate":P="onCompositionUpdate";break e}P=void 0}else di?O1(e,n)&&(P="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(P="onCompositionStart");P&&(j1&&n.locale!=="ko"&&(di||P!=="onCompositionStart"?P==="onCompositionEnd"&&di&&(E=M1()):(Br=d,$h="value"in Br?Br.value:Br.textContent,di=!0)),N=Pc(c,P),0<N.length&&(P=new Zg(P,e,null,n,d),u.push({event:P,listeners:N}),E?P.data=E:(E=D1(n),E!==null&&(P.data=E)))),(E=Lk?zk(e,n):$k(e,n))&&(c=Pc(c,"onBeforeInput"),0<c.length&&(d=new Zg("onBeforeInput","beforeinput",null,n,d),u.push({event:d,listeners:c}),d.data=E))}Y1(u,t)})}function ha(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Pc(e,t){for(var n=t+"Capture",r=[];e!==null;){var o=e,i=o.stateNode;o.tag===5&&i!==null&&(o=i,i=aa(e,n),i!=null&&r.unshift(ha(e,i,o)),i=aa(e,t),i!=null&&r.push(ha(e,i,o))),e=e.return}return r}function Jo(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function o0(e,t,n,r,o){for(var i=t._reactName,s=[];n!==null&&n!==r;){var a=n,l=a.alternate,c=a.stateNode;if(l!==null&&l===r)break;a.tag===5&&c!==null&&(a=c,o?(l=aa(n,i),l!=null&&s.unshift(ha(n,l,a))):o||(l=aa(n,i),l!=null&&s.push(ha(n,l,a)))),n=n.return}s.length!==0&&e.push({event:t,listeners:s})}var Jk=/\r\n?/g,e5=/\u0000|\uFFFD/g;function i0(e){return(typeof e=="string"?e:""+e).replace(Jk,`
+`).replace(e5,"")}function Tl(e,t,n){if(t=i0(t),i0(e)!==t&&n)throw Error(Q(425))}function Ic(){}var ap=null,lp=null;function cp(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var up=typeof setTimeout=="function"?setTimeout:void 0,t5=typeof clearTimeout=="function"?clearTimeout:void 0,s0=typeof Promise=="function"?Promise:void 0,n5=typeof queueMicrotask=="function"?queueMicrotask:typeof s0<"u"?function(e){return s0.resolve(null).then(e).catch(r5)}:up;function r5(e){setTimeout(function(){throw e})}function Xd(e,t){var n=t,r=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&o.nodeType===8)if(n=o.data,n==="/$"){if(r===0){e.removeChild(o),ua(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=o}while(n);ua(t)}function Yr(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function a0(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var us=Math.random().toString(36).slice(2),Rn="__reactFiber$"+us,ma="__reactProps$"+us,pr="__reactContainer$"+us,dp="__reactEvents$"+us,o5="__reactListeners$"+us,i5="__reactHandles$"+us;function xo(e){var t=e[Rn];if(t)return t;for(var n=e.parentNode;n;){if(t=n[pr]||n[Rn]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=a0(e);e!==null;){if(n=e[Rn])return n;e=a0(e)}return t}e=n,n=e.parentNode}return null}function el(e){return e=e[Rn]||e[pr],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function hi(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(Q(33))}function Pu(e){return e[ma]||null}var fp=[],mi=-1;function uo(e){return{current:e}}function De(e){0>mi||(e.current=fp[mi],fp[mi]=null,mi--)}function Me(e,t){mi++,fp[mi]=e.current,e.current=t}var eo={},vt=uo(eo),Mt=uo(!1),Ao=eo;function Hi(e,t){var n=e.type.contextTypes;if(!n)return eo;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o={},i;for(i in n)o[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function jt(e){return e=e.childContextTypes,e!=null}function Rc(){De(Mt),De(vt)}function l0(e,t,n){if(vt.current!==eo)throw Error(Q(168));Me(vt,t),Me(Mt,n)}function X1(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var o in r)if(!(o in t))throw Error(Q(108,B3(e)||"Unknown",o));return We({},n,r)}function Ac(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||eo,Ao=vt.current,Me(vt,e),Me(Mt,Mt.current),!0}function c0(e,t,n){var r=e.stateNode;if(!r)throw Error(Q(169));n?(e=X1(e,t,Ao),r.__reactInternalMemoizedMergedChildContext=e,De(Mt),De(vt),Me(vt,e)):De(Mt),Me(Mt,n)}var tr=null,Iu=!1,qd=!1;function q1(e){tr===null?tr=[e]:tr.push(e)}function s5(e){Iu=!0,q1(e)}function fo(){if(!qd&&tr!==null){qd=!0;var e=0,t=Re;try{var n=tr;for(Re=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}tr=null,Iu=!1}catch(o){throw tr!==null&&(tr=tr.slice(e+1)),S1(Oh,fo),o}finally{Re=t,qd=!1}}return null}var gi=[],vi=0,Mc=null,jc=0,Jt=[],en=0,Mo=null,rr=1,or="";function go(e,t){gi[vi++]=jc,gi[vi++]=Mc,Mc=e,jc=t}function Q1(e,t,n){Jt[en++]=rr,Jt[en++]=or,Jt[en++]=Mo,Mo=e;var r=rr;e=or;var o=32-vn(r)-1;r&=~(1<<o),n+=1;var i=32-vn(t)+o;if(30<i){var s=o-o%5;i=(r&(1<<s)-1).toString(32),r>>=s,o-=s,rr=1<<32-vn(t)+o|n<<o|r,or=i+e}else rr=1<<i|n<<o|r,or=e}function Uh(e){e.return!==null&&(go(e,1),Q1(e,1,0))}function Wh(e){for(;e===Mc;)Mc=gi[--vi],gi[vi]=null,jc=gi[--vi],gi[vi]=null;for(;e===Mo;)Mo=Jt[--en],Jt[en]=null,or=Jt[--en],Jt[en]=null,rr=Jt[--en],Jt[en]=null}var Ut=null,Bt=null,$e=!1,fn=null;function J1(e,t){var n=tn(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function u0(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,Ut=e,Bt=Yr(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,Ut=e,Bt=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=Mo!==null?{id:rr,overflow:or}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=tn(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,Ut=e,Bt=null,!0):!1;default:return!1}}function pp(e){return(e.mode&1)!==0&&(e.flags&128)===0}function hp(e){if($e){var t=Bt;if(t){var n=t;if(!u0(e,t)){if(pp(e))throw Error(Q(418));t=Yr(n.nextSibling);var r=Ut;t&&u0(e,t)?J1(r,n):(e.flags=e.flags&-4097|2,$e=!1,Ut=e)}}else{if(pp(e))throw Error(Q(418));e.flags=e.flags&-4097|2,$e=!1,Ut=e}}}function d0(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;Ut=e}function Pl(e){if(e!==Ut)return!1;if(!$e)return d0(e),$e=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!cp(e.type,e.memoizedProps)),t&&(t=Bt)){if(pp(e))throw ex(),Error(Q(418));for(;t;)J1(e,t),t=Yr(t.nextSibling)}if(d0(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(Q(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Bt=Yr(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Bt=null}}else Bt=Ut?Yr(e.stateNode.nextSibling):null;return!0}function ex(){for(var e=Bt;e;)e=Yr(e.nextSibling)}function Bi(){Bt=Ut=null,$e=!1}function Zh(e){fn===null?fn=[e]:fn.push(e)}var a5=br.ReactCurrentBatchConfig;function Cs(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(Q(309));var r=n.stateNode}if(!r)throw Error(Q(147,e));var o=r,i=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===i?t.ref:(t=function(s){var a=o.refs;s===null?delete a[i]:a[i]=s},t._stringRef=i,t)}if(typeof e!="string")throw Error(Q(284));if(!n._owner)throw Error(Q(290,e))}return e}function Il(e,t){throw e=Object.prototype.toString.call(t),Error(Q(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function f0(e){var t=e._init;return t(e._payload)}function tx(e){function t(m,g){if(e){var w=m.deletions;w===null?(m.deletions=[g],m.flags|=16):w.push(g)}}function n(m,g){if(!e)return null;for(;g!==null;)t(m,g),g=g.sibling;return null}function r(m,g){for(m=new Map;g!==null;)g.key!==null?m.set(g.key,g):m.set(g.index,g),g=g.sibling;return m}function o(m,g){return m=Qr(m,g),m.index=0,m.sibling=null,m}function i(m,g,w){return m.index=w,e?(w=m.alternate,w!==null?(w=w.index,w<g?(m.flags|=2,g):w):(m.flags|=2,g)):(m.flags|=1048576,g)}function s(m){return e&&m.alternate===null&&(m.flags|=2),m}function a(m,g,w,S){return g===null||g.tag!==6?(g=of(w,m.mode,S),g.return=m,g):(g=o(g,w),g.return=m,g)}function l(m,g,w,S){var C=w.type;return C===ui?d(m,g,w.props.children,S,w.key):g!==null&&(g.elementType===C||typeof C=="object"&&C!==null&&C.$$typeof===jr&&f0(C)===g.type)?(S=o(g,w.props),S.ref=Cs(m,g,w),S.return=m,S):(S=cc(w.type,w.key,w.props,null,m.mode,S),S.ref=Cs(m,g,w),S.return=m,S)}function c(m,g,w,S){return g===null||g.tag!==4||g.stateNode.containerInfo!==w.containerInfo||g.stateNode.implementation!==w.implementation?(g=sf(w,m.mode,S),g.return=m,g):(g=o(g,w.children||[]),g.return=m,g)}function d(m,g,w,S,C){return g===null||g.tag!==7?(g=ko(w,m.mode,S,C),g.return=m,g):(g=o(g,w),g.return=m,g)}function u(m,g,w){if(typeof g=="string"&&g!==""||typeof g=="number")return g=of(""+g,m.mode,w),g.return=m,g;if(typeof g=="object"&&g!==null){switch(g.$$typeof){case xl:return w=cc(g.type,g.key,g.props,null,m.mode,w),w.ref=Cs(m,null,g),w.return=m,w;case ci:return g=sf(g,m.mode,w),g.return=m,g;case jr:var S=g._init;return u(m,S(g._payload),w)}if(Os(g)||xs(g))return g=ko(g,m.mode,w,null),g.return=m,g;Il(m,g)}return null}function f(m,g,w,S){var C=g!==null?g.key:null;if(typeof w=="string"&&w!==""||typeof w=="number")return C!==null?null:a(m,g,""+w,S);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case xl:return w.key===C?l(m,g,w,S):null;case ci:return w.key===C?c(m,g,w,S):null;case jr:return C=w._init,f(m,g,C(w._payload),S)}if(Os(w)||xs(w))return C!==null?null:d(m,g,w,S,null);Il(m,w)}return null}function p(m,g,w,S,C){if(typeof S=="string"&&S!==""||typeof S=="number")return m=m.get(w)||null,a(g,m,""+S,C);if(typeof S=="object"&&S!==null){switch(S.$$typeof){case xl:return m=m.get(S.key===null?w:S.key)||null,l(g,m,S,C);case ci:return m=m.get(S.key===null?w:S.key)||null,c(g,m,S,C);case jr:var N=S._init;return p(m,g,w,N(S._payload),C)}if(Os(S)||xs(S))return m=m.get(w)||null,d(g,m,S,C,null);Il(g,S)}return null}function y(m,g,w,S){for(var C=null,N=null,E=g,P=g=0,O=null;E!==null&&P<w.length;P++){E.index>P?(O=E,E=null):O=E.sibling;var j=f(m,E,w[P],S);if(j===null){E===null&&(E=O);break}e&&E&&j.alternate===null&&t(m,E),g=i(j,g,P),N===null?C=j:N.sibling=j,N=j,E=O}if(P===w.length)return n(m,E),$e&&go(m,P),C;if(E===null){for(;P<w.length;P++)E=u(m,w[P],S),E!==null&&(g=i(E,g,P),N===null?C=E:N.sibling=E,N=E);return $e&&go(m,P),C}for(E=r(m,E);P<w.length;P++)O=p(E,m,P,w[P],S),O!==null&&(e&&O.alternate!==null&&E.delete(O.key===null?P:O.key),g=i(O,g,P),N===null?C=O:N.sibling=O,N=O);return e&&E.forEach(function($){return t(m,$)}),$e&&go(m,P),C}function v(m,g,w,S){var C=xs(w);if(typeof C!="function")throw Error(Q(150));if(w=C.call(w),w==null)throw Error(Q(151));for(var N=C=null,E=g,P=g=0,O=null,j=w.next();E!==null&&!j.done;P++,j=w.next()){E.index>P?(O=E,E=null):O=E.sibling;var $=f(m,E,j.value,S);if($===null){E===null&&(E=O);break}e&&E&&$.alternate===null&&t(m,E),g=i($,g,P),N===null?C=$:N.sibling=$,N=$,E=O}if(j.done)return n(m,E),$e&&go(m,P),C;if(E===null){for(;!j.done;P++,j=w.next())j=u(m,j.value,S),j!==null&&(g=i(j,g,P),N===null?C=j:N.sibling=j,N=j);return $e&&go(m,P),C}for(E=r(m,E);!j.done;P++,j=w.next())j=p(E,m,P,j.value,S),j!==null&&(e&&j.alternate!==null&&E.delete(j.key===null?P:j.key),g=i(j,g,P),N===null?C=j:N.sibling=j,N=j);return e&&E.forEach(function(A){return t(m,A)}),$e&&go(m,P),C}function _(m,g,w,S){if(typeof w=="object"&&w!==null&&w.type===ui&&w.key===null&&(w=w.props.children),typeof w=="object"&&w!==null){switch(w.$$typeof){case xl:e:{for(var C=w.key,N=g;N!==null;){if(N.key===C){if(C=w.type,C===ui){if(N.tag===7){n(m,N.sibling),g=o(N,w.props.children),g.return=m,m=g;break e}}else if(N.elementType===C||typeof C=="object"&&C!==null&&C.$$typeof===jr&&f0(C)===N.type){n(m,N.sibling),g=o(N,w.props),g.ref=Cs(m,N,w),g.return=m,m=g;break e}n(m,N);break}else t(m,N);N=N.sibling}w.type===ui?(g=ko(w.props.children,m.mode,S,w.key),g.return=m,m=g):(S=cc(w.type,w.key,w.props,null,m.mode,S),S.ref=Cs(m,g,w),S.return=m,m=S)}return s(m);case ci:e:{for(N=w.key;g!==null;){if(g.key===N)if(g.tag===4&&g.stateNode.containerInfo===w.containerInfo&&g.stateNode.implementation===w.implementation){n(m,g.sibling),g=o(g,w.children||[]),g.return=m,m=g;break e}else{n(m,g);break}else t(m,g);g=g.sibling}g=sf(w,m.mode,S),g.return=m,m=g}return s(m);case jr:return N=w._init,_(m,g,N(w._payload),S)}if(Os(w))return y(m,g,w,S);if(xs(w))return v(m,g,w,S);Il(m,w)}return typeof w=="string"&&w!==""||typeof w=="number"?(w=""+w,g!==null&&g.tag===6?(n(m,g.sibling),g=o(g,w),g.return=m,m=g):(n(m,g),g=of(w,m.mode,S),g.return=m,m=g),s(m)):n(m,g)}return _}var Ui=tx(!0),nx=tx(!1),Oc=uo(null),Dc=null,yi=null,Gh=null;function Yh(){Gh=yi=Dc=null}function Kh(e){var t=Oc.current;De(Oc),e._currentValue=t}function mp(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Pi(e,t){Dc=e,Gh=yi=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Rt=!0),e.firstContext=null)}function on(e){var t=e._currentValue;if(Gh!==e)if(e={context:e,memoizedValue:t,next:null},yi===null){if(Dc===null)throw Error(Q(308));yi=e,Dc.dependencies={lanes:0,firstContext:e}}else yi=yi.next=e;return t}var wo=null;function Xh(e){wo===null?wo=[e]:wo.push(e)}function rx(e,t,n,r){var o=t.interleaved;return o===null?(n.next=n,Xh(t)):(n.next=o.next,o.next=n),t.interleaved=n,hr(e,r)}function hr(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Or=!1;function qh(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function ox(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ar(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Kr(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Te&2){var o=r.pending;return o===null?t.next=t:(t.next=o.next,o.next=t),r.pending=t,hr(e,n)}return o=r.interleaved,o===null?(t.next=t,Xh(r)):(t.next=o.next,o.next=t),r.interleaved=t,hr(e,n)}function rc(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Dh(e,n)}}function p0(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var o=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var s={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?o=i=s:i=i.next=s,n=n.next}while(n!==null);i===null?o=i=t:i=i.next=t}else o=i=t;n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Lc(e,t,n,r){var o=e.updateQueue;Or=!1;var i=o.firstBaseUpdate,s=o.lastBaseUpdate,a=o.shared.pending;if(a!==null){o.shared.pending=null;var l=a,c=l.next;l.next=null,s===null?i=c:s.next=c,s=l;var d=e.alternate;d!==null&&(d=d.updateQueue,a=d.lastBaseUpdate,a!==s&&(a===null?d.firstBaseUpdate=c:a.next=c,d.lastBaseUpdate=l))}if(i!==null){var u=o.baseState;s=0,d=c=l=null,a=i;do{var f=a.lane,p=a.eventTime;if((r&f)===f){d!==null&&(d=d.next={eventTime:p,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var y=e,v=a;switch(f=t,p=n,v.tag){case 1:if(y=v.payload,typeof y=="function"){u=y.call(p,u,f);break e}u=y;break e;case 3:y.flags=y.flags&-65537|128;case 0:if(y=v.payload,f=typeof y=="function"?y.call(p,u,f):y,f==null)break e;u=We({},u,f);break e;case 2:Or=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,f=o.effects,f===null?o.effects=[a]:f.push(a))}else p={eventTime:p,lane:f,tag:a.tag,payload:a.payload,callback:a.callback,next:null},d===null?(c=d=p,l=u):d=d.next=p,s|=f;if(a=a.next,a===null){if(a=o.shared.pending,a===null)break;f=a,a=f.next,f.next=null,o.lastBaseUpdate=f,o.shared.pending=null}}while(!0);if(d===null&&(l=u),o.baseState=l,o.firstBaseUpdate=c,o.lastBaseUpdate=d,t=o.shared.interleaved,t!==null){o=t;do s|=o.lane,o=o.next;while(o!==t)}else i===null&&(o.shared.lanes=0);Oo|=s,e.lanes=s,e.memoizedState=u}}function h0(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],o=r.callback;if(o!==null){if(r.callback=null,r=n,typeof o!="function")throw Error(Q(191,o));o.call(r)}}}var tl={},On=uo(tl),ga=uo(tl),va=uo(tl);function _o(e){if(e===tl)throw Error(Q(174));return e}function Qh(e,t){switch(Me(va,t),Me(ga,e),Me(On,tl),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Kf(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Kf(t,e)}De(On),Me(On,t)}function Wi(){De(On),De(ga),De(va)}function ix(e){_o(va.current);var t=_o(On.current),n=Kf(t,e.type);t!==n&&(Me(ga,e),Me(On,n))}function Jh(e){ga.current===e&&(De(On),De(ga))}var Be=uo(0);function zc(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Qd=[];function em(){for(var e=0;e<Qd.length;e++)Qd[e]._workInProgressVersionPrimary=null;Qd.length=0}var oc=br.ReactCurrentDispatcher,Jd=br.ReactCurrentBatchConfig,jo=0,Ue=null,tt=null,rt=null,$c=!1,Xs=!1,ya=0,l5=0;function ht(){throw Error(Q(321))}function tm(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!bn(e[n],t[n]))return!1;return!0}function nm(e,t,n,r,o,i){if(jo=i,Ue=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,oc.current=e===null||e.memoizedState===null?f5:p5,e=n(r,o),Xs){i=0;do{if(Xs=!1,ya=0,25<=i)throw Error(Q(301));i+=1,rt=tt=null,t.updateQueue=null,oc.current=h5,e=n(r,o)}while(Xs)}if(oc.current=Fc,t=tt!==null&&tt.next!==null,jo=0,rt=tt=Ue=null,$c=!1,t)throw Error(Q(300));return e}function rm(){var e=ya!==0;return ya=0,e}function In(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return rt===null?Ue.memoizedState=rt=e:rt=rt.next=e,rt}function sn(){if(tt===null){var e=Ue.alternate;e=e!==null?e.memoizedState:null}else e=tt.next;var t=rt===null?Ue.memoizedState:rt.next;if(t!==null)rt=t,tt=e;else{if(e===null)throw Error(Q(310));tt=e,e={memoizedState:tt.memoizedState,baseState:tt.baseState,baseQueue:tt.baseQueue,queue:tt.queue,next:null},rt===null?Ue.memoizedState=rt=e:rt=rt.next=e}return rt}function xa(e,t){return typeof t=="function"?t(e):t}function ef(e){var t=sn(),n=t.queue;if(n===null)throw Error(Q(311));n.lastRenderedReducer=e;var r=tt,o=r.baseQueue,i=n.pending;if(i!==null){if(o!==null){var s=o.next;o.next=i.next,i.next=s}r.baseQueue=o=i,n.pending=null}if(o!==null){i=o.next,r=r.baseState;var a=s=null,l=null,c=i;do{var d=c.lane;if((jo&d)===d)l!==null&&(l=l.next={lane:0,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null}),r=c.hasEagerState?c.eagerState:e(r,c.action);else{var u={lane:d,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null};l===null?(a=l=u,s=r):l=l.next=u,Ue.lanes|=d,Oo|=d}c=c.next}while(c!==null&&c!==i);l===null?s=r:l.next=a,bn(r,t.memoizedState)||(Rt=!0),t.memoizedState=r,t.baseState=s,t.baseQueue=l,n.lastRenderedState=r}if(e=n.interleaved,e!==null){o=e;do i=o.lane,Ue.lanes|=i,Oo|=i,o=o.next;while(o!==e)}else o===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function tf(e){var t=sn(),n=t.queue;if(n===null)throw Error(Q(311));n.lastRenderedReducer=e;var r=n.dispatch,o=n.pending,i=t.memoizedState;if(o!==null){n.pending=null;var s=o=o.next;do i=e(i,s.action),s=s.next;while(s!==o);bn(i,t.memoizedState)||(Rt=!0),t.memoizedState=i,t.baseQueue===null&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function sx(){}function ax(e,t){var n=Ue,r=sn(),o=t(),i=!bn(r.memoizedState,o);if(i&&(r.memoizedState=o,Rt=!0),r=r.queue,om(ux.bind(null,n,r,e),[e]),r.getSnapshot!==t||i||rt!==null&&rt.memoizedState.tag&1){if(n.flags|=2048,wa(9,cx.bind(null,n,r,o,t),void 0,null),at===null)throw Error(Q(349));jo&30||lx(n,t,o)}return o}function lx(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Ue.updateQueue,t===null?(t={lastEffect:null,stores:null},Ue.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function cx(e,t,n,r){t.value=n,t.getSnapshot=r,dx(t)&&fx(e)}function ux(e,t,n){return n(function(){dx(t)&&fx(e)})}function dx(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!bn(e,n)}catch{return!0}}function fx(e){var t=hr(e,1);t!==null&&yn(t,e,1,-1)}function m0(e){var t=In();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:xa,lastRenderedState:e},t.queue=e,e=e.dispatch=d5.bind(null,Ue,e),[t.memoizedState,e]}function wa(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=Ue.updateQueue,t===null?(t={lastEffect:null,stores:null},Ue.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function px(){return sn().memoizedState}function ic(e,t,n,r){var o=In();Ue.flags|=e,o.memoizedState=wa(1|t,n,void 0,r===void 0?null:r)}function Ru(e,t,n,r){var o=sn();r=r===void 0?null:r;var i=void 0;if(tt!==null){var s=tt.memoizedState;if(i=s.destroy,r!==null&&tm(r,s.deps)){o.memoizedState=wa(t,n,i,r);return}}Ue.flags|=e,o.memoizedState=wa(1|t,n,i,r)}function g0(e,t){return ic(8390656,8,e,t)}function om(e,t){return Ru(2048,8,e,t)}function hx(e,t){return Ru(4,2,e,t)}function mx(e,t){return Ru(4,4,e,t)}function gx(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function vx(e,t,n){return n=n!=null?n.concat([e]):null,Ru(4,4,gx.bind(null,t,e),n)}function im(){}function yx(e,t){var n=sn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&tm(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function xx(e,t){var n=sn();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&tm(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function wx(e,t,n){return jo&21?(bn(n,t)||(n=E1(),Ue.lanes|=n,Oo|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Rt=!0),e.memoizedState=n)}function c5(e,t){var n=Re;Re=n!==0&&4>n?n:4,e(!0);var r=Jd.transition;Jd.transition={};try{e(!1),t()}finally{Re=n,Jd.transition=r}}function _x(){return sn().memoizedState}function u5(e,t,n){var r=qr(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Sx(e))bx(t,n);else if(n=rx(e,t,n,r),n!==null){var o=_t();yn(n,e,r,o),Cx(n,t,r)}}function d5(e,t,n){var r=qr(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Sx(e))bx(t,o);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var s=t.lastRenderedState,a=i(s,n);if(o.hasEagerState=!0,o.eagerState=a,bn(a,s)){var l=t.interleaved;l===null?(o.next=o,Xh(t)):(o.next=l.next,l.next=o),t.interleaved=o;return}}catch{}finally{}n=rx(e,t,o,r),n!==null&&(o=_t(),yn(n,e,r,o),Cx(n,t,r))}}function Sx(e){var t=e.alternate;return e===Ue||t!==null&&t===Ue}function bx(e,t){Xs=$c=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Cx(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Dh(e,n)}}var Fc={readContext:on,useCallback:ht,useContext:ht,useEffect:ht,useImperativeHandle:ht,useInsertionEffect:ht,useLayoutEffect:ht,useMemo:ht,useReducer:ht,useRef:ht,useState:ht,useDebugValue:ht,useDeferredValue:ht,useTransition:ht,useMutableSource:ht,useSyncExternalStore:ht,useId:ht,unstable_isNewReconciler:!1},f5={readContext:on,useCallback:function(e,t){return In().memoizedState=[e,t===void 0?null:t],e},useContext:on,useEffect:g0,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,ic(4194308,4,gx.bind(null,t,e),n)},useLayoutEffect:function(e,t){return ic(4194308,4,e,t)},useInsertionEffect:function(e,t){return ic(4,2,e,t)},useMemo:function(e,t){var n=In();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=In();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=u5.bind(null,Ue,e),[r.memoizedState,e]},useRef:function(e){var t=In();return e={current:e},t.memoizedState=e},useState:m0,useDebugValue:im,useDeferredValue:function(e){return In().memoizedState=e},useTransition:function(){var e=m0(!1),t=e[0];return e=c5.bind(null,e[1]),In().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Ue,o=In();if($e){if(n===void 0)throw Error(Q(407));n=n()}else{if(n=t(),at===null)throw Error(Q(349));jo&30||lx(r,t,n)}o.memoizedState=n;var i={value:n,getSnapshot:t};return o.queue=i,g0(ux.bind(null,r,i,e),[e]),r.flags|=2048,wa(9,cx.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=In(),t=at.identifierPrefix;if($e){var n=or,r=rr;n=(r&~(1<<32-vn(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=ya++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=l5++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},p5={readContext:on,useCallback:yx,useContext:on,useEffect:om,useImperativeHandle:vx,useInsertionEffect:hx,useLayoutEffect:mx,useMemo:xx,useReducer:ef,useRef:px,useState:function(){return ef(xa)},useDebugValue:im,useDeferredValue:function(e){var t=sn();return wx(t,tt.memoizedState,e)},useTransition:function(){var e=ef(xa)[0],t=sn().memoizedState;return[e,t]},useMutableSource:sx,useSyncExternalStore:ax,useId:_x,unstable_isNewReconciler:!1},h5={readContext:on,useCallback:yx,useContext:on,useEffect:om,useImperativeHandle:vx,useInsertionEffect:hx,useLayoutEffect:mx,useMemo:xx,useReducer:tf,useRef:px,useState:function(){return tf(xa)},useDebugValue:im,useDeferredValue:function(e){var t=sn();return tt===null?t.memoizedState=e:wx(t,tt.memoizedState,e)},useTransition:function(){var e=tf(xa)[0],t=sn().memoizedState;return[e,t]},useMutableSource:sx,useSyncExternalStore:ax,useId:_x,unstable_isNewReconciler:!1};function cn(e,t){if(e&&e.defaultProps){t=We({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function gp(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:We({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Au={isMounted:function(e){return(e=e._reactInternals)?Zo(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=_t(),o=qr(e),i=ar(r,o);i.payload=t,n!=null&&(i.callback=n),t=Kr(e,i,o),t!==null&&(yn(t,e,o,r),rc(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=_t(),o=qr(e),i=ar(r,o);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Kr(e,i,o),t!==null&&(yn(t,e,o,r),rc(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=_t(),r=qr(e),o=ar(n,r);o.tag=2,t!=null&&(o.callback=t),t=Kr(e,o,r),t!==null&&(yn(t,e,r,n),rc(t,e,r))}};function v0(e,t,n,r,o,i,s){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,i,s):t.prototype&&t.prototype.isPureReactComponent?!fa(n,r)||!fa(o,i):!0}function Ex(e,t,n){var r=!1,o=eo,i=t.contextType;return typeof i=="object"&&i!==null?i=on(i):(o=jt(t)?Ao:vt.current,r=t.contextTypes,i=(r=r!=null)?Hi(e,o):eo),t=new t(n,i),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Au,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=i),t}function y0(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Au.enqueueReplaceState(t,t.state,null)}function vp(e,t,n,r){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs={},qh(e);var i=t.contextType;typeof i=="object"&&i!==null?o.context=on(i):(i=jt(t)?Ao:vt.current,o.context=Hi(e,i)),o.state=e.memoizedState,i=t.getDerivedStateFromProps,typeof i=="function"&&(gp(e,t,i,n),o.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof o.getSnapshotBeforeUpdate=="function"||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(t=o.state,typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount(),t!==o.state&&Au.enqueueReplaceState(o,o.state,null),Lc(e,n,o,r),o.state=e.memoizedState),typeof o.componentDidMount=="function"&&(e.flags|=4194308)}function Zi(e,t){try{var n="",r=t;do n+=H3(r),r=r.return;while(r);var o=n}catch(i){o=`
+Error generating stack: `+i.message+`
+`+i.stack}return{value:e,source:t,stack:o,digest:null}}function nf(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function yp(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var m5=typeof WeakMap=="function"?WeakMap:Map;function kx(e,t,n){n=ar(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Hc||(Hc=!0,Tp=r),yp(e,t)},n}function Nx(e,t,n){n=ar(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var o=t.value;n.payload=function(){return r(o)},n.callback=function(){yp(e,t)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){yp(e,t),typeof r!="function"&&(Xr===null?Xr=new Set([this]):Xr.add(this));var s=t.stack;this.componentDidCatch(t.value,{componentStack:s!==null?s:""})}),n}function x0(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new m5;var o=new Set;r.set(t,o)}else o=r.get(t),o===void 0&&(o=new Set,r.set(t,o));o.has(n)||(o.add(n),e=P5.bind(null,e,t,n),t.then(e,e))}function w0(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function _0(e,t,n,r,o){return e.mode&1?(e.flags|=65536,e.lanes=o,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=ar(-1,1),t.tag=2,Kr(n,t,1))),n.lanes|=1),e)}var g5=br.ReactCurrentOwner,Rt=!1;function xt(e,t,n,r){t.child=e===null?nx(t,null,n,r):Ui(t,e.child,n,r)}function S0(e,t,n,r,o){n=n.render;var i=t.ref;return Pi(t,o),r=nm(e,t,n,r,i,o),n=rm(),e!==null&&!Rt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,mr(e,t,o)):($e&&n&&Uh(t),t.flags|=1,xt(e,t,r,o),t.child)}function b0(e,t,n,r,o){if(e===null){var i=n.type;return typeof i=="function"&&!pm(i)&&i.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=i,Tx(e,t,i,r,o)):(e=cc(n.type,null,r,t,t.mode,o),e.ref=t.ref,e.return=t,t.child=e)}if(i=e.child,!(e.lanes&o)){var s=i.memoizedProps;if(n=n.compare,n=n!==null?n:fa,n(s,r)&&e.ref===t.ref)return mr(e,t,o)}return t.flags|=1,e=Qr(i,r),e.ref=t.ref,e.return=t,t.child=e}function Tx(e,t,n,r,o){if(e!==null){var i=e.memoizedProps;if(fa(i,r)&&e.ref===t.ref)if(Rt=!1,t.pendingProps=r=i,(e.lanes&o)!==0)e.flags&131072&&(Rt=!0);else return t.lanes=e.lanes,mr(e,t,o)}return xp(e,t,n,r,o)}function Px(e,t,n){var r=t.pendingProps,o=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Me(wi,$t),$t|=n;else{if(!(n&1073741824))return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Me(wi,$t),$t|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=i!==null?i.baseLanes:n,Me(wi,$t),$t|=r}else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,Me(wi,$t),$t|=r;return xt(e,t,o,n),t.child}function Ix(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function xp(e,t,n,r,o){var i=jt(n)?Ao:vt.current;return i=Hi(t,i),Pi(t,o),n=nm(e,t,n,r,i,o),r=rm(),e!==null&&!Rt?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,mr(e,t,o)):($e&&r&&Uh(t),t.flags|=1,xt(e,t,n,o),t.child)}function C0(e,t,n,r,o){if(jt(n)){var i=!0;Ac(t)}else i=!1;if(Pi(t,o),t.stateNode===null)sc(e,t),Ex(t,n,r),vp(t,n,r,o),r=!0;else if(e===null){var s=t.stateNode,a=t.memoizedProps;s.props=a;var l=s.context,c=n.contextType;typeof c=="object"&&c!==null?c=on(c):(c=jt(n)?Ao:vt.current,c=Hi(t,c));var d=n.getDerivedStateFromProps,u=typeof d=="function"||typeof s.getSnapshotBeforeUpdate=="function";u||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(a!==r||l!==c)&&y0(t,s,r,c),Or=!1;var f=t.memoizedState;s.state=f,Lc(t,r,s,o),l=t.memoizedState,a!==r||f!==l||Mt.current||Or?(typeof d=="function"&&(gp(t,n,d,r),l=t.memoizedState),(a=Or||v0(t,n,a,r,f,l,c))?(u||typeof s.UNSAFE_componentWillMount!="function"&&typeof s.componentWillMount!="function"||(typeof s.componentWillMount=="function"&&s.componentWillMount(),typeof s.UNSAFE_componentWillMount=="function"&&s.UNSAFE_componentWillMount()),typeof s.componentDidMount=="function"&&(t.flags|=4194308)):(typeof s.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),s.props=r,s.state=l,s.context=c,r=a):(typeof s.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{s=t.stateNode,ox(e,t),a=t.memoizedProps,c=t.type===t.elementType?a:cn(t.type,a),s.props=c,u=t.pendingProps,f=s.context,l=n.contextType,typeof l=="object"&&l!==null?l=on(l):(l=jt(n)?Ao:vt.current,l=Hi(t,l));var p=n.getDerivedStateFromProps;(d=typeof p=="function"||typeof s.getSnapshotBeforeUpdate=="function")||typeof s.UNSAFE_componentWillReceiveProps!="function"&&typeof s.componentWillReceiveProps!="function"||(a!==u||f!==l)&&y0(t,s,r,l),Or=!1,f=t.memoizedState,s.state=f,Lc(t,r,s,o);var y=t.memoizedState;a!==u||f!==y||Mt.current||Or?(typeof p=="function"&&(gp(t,n,p,r),y=t.memoizedState),(c=Or||v0(t,n,c,r,f,y,l)||!1)?(d||typeof s.UNSAFE_componentWillUpdate!="function"&&typeof s.componentWillUpdate!="function"||(typeof s.componentWillUpdate=="function"&&s.componentWillUpdate(r,y,l),typeof s.UNSAFE_componentWillUpdate=="function"&&s.UNSAFE_componentWillUpdate(r,y,l)),typeof s.componentDidUpdate=="function"&&(t.flags|=4),typeof s.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof s.componentDidUpdate!="function"||a===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof s.getSnapshotBeforeUpdate!="function"||a===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=y),s.props=r,s.state=y,s.context=l,r=c):(typeof s.componentDidUpdate!="function"||a===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof s.getSnapshotBeforeUpdate!="function"||a===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return wp(e,t,n,r,i,o)}function wp(e,t,n,r,o,i){Ix(e,t);var s=(t.flags&128)!==0;if(!r&&!s)return o&&c0(t,n,!1),mr(e,t,i);r=t.stateNode,g5.current=t;var a=s&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&s?(t.child=Ui(t,e.child,null,i),t.child=Ui(t,null,a,i)):xt(e,t,a,i),t.memoizedState=r.state,o&&c0(t,n,!0),t.child}function Rx(e){var t=e.stateNode;t.pendingContext?l0(e,t.pendingContext,t.pendingContext!==t.context):t.context&&l0(e,t.context,!1),Qh(e,t.containerInfo)}function E0(e,t,n,r,o){return Bi(),Zh(o),t.flags|=256,xt(e,t,n,r),t.child}var _p={dehydrated:null,treeContext:null,retryLane:0};function Sp(e){return{baseLanes:e,cachePool:null,transitions:null}}function Ax(e,t,n){var r=t.pendingProps,o=Be.current,i=!1,s=(t.flags&128)!==0,a;if((a=s)||(a=e!==null&&e.memoizedState===null?!1:(o&2)!==0),a?(i=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(o|=1),Me(Be,o&1),e===null)return hp(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(s=r.children,e=r.fallback,i?(r=t.mode,i=t.child,s={mode:"hidden",children:s},!(r&1)&&i!==null?(i.childLanes=0,i.pendingProps=s):i=Ou(s,r,0,null),e=ko(e,r,n,null),i.return=t,e.return=t,i.sibling=e,t.child=i,t.child.memoizedState=Sp(n),t.memoizedState=_p,e):sm(t,s));if(o=e.memoizedState,o!==null&&(a=o.dehydrated,a!==null))return v5(e,t,s,r,a,o,n);if(i){i=r.fallback,s=t.mode,o=e.child,a=o.sibling;var l={mode:"hidden",children:r.children};return!(s&1)&&t.child!==o?(r=t.child,r.childLanes=0,r.pendingProps=l,t.deletions=null):(r=Qr(o,l),r.subtreeFlags=o.subtreeFlags&14680064),a!==null?i=Qr(a,i):(i=ko(i,s,n,null),i.flags|=2),i.return=t,r.return=t,r.sibling=i,t.child=r,r=i,i=t.child,s=e.child.memoizedState,s=s===null?Sp(n):{baseLanes:s.baseLanes|n,cachePool:null,transitions:s.transitions},i.memoizedState=s,i.childLanes=e.childLanes&~n,t.memoizedState=_p,r}return i=e.child,e=i.sibling,r=Qr(i,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function sm(e,t){return t=Ou({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Rl(e,t,n,r){return r!==null&&Zh(r),Ui(t,e.child,null,n),e=sm(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function v5(e,t,n,r,o,i,s){if(n)return t.flags&256?(t.flags&=-257,r=nf(Error(Q(422))),Rl(e,t,s,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(i=r.fallback,o=t.mode,r=Ou({mode:"visible",children:r.children},o,0,null),i=ko(i,o,s,null),i.flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,t.mode&1&&Ui(t,e.child,null,s),t.child.memoizedState=Sp(s),t.memoizedState=_p,i);if(!(t.mode&1))return Rl(e,t,s,null);if(o.data==="$!"){if(r=o.nextSibling&&o.nextSibling.dataset,r)var a=r.dgst;return r=a,i=Error(Q(419)),r=nf(i,r,void 0),Rl(e,t,s,r)}if(a=(s&e.childLanes)!==0,Rt||a){if(r=at,r!==null){switch(s&-s){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}o=o&(r.suspendedLanes|s)?0:o,o!==0&&o!==i.retryLane&&(i.retryLane=o,hr(e,o),yn(r,e,o,-1))}return fm(),r=nf(Error(Q(421))),Rl(e,t,s,r)}return o.data==="$?"?(t.flags|=128,t.child=e.child,t=I5.bind(null,e),o._reactRetry=t,null):(e=i.treeContext,Bt=Yr(o.nextSibling),Ut=t,$e=!0,fn=null,e!==null&&(Jt[en++]=rr,Jt[en++]=or,Jt[en++]=Mo,rr=e.id,or=e.overflow,Mo=t),t=sm(t,r.children),t.flags|=4096,t)}function k0(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),mp(e.return,t,n)}function rf(e,t,n,r,o){var i=e.memoizedState;i===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=o)}function Mx(e,t,n){var r=t.pendingProps,o=r.revealOrder,i=r.tail;if(xt(e,t,r.children,n),r=Be.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&k0(e,n,t);else if(e.tag===19)k0(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(Me(Be,r),!(t.mode&1))t.memoizedState=null;else switch(o){case"forwards":for(n=t.child,o=null;n!==null;)e=n.alternate,e!==null&&zc(e)===null&&(o=n),n=n.sibling;n=o,n===null?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),rf(t,!1,o,n,i);break;case"backwards":for(n=null,o=t.child,t.child=null;o!==null;){if(e=o.alternate,e!==null&&zc(e)===null){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}rf(t,!0,n,null,i);break;case"together":rf(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function sc(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function mr(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Oo|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(Q(153));if(t.child!==null){for(e=t.child,n=Qr(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Qr(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function y5(e,t,n){switch(t.tag){case 3:Rx(t),Bi();break;case 5:ix(t);break;case 1:jt(t.type)&&Ac(t);break;case 4:Qh(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,o=t.memoizedProps.value;Me(Oc,r._currentValue),r._currentValue=o;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(Me(Be,Be.current&1),t.flags|=128,null):n&t.child.childLanes?Ax(e,t,n):(Me(Be,Be.current&1),e=mr(e,t,n),e!==null?e.sibling:null);Me(Be,Be.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return Mx(e,t,n);t.flags|=128}if(o=t.memoizedState,o!==null&&(o.rendering=null,o.tail=null,o.lastEffect=null),Me(Be,Be.current),r)break;return null;case 22:case 23:return t.lanes=0,Px(e,t,n)}return mr(e,t,n)}var jx,bp,Ox,Dx;jx=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};bp=function(){};Ox=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,_o(On.current);var i=null;switch(n){case"input":o=Wf(e,o),r=Wf(e,r),i=[];break;case"select":o=We({},o,{value:void 0}),r=We({},r,{value:void 0}),i=[];break;case"textarea":o=Yf(e,o),r=Yf(e,r),i=[];break;default:typeof o.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Ic)}Xf(n,r);var s;n=null;for(c in o)if(!r.hasOwnProperty(c)&&o.hasOwnProperty(c)&&o[c]!=null)if(c==="style"){var a=o[c];for(s in a)a.hasOwnProperty(s)&&(n||(n={}),n[s]="")}else c!=="dangerouslySetInnerHTML"&&c!=="children"&&c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&c!=="autoFocus"&&(ia.hasOwnProperty(c)?i||(i=[]):(i=i||[]).push(c,null));for(c in r){var l=r[c];if(a=o!=null?o[c]:void 0,r.hasOwnProperty(c)&&l!==a&&(l!=null||a!=null))if(c==="style")if(a){for(s in a)!a.hasOwnProperty(s)||l&&l.hasOwnProperty(s)||(n||(n={}),n[s]="");for(s in l)l.hasOwnProperty(s)&&a[s]!==l[s]&&(n||(n={}),n[s]=l[s])}else n||(i||(i=[]),i.push(c,n)),n=l;else c==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,a=a?a.__html:void 0,l!=null&&a!==l&&(i=i||[]).push(c,l)):c==="children"?typeof l!="string"&&typeof l!="number"||(i=i||[]).push(c,""+l):c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&(ia.hasOwnProperty(c)?(l!=null&&c==="onScroll"&&Oe("scroll",e),i||a===l||(i=[])):(i=i||[]).push(c,l))}n&&(i=i||[]).push("style",n);var c=i;(t.updateQueue=c)&&(t.flags|=4)}};Dx=function(e,t,n,r){n!==r&&(t.flags|=4)};function Es(e,t){if(!$e)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function mt(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags&14680064,r|=o.flags&14680064,o.return=e,o=o.sibling;else for(o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function x5(e,t,n){var r=t.pendingProps;switch(Wh(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return mt(t),null;case 1:return jt(t.type)&&Rc(),mt(t),null;case 3:return r=t.stateNode,Wi(),De(Mt),De(vt),em(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Pl(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,fn!==null&&(Rp(fn),fn=null))),bp(e,t),mt(t),null;case 5:Jh(t);var o=_o(va.current);if(n=t.type,e!==null&&t.stateNode!=null)Ox(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(Q(166));return mt(t),null}if(e=_o(On.current),Pl(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[Rn]=t,r[ma]=i,e=(t.mode&1)!==0,n){case"dialog":Oe("cancel",r),Oe("close",r);break;case"iframe":case"object":case"embed":Oe("load",r);break;case"video":case"audio":for(o=0;o<Ls.length;o++)Oe(Ls[o],r);break;case"source":Oe("error",r);break;case"img":case"image":case"link":Oe("error",r),Oe("load",r);break;case"details":Oe("toggle",r);break;case"input":Og(r,i),Oe("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},Oe("invalid",r);break;case"textarea":Lg(r,i),Oe("invalid",r)}Xf(n,i),o=null;for(var s in i)if(i.hasOwnProperty(s)){var a=i[s];s==="children"?typeof a=="string"?r.textContent!==a&&(i.suppressHydrationWarning!==!0&&Tl(r.textContent,a,e),o=["children",a]):typeof a=="number"&&r.textContent!==""+a&&(i.suppressHydrationWarning!==!0&&Tl(r.textContent,a,e),o=["children",""+a]):ia.hasOwnProperty(s)&&a!=null&&s==="onScroll"&&Oe("scroll",r)}switch(n){case"input":wl(r),Dg(r,i,!0);break;case"textarea":wl(r),zg(r);break;case"select":case"option":break;default:typeof i.onClick=="function"&&(r.onclick=Ic)}r=o,t.updateQueue=r,r!==null&&(t.flags|=4)}else{s=o.nodeType===9?o:o.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=u1(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=s.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),n==="select"&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[Rn]=t,e[ma]=r,jx(e,t,!1,!1),t.stateNode=e;e:{switch(s=qf(n,r),n){case"dialog":Oe("cancel",e),Oe("close",e),o=r;break;case"iframe":case"object":case"embed":Oe("load",e),o=r;break;case"video":case"audio":for(o=0;o<Ls.length;o++)Oe(Ls[o],e);o=r;break;case"source":Oe("error",e),o=r;break;case"img":case"image":case"link":Oe("error",e),Oe("load",e),o=r;break;case"details":Oe("toggle",e),o=r;break;case"input":Og(e,r),o=Wf(e,r),Oe("invalid",e);break;case"option":o=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=We({},r,{value:void 0}),Oe("invalid",e);break;case"textarea":Lg(e,r),o=Yf(e,r),Oe("invalid",e);break;default:o=r}Xf(n,o),a=o;for(i in a)if(a.hasOwnProperty(i)){var l=a[i];i==="style"?p1(e,l):i==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&d1(e,l)):i==="children"?typeof l=="string"?(n!=="textarea"||l!=="")&&sa(e,l):typeof l=="number"&&sa(e,""+l):i!=="suppressContentEditableWarning"&&i!=="suppressHydrationWarning"&&i!=="autoFocus"&&(ia.hasOwnProperty(i)?l!=null&&i==="onScroll"&&Oe("scroll",e):l!=null&&Ih(e,i,l,s))}switch(n){case"input":wl(e),Dg(e,r,!1);break;case"textarea":wl(e),zg(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Jr(r.value));break;case"select":e.multiple=!!r.multiple,i=r.value,i!=null?Ei(e,!!r.multiple,i,!1):r.defaultValue!=null&&Ei(e,!!r.multiple,r.defaultValue,!0);break;default:typeof o.onClick=="function"&&(e.onclick=Ic)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return mt(t),null;case 6:if(e&&t.stateNode!=null)Dx(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(Q(166));if(n=_o(va.current),_o(On.current),Pl(t)){if(r=t.stateNode,n=t.memoizedProps,r[Rn]=t,(i=r.nodeValue!==n)&&(e=Ut,e!==null))switch(e.tag){case 3:Tl(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Tl(r.nodeValue,n,(e.mode&1)!==0)}i&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[Rn]=t,t.stateNode=r}return mt(t),null;case 13:if(De(Be),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if($e&&Bt!==null&&t.mode&1&&!(t.flags&128))ex(),Bi(),t.flags|=98560,i=!1;else if(i=Pl(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(Q(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(Q(317));i[Rn]=t}else Bi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;mt(t),i=!1}else fn!==null&&(Rp(fn),fn=null),i=!0;if(!i)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||Be.current&1?nt===0&&(nt=3):fm())),t.updateQueue!==null&&(t.flags|=4),mt(t),null);case 4:return Wi(),bp(e,t),e===null&&pa(t.stateNode.containerInfo),mt(t),null;case 10:return Kh(t.type._context),mt(t),null;case 17:return jt(t.type)&&Rc(),mt(t),null;case 19:if(De(Be),i=t.memoizedState,i===null)return mt(t),null;if(r=(t.flags&128)!==0,s=i.rendering,s===null)if(r)Es(i,!1);else{if(nt!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(s=zc(e),s!==null){for(t.flags|=128,Es(i,!1),r=s.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)i=n,e=r,i.flags&=14680066,s=i.alternate,s===null?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=s.childLanes,i.lanes=s.lanes,i.child=s.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=s.memoizedProps,i.memoizedState=s.memoizedState,i.updateQueue=s.updateQueue,i.type=s.type,e=s.dependencies,i.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Me(Be,Be.current&1|2),t.child}e=e.sibling}i.tail!==null&&Ke()>Gi&&(t.flags|=128,r=!0,Es(i,!1),t.lanes=4194304)}else{if(!r)if(e=zc(s),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Es(i,!0),i.tail===null&&i.tailMode==="hidden"&&!s.alternate&&!$e)return mt(t),null}else 2*Ke()-i.renderingStartTime>Gi&&n!==1073741824&&(t.flags|=128,r=!0,Es(i,!1),t.lanes=4194304);i.isBackwards?(s.sibling=t.child,t.child=s):(n=i.last,n!==null?n.sibling=s:t.child=s,i.last=s)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Ke(),t.sibling=null,n=Be.current,Me(Be,r?n&1|2:n&1),t):(mt(t),null);case 22:case 23:return dm(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?$t&1073741824&&(mt(t),t.subtreeFlags&6&&(t.flags|=8192)):mt(t),null;case 24:return null;case 25:return null}throw Error(Q(156,t.tag))}function w5(e,t){switch(Wh(t),t.tag){case 1:return jt(t.type)&&Rc(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Wi(),De(Mt),De(vt),em(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Jh(t),null;case 13:if(De(Be),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(Q(340));Bi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return De(Be),null;case 4:return Wi(),null;case 10:return Kh(t.type._context),null;case 22:case 23:return dm(),null;case 24:return null;default:return null}}var Al=!1,gt=!1,_5=typeof WeakSet=="function"?WeakSet:Set,ce=null;function xi(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Ge(e,t,r)}else n.current=null}function Cp(e,t,n){try{n()}catch(r){Ge(e,t,r)}}var N0=!1;function S5(e,t){if(ap=Nc,e=V1(),Bh(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var o=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var s=0,a=-1,l=-1,c=0,d=0,u=e,f=null;t:for(;;){for(var p;u!==n||o!==0&&u.nodeType!==3||(a=s+o),u!==i||r!==0&&u.nodeType!==3||(l=s+r),u.nodeType===3&&(s+=u.nodeValue.length),(p=u.firstChild)!==null;)f=u,u=p;for(;;){if(u===e)break t;if(f===n&&++c===o&&(a=s),f===i&&++d===r&&(l=s),(p=u.nextSibling)!==null)break;u=f,f=u.parentNode}u=p}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(lp={focusedElem:e,selectionRange:n},Nc=!1,ce=t;ce!==null;)if(t=ce,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,ce=e;else for(;ce!==null;){t=ce;try{var y=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(y!==null){var v=y.memoizedProps,_=y.memoizedState,m=t.stateNode,g=m.getSnapshotBeforeUpdate(t.elementType===t.type?v:cn(t.type,v),_);m.__reactInternalSnapshotBeforeUpdate=g}break;case 3:var w=t.stateNode.containerInfo;w.nodeType===1?w.textContent="":w.nodeType===9&&w.documentElement&&w.removeChild(w.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(Q(163))}}catch(S){Ge(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,ce=e;break}ce=t.return}return y=N0,N0=!1,y}function qs(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var o=r=r.next;do{if((o.tag&e)===e){var i=o.destroy;o.destroy=void 0,i!==void 0&&Cp(t,n,i)}o=o.next}while(o!==r)}}function Mu(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Ep(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Lx(e){var t=e.alternate;t!==null&&(e.alternate=null,Lx(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Rn],delete t[ma],delete t[dp],delete t[o5],delete t[i5])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function zx(e){return e.tag===5||e.tag===3||e.tag===4}function T0(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||zx(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function kp(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Ic));else if(r!==4&&(e=e.child,e!==null))for(kp(e,t,n),e=e.sibling;e!==null;)kp(e,t,n),e=e.sibling}function Np(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Np(e,t,n),e=e.sibling;e!==null;)Np(e,t,n),e=e.sibling}var ct=null,un=!1;function Tr(e,t,n){for(n=n.child;n!==null;)$x(e,t,n),n=n.sibling}function $x(e,t,n){if(jn&&typeof jn.onCommitFiberUnmount=="function")try{jn.onCommitFiberUnmount(Eu,n)}catch{}switch(n.tag){case 5:gt||xi(n,t);case 6:var r=ct,o=un;ct=null,Tr(e,t,n),ct=r,un=o,ct!==null&&(un?(e=ct,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ct.removeChild(n.stateNode));break;case 18:ct!==null&&(un?(e=ct,n=n.stateNode,e.nodeType===8?Xd(e.parentNode,n):e.nodeType===1&&Xd(e,n),ua(e)):Xd(ct,n.stateNode));break;case 4:r=ct,o=un,ct=n.stateNode.containerInfo,un=!0,Tr(e,t,n),ct=r,un=o;break;case 0:case 11:case 14:case 15:if(!gt&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){o=r=r.next;do{var i=o,s=i.destroy;i=i.tag,s!==void 0&&(i&2||i&4)&&Cp(n,t,s),o=o.next}while(o!==r)}Tr(e,t,n);break;case 1:if(!gt&&(xi(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){Ge(n,t,a)}Tr(e,t,n);break;case 21:Tr(e,t,n);break;case 22:n.mode&1?(gt=(r=gt)||n.memoizedState!==null,Tr(e,t,n),gt=r):Tr(e,t,n);break;default:Tr(e,t,n)}}function P0(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new _5),t.forEach(function(r){var o=R5.bind(null,e,r);n.has(r)||(n.add(r),r.then(o,o))})}}function an(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var o=n[r];try{var i=e,s=t,a=s;e:for(;a!==null;){switch(a.tag){case 5:ct=a.stateNode,un=!1;break e;case 3:ct=a.stateNode.containerInfo,un=!0;break e;case 4:ct=a.stateNode.containerInfo,un=!0;break e}a=a.return}if(ct===null)throw Error(Q(160));$x(i,s,o),ct=null,un=!1;var l=o.alternate;l!==null&&(l.return=null),o.return=null}catch(c){Ge(o,t,c)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Fx(t,e),t=t.sibling}function Fx(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(an(t,e),Pn(e),r&4){try{qs(3,e,e.return),Mu(3,e)}catch(v){Ge(e,e.return,v)}try{qs(5,e,e.return)}catch(v){Ge(e,e.return,v)}}break;case 1:an(t,e),Pn(e),r&512&&n!==null&&xi(n,n.return);break;case 5:if(an(t,e),Pn(e),r&512&&n!==null&&xi(n,n.return),e.flags&32){var o=e.stateNode;try{sa(o,"")}catch(v){Ge(e,e.return,v)}}if(r&4&&(o=e.stateNode,o!=null)){var i=e.memoizedProps,s=n!==null?n.memoizedProps:i,a=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{a==="input"&&i.type==="radio"&&i.name!=null&&l1(o,i),qf(a,s);var c=qf(a,i);for(s=0;s<l.length;s+=2){var d=l[s],u=l[s+1];d==="style"?p1(o,u):d==="dangerouslySetInnerHTML"?d1(o,u):d==="children"?sa(o,u):Ih(o,d,u,c)}switch(a){case"input":Zf(o,i);break;case"textarea":c1(o,i);break;case"select":var f=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!i.multiple;var p=i.value;p!=null?Ei(o,!!i.multiple,p,!1):f!==!!i.multiple&&(i.defaultValue!=null?Ei(o,!!i.multiple,i.defaultValue,!0):Ei(o,!!i.multiple,i.multiple?[]:"",!1))}o[ma]=i}catch(v){Ge(e,e.return,v)}}break;case 6:if(an(t,e),Pn(e),r&4){if(e.stateNode===null)throw Error(Q(162));o=e.stateNode,i=e.memoizedProps;try{o.nodeValue=i}catch(v){Ge(e,e.return,v)}}break;case 3:if(an(t,e),Pn(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{ua(t.containerInfo)}catch(v){Ge(e,e.return,v)}break;case 4:an(t,e),Pn(e);break;case 13:an(t,e),Pn(e),o=e.child,o.flags&8192&&(i=o.memoizedState!==null,o.stateNode.isHidden=i,!i||o.alternate!==null&&o.alternate.memoizedState!==null||(cm=Ke())),r&4&&P0(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(gt=(c=gt)||d,an(t,e),gt=c):an(t,e),Pn(e),r&8192){if(c=e.memoizedState!==null,(e.stateNode.isHidden=c)&&!d&&e.mode&1)for(ce=e,d=e.child;d!==null;){for(u=ce=d;ce!==null;){switch(f=ce,p=f.child,f.tag){case 0:case 11:case 14:case 15:qs(4,f,f.return);break;case 1:xi(f,f.return);var y=f.stateNode;if(typeof y.componentWillUnmount=="function"){r=f,n=f.return;try{t=r,y.props=t.memoizedProps,y.state=t.memoizedState,y.componentWillUnmount()}catch(v){Ge(r,n,v)}}break;case 5:xi(f,f.return);break;case 22:if(f.memoizedState!==null){R0(u);continue}}p!==null?(p.return=f,ce=p):R0(u)}d=d.sibling}e:for(d=null,u=e;;){if(u.tag===5){if(d===null){d=u;try{o=u.stateNode,c?(i=o.style,typeof i.setProperty=="function"?i.setProperty("display","none","important"):i.display="none"):(a=u.stateNode,l=u.memoizedProps.style,s=l!=null&&l.hasOwnProperty("display")?l.display:null,a.style.display=f1("display",s))}catch(v){Ge(e,e.return,v)}}}else if(u.tag===6){if(d===null)try{u.stateNode.nodeValue=c?"":u.memoizedProps}catch(v){Ge(e,e.return,v)}}else if((u.tag!==22&&u.tag!==23||u.memoizedState===null||u===e)&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===e)break e;for(;u.sibling===null;){if(u.return===null||u.return===e)break e;d===u&&(d=null),u=u.return}d===u&&(d=null),u.sibling.return=u.return,u=u.sibling}}break;case 19:an(t,e),Pn(e),r&4&&P0(e);break;case 21:break;default:an(t,e),Pn(e)}}function Pn(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(zx(n)){var r=n;break e}n=n.return}throw Error(Q(160))}switch(r.tag){case 5:var o=r.stateNode;r.flags&32&&(sa(o,""),r.flags&=-33);var i=T0(e);Np(e,i,o);break;case 3:case 4:var s=r.stateNode.containerInfo,a=T0(e);kp(e,a,s);break;default:throw Error(Q(161))}}catch(l){Ge(e,e.return,l)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function b5(e,t,n){ce=e,Vx(e)}function Vx(e,t,n){for(var r=(e.mode&1)!==0;ce!==null;){var o=ce,i=o.child;if(o.tag===22&&r){var s=o.memoizedState!==null||Al;if(!s){var a=o.alternate,l=a!==null&&a.memoizedState!==null||gt;a=Al;var c=gt;if(Al=s,(gt=l)&&!c)for(ce=o;ce!==null;)s=ce,l=s.child,s.tag===22&&s.memoizedState!==null?A0(o):l!==null?(l.return=s,ce=l):A0(o);for(;i!==null;)ce=i,Vx(i),i=i.sibling;ce=o,Al=a,gt=c}I0(e)}else o.subtreeFlags&8772&&i!==null?(i.return=o,ce=i):I0(e)}}function I0(e){for(;ce!==null;){var t=ce;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:gt||Mu(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!gt)if(n===null)r.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:cn(t.type,n.memoizedProps);r.componentDidUpdate(o,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;i!==null&&h0(t,i,r);break;case 3:var s=t.updateQueue;if(s!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}h0(t,s,n)}break;case 5:var a=t.stateNode;if(n===null&&t.flags&4){n=a;var l=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break;case"img":l.src&&(n.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var c=t.alternate;if(c!==null){var d=c.memoizedState;if(d!==null){var u=d.dehydrated;u!==null&&ua(u)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(Q(163))}gt||t.flags&512&&Ep(t)}catch(f){Ge(t,t.return,f)}}if(t===e){ce=null;break}if(n=t.sibling,n!==null){n.return=t.return,ce=n;break}ce=t.return}}function R0(e){for(;ce!==null;){var t=ce;if(t===e){ce=null;break}var n=t.sibling;if(n!==null){n.return=t.return,ce=n;break}ce=t.return}}function A0(e){for(;ce!==null;){var t=ce;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Mu(4,t)}catch(l){Ge(t,n,l)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var o=t.return;try{r.componentDidMount()}catch(l){Ge(t,o,l)}}var i=t.return;try{Ep(t)}catch(l){Ge(t,i,l)}break;case 5:var s=t.return;try{Ep(t)}catch(l){Ge(t,s,l)}}}catch(l){Ge(t,t.return,l)}if(t===e){ce=null;break}var a=t.sibling;if(a!==null){a.return=t.return,ce=a;break}ce=t.return}}var C5=Math.ceil,Vc=br.ReactCurrentDispatcher,am=br.ReactCurrentOwner,rn=br.ReactCurrentBatchConfig,Te=0,at=null,Qe=null,dt=0,$t=0,wi=uo(0),nt=0,_a=null,Oo=0,ju=0,lm=0,Qs=null,It=null,cm=0,Gi=1/0,er=null,Hc=!1,Tp=null,Xr=null,Ml=!1,Ur=null,Bc=0,Js=0,Pp=null,ac=-1,lc=0;function _t(){return Te&6?Ke():ac!==-1?ac:ac=Ke()}function qr(e){return e.mode&1?Te&2&&dt!==0?dt&-dt:a5.transition!==null?(lc===0&&(lc=E1()),lc):(e=Re,e!==0||(e=window.event,e=e===void 0?16:A1(e.type)),e):1}function yn(e,t,n,r){if(50<Js)throw Js=0,Pp=null,Error(Q(185));Qa(e,n,r),(!(Te&2)||e!==at)&&(e===at&&(!(Te&2)&&(ju|=n),nt===4&&zr(e,dt)),Ot(e,r),n===1&&Te===0&&!(t.mode&1)&&(Gi=Ke()+500,Iu&&fo()))}function Ot(e,t){var n=e.callbackNode;ak(e,t);var r=kc(e,e===at?dt:0);if(r===0)n!==null&&Vg(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Vg(n),t===1)e.tag===0?s5(M0.bind(null,e)):q1(M0.bind(null,e)),n5(function(){!(Te&6)&&fo()}),n=null;else{switch(k1(r)){case 1:n=Oh;break;case 4:n=b1;break;case 16:n=Ec;break;case 536870912:n=C1;break;default:n=Ec}n=Kx(n,Hx.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function Hx(e,t){if(ac=-1,lc=0,Te&6)throw Error(Q(327));var n=e.callbackNode;if(Ii()&&e.callbackNode!==n)return null;var r=kc(e,e===at?dt:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=Uc(e,r);else{t=r;var o=Te;Te|=2;var i=Ux();(at!==e||dt!==t)&&(er=null,Gi=Ke()+500,Eo(e,t));do try{N5();break}catch(a){Bx(e,a)}while(!0);Yh(),Vc.current=i,Te=o,Qe!==null?t=0:(at=null,dt=0,t=nt)}if(t!==0){if(t===2&&(o=np(e),o!==0&&(r=o,t=Ip(e,o))),t===1)throw n=_a,Eo(e,0),zr(e,r),Ot(e,Ke()),n;if(t===6)zr(e,r);else{if(o=e.current.alternate,!(r&30)&&!E5(o)&&(t=Uc(e,r),t===2&&(i=np(e),i!==0&&(r=i,t=Ip(e,i))),t===1))throw n=_a,Eo(e,0),zr(e,r),Ot(e,Ke()),n;switch(e.finishedWork=o,e.finishedLanes=r,t){case 0:case 1:throw Error(Q(345));case 2:vo(e,It,er);break;case 3:if(zr(e,r),(r&130023424)===r&&(t=cm+500-Ke(),10<t)){if(kc(e,0)!==0)break;if(o=e.suspendedLanes,(o&r)!==r){_t(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=up(vo.bind(null,e,It,er),t);break}vo(e,It,er);break;case 4:if(zr(e,r),(r&4194240)===r)break;for(t=e.eventTimes,o=-1;0<r;){var s=31-vn(r);i=1<<s,s=t[s],s>o&&(o=s),r&=~i}if(r=o,r=Ke()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*C5(r/1960))-r,10<r){e.timeoutHandle=up(vo.bind(null,e,It,er),r);break}vo(e,It,er);break;case 5:vo(e,It,er);break;default:throw Error(Q(329))}}}return Ot(e,Ke()),e.callbackNode===n?Hx.bind(null,e):null}function Ip(e,t){var n=Qs;return e.current.memoizedState.isDehydrated&&(Eo(e,t).flags|=256),e=Uc(e,t),e!==2&&(t=It,It=n,t!==null&&Rp(t)),e}function Rp(e){It===null?It=e:It.push.apply(It,e)}function E5(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var o=n[r],i=o.getSnapshot;o=o.value;try{if(!bn(i(),o))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 zr(e,t){for(t&=~lm,t&=~ju,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-vn(t),r=1<<n;e[n]=-1,t&=~r}}function M0(e){if(Te&6)throw Error(Q(327));Ii();var t=kc(e,0);if(!(t&1))return Ot(e,Ke()),null;var n=Uc(e,t);if(e.tag!==0&&n===2){var r=np(e);r!==0&&(t=r,n=Ip(e,r))}if(n===1)throw n=_a,Eo(e,0),zr(e,t),Ot(e,Ke()),n;if(n===6)throw Error(Q(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,vo(e,It,er),Ot(e,Ke()),null}function um(e,t){var n=Te;Te|=1;try{return e(t)}finally{Te=n,Te===0&&(Gi=Ke()+500,Iu&&fo())}}function Do(e){Ur!==null&&Ur.tag===0&&!(Te&6)&&Ii();var t=Te;Te|=1;var n=rn.transition,r=Re;try{if(rn.transition=null,Re=1,e)return e()}finally{Re=r,rn.transition=n,Te=t,!(Te&6)&&fo()}}function dm(){$t=wi.current,De(wi)}function Eo(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,t5(n)),Qe!==null)for(n=Qe.return;n!==null;){var r=n;switch(Wh(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&Rc();break;case 3:Wi(),De(Mt),De(vt),em();break;case 5:Jh(r);break;case 4:Wi();break;case 13:De(Be);break;case 19:De(Be);break;case 10:Kh(r.type._context);break;case 22:case 23:dm()}n=n.return}if(at=e,Qe=e=Qr(e.current,null),dt=$t=t,nt=0,_a=null,lm=ju=Oo=0,It=Qs=null,wo!==null){for(t=0;t<wo.length;t++)if(n=wo[t],r=n.interleaved,r!==null){n.interleaved=null;var o=r.next,i=n.pending;if(i!==null){var s=i.next;i.next=o,r.next=s}n.pending=r}wo=null}return e}function Bx(e,t){do{var n=Qe;try{if(Yh(),oc.current=Fc,$c){for(var r=Ue.memoizedState;r!==null;){var o=r.queue;o!==null&&(o.pending=null),r=r.next}$c=!1}if(jo=0,rt=tt=Ue=null,Xs=!1,ya=0,am.current=null,n===null||n.return===null){nt=1,_a=t,Qe=null;break}e:{var i=e,s=n.return,a=n,l=t;if(t=dt,a.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var c=l,d=a,u=d.tag;if(!(d.mode&1)&&(u===0||u===11||u===15)){var f=d.alternate;f?(d.updateQueue=f.updateQueue,d.memoizedState=f.memoizedState,d.lanes=f.lanes):(d.updateQueue=null,d.memoizedState=null)}var p=w0(s);if(p!==null){p.flags&=-257,_0(p,s,a,i,t),p.mode&1&&x0(i,c,t),t=p,l=c;var y=t.updateQueue;if(y===null){var v=new Set;v.add(l),t.updateQueue=v}else y.add(l);break e}else{if(!(t&1)){x0(i,c,t),fm();break e}l=Error(Q(426))}}else if($e&&a.mode&1){var _=w0(s);if(_!==null){!(_.flags&65536)&&(_.flags|=256),_0(_,s,a,i,t),Zh(Zi(l,a));break e}}i=l=Zi(l,a),nt!==4&&(nt=2),Qs===null?Qs=[i]:Qs.push(i),i=s;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t;var m=kx(i,l,t);p0(i,m);break e;case 1:a=l;var g=i.type,w=i.stateNode;if(!(i.flags&128)&&(typeof g.getDerivedStateFromError=="function"||w!==null&&typeof w.componentDidCatch=="function"&&(Xr===null||!Xr.has(w)))){i.flags|=65536,t&=-t,i.lanes|=t;var S=Nx(i,a,t);p0(i,S);break e}}i=i.return}while(i!==null)}Zx(n)}catch(C){t=C,Qe===n&&n!==null&&(Qe=n=n.return);continue}break}while(!0)}function Ux(){var e=Vc.current;return Vc.current=Fc,e===null?Fc:e}function fm(){(nt===0||nt===3||nt===2)&&(nt=4),at===null||!(Oo&268435455)&&!(ju&268435455)||zr(at,dt)}function Uc(e,t){var n=Te;Te|=2;var r=Ux();(at!==e||dt!==t)&&(er=null,Eo(e,t));do try{k5();break}catch(o){Bx(e,o)}while(!0);if(Yh(),Te=n,Vc.current=r,Qe!==null)throw Error(Q(261));return at=null,dt=0,nt}function k5(){for(;Qe!==null;)Wx(Qe)}function N5(){for(;Qe!==null&&!Q3();)Wx(Qe)}function Wx(e){var t=Yx(e.alternate,e,$t);e.memoizedProps=e.pendingProps,t===null?Zx(e):Qe=t,am.current=null}function Zx(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=w5(n,t),n!==null){n.flags&=32767,Qe=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{nt=6,Qe=null;return}}else if(n=x5(n,t,$t),n!==null){Qe=n;return}if(t=t.sibling,t!==null){Qe=t;return}Qe=t=e}while(t!==null);nt===0&&(nt=5)}function vo(e,t,n){var r=Re,o=rn.transition;try{rn.transition=null,Re=1,T5(e,t,n,r)}finally{rn.transition=o,Re=r}return null}function T5(e,t,n,r){do Ii();while(Ur!==null);if(Te&6)throw Error(Q(327));n=e.finishedWork;var o=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(Q(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(lk(e,i),e===at&&(Qe=at=null,dt=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Ml||(Ml=!0,Kx(Ec,function(){return Ii(),null})),i=(n.flags&15990)!==0,n.subtreeFlags&15990||i){i=rn.transition,rn.transition=null;var s=Re;Re=1;var a=Te;Te|=4,am.current=null,S5(e,n),Fx(n,e),Yk(lp),Nc=!!ap,lp=ap=null,e.current=n,b5(n),J3(),Te=a,Re=s,rn.transition=i}else e.current=n;if(Ml&&(Ml=!1,Ur=e,Bc=o),i=e.pendingLanes,i===0&&(Xr=null),nk(n.stateNode),Ot(e,Ke()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)o=t[n],r(o.value,{componentStack:o.stack,digest:o.digest});if(Hc)throw Hc=!1,e=Tp,Tp=null,e;return Bc&1&&e.tag!==0&&Ii(),i=e.pendingLanes,i&1?e===Pp?Js++:(Js=0,Pp=e):Js=0,fo(),null}function Ii(){if(Ur!==null){var e=k1(Bc),t=rn.transition,n=Re;try{if(rn.transition=null,Re=16>e?16:e,Ur===null)var r=!1;else{if(e=Ur,Ur=null,Bc=0,Te&6)throw Error(Q(331));var o=Te;for(Te|=4,ce=e.current;ce!==null;){var i=ce,s=i.child;if(ce.flags&16){var a=i.deletions;if(a!==null){for(var l=0;l<a.length;l++){var c=a[l];for(ce=c;ce!==null;){var d=ce;switch(d.tag){case 0:case 11:case 15:qs(8,d,i)}var u=d.child;if(u!==null)u.return=d,ce=u;else for(;ce!==null;){d=ce;var f=d.sibling,p=d.return;if(Lx(d),d===c){ce=null;break}if(f!==null){f.return=p,ce=f;break}ce=p}}}var y=i.alternate;if(y!==null){var v=y.child;if(v!==null){y.child=null;do{var _=v.sibling;v.sibling=null,v=_}while(v!==null)}}ce=i}}if(i.subtreeFlags&2064&&s!==null)s.return=i,ce=s;else e:for(;ce!==null;){if(i=ce,i.flags&2048)switch(i.tag){case 0:case 11:case 15:qs(9,i,i.return)}var m=i.sibling;if(m!==null){m.return=i.return,ce=m;break e}ce=i.return}}var g=e.current;for(ce=g;ce!==null;){s=ce;var w=s.child;if(s.subtreeFlags&2064&&w!==null)w.return=s,ce=w;else e:for(s=g;ce!==null;){if(a=ce,a.flags&2048)try{switch(a.tag){case 0:case 11:case 15:Mu(9,a)}}catch(C){Ge(a,a.return,C)}if(a===s){ce=null;break e}var S=a.sibling;if(S!==null){S.return=a.return,ce=S;break e}ce=a.return}}if(Te=o,fo(),jn&&typeof jn.onPostCommitFiberRoot=="function")try{jn.onPostCommitFiberRoot(Eu,e)}catch{}r=!0}return r}finally{Re=n,rn.transition=t}}return!1}function j0(e,t,n){t=Zi(n,t),t=kx(e,t,1),e=Kr(e,t,1),t=_t(),e!==null&&(Qa(e,1,t),Ot(e,t))}function Ge(e,t,n){if(e.tag===3)j0(e,e,n);else for(;t!==null;){if(t.tag===3){j0(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Xr===null||!Xr.has(r))){e=Zi(n,e),e=Nx(t,e,1),t=Kr(t,e,1),e=_t(),t!==null&&(Qa(t,1,e),Ot(t,e));break}}t=t.return}}function P5(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=_t(),e.pingedLanes|=e.suspendedLanes&n,at===e&&(dt&n)===n&&(nt===4||nt===3&&(dt&130023424)===dt&&500>Ke()-cm?Eo(e,0):lm|=n),Ot(e,t)}function Gx(e,t){t===0&&(e.mode&1?(t=bl,bl<<=1,!(bl&130023424)&&(bl=4194304)):t=1);var n=_t();e=hr(e,t),e!==null&&(Qa(e,t,n),Ot(e,n))}function I5(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Gx(e,n)}function R5(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;o!==null&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(Q(314))}r!==null&&r.delete(t),Gx(e,n)}var Yx;Yx=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Mt.current)Rt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Rt=!1,y5(e,t,n);Rt=!!(e.flags&131072)}else Rt=!1,$e&&t.flags&1048576&&Q1(t,jc,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;sc(e,t),e=t.pendingProps;var o=Hi(t,vt.current);Pi(t,n),o=nm(null,t,r,e,o,n);var i=rm();return t.flags|=1,typeof o=="object"&&o!==null&&typeof o.render=="function"&&o.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,jt(r)?(i=!0,Ac(t)):i=!1,t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,qh(t),o.updater=Au,t.stateNode=o,o._reactInternals=t,vp(t,r,e,n),t=wp(null,t,r,!0,i,n)):(t.tag=0,$e&&i&&Uh(t),xt(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(sc(e,t),e=t.pendingProps,o=r._init,r=o(r._payload),t.type=r,o=t.tag=M5(r),e=cn(r,e),o){case 0:t=xp(null,t,r,e,n);break e;case 1:t=C0(null,t,r,e,n);break e;case 11:t=S0(null,t,r,e,n);break e;case 14:t=b0(null,t,r,cn(r.type,e),n);break e}throw Error(Q(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:cn(r,o),xp(e,t,r,o,n);case 1:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:cn(r,o),C0(e,t,r,o,n);case 3:e:{if(Rx(t),e===null)throw Error(Q(387));r=t.pendingProps,i=t.memoizedState,o=i.element,ox(e,t),Lc(t,r,null,n);var s=t.memoizedState;if(r=s.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){o=Zi(Error(Q(423)),t),t=E0(e,t,r,n,o);break e}else if(r!==o){o=Zi(Error(Q(424)),t),t=E0(e,t,r,n,o);break e}else for(Bt=Yr(t.stateNode.containerInfo.firstChild),Ut=t,$e=!0,fn=null,n=nx(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Bi(),r===o){t=mr(e,t,n);break e}xt(e,t,r,n)}t=t.child}return t;case 5:return ix(t),e===null&&hp(t),r=t.type,o=t.pendingProps,i=e!==null?e.memoizedProps:null,s=o.children,cp(r,o)?s=null:i!==null&&cp(r,i)&&(t.flags|=32),Ix(e,t),xt(e,t,s,n),t.child;case 6:return e===null&&hp(t),null;case 13:return Ax(e,t,n);case 4:return Qh(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ui(t,null,r,n):xt(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:cn(r,o),S0(e,t,r,o,n);case 7:return xt(e,t,t.pendingProps,n),t.child;case 8:return xt(e,t,t.pendingProps.children,n),t.child;case 12:return xt(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,i=t.memoizedProps,s=o.value,Me(Oc,r._currentValue),r._currentValue=s,i!==null)if(bn(i.value,s)){if(i.children===o.children&&!Mt.current){t=mr(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var a=i.dependencies;if(a!==null){s=i.child;for(var l=a.firstContext;l!==null;){if(l.context===r){if(i.tag===1){l=ar(-1,n&-n),l.tag=2;var c=i.updateQueue;if(c!==null){c=c.shared;var d=c.pending;d===null?l.next=l:(l.next=d.next,d.next=l),c.pending=l}}i.lanes|=n,l=i.alternate,l!==null&&(l.lanes|=n),mp(i.return,n,t),a.lanes|=n;break}l=l.next}}else if(i.tag===10)s=i.type===t.type?null:i.child;else if(i.tag===18){if(s=i.return,s===null)throw Error(Q(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),mp(s,n,t),s=i.sibling}else s=i.child;if(s!==null)s.return=i;else for(s=i;s!==null;){if(s===t){s=null;break}if(i=s.sibling,i!==null){i.return=s.return,s=i;break}s=s.return}i=s}xt(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,Pi(t,n),o=on(o),r=r(o),t.flags|=1,xt(e,t,r,n),t.child;case 14:return r=t.type,o=cn(r,t.pendingProps),o=cn(r.type,o),b0(e,t,r,o,n);case 15:return Tx(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:cn(r,o),sc(e,t),t.tag=1,jt(r)?(e=!0,Ac(t)):e=!1,Pi(t,n),Ex(t,r,o),vp(t,r,o,n),wp(null,t,r,!0,e,n);case 19:return Mx(e,t,n);case 22:return Px(e,t,n)}throw Error(Q(156,t.tag))};function Kx(e,t){return S1(e,t)}function A5(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function tn(e,t,n,r){return new A5(e,t,n,r)}function pm(e){return e=e.prototype,!(!e||!e.isReactComponent)}function M5(e){if(typeof e=="function")return pm(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ah)return 11;if(e===Mh)return 14}return 2}function Qr(e,t){var n=e.alternate;return n===null?(n=tn(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function cc(e,t,n,r,o,i){var s=2;if(r=e,typeof e=="function")pm(e)&&(s=1);else if(typeof e=="string")s=5;else e:switch(e){case ui:return ko(n.children,o,i,t);case Rh:s=8,o|=8;break;case Vf:return e=tn(12,n,t,o|2),e.elementType=Vf,e.lanes=i,e;case Hf:return e=tn(13,n,t,o),e.elementType=Hf,e.lanes=i,e;case Bf:return e=tn(19,n,t,o),e.elementType=Bf,e.lanes=i,e;case i1:return Ou(n,o,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case r1:s=10;break e;case o1:s=9;break e;case Ah:s=11;break e;case Mh:s=14;break e;case jr:s=16,r=null;break e}throw Error(Q(130,e==null?e:typeof e,""))}return t=tn(s,n,t,o),t.elementType=e,t.type=r,t.lanes=i,t}function ko(e,t,n,r){return e=tn(7,e,r,t),e.lanes=n,e}function Ou(e,t,n,r){return e=tn(22,e,r,t),e.elementType=i1,e.lanes=n,e.stateNode={isHidden:!1},e}function of(e,t,n){return e=tn(6,e,null,t),e.lanes=n,e}function sf(e,t,n){return t=tn(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function j5(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=$d(0),this.expirationTimes=$d(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=$d(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function hm(e,t,n,r,o,i,s,a,l){return e=new j5(e,t,n,a,l),t===1?(t=1,i===!0&&(t|=8)):t=0,i=tn(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},qh(i),e}function O5(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:ci,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function Xx(e){if(!e)return eo;e=e._reactInternals;e:{if(Zo(e)!==e||e.tag!==1)throw Error(Q(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(jt(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(Q(171))}if(e.tag===1){var n=e.type;if(jt(n))return X1(e,n,t)}return t}function qx(e,t,n,r,o,i,s,a,l){return e=hm(n,r,!0,e,o,i,s,a,l),e.context=Xx(null),n=e.current,r=_t(),o=qr(n),i=ar(r,o),i.callback=t??null,Kr(n,i,o),e.current.lanes=o,Qa(e,o,r),Ot(e,r),e}function Du(e,t,n,r){var o=t.current,i=_t(),s=qr(o);return n=Xx(n),t.context===null?t.context=n:t.pendingContext=n,t=ar(i,s),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=Kr(o,t,s),e!==null&&(yn(e,o,s,i),rc(e,o,s)),s}function Wc(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function O0(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function mm(e,t){O0(e,t),(e=e.alternate)&&O0(e,t)}function D5(){return null}var Qx=typeof reportError=="function"?reportError:function(e){console.error(e)};function gm(e){this._internalRoot=e}Lu.prototype.render=gm.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(Q(409));Du(e,t,null,null)};Lu.prototype.unmount=gm.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Do(function(){Du(null,e,null,null)}),t[pr]=null}};function Lu(e){this._internalRoot=e}Lu.prototype.unstable_scheduleHydration=function(e){if(e){var t=P1();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Lr.length&&t!==0&&t<Lr[n].priority;n++);Lr.splice(n,0,e),n===0&&R1(e)}};function vm(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function zu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function D0(){}function L5(e,t,n,r,o){if(o){if(typeof r=="function"){var i=r;r=function(){var c=Wc(s);i.call(c)}}var s=qx(t,r,e,0,null,!1,!1,"",D0);return e._reactRootContainer=s,e[pr]=s.current,pa(e.nodeType===8?e.parentNode:e),Do(),s}for(;o=e.lastChild;)e.removeChild(o);if(typeof r=="function"){var a=r;r=function(){var c=Wc(l);a.call(c)}}var l=hm(e,0,!1,null,null,!1,!1,"",D0);return e._reactRootContainer=l,e[pr]=l.current,pa(e.nodeType===8?e.parentNode:e),Do(function(){Du(t,l,n,r)}),l}function $u(e,t,n,r,o){var i=n._reactRootContainer;if(i){var s=i;if(typeof o=="function"){var a=o;o=function(){var l=Wc(s);a.call(l)}}Du(t,s,e,o)}else s=L5(n,t,e,o,r);return Wc(s)}N1=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=Ds(t.pendingLanes);n!==0&&(Dh(t,n|1),Ot(t,Ke()),!(Te&6)&&(Gi=Ke()+500,fo()))}break;case 13:Do(function(){var r=hr(e,1);if(r!==null){var o=_t();yn(r,e,1,o)}}),mm(e,1)}};Lh=function(e){if(e.tag===13){var t=hr(e,134217728);if(t!==null){var n=_t();yn(t,e,134217728,n)}mm(e,134217728)}};T1=function(e){if(e.tag===13){var t=qr(e),n=hr(e,t);if(n!==null){var r=_t();yn(n,e,t,r)}mm(e,t)}};P1=function(){return Re};I1=function(e,t){var n=Re;try{return Re=e,t()}finally{Re=n}};Jf=function(e,t,n){switch(t){case"input":if(Zf(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=Pu(r);if(!o)throw Error(Q(90));a1(r),Zf(r,o)}}}break;case"textarea":c1(e,n);break;case"select":t=n.value,t!=null&&Ei(e,!!n.multiple,t,!1)}};g1=um;v1=Do;var z5={usingClientEntryPoint:!1,Events:[el,hi,Pu,h1,m1,um]},ks={findFiberByHostInstance:xo,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},$5={bundleType:ks.bundleType,version:ks.version,rendererPackageName:ks.rendererPackageName,rendererConfig:ks.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:br.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=w1(e),e===null?null:e.stateNode},findFiberByHostInstance:ks.findFiberByHostInstance||D5,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var jl=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!jl.isDisabled&&jl.supportsFiber)try{Eu=jl.inject($5),jn=jl}catch{}}Xt.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=z5;Xt.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!vm(t))throw Error(Q(200));return O5(e,t,null,n)};Xt.createRoot=function(e,t){if(!vm(e))throw Error(Q(299));var n=!1,r="",o=Qx;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(o=t.onRecoverableError)),t=hm(e,1,!1,null,null,n,!1,r,o),e[pr]=t.current,pa(e.nodeType===8?e.parentNode:e),new gm(t)};Xt.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(Q(188)):(e=Object.keys(e).join(","),Error(Q(268,e)));return e=w1(t),e=e===null?null:e.stateNode,e};Xt.flushSync=function(e){return Do(e)};Xt.hydrate=function(e,t,n){if(!zu(t))throw Error(Q(200));return $u(null,e,t,!0,n)};Xt.hydrateRoot=function(e,t,n){if(!vm(e))throw Error(Q(405));var r=n!=null&&n.hydratedSources||null,o=!1,i="",s=Qx;if(n!=null&&(n.unstable_strictMode===!0&&(o=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onRecoverableError!==void 0&&(s=n.onRecoverableError)),t=qx(t,null,e,1,n??null,o,!1,i,s),e[pr]=t.current,pa(e),r)for(e=0;e<r.length;e++)n=r[e],o=n._getVersion,o=o(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new Lu(t)};Xt.render=function(e,t,n){if(!zu(t))throw Error(Q(200));return $u(null,e,t,!1,n)};Xt.unmountComponentAtNode=function(e){if(!zu(e))throw Error(Q(40));return e._reactRootContainer?(Do(function(){$u(null,null,e,!1,function(){e._reactRootContainer=null,e[pr]=null})}),!0):!1};Xt.unstable_batchedUpdates=um;Xt.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!zu(n))throw Error(Q(200));if(e==null||e._reactInternals===void 0)throw Error(Q(38));return $u(e,t,n,!1,r)};Xt.version="18.3.1-next-f1338f8080-20240426";function Jx(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Jx)}catch(e){console.error(e)}}Jx(),Jy.exports=Xt;var Go=Jy.exports;const F5=Sh(Go);var ew,L0=Go;ew=L0.createRoot,L0.hydrateRoot;function Je(e){if(typeof e=="string"||typeof e=="number")return""+e;let t="";if(Array.isArray(e))for(let n=0,r;n<e.length;n++)(r=Je(e[n]))!==""&&(t+=(t&&" ")+r);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var V5={value:()=>{}};function Fu(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new uc(n)}function uc(e){this._=e}function H5(e,t){return e.trim().split(/^|\s+/).map(function(n){var r="",o=n.indexOf(".");if(o>=0&&(r=n.slice(o+1),n=n.slice(0,o)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}uc.prototype=Fu.prototype={constructor:uc,on:function(e,t){var n=this._,r=H5(e+"",n),o,i=-1,s=r.length;if(arguments.length<2){for(;++i<s;)if((o=(e=r[i]).type)&&(o=B5(n[o],e.name)))return o;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++i<s;)if(o=(e=r[i]).type)n[o]=z0(n[o],e.name,t);else if(t==null)for(o in n)n[o]=z0(n[o],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new uc(e)},call:function(e,t){if((o=arguments.length-2)>0)for(var n=new Array(o),r=0,o,i;r<o;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(i=this._[e],r=0,o=i.length;r<o;++r)i[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],o=0,i=r.length;o<i;++o)r[o].value.apply(t,n)}};function B5(e,t){for(var n=0,r=e.length,o;n<r;++n)if((o=e[n]).name===t)return o.value}function z0(e,t,n){for(var r=0,o=e.length;r<o;++r)if(e[r].name===t){e[r]=V5,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var Ap="http://www.w3.org/1999/xhtml";const $0={svg:"http://www.w3.org/2000/svg",xhtml:Ap,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Vu(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),$0.hasOwnProperty(t)?{space:$0[t],local:e}:e}function U5(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===Ap&&t.documentElement.namespaceURI===Ap?t.createElement(e):t.createElementNS(n,e)}}function W5(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function tw(e){var t=Vu(e);return(t.local?W5:U5)(t)}function Z5(){}function ym(e){return e==null?Z5:function(){return this.querySelector(e)}}function G5(e){typeof e!="function"&&(e=ym(e));for(var t=this._groups,n=t.length,r=new Array(n),o=0;o<n;++o)for(var i=t[o],s=i.length,a=r[o]=new Array(s),l,c,d=0;d<s;++d)(l=i[d])&&(c=e.call(l,l.__data__,d,i))&&("__data__"in l&&(c.__data__=l.__data__),a[d]=c);return new Kt(r,this._parents)}function Y5(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function K5(){return[]}function nw(e){return e==null?K5:function(){return this.querySelectorAll(e)}}function X5(e){return function(){return Y5(e.apply(this,arguments))}}function q5(e){typeof e=="function"?e=X5(e):e=nw(e);for(var t=this._groups,n=t.length,r=[],o=[],i=0;i<n;++i)for(var s=t[i],a=s.length,l,c=0;c<a;++c)(l=s[c])&&(r.push(e.call(l,l.__data__,c,s)),o.push(l));return new Kt(r,o)}function rw(e){return function(){return this.matches(e)}}function ow(e){return function(t){return t.matches(e)}}var Q5=Array.prototype.find;function J5(e){return function(){return Q5.call(this.children,e)}}function e4(){return this.firstElementChild}function t4(e){return this.select(e==null?e4:J5(typeof e=="function"?e:ow(e)))}var n4=Array.prototype.filter;function r4(){return Array.from(this.children)}function o4(e){return function(){return n4.call(this.children,e)}}function i4(e){return this.selectAll(e==null?r4:o4(typeof e=="function"?e:ow(e)))}function s4(e){typeof e!="function"&&(e=rw(e));for(var t=this._groups,n=t.length,r=new Array(n),o=0;o<n;++o)for(var i=t[o],s=i.length,a=r[o]=[],l,c=0;c<s;++c)(l=i[c])&&e.call(l,l.__data__,c,i)&&a.push(l);return new Kt(r,this._parents)}function iw(e){return new Array(e.length)}function a4(){return new Kt(this._enter||this._groups.map(iw),this._parents)}function Zc(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Zc.prototype={constructor:Zc,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 l4(e){return function(){return e}}function c4(e,t,n,r,o,i){for(var s=0,a,l=t.length,c=i.length;s<c;++s)(a=t[s])?(a.__data__=i[s],r[s]=a):n[s]=new Zc(e,i[s]);for(;s<l;++s)(a=t[s])&&(o[s]=a)}function u4(e,t,n,r,o,i,s){var a,l,c=new Map,d=t.length,u=i.length,f=new Array(d),p;for(a=0;a<d;++a)(l=t[a])&&(f[a]=p=s.call(l,l.__data__,a,t)+"",c.has(p)?o[a]=l:c.set(p,l));for(a=0;a<u;++a)p=s.call(e,i[a],a,i)+"",(l=c.get(p))?(r[a]=l,l.__data__=i[a],c.delete(p)):n[a]=new Zc(e,i[a]);for(a=0;a<d;++a)(l=t[a])&&c.get(f[a])===l&&(o[a]=l)}function d4(e){return e.__data__}function f4(e,t){if(!arguments.length)return Array.from(this,d4);var n=t?u4:c4,r=this._parents,o=this._groups;typeof e!="function"&&(e=l4(e));for(var i=o.length,s=new Array(i),a=new Array(i),l=new Array(i),c=0;c<i;++c){var d=r[c],u=o[c],f=u.length,p=p4(e.call(d,d&&d.__data__,c,r)),y=p.length,v=a[c]=new Array(y),_=s[c]=new Array(y),m=l[c]=new Array(f);n(d,u,v,_,m,p,t);for(var g=0,w=0,S,C;g<y;++g)if(S=v[g]){for(g>=w&&(w=g+1);!(C=_[w])&&++w<y;);S._next=C||null}}return s=new Kt(s,r),s._enter=a,s._exit=l,s}function p4(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function h4(){return new Kt(this._exit||this._groups.map(iw),this._parents)}function m4(e,t,n){var r=this.enter(),o=this,i=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(o=t(o),o&&(o=o.selection())),n==null?i.remove():n(i),r&&o?r.merge(o).order():o}function g4(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,o=n.length,i=r.length,s=Math.min(o,i),a=new Array(o),l=0;l<s;++l)for(var c=n[l],d=r[l],u=c.length,f=a[l]=new Array(u),p,y=0;y<u;++y)(p=c[y]||d[y])&&(f[y]=p);for(;l<o;++l)a[l]=n[l];return new Kt(a,this._parents)}function v4(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],o=r.length-1,i=r[o],s;--o>=0;)(s=r[o])&&(i&&s.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(s,i),i=s);return this}function y4(e){e||(e=x4);function t(u,f){return u&&f?e(u.__data__,f.__data__):!u-!f}for(var n=this._groups,r=n.length,o=new Array(r),i=0;i<r;++i){for(var s=n[i],a=s.length,l=o[i]=new Array(a),c,d=0;d<a;++d)(c=s[d])&&(l[d]=c);l.sort(t)}return new Kt(o,this._parents).order()}function x4(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function w4(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function _4(){return Array.from(this)}function S4(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],o=0,i=r.length;o<i;++o){var s=r[o];if(s)return s}return null}function b4(){let e=0;for(const t of this)++e;return e}function C4(){return!this.node()}function E4(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var o=t[n],i=0,s=o.length,a;i<s;++i)(a=o[i])&&e.call(a,a.__data__,i,o);return this}function k4(e){return function(){this.removeAttribute(e)}}function N4(e){return function(){this.removeAttributeNS(e.space,e.local)}}function T4(e,t){return function(){this.setAttribute(e,t)}}function P4(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function I4(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function R4(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 A4(e,t){var n=Vu(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?N4:k4:typeof t=="function"?n.local?R4:I4:n.local?P4:T4)(n,t))}function sw(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function M4(e){return function(){this.style.removeProperty(e)}}function j4(e,t,n){return function(){this.style.setProperty(e,t,n)}}function O4(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function D4(e,t,n){return arguments.length>1?this.each((t==null?M4:typeof t=="function"?O4:j4)(e,t,n??"")):Yi(this.node(),e)}function Yi(e,t){return e.style.getPropertyValue(t)||sw(e).getComputedStyle(e,null).getPropertyValue(t)}function L4(e){return function(){delete this[e]}}function z4(e,t){return function(){this[e]=t}}function $4(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function F4(e,t){return arguments.length>1?this.each((t==null?L4:typeof t=="function"?$4:z4)(e,t)):this.node()[e]}function aw(e){return e.trim().split(/^|\s+/)}function xm(e){return e.classList||new lw(e)}function lw(e){this._node=e,this._names=aw(e.getAttribute("class")||"")}lw.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 cw(e,t){for(var n=xm(e),r=-1,o=t.length;++r<o;)n.add(t[r])}function uw(e,t){for(var n=xm(e),r=-1,o=t.length;++r<o;)n.remove(t[r])}function V4(e){return function(){cw(this,e)}}function H4(e){return function(){uw(this,e)}}function B4(e,t){return function(){(t.apply(this,arguments)?cw:uw)(this,e)}}function U4(e,t){var n=aw(e+"");if(arguments.length<2){for(var r=xm(this.node()),o=-1,i=n.length;++o<i;)if(!r.contains(n[o]))return!1;return!0}return this.each((typeof t=="function"?B4:t?V4:H4)(n,t))}function W4(){this.textContent=""}function Z4(e){return function(){this.textContent=e}}function G4(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function Y4(e){return arguments.length?this.each(e==null?W4:(typeof e=="function"?G4:Z4)(e)):this.node().textContent}function K4(){this.innerHTML=""}function X4(e){return function(){this.innerHTML=e}}function q4(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function Q4(e){return arguments.length?this.each(e==null?K4:(typeof e=="function"?q4:X4)(e)):this.node().innerHTML}function J4(){this.nextSibling&&this.parentNode.appendChild(this)}function eN(){return this.each(J4)}function tN(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function nN(){return this.each(tN)}function rN(e){var t=typeof e=="function"?e:tw(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function oN(){return null}function iN(e,t){var n=typeof e=="function"?e:tw(e),r=t==null?oN:typeof t=="function"?t:ym(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function sN(){var e=this.parentNode;e&&e.removeChild(this)}function aN(){return this.each(sN)}function lN(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function cN(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function uN(e){return this.select(e?cN:lN)}function dN(e){return arguments.length?this.property("__data__",e):this.node().__data__}function fN(e){return function(t){e.call(this,t,this.__data__)}}function pN(e){return e.trim().split(/^|\s+/).map(function(t){var n="",r=t.indexOf(".");return r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function hN(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,o=t.length,i;n<o;++n)i=t[n],(!e.type||i.type===e.type)&&i.name===e.name?this.removeEventListener(i.type,i.listener,i.options):t[++r]=i;++r?t.length=r:delete this.__on}}}function mN(e,t,n){return function(){var r=this.__on,o,i=fN(t);if(r){for(var s=0,a=r.length;s<a;++s)if((o=r[s]).type===e.type&&o.name===e.name){this.removeEventListener(o.type,o.listener,o.options),this.addEventListener(o.type,o.listener=i,o.options=n),o.value=t;return}}this.addEventListener(e.type,i,n),o={type:e.type,name:e.name,value:t,listener:i,options:n},r?r.push(o):this.__on=[o]}}function gN(e,t,n){var r=pN(e+""),o,i=r.length,s;if(arguments.length<2){var a=this.node().__on;if(a){for(var l=0,c=a.length,d;l<c;++l)for(o=0,d=a[l];o<i;++o)if((s=r[o]).type===d.type&&s.name===d.name)return d.value}return}for(a=t?mN:hN,o=0;o<i;++o)this.each(a(r[o],t,n));return this}function dw(e,t,n){var r=sw(e),o=r.CustomEvent;typeof o=="function"?o=new o(t,n):(o=r.document.createEvent("Event"),n?(o.initEvent(t,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(t,!1,!1)),e.dispatchEvent(o)}function vN(e,t){return function(){return dw(this,e,t)}}function yN(e,t){return function(){return dw(this,e,t.apply(this,arguments))}}function xN(e,t){return this.each((typeof t=="function"?yN:vN)(e,t))}function*wN(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],o=0,i=r.length,s;o<i;++o)(s=r[o])&&(yield s)}var fw=[null];function Kt(e,t){this._groups=e,this._parents=t}function nl(){return new Kt([[document.documentElement]],fw)}function _N(){return this}Kt.prototype=nl.prototype={constructor:Kt,select:G5,selectAll:q5,selectChild:t4,selectChildren:i4,filter:s4,data:f4,enter:a4,exit:h4,join:m4,merge:g4,selection:_N,order:v4,sort:y4,call:w4,nodes:_4,node:S4,size:b4,empty:C4,each:E4,attr:A4,style:D4,property:F4,classed:U4,text:Y4,html:Q4,raise:eN,lower:nN,append:rN,insert:iN,remove:aN,clone:uN,datum:dN,on:gN,dispatch:xN,[Symbol.iterator]:wN};function Ht(e){return typeof e=="string"?new Kt([[document.querySelector(e)]],[document.documentElement]):new Kt([[e]],fw)}function SN(e){let t;for(;t=e.sourceEvent;)e=t;return e}function dn(e,t){if(e=SN(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var o=t.getBoundingClientRect();return[e.clientX-o.left-t.clientLeft,e.clientY-o.top-t.clientTop]}}return[e.pageX,e.pageY]}const bN={passive:!1},Sa={capture:!0,passive:!1};function af(e){e.stopImmediatePropagation()}function Ri(e){e.preventDefault(),e.stopImmediatePropagation()}function pw(e){var t=e.document.documentElement,n=Ht(e).on("dragstart.drag",Ri,Sa);"onselectstart"in t?n.on("selectstart.drag",Ri,Sa):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function hw(e,t){var n=e.document.documentElement,r=Ht(e).on("dragstart.drag",null);t&&(r.on("click.drag",Ri,Sa),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const Ol=e=>()=>e;function Mp(e,{sourceEvent:t,subject:n,target:r,identifier:o,active:i,x:s,y:a,dx:l,dy:c,dispatch:d}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:s,enumerable:!0,configurable:!0},y:{value:a,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:d}})}Mp.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function CN(e){return!e.ctrlKey&&!e.button}function EN(){return this.parentNode}function kN(e,t){return t??{x:e.x,y:e.y}}function NN(){return navigator.maxTouchPoints||"ontouchstart"in this}function mw(){var e=CN,t=EN,n=kN,r=NN,o={},i=Fu("start","drag","end"),s=0,a,l,c,d,u=0;function f(S){S.on("mousedown.drag",p).filter(r).on("touchstart.drag",_).on("touchmove.drag",m,bN).on("touchend.drag touchcancel.drag",g).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function p(S,C){if(!(d||!e.call(this,S,C))){var N=w(this,t.call(this,S,C),S,C,"mouse");N&&(Ht(S.view).on("mousemove.drag",y,Sa).on("mouseup.drag",v,Sa),pw(S.view),af(S),c=!1,a=S.clientX,l=S.clientY,N("start",S))}}function y(S){if(Ri(S),!c){var C=S.clientX-a,N=S.clientY-l;c=C*C+N*N>u}o.mouse("drag",S)}function v(S){Ht(S.view).on("mousemove.drag mouseup.drag",null),hw(S.view,c),Ri(S),o.mouse("end",S)}function _(S,C){if(e.call(this,S,C)){var N=S.changedTouches,E=t.call(this,S,C),P=N.length,O,j;for(O=0;O<P;++O)(j=w(this,E,S,C,N[O].identifier,N[O]))&&(af(S),j("start",S,N[O]))}}function m(S){var C=S.changedTouches,N=C.length,E,P;for(E=0;E<N;++E)(P=o[C[E].identifier])&&(Ri(S),P("drag",S,C[E]))}function g(S){var C=S.changedTouches,N=C.length,E,P;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),E=0;E<N;++E)(P=o[C[E].identifier])&&(af(S),P("end",S,C[E]))}function w(S,C,N,E,P,O){var j=i.copy(),$=dn(O||N,C),A,L,b;if((b=n.call(S,new Mp("beforestart",{sourceEvent:N,target:f,identifier:P,active:s,x:$[0],y:$[1],dx:0,dy:0,dispatch:j}),E))!=null)return A=b.x-$[0]||0,L=b.y-$[1]||0,function M(T,D,k){var I=$,z;switch(T){case"start":o[P]=M,z=s++;break;case"end":delete o[P],--s;case"drag":$=dn(k||D,C),z=s;break}j.call(T,S,new Mp(T,{sourceEvent:D,subject:b,target:f,identifier:P,active:z,x:$[0]+A,y:$[1]+L,dx:$[0]-I[0],dy:$[1]-I[1],dispatch:j}),E)}}return f.filter=function(S){return arguments.length?(e=typeof S=="function"?S:Ol(!!S),f):e},f.container=function(S){return arguments.length?(t=typeof S=="function"?S:Ol(S),f):t},f.subject=function(S){return arguments.length?(n=typeof S=="function"?S:Ol(S),f):n},f.touchable=function(S){return arguments.length?(r=typeof S=="function"?S:Ol(!!S),f):r},f.on=function(){var S=i.on.apply(i,arguments);return S===i?f:S},f.clickDistance=function(S){return arguments.length?(u=(S=+S)*S,f):Math.sqrt(u)},f}function wm(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function gw(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function rl(){}var ba=.7,Gc=1/ba,Ai="\\s*([+-]?\\d+)\\s*",Ca="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Dn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",TN=/^#([0-9a-f]{3,8})$/,PN=new RegExp(`^rgb\\(${Ai},${Ai},${Ai}\\)$`),IN=new RegExp(`^rgb\\(${Dn},${Dn},${Dn}\\)$`),RN=new RegExp(`^rgba\\(${Ai},${Ai},${Ai},${Ca}\\)$`),AN=new RegExp(`^rgba\\(${Dn},${Dn},${Dn},${Ca}\\)$`),MN=new RegExp(`^hsl\\(${Ca},${Dn},${Dn}\\)$`),jN=new RegExp(`^hsla\\(${Ca},${Dn},${Dn},${Ca}\\)$`),F0={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};wm(rl,Ea,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:V0,formatHex:V0,formatHex8:ON,formatHsl:DN,formatRgb:H0,toString:H0});function V0(){return this.rgb().formatHex()}function ON(){return this.rgb().formatHex8()}function DN(){return vw(this).formatHsl()}function H0(){return this.rgb().formatRgb()}function Ea(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=TN.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?B0(t):n===3?new At(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Dl(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Dl(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=PN.exec(e))?new At(t[1],t[2],t[3],1):(t=IN.exec(e))?new At(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=RN.exec(e))?Dl(t[1],t[2],t[3],t[4]):(t=AN.exec(e))?Dl(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=MN.exec(e))?Z0(t[1],t[2]/100,t[3]/100,1):(t=jN.exec(e))?Z0(t[1],t[2]/100,t[3]/100,t[4]):F0.hasOwnProperty(e)?B0(F0[e]):e==="transparent"?new At(NaN,NaN,NaN,0):null}function B0(e){return new At(e>>16&255,e>>8&255,e&255,1)}function Dl(e,t,n,r){return r<=0&&(e=t=n=NaN),new At(e,t,n,r)}function LN(e){return e instanceof rl||(e=Ea(e)),e?(e=e.rgb(),new At(e.r,e.g,e.b,e.opacity)):new At}function jp(e,t,n,r){return arguments.length===1?LN(e):new At(e,t,n,r??1)}function At(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}wm(At,jp,gw(rl,{brighter(e){return e=e==null?Gc:Math.pow(Gc,e),new At(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ba:Math.pow(ba,e),new At(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new At(No(this.r),No(this.g),No(this.b),Yc(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:U0,formatHex:U0,formatHex8:zN,formatRgb:W0,toString:W0}));function U0(){return`#${So(this.r)}${So(this.g)}${So(this.b)}`}function zN(){return`#${So(this.r)}${So(this.g)}${So(this.b)}${So((isNaN(this.opacity)?1:this.opacity)*255)}`}function W0(){const e=Yc(this.opacity);return`${e===1?"rgb(":"rgba("}${No(this.r)}, ${No(this.g)}, ${No(this.b)}${e===1?")":`, ${e})`}`}function Yc(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function No(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function So(e){return e=No(e),(e<16?"0":"")+e.toString(16)}function Z0(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new pn(e,t,n,r)}function vw(e){if(e instanceof pn)return new pn(e.h,e.s,e.l,e.opacity);if(e instanceof rl||(e=Ea(e)),!e)return new pn;if(e instanceof pn)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,o=Math.min(t,n,r),i=Math.max(t,n,r),s=NaN,a=i-o,l=(i+o)/2;return a?(t===i?s=(n-r)/a+(n<r)*6:n===i?s=(r-t)/a+2:s=(t-n)/a+4,a/=l<.5?i+o:2-i-o,s*=60):a=l>0&&l<1?0:s,new pn(s,a,l,e.opacity)}function $N(e,t,n,r){return arguments.length===1?vw(e):new pn(e,t,n,r??1)}function pn(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}wm(pn,$N,gw(rl,{brighter(e){return e=e==null?Gc:Math.pow(Gc,e),new pn(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ba:Math.pow(ba,e),new pn(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,o=2*n-r;return new At(lf(e>=240?e-240:e+120,o,r),lf(e,o,r),lf(e<120?e+240:e-120,o,r),this.opacity)},clamp(){return new pn(G0(this.h),Ll(this.s),Ll(this.l),Yc(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=Yc(this.opacity);return`${e===1?"hsl(":"hsla("}${G0(this.h)}, ${Ll(this.s)*100}%, ${Ll(this.l)*100}%${e===1?")":`, ${e})`}`}}));function G0(e){return e=(e||0)%360,e<0?e+360:e}function Ll(e){return Math.max(0,Math.min(1,e||0))}function lf(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 yw=e=>()=>e;function FN(e,t){return function(n){return e+n*t}}function VN(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function HN(e){return(e=+e)==1?xw:function(t,n){return n-t?VN(t,n,e):yw(isNaN(t)?n:t)}}function xw(e,t){var n=t-e;return n?FN(e,n):yw(isNaN(e)?t:e)}const Y0=function e(t){var n=HN(t);function r(o,i){var s=n((o=jp(o)).r,(i=jp(i)).r),a=n(o.g,i.g),l=n(o.b,i.b),c=xw(o.opacity,i.opacity);return function(d){return o.r=s(d),o.g=a(d),o.b=l(d),o.opacity=c(d),o+""}}return r.gamma=e,r}(1);function Dr(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var Op=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,cf=new RegExp(Op.source,"g");function BN(e){return function(){return e}}function UN(e){return function(t){return e(t)+""}}function WN(e,t){var n=Op.lastIndex=cf.lastIndex=0,r,o,i,s=-1,a=[],l=[];for(e=e+"",t=t+"";(r=Op.exec(e))&&(o=cf.exec(t));)(i=o.index)>n&&(i=t.slice(n,i),a[s]?a[s]+=i:a[++s]=i),(r=r[0])===(o=o[0])?a[s]?a[s]+=o:a[++s]=o:(a[++s]=null,l.push({i:s,x:Dr(r,o)})),n=cf.lastIndex;return n<t.length&&(i=t.slice(n),a[s]?a[s]+=i:a[++s]=i),a.length<2?l[0]?UN(l[0].x):BN(t):(t=l.length,function(c){for(var d=0,u;d<t;++d)a[(u=l[d]).i]=u.x(c);return a.join("")})}var K0=180/Math.PI,Dp={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ww(e,t,n,r,o,i){var s,a,l;return(s=Math.sqrt(e*e+t*t))&&(e/=s,t/=s),(l=e*n+t*r)&&(n-=e*l,r-=t*l),(a=Math.sqrt(n*n+r*r))&&(n/=a,r/=a,l/=a),e*r<t*n&&(e=-e,t=-t,l=-l,s=-s),{translateX:o,translateY:i,rotate:Math.atan2(t,e)*K0,skewX:Math.atan(l)*K0,scaleX:s,scaleY:a}}var zl;function ZN(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?Dp:ww(t.a,t.b,t.c,t.d,t.e,t.f)}function GN(e){return e==null||(zl||(zl=document.createElementNS("http://www.w3.org/2000/svg","g")),zl.setAttribute("transform",e),!(e=zl.transform.baseVal.consolidate()))?Dp:(e=e.matrix,ww(e.a,e.b,e.c,e.d,e.e,e.f))}function _w(e,t,n,r){function o(c){return c.length?c.pop()+" ":""}function i(c,d,u,f,p,y){if(c!==u||d!==f){var v=p.push("translate(",null,t,null,n);y.push({i:v-4,x:Dr(c,u)},{i:v-2,x:Dr(d,f)})}else(u||f)&&p.push("translate("+u+t+f+n)}function s(c,d,u,f){c!==d?(c-d>180?d+=360:d-c>180&&(c+=360),f.push({i:u.push(o(u)+"rotate(",null,r)-2,x:Dr(c,d)})):d&&u.push(o(u)+"rotate("+d+r)}function a(c,d,u,f){c!==d?f.push({i:u.push(o(u)+"skewX(",null,r)-2,x:Dr(c,d)}):d&&u.push(o(u)+"skewX("+d+r)}function l(c,d,u,f,p,y){if(c!==u||d!==f){var v=p.push(o(p)+"scale(",null,",",null,")");y.push({i:v-4,x:Dr(c,u)},{i:v-2,x:Dr(d,f)})}else(u!==1||f!==1)&&p.push(o(p)+"scale("+u+","+f+")")}return function(c,d){var u=[],f=[];return c=e(c),d=e(d),i(c.translateX,c.translateY,d.translateX,d.translateY,u,f),s(c.rotate,d.rotate,u,f),a(c.skewX,d.skewX,u,f),l(c.scaleX,c.scaleY,d.scaleX,d.scaleY,u,f),c=d=null,function(p){for(var y=-1,v=f.length,_;++y<v;)u[(_=f[y]).i]=_.x(p);return u.join("")}}}var YN=_w(ZN,"px, ","px)","deg)"),KN=_w(GN,", ",")",")"),XN=1e-12;function X0(e){return((e=Math.exp(e))+1/e)/2}function qN(e){return((e=Math.exp(e))-1/e)/2}function QN(e){return((e=Math.exp(2*e))-1)/(e+1)}const JN=function e(t,n,r){function o(i,s){var a=i[0],l=i[1],c=i[2],d=s[0],u=s[1],f=s[2],p=d-a,y=u-l,v=p*p+y*y,_,m;if(v<XN)m=Math.log(f/c)/t,_=function(E){return[a+E*p,l+E*y,c*Math.exp(t*E*m)]};else{var g=Math.sqrt(v),w=(f*f-c*c+r*v)/(2*c*n*g),S=(f*f-c*c-r*v)/(2*f*n*g),C=Math.log(Math.sqrt(w*w+1)-w),N=Math.log(Math.sqrt(S*S+1)-S);m=(N-C)/t,_=function(E){var P=E*m,O=X0(C),j=c/(n*g)*(O*QN(t*P+C)-qN(C));return[a+j*p,l+j*y,c*O/X0(t*P+C)]}}return _.duration=m*1e3*t/Math.SQRT2,_}return o.rho=function(i){var s=Math.max(.001,+i),a=s*s,l=a*a;return e(s,a,l)},o}(Math.SQRT2,2,4);var Ki=0,zs=0,Ns=0,Sw=1e3,Kc,$s,Xc=0,Lo=0,Hu=0,ka=typeof performance=="object"&&performance.now?performance:Date,bw=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function _m(){return Lo||(bw(eT),Lo=ka.now()+Hu)}function eT(){Lo=0}function qc(){this._call=this._time=this._next=null}qc.prototype=Cw.prototype={constructor:qc,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?_m():+n)+(t==null?0:+t),!this._next&&$s!==this&&($s?$s._next=this:Kc=this,$s=this),this._call=e,this._time=n,Lp()},stop:function(){this._call&&(this._call=null,this._time=1/0,Lp())}};function Cw(e,t,n){var r=new qc;return r.restart(e,t,n),r}function tT(){_m(),++Ki;for(var e=Kc,t;e;)(t=Lo-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Ki}function q0(){Lo=(Xc=ka.now())+Hu,Ki=zs=0;try{tT()}finally{Ki=0,rT(),Lo=0}}function nT(){var e=ka.now(),t=e-Xc;t>Sw&&(Hu-=t,Xc=e)}function rT(){for(var e,t=Kc,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Kc=n);$s=e,Lp(r)}function Lp(e){if(!Ki){zs&&(zs=clearTimeout(zs));var t=e-Lo;t>24?(e<1/0&&(zs=setTimeout(q0,e-ka.now()-Hu)),Ns&&(Ns=clearInterval(Ns))):(Ns||(Xc=ka.now(),Ns=setInterval(nT,Sw)),Ki=1,bw(q0))}}function Q0(e,t,n){var r=new qc;return t=t==null?0:+t,r.restart(o=>{r.stop(),e(o+t)},t,n),r}var oT=Fu("start","end","cancel","interrupt"),iT=[],Ew=0,J0=1,zp=2,dc=3,ev=4,$p=5,fc=6;function Bu(e,t,n,r,o,i){var s=e.__transition;if(!s)e.__transition={};else if(n in s)return;sT(e,n,{name:t,index:r,group:o,on:oT,tween:iT,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:Ew})}function Sm(e,t){var n=Nn(e,t);if(n.state>Ew)throw new Error("too late; already scheduled");return n}function Zn(e,t){var n=Nn(e,t);if(n.state>dc)throw new Error("too late; already running");return n}function Nn(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function sT(e,t,n){var r=e.__transition,o;r[t]=n,n.timer=Cw(i,0,n.time);function i(c){n.state=J0,n.timer.restart(s,n.delay,n.time),n.delay<=c&&s(c-n.delay)}function s(c){var d,u,f,p;if(n.state!==J0)return l();for(d in r)if(p=r[d],p.name===n.name){if(p.state===dc)return Q0(s);p.state===ev?(p.state=fc,p.timer.stop(),p.on.call("interrupt",e,e.__data__,p.index,p.group),delete r[d]):+d<t&&(p.state=fc,p.timer.stop(),p.on.call("cancel",e,e.__data__,p.index,p.group),delete r[d])}if(Q0(function(){n.state===dc&&(n.state=ev,n.timer.restart(a,n.delay,n.time),a(c))}),n.state=zp,n.on.call("start",e,e.__data__,n.index,n.group),n.state===zp){for(n.state=dc,o=new Array(f=n.tween.length),d=0,u=-1;d<f;++d)(p=n.tween[d].value.call(e,e.__data__,n.index,n.group))&&(o[++u]=p);o.length=u+1}}function a(c){for(var d=c<n.duration?n.ease.call(null,c/n.duration):(n.timer.restart(l),n.state=$p,1),u=-1,f=o.length;++u<f;)o[u].call(e,d);n.state===$p&&(n.on.call("end",e,e.__data__,n.index,n.group),l())}function l(){n.state=fc,n.timer.stop(),delete r[t];for(var c in r)return;delete e.__transition}}function pc(e,t){var n=e.__transition,r,o,i=!0,s;if(n){t=t==null?null:t+"";for(s in n){if((r=n[s]).name!==t){i=!1;continue}o=r.state>zp&&r.state<$p,r.state=fc,r.timer.stop(),r.on.call(o?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[s]}i&&delete e.__transition}}function aT(e){return this.each(function(){pc(this,e)})}function lT(e,t){var n,r;return function(){var o=Zn(this,e),i=o.tween;if(i!==n){r=n=i;for(var s=0,a=r.length;s<a;++s)if(r[s].name===t){r=r.slice(),r.splice(s,1);break}}o.tween=r}}function cT(e,t,n){var r,o;if(typeof n!="function")throw new Error;return function(){var i=Zn(this,e),s=i.tween;if(s!==r){o=(r=s).slice();for(var a={name:t,value:n},l=0,c=o.length;l<c;++l)if(o[l].name===t){o[l]=a;break}l===c&&o.push(a)}i.tween=o}}function uT(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r=Nn(this.node(),n).tween,o=0,i=r.length,s;o<i;++o)if((s=r[o]).name===e)return s.value;return null}return this.each((t==null?lT:cT)(n,e,t))}function bm(e,t,n){var r=e._id;return e.each(function(){var o=Zn(this,r);(o.value||(o.value={}))[t]=n.apply(this,arguments)}),function(o){return Nn(o,r).value[t]}}function kw(e,t){var n;return(typeof t=="number"?Dr:t instanceof Ea?Y0:(n=Ea(t))?(t=n,Y0):WN)(e,t)}function dT(e){return function(){this.removeAttribute(e)}}function fT(e){return function(){this.removeAttributeNS(e.space,e.local)}}function pT(e,t,n){var r,o=n+"",i;return function(){var s=this.getAttribute(e);return s===o?null:s===r?i:i=t(r=s,n)}}function hT(e,t,n){var r,o=n+"",i;return function(){var s=this.getAttributeNS(e.space,e.local);return s===o?null:s===r?i:i=t(r=s,n)}}function mT(e,t,n){var r,o,i;return function(){var s,a=n(this),l;return a==null?void this.removeAttribute(e):(s=this.getAttribute(e),l=a+"",s===l?null:s===r&&l===o?i:(o=l,i=t(r=s,a)))}}function gT(e,t,n){var r,o,i;return function(){var s,a=n(this),l;return a==null?void this.removeAttributeNS(e.space,e.local):(s=this.getAttributeNS(e.space,e.local),l=a+"",s===l?null:s===r&&l===o?i:(o=l,i=t(r=s,a)))}}function vT(e,t){var n=Vu(e),r=n==="transform"?KN:kw;return this.attrTween(e,typeof t=="function"?(n.local?gT:mT)(n,r,bm(this,"attr."+e,t)):t==null?(n.local?fT:dT)(n):(n.local?hT:pT)(n,r,t))}function yT(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function xT(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function wT(e,t){var n,r;function o(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&xT(e,i)),n}return o._value=t,o}function _T(e,t){var n,r;function o(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&yT(e,i)),n}return o._value=t,o}function ST(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;var r=Vu(e);return this.tween(n,(r.local?wT:_T)(r,t))}function bT(e,t){return function(){Sm(this,e).delay=+t.apply(this,arguments)}}function CT(e,t){return t=+t,function(){Sm(this,e).delay=t}}function ET(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?bT:CT)(t,e)):Nn(this.node(),t).delay}function kT(e,t){return function(){Zn(this,e).duration=+t.apply(this,arguments)}}function NT(e,t){return t=+t,function(){Zn(this,e).duration=t}}function TT(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?kT:NT)(t,e)):Nn(this.node(),t).duration}function PT(e,t){if(typeof t!="function")throw new Error;return function(){Zn(this,e).ease=t}}function IT(e){var t=this._id;return arguments.length?this.each(PT(t,e)):Nn(this.node(),t).ease}function RT(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;Zn(this,e).ease=n}}function AT(e){if(typeof e!="function")throw new Error;return this.each(RT(this._id,e))}function MT(e){typeof e!="function"&&(e=rw(e));for(var t=this._groups,n=t.length,r=new Array(n),o=0;o<n;++o)for(var i=t[o],s=i.length,a=r[o]=[],l,c=0;c<s;++c)(l=i[c])&&e.call(l,l.__data__,c,i)&&a.push(l);return new gr(r,this._parents,this._name,this._id)}function jT(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,r=t.length,o=n.length,i=Math.min(r,o),s=new Array(r),a=0;a<i;++a)for(var l=t[a],c=n[a],d=l.length,u=s[a]=new Array(d),f,p=0;p<d;++p)(f=l[p]||c[p])&&(u[p]=f);for(;a<r;++a)s[a]=t[a];return new gr(s,this._parents,this._name,this._id)}function OT(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 DT(e,t,n){var r,o,i=OT(t)?Sm:Zn;return function(){var s=i(this,e),a=s.on;a!==r&&(o=(r=a).copy()).on(t,n),s.on=o}}function LT(e,t){var n=this._id;return arguments.length<2?Nn(this.node(),n).on.on(e):this.each(DT(n,e,t))}function zT(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function $T(){return this.on("end.remove",zT(this._id))}function FT(e){var t=this._name,n=this._id;typeof e!="function"&&(e=ym(e));for(var r=this._groups,o=r.length,i=new Array(o),s=0;s<o;++s)for(var a=r[s],l=a.length,c=i[s]=new Array(l),d,u,f=0;f<l;++f)(d=a[f])&&(u=e.call(d,d.__data__,f,a))&&("__data__"in d&&(u.__data__=d.__data__),c[f]=u,Bu(c[f],t,n,f,c,Nn(d,n)));return new gr(i,this._parents,t,n)}function VT(e){var t=this._name,n=this._id;typeof e!="function"&&(e=nw(e));for(var r=this._groups,o=r.length,i=[],s=[],a=0;a<o;++a)for(var l=r[a],c=l.length,d,u=0;u<c;++u)if(d=l[u]){for(var f=e.call(d,d.__data__,u,l),p,y=Nn(d,n),v=0,_=f.length;v<_;++v)(p=f[v])&&Bu(p,t,n,v,f,y);i.push(f),s.push(d)}return new gr(i,s,t,n)}var HT=nl.prototype.constructor;function BT(){return new HT(this._groups,this._parents)}function UT(e,t){var n,r,o;return function(){var i=Yi(this,e),s=(this.style.removeProperty(e),Yi(this,e));return i===s?null:i===n&&s===r?o:o=t(n=i,r=s)}}function Nw(e){return function(){this.style.removeProperty(e)}}function WT(e,t,n){var r,o=n+"",i;return function(){var s=Yi(this,e);return s===o?null:s===r?i:i=t(r=s,n)}}function ZT(e,t,n){var r,o,i;return function(){var s=Yi(this,e),a=n(this),l=a+"";return a==null&&(l=a=(this.style.removeProperty(e),Yi(this,e))),s===l?null:s===r&&l===o?i:(o=l,i=t(r=s,a))}}function GT(e,t){var n,r,o,i="style."+t,s="end."+i,a;return function(){var l=Zn(this,e),c=l.on,d=l.value[i]==null?a||(a=Nw(t)):void 0;(c!==n||o!==d)&&(r=(n=c).copy()).on(s,o=d),l.on=r}}function YT(e,t,n){var r=(e+="")=="transform"?YN:kw;return t==null?this.styleTween(e,UT(e,r)).on("end.style."+e,Nw(e)):typeof t=="function"?this.styleTween(e,ZT(e,r,bm(this,"style."+e,t))).each(GT(this._id,e)):this.styleTween(e,WT(e,r,t),n).on("end.style."+e,null)}function KT(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function XT(e,t,n){var r,o;function i(){var s=t.apply(this,arguments);return s!==o&&(r=(o=s)&&KT(e,s,n)),r}return i._value=t,i}function qT(e,t,n){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;return this.tween(r,XT(e,t,n??""))}function QT(e){return function(){this.textContent=e}}function JT(e){return function(){var t=e(this);this.textContent=t??""}}function eP(e){return this.tween("text",typeof e=="function"?JT(bm(this,"text",e)):QT(e==null?"":e+""))}function tP(e){return function(t){this.textContent=e.call(this,t)}}function nP(e){var t,n;function r(){var o=e.apply(this,arguments);return o!==n&&(t=(n=o)&&tP(o)),t}return r._value=e,r}function rP(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,nP(e))}function oP(){for(var e=this._name,t=this._id,n=Tw(),r=this._groups,o=r.length,i=0;i<o;++i)for(var s=r[i],a=s.length,l,c=0;c<a;++c)if(l=s[c]){var d=Nn(l,t);Bu(l,e,n,c,s,{time:d.time+d.delay+d.duration,delay:0,duration:d.duration,ease:d.ease})}return new gr(r,this._parents,e,n)}function iP(){var e,t,n=this,r=n._id,o=n.size();return new Promise(function(i,s){var a={value:s},l={value:function(){--o===0&&i()}};n.each(function(){var c=Zn(this,r),d=c.on;d!==e&&(t=(e=d).copy(),t._.cancel.push(a),t._.interrupt.push(a),t._.end.push(l)),c.on=t}),o===0&&i()})}var sP=0;function gr(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function Tw(){return++sP}var Kn=nl.prototype;gr.prototype={constructor:gr,select:FT,selectAll:VT,selectChild:Kn.selectChild,selectChildren:Kn.selectChildren,filter:MT,merge:jT,selection:BT,transition:oP,call:Kn.call,nodes:Kn.nodes,node:Kn.node,size:Kn.size,empty:Kn.empty,each:Kn.each,on:LT,attr:vT,attrTween:ST,style:YT,styleTween:qT,text:eP,textTween:rP,remove:$T,tween:uT,delay:ET,duration:TT,ease:IT,easeVarying:AT,end:iP,[Symbol.iterator]:Kn[Symbol.iterator]};function aP(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var lP={time:null,delay:0,duration:250,ease:aP};function cP(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 uP(e){var t,n;e instanceof gr?(t=e._id,e=e._name):(t=Tw(),(n=lP).time=_m(),e=e==null?null:e+"");for(var r=this._groups,o=r.length,i=0;i<o;++i)for(var s=r[i],a=s.length,l,c=0;c<a;++c)(l=s[c])&&Bu(l,e,t,c,s,n||cP(l,t));return new gr(r,this._parents,e,t)}nl.prototype.interrupt=aT;nl.prototype.transition=uP;const $l=e=>()=>e;function dP(e,{sourceEvent:t,target:n,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function ir(e,t,n){this.k=e,this.x=t,this.y=n}ir.prototype={constructor:ir,scale:function(e){return e===1?this:new ir(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new ir(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 Uu=new ir(1,0,0);Pw.prototype=ir.prototype;function Pw(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Uu;return e.__zoom}function uf(e){e.stopImmediatePropagation()}function Ts(e){e.preventDefault(),e.stopImmediatePropagation()}function fP(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function pP(){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 tv(){return this.__zoom||Uu}function hP(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function mP(){return navigator.maxTouchPoints||"ontouchstart"in this}function gP(e,t,n){var r=e.invertX(t[0][0])-n[0][0],o=e.invertX(t[1][0])-n[1][0],i=e.invertY(t[0][1])-n[0][1],s=e.invertY(t[1][1])-n[1][1];return e.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),s>i?(i+s)/2:Math.min(0,i)||Math.max(0,s))}function Iw(){var e=fP,t=pP,n=gP,r=hP,o=mP,i=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],a=250,l=JN,c=Fu("start","zoom","end"),d,u,f,p=500,y=150,v=0,_=10;function m(b){b.property("__zoom",tv).on("wheel.zoom",P,{passive:!1}).on("mousedown.zoom",O).on("dblclick.zoom",j).filter(o).on("touchstart.zoom",$).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",L).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}m.transform=function(b,M,T,D){var k=b.selection?b.selection():b;k.property("__zoom",tv),b!==k?C(b,M,T,D):k.interrupt().each(function(){N(this,arguments).event(D).start().zoom(null,typeof M=="function"?M.apply(this,arguments):M).end()})},m.scaleBy=function(b,M,T,D){m.scaleTo(b,function(){var k=this.__zoom.k,I=typeof M=="function"?M.apply(this,arguments):M;return k*I},T,D)},m.scaleTo=function(b,M,T,D){m.transform(b,function(){var k=t.apply(this,arguments),I=this.__zoom,z=T==null?S(k):typeof T=="function"?T.apply(this,arguments):T,U=I.invert(z),Y=typeof M=="function"?M.apply(this,arguments):M;return n(w(g(I,Y),z,U),k,s)},T,D)},m.translateBy=function(b,M,T,D){m.transform(b,function(){return n(this.__zoom.translate(typeof M=="function"?M.apply(this,arguments):M,typeof T=="function"?T.apply(this,arguments):T),t.apply(this,arguments),s)},null,D)},m.translateTo=function(b,M,T,D,k){m.transform(b,function(){var I=t.apply(this,arguments),z=this.__zoom,U=D==null?S(I):typeof D=="function"?D.apply(this,arguments):D;return n(Uu.translate(U[0],U[1]).scale(z.k).translate(typeof M=="function"?-M.apply(this,arguments):-M,typeof T=="function"?-T.apply(this,arguments):-T),I,s)},D,k)};function g(b,M){return M=Math.max(i[0],Math.min(i[1],M)),M===b.k?b:new ir(M,b.x,b.y)}function w(b,M,T){var D=M[0]-T[0]*b.k,k=M[1]-T[1]*b.k;return D===b.x&&k===b.y?b:new ir(b.k,D,k)}function S(b){return[(+b[0][0]+ +b[1][0])/2,(+b[0][1]+ +b[1][1])/2]}function C(b,M,T,D){b.on("start.zoom",function(){N(this,arguments).event(D).start()}).on("interrupt.zoom end.zoom",function(){N(this,arguments).event(D).end()}).tween("zoom",function(){var k=this,I=arguments,z=N(k,I).event(D),U=t.apply(k,I),Y=T==null?S(U):typeof T=="function"?T.apply(k,I):T,H=Math.max(U[1][0]-U[0][0],U[1][1]-U[0][1]),Z=k.__zoom,K=typeof M=="function"?M.apply(k,I):M,G=l(Z.invert(Y).concat(H/Z.k),K.invert(Y).concat(H/K.k));return function(V){if(V===1)V=K;else{var B=G(V),ee=H/B[2];V=new ir(ee,Y[0]-B[0]*ee,Y[1]-B[1]*ee)}z.zoom(null,V)}})}function N(b,M,T){return!T&&b.__zooming||new E(b,M)}function E(b,M){this.that=b,this.args=M,this.active=0,this.sourceEvent=null,this.extent=t.apply(b,M),this.taps=0}E.prototype={event:function(b){return b&&(this.sourceEvent=b),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(b,M){return this.mouse&&b!=="mouse"&&(this.mouse[1]=M.invert(this.mouse[0])),this.touch0&&b!=="touch"&&(this.touch0[1]=M.invert(this.touch0[0])),this.touch1&&b!=="touch"&&(this.touch1[1]=M.invert(this.touch1[0])),this.that.__zoom=M,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(b){var M=Ht(this.that).datum();c.call(b,this.that,new dP(b,{sourceEvent:this.sourceEvent,target:m,type:b,transform:this.that.__zoom,dispatch:c}),M)}};function P(b,...M){if(!e.apply(this,arguments))return;var T=N(this,M).event(b),D=this.__zoom,k=Math.max(i[0],Math.min(i[1],D.k*Math.pow(2,r.apply(this,arguments)))),I=dn(b);if(T.wheel)(T.mouse[0][0]!==I[0]||T.mouse[0][1]!==I[1])&&(T.mouse[1]=D.invert(T.mouse[0]=I)),clearTimeout(T.wheel);else{if(D.k===k)return;T.mouse=[I,D.invert(I)],pc(this),T.start()}Ts(b),T.wheel=setTimeout(z,y),T.zoom("mouse",n(w(g(D,k),T.mouse[0],T.mouse[1]),T.extent,s));function z(){T.wheel=null,T.end()}}function O(b,...M){if(f||!e.apply(this,arguments))return;var T=b.currentTarget,D=N(this,M,!0).event(b),k=Ht(b.view).on("mousemove.zoom",Y,!0).on("mouseup.zoom",H,!0),I=dn(b,T),z=b.clientX,U=b.clientY;pw(b.view),uf(b),D.mouse=[I,this.__zoom.invert(I)],pc(this),D.start();function Y(Z){if(Ts(Z),!D.moved){var K=Z.clientX-z,G=Z.clientY-U;D.moved=K*K+G*G>v}D.event(Z).zoom("mouse",n(w(D.that.__zoom,D.mouse[0]=dn(Z,T),D.mouse[1]),D.extent,s))}function H(Z){k.on("mousemove.zoom mouseup.zoom",null),hw(Z.view,D.moved),Ts(Z),D.event(Z).end()}}function j(b,...M){if(e.apply(this,arguments)){var T=this.__zoom,D=dn(b.changedTouches?b.changedTouches[0]:b,this),k=T.invert(D),I=T.k*(b.shiftKey?.5:2),z=n(w(g(T,I),D,k),t.apply(this,M),s);Ts(b),a>0?Ht(this).transition().duration(a).call(C,z,D,b):Ht(this).call(m.transform,z,D,b)}}function $(b,...M){if(e.apply(this,arguments)){var T=b.touches,D=T.length,k=N(this,M,b.changedTouches.length===D).event(b),I,z,U,Y;for(uf(b),z=0;z<D;++z)U=T[z],Y=dn(U,this),Y=[Y,this.__zoom.invert(Y),U.identifier],k.touch0?!k.touch1&&k.touch0[2]!==Y[2]&&(k.touch1=Y,k.taps=0):(k.touch0=Y,I=!0,k.taps=1+!!d);d&&(d=clearTimeout(d)),I&&(k.taps<2&&(u=Y[0],d=setTimeout(function(){d=null},p)),pc(this),k.start())}}function A(b,...M){if(this.__zooming){var T=N(this,M).event(b),D=b.changedTouches,k=D.length,I,z,U,Y;for(Ts(b),I=0;I<k;++I)z=D[I],U=dn(z,this),T.touch0&&T.touch0[2]===z.identifier?T.touch0[0]=U:T.touch1&&T.touch1[2]===z.identifier&&(T.touch1[0]=U);if(z=T.that.__zoom,T.touch1){var H=T.touch0[0],Z=T.touch0[1],K=T.touch1[0],G=T.touch1[1],V=(V=K[0]-H[0])*V+(V=K[1]-H[1])*V,B=(B=G[0]-Z[0])*B+(B=G[1]-Z[1])*B;z=g(z,Math.sqrt(V/B)),U=[(H[0]+K[0])/2,(H[1]+K[1])/2],Y=[(Z[0]+G[0])/2,(Z[1]+G[1])/2]}else if(T.touch0)U=T.touch0[0],Y=T.touch0[1];else return;T.zoom("touch",n(w(z,U,Y),T.extent,s))}}function L(b,...M){if(this.__zooming){var T=N(this,M).event(b),D=b.changedTouches,k=D.length,I,z;for(uf(b),f&&clearTimeout(f),f=setTimeout(function(){f=null},p),I=0;I<k;++I)z=D[I],T.touch0&&T.touch0[2]===z.identifier?delete T.touch0:T.touch1&&T.touch1[2]===z.identifier&&delete T.touch1;if(T.touch1&&!T.touch0&&(T.touch0=T.touch1,delete T.touch1),T.touch0)T.touch0[1]=this.__zoom.invert(T.touch0[0]);else if(T.end(),T.taps===2&&(z=dn(z,this),Math.hypot(u[0]-z[0],u[1]-z[1])<_)){var U=Ht(this).on("dblclick.zoom");U&&U.apply(this,arguments)}}}return m.wheelDelta=function(b){return arguments.length?(r=typeof b=="function"?b:$l(+b),m):r},m.filter=function(b){return arguments.length?(e=typeof b=="function"?b:$l(!!b),m):e},m.touchable=function(b){return arguments.length?(o=typeof b=="function"?b:$l(!!b),m):o},m.extent=function(b){return arguments.length?(t=typeof b=="function"?b:$l([[+b[0][0],+b[0][1]],[+b[1][0],+b[1][1]]]),m):t},m.scaleExtent=function(b){return arguments.length?(i[0]=+b[0],i[1]=+b[1],m):[i[0],i[1]]},m.translateExtent=function(b){return arguments.length?(s[0][0]=+b[0][0],s[1][0]=+b[1][0],s[0][1]=+b[0][1],s[1][1]=+b[1][1],m):[[s[0][0],s[0][1]],[s[1][0],s[1][1]]]},m.constrain=function(b){return arguments.length?(n=b,m):n},m.duration=function(b){return arguments.length?(a=+b,m):a},m.interpolate=function(b){return arguments.length?(l=b,m):l},m.on=function(){var b=c.on.apply(c,arguments);return b===c?m:b},m.clickDistance=function(b){return arguments.length?(v=(b=+b)*b,m):Math.sqrt(v)},m.tapDistance=function(b){return arguments.length?(_=+b,m):_},m}const Cr={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:r}", edge id: ${t}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`},Na=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],Rw=["Enter"," ","Escape"];var Xi;(function(e){e.Strict="strict",e.Loose="loose"})(Xi||(Xi={}));var To;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(To||(To={}));var Ta;(function(e){e.Partial="partial",e.Full="full"})(Ta||(Ta={}));const Aw={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null};var $r;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})($r||($r={}));var Qc;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Qc||(Qc={}));var ue;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(ue||(ue={}));const nv={[ue.Left]:ue.Right,[ue.Right]:ue.Left,[ue.Top]:ue.Bottom,[ue.Bottom]:ue.Top};function Mw(e){return e===null?null:e?"valid":"invalid"}const jw=e=>"id"in e&&"source"in e&&"target"in e,vP=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),Cm=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),ol=(e,t=[0,0])=>{const{width:n,height:r}=Er(e),o=e.origin??t,i=n*o[0],s=r*o[1];return{x:e.position.x-i,y:e.position.y-s}},yP=(e,t={nodeOrigin:[0,0],nodeLookup:void 0})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((r,o)=>{const i=typeof o=="string";let s=!t.nodeLookup&&!i?o:void 0;t.nodeLookup&&(s=i?t.nodeLookup.get(o):Cm(o)?o:t.nodeLookup.get(o.id));const a=s?Jc(s,t.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Wu(r,a)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Zu(n)},il=(e,t={})=>{if(e.size===0)return{x:0,y:0,width:0,height:0};let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return e.forEach(r=>{if(t.filter===void 0||t.filter(r)){const o=Jc(r);n=Wu(n,o)}}),Zu(n)},Ow=(e,t,[n,r,o]=[0,0,1],i=!1,s=!1)=>{const a={...sl(t,[n,r,o]),width:t.width/o,height:t.height/o},l=[];for(const c of e.values()){const{measured:d,selectable:u=!0,hidden:f=!1}=c;if(s&&!u||f)continue;const p=d.width??c.width??c.initialWidth??null,y=d.height??c.height??c.initialHeight??null,v=Pa(a,Qi(c)),_=(p??0)*(y??0),m=i&&v>0;(!c.internals.handleBounds||m||v>=_||c.dragging)&&l.push(c)}return l},xP=(e,t)=>{const n=new Set;return e.forEach(r=>{n.add(r.id)}),t.filter(r=>n.has(r.source)||n.has(r.target))};function Fp(e,t){const n=new Map,r=t!=null&&t.nodes?new Set(t.nodes.map(o=>o.id)):null;return e.forEach(o=>{o.measured.width&&o.measured.height&&((t==null?void 0:t.includeHiddenNodes)||!o.hidden)&&(!r||r.has(o.id))&&n.set(o.id,o)}),n}async function Vp({nodes:e,width:t,height:n,panZoom:r,minZoom:o,maxZoom:i},s){if(e.size===0)return Promise.resolve(!1);const a=il(e),l=Em(a,t,n,(s==null?void 0:s.minZoom)??o,(s==null?void 0:s.maxZoom)??i,(s==null?void 0:s.padding)??.1);return await r.setViewport(l,{duration:s==null?void 0:s.duration}),Promise.resolve(!0)}function Dw({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:o,onError:i}){const s=n.get(e),a=s.parentId?n.get(s.parentId):void 0,{x:l,y:c}=a?a.internals.positionAbsolute:{x:0,y:0},d=s.origin??r;let u=o;if(s.extent==="parent"&&!s.expandParent)if(!a)i==null||i("005",Cr.error005());else{const p=a.measured.width,y=a.measured.height;p&&y&&(u=[[l,c],[l+p,c+y]])}else a&&Ji(s.extent)&&(u=[[s.extent[0][0]+l,s.extent[0][1]+c],[s.extent[1][0]+l,s.extent[1][1]+c]]);const f=Ji(u)?zo(t,u,s.measured):t;return{position:{x:f.x-l+s.measured.width*d[0],y:f.y-c+s.measured.height*d[1]},positionAbsolute:f}}async function wP({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:o}){const i=new Set(e.map(f=>f.id)),s=[];for(const f of n){if(f.deletable===!1)continue;const p=i.has(f.id),y=!p&&f.parentId&&s.find(v=>v.id===f.parentId);(p||y)&&s.push(f)}const a=new Set(t.map(f=>f.id)),l=r.filter(f=>f.deletable!==!1),d=xP(s,l);for(const f of l)a.has(f.id)&&!d.find(y=>y.id===f.id)&&d.push(f);if(!o)return{edges:d,nodes:s};const u=await o({nodes:s,edges:d});return typeof u=="boolean"?u?{edges:d,nodes:s}:{edges:[],nodes:[]}:u}const qi=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),zo=(e={x:0,y:0},t,n)=>({x:qi(e.x,t[0][0],t[1][0]-((n==null?void 0:n.width)??0)),y:qi(e.y,t[0][1],t[1][1]-((n==null?void 0:n.height)??0))});function Lw(e,t,n){const{width:r,height:o}=Er(n),{x:i,y:s}=n.internals.positionAbsolute;return zo(e,[[i,s],[i+r,s+o]],t)}const rv=(e,t,n)=>e<t?qi(Math.abs(e-t),1,t)/t:e>n?-qi(Math.abs(e-n),1,t)/t:0,zw=(e,t,n=15,r=40)=>{const o=rv(e.x,r,t.width-r)*n,i=rv(e.y,r,t.height-r)*n;return[o,i]},Wu=(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)}),Hp=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),Zu=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),Qi=(e,t=[0,0])=>{var o,i;const{x:n,y:r}=Cm(e)?e.internals.positionAbsolute:ol(e,t);return{x:n,y:r,width:((o=e.measured)==null?void 0:o.width)??e.width??e.initialWidth??0,height:((i=e.measured)==null?void 0:i.height)??e.height??e.initialHeight??0}},Jc=(e,t=[0,0])=>{var o,i;const{x:n,y:r}=Cm(e)?e.internals.positionAbsolute:ol(e,t);return{x:n,y:r,x2:n+(((o=e.measured)==null?void 0:o.width)??e.width??e.initialWidth??0),y2:r+(((i=e.measured)==null?void 0:i.height)??e.height??e.initialHeight??0)}},$w=(e,t)=>Zu(Wu(Hp(e),Hp(t))),Pa=(e,t)=>{const n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)},ov=e=>mn(e.width)&&mn(e.height)&&mn(e.x)&&mn(e.y),mn=e=>!isNaN(e)&&isFinite(e),_P=(e,t)=>{},Gu=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),sl=({x:e,y:t},[n,r,o],i=!1,s=[1,1])=>{const a={x:(e-n)/o,y:(t-r)/o};return i?Gu(a,s):a},Fw=({x:e,y:t},[n,r,o])=>({x:e*o+n,y:t*o+r}),Em=(e,t,n,r,o,i)=>{const s=t/(e.width*(1+i)),a=n/(e.height*(1+i)),l=Math.min(s,a),c=qi(l,r,o),d=e.x+e.width/2,u=e.y+e.height/2,f=t/2-d*c,p=n/2-u*c;return{x:f,y:p,zoom:c}},eu=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function Ji(e){return e!==void 0&&e!=="parent"}function Er(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 Vw(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 Hw(e,t={width:0,height:0},n,r,o){let i=n;const s={...e};for(;i;){const a=r.get(i);if(i=a==null?void 0:a.parentId,a){const l=a.origin||o;s.x+=a.internals.positionAbsolute.x-(t.width??0)*l[0],s.y+=a.internals.positionAbsolute.y-(t.height??0)*l[1]}}return s}function ea(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r}){const{x:o,y:i}=lr(e),s=sl({x:o,y:i},r),{x:a,y:l}=n?Gu(s,t):s;return{xSnapped:a,ySnapped:l,...s}}const Yu=e=>({width:e.offsetWidth,height:e.offsetHeight}),Bw=e=>{var t;return((t=e.getRootNode)==null?void 0:t.call(e))||(window==null?void 0:window.document)},SP=["INPUT","SELECT","TEXTAREA"];function Bp(e){var r,o;const t=((o=(r=e.composedPath)==null?void 0:r.call(e))==null?void 0:o[0])||e.target;return SP.includes(t==null?void 0:t.nodeName)||(t==null?void 0:t.hasAttribute("contenteditable"))||!!(t!=null&&t.closest(".nokey"))}const Uw=e=>"clientX"in e,lr=(e,t)=>{var i,s;const n=Uw(e),r=n?e.clientX:(i=e.touches)==null?void 0:i[0].clientX,o=n?e.clientY:(s=e.touches)==null?void 0:s[0].clientY;return{x:r-((t==null?void 0:t.left)??0),y:o-((t==null?void 0:t.top)??0)}},iv=(e,t,n,r,o)=>{const i=t.querySelectorAll(`.${e}`);return!i||!i.length?null:Array.from(i).map(s=>{const a=s.getBoundingClientRect();return{id:s.getAttribute("data-handleid"),type:e,nodeId:o,position:s.getAttribute("data-handlepos"),x:(a.left-n.left)/r,y:(a.top-n.top)/r,...Yu(s)}})};function Ww({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:o,sourceControlY:i,targetControlX:s,targetControlY:a}){const l=e*.125+o*.375+s*.375+n*.125,c=t*.125+i*.375+a*.375+r*.125,d=Math.abs(l-e),u=Math.abs(c-t);return[l,c,d,u]}function Fl(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function sv({pos:e,x1:t,y1:n,x2:r,y2:o,c:i}){switch(e){case ue.Left:return[t-Fl(t-r,i),n];case ue.Right:return[t+Fl(r-t,i),n];case ue.Top:return[t,n-Fl(n-o,i)];case ue.Bottom:return[t,n+Fl(o-n,i)]}}function Zw({sourceX:e,sourceY:t,sourcePosition:n=ue.Bottom,targetX:r,targetY:o,targetPosition:i=ue.Top,curvature:s=.25}){const[a,l]=sv({pos:n,x1:e,y1:t,x2:r,y2:o,c:s}),[c,d]=sv({pos:i,x1:r,y1:o,x2:e,y2:t,c:s}),[u,f,p,y]=Ww({sourceX:e,sourceY:t,targetX:r,targetY:o,sourceControlX:a,sourceControlY:l,targetControlX:c,targetControlY:d});return[`M${e},${t} C${a},${l} ${c},${d} ${r},${o}`,u,f,p,y]}function Gw({sourceX:e,sourceY:t,targetX:n,targetY:r}){const o=Math.abs(n-e)/2,i=n<e?n+o:n-o,s=Math.abs(r-t)/2,a=r<t?r+s:r-s;return[i,a,o,s]}function bP({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:o=!1}){if(!o)return r;const i=n||t.selected||e.selected,s=Math.max(e.internals.z||0,t.internals.z||0,1e3);return r+(i?s:0)}function CP({sourceNode:e,targetNode:t,width:n,height:r,transform:o}){const i=Wu(Jc(e),Jc(t));i.x===i.x2&&(i.x2+=1),i.y===i.y2&&(i.y2+=1);const s={x:-o[0]/o[2],y:-o[1]/o[2],width:n/o[2],height:r/o[2]};return Pa(s,Zu(i))>0}const EP=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||""}-${n}${r||""}`,kP=(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)),Yw=(e,t)=>{if(!e.source||!e.target)return t;let n;return jw(e)?n={...e}:n={...e,id:EP(e)},kP(n,t)?t:(n.sourceHandle===null&&delete n.sourceHandle,n.targetHandle===null&&delete n.targetHandle,t.concat(n))};function Kw({sourceX:e,sourceY:t,targetX:n,targetY:r}){const[o,i,s,a]=Gw({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,o,i,s,a]}const av={[ue.Left]:{x:-1,y:0},[ue.Right]:{x:1,y:0},[ue.Top]:{x:0,y:-1},[ue.Bottom]:{x:0,y:1}},NP=({source:e,sourcePosition:t=ue.Bottom,target:n})=>t===ue.Left||t===ue.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},lv=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function TP({source:e,sourcePosition:t=ue.Bottom,target:n,targetPosition:r=ue.Top,center:o,offset:i}){const s=av[t],a=av[r],l={x:e.x+s.x*i,y:e.y+s.y*i},c={x:n.x+a.x*i,y:n.y+a.y*i},d=NP({source:l,sourcePosition:t,target:c}),u=d.x!==0?"x":"y",f=d[u];let p=[],y,v;const _={x:0,y:0},m={x:0,y:0},[g,w,S,C]=Gw({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[u]*a[u]===-1){y=o.x??g,v=o.y??w;const E=[{x:y,y:l.y},{x:y,y:c.y}],P=[{x:l.x,y:v},{x:c.x,y:v}];s[u]===f?p=u==="x"?E:P:p=u==="x"?P:E}else{const E=[{x:l.x,y:c.y}],P=[{x:c.x,y:l.y}];if(u==="x"?p=s.x===f?P:E:p=s.y===f?E:P,t===r){const L=Math.abs(e[u]-n[u]);if(L<=i){const b=Math.min(i-1,i-L);s[u]===f?_[u]=(l[u]>e[u]?-1:1)*b:m[u]=(c[u]>n[u]?-1:1)*b}}if(t!==r){const L=u==="x"?"y":"x",b=s[u]===a[L],M=l[L]>c[L],T=l[L]<c[L];(s[u]===1&&(!b&&M||b&&T)||s[u]!==1&&(!b&&T||b&&M))&&(p=u==="x"?E:P)}const O={x:l.x+_.x,y:l.y+_.y},j={x:c.x+m.x,y:c.y+m.y},$=Math.max(Math.abs(O.x-p[0].x),Math.abs(j.x-p[0].x)),A=Math.max(Math.abs(O.y-p[0].y),Math.abs(j.y-p[0].y));$>=A?(y=(O.x+j.x)/2,v=p[0].y):(y=p[0].x,v=(O.y+j.y)/2)}return[[e,{x:l.x+_.x,y:l.y+_.y},...p,{x:c.x+m.x,y:c.y+m.y},n],y,v,S,C]}function PP(e,t,n,r){const o=Math.min(lv(e,t)/2,lv(t,n)/2,r),{x:i,y:s}=t;if(e.x===i&&i===n.x||e.y===s&&s===n.y)return`L${i} ${s}`;if(e.y===s){const c=e.x<n.x?-1:1,d=e.y<n.y?1:-1;return`L ${i+o*c},${s}Q ${i},${s} ${i},${s+o*d}`}const a=e.x<n.x?1:-1,l=e.y<n.y?-1:1;return`L ${i},${s+o*l}Q ${i},${s} ${i+o*a},${s}`}function Up({sourceX:e,sourceY:t,sourcePosition:n=ue.Bottom,targetX:r,targetY:o,targetPosition:i=ue.Top,borderRadius:s=5,centerX:a,centerY:l,offset:c=20}){const[d,u,f,p,y]=TP({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:o},targetPosition:i,center:{x:a,y:l},offset:c});return[d.reduce((_,m,g)=>{let w="";return g>0&&g<d.length-1?w=PP(d[g-1],m,d[g+1],s):w=`${g===0?"M":"L"}${m.x} ${m.y}`,_+=w,_},""),u,f,p,y]}function cv(e){var t;return e&&!!(e.internals.handleBounds||(t=e.handles)!=null&&t.length)&&!!(e.measured.width||e.width||e.initialWidth)}function IP(e){var u;const{sourceNode:t,targetNode:n}=e;if(!cv(t)||!cv(n))return null;const r=t.internals.handleBounds||uv(t.handles),o=n.internals.handleBounds||uv(n.handles),i=dv((r==null?void 0:r.source)??[],e.sourceHandle),s=dv(e.connectionMode===Xi.Strict?(o==null?void 0:o.target)??[]:((o==null?void 0:o.target)??[]).concat((o==null?void 0:o.source)??[]),e.targetHandle);if(!i||!s)return(u=e.onError)==null||u.call(e,"008",Cr.error008(i?"target":"source",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;const a=(i==null?void 0:i.position)||ue.Bottom,l=(s==null?void 0:s.position)||ue.Top,c=Ia(t,i,a),d=Ia(n,s,l);return{sourceX:c.x,sourceY:c.y,targetX:d.x,targetY:d.y,sourcePosition:a,targetPosition:l}}function uv(e){if(!e)return null;const t=[],n=[];for(const r of e)r.width=r.width??1,r.height=r.height??1,r.type==="source"?t.push(r):r.type==="target"&&n.push(r);return{source:t,target:n}}function Ia(e,t,n=ue.Left,r=!1){const o=((t==null?void 0:t.x)??0)+e.internals.positionAbsolute.x,i=((t==null?void 0:t.y)??0)+e.internals.positionAbsolute.y,{width:s,height:a}=t??Er(e);if(r)return{x:o+s/2,y:i+a/2};switch((t==null?void 0:t.position)??n){case ue.Top:return{x:o+s/2,y:i};case ue.Right:return{x:o+s,y:i+a/2};case ue.Bottom:return{x:o+s/2,y:i+a};case ue.Left:return{x:o,y:i+a/2}}}function dv(e,t){return e&&(t?e.find(n=>n.id===t):e[0])||null}function Wp(e,t){return e?typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`:""}function RP(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:o}){const i=new Set;return e.reduce((s,a)=>([a.markerStart||r,a.markerEnd||o].forEach(l=>{if(l&&typeof l=="object"){const c=Wp(l,t);i.has(c)||(s.push({id:c,color:l.color||n,...l}),i.add(c))}}),s),[]).sort((s,a)=>s.id.localeCompare(a.id))}const km={nodeOrigin:[0,0],nodeExtent:Na,elevateNodesOnSelect:!0,defaults:{}},AP={...km,checkEquality:!0};function Nm(e,t){const n={...e};for(const r in t)t[r]!==void 0&&(n[r]=t[r]);return n}function MP(e,t,n){const r=Nm(km,n);for(const o of e.values())if(o.parentId)Tm(o,e,t,r);else{const i=ol(o,r.nodeOrigin),s=Ji(o.extent)?o.extent:r.nodeExtent,a=zo(i,s,Er(o));o.internals.positionAbsolute=a}}function Zp(e,t,n,r){var a,l;const o=Nm(AP,r),i=new Map(t),s=o!=null&&o.elevateNodesOnSelect?1e3:0;t.clear(),n.clear();for(const c of e){let d=i.get(c.id);if(o.checkEquality&&c===(d==null?void 0:d.internals.userNode))t.set(c.id,d);else{const u=ol(c,o.nodeOrigin),f=Ji(c.extent)?c.extent:o.nodeExtent,p=zo(u,f,Er(c));d={...o.defaults,...c,measured:{width:(a=c.measured)==null?void 0:a.width,height:(l=c.measured)==null?void 0:l.height},internals:{positionAbsolute:p,handleBounds:c.measured?d==null?void 0:d.internals.handleBounds:void 0,z:Xw(c,s),userNode:c}},t.set(c.id,d)}c.parentId&&Tm(d,t,n,r)}}function jP(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 Tm(e,t,n,r){const{elevateNodesOnSelect:o,nodeOrigin:i,nodeExtent:s}=Nm(km,r),a=e.parentId,l=t.get(a);if(!l){console.warn(`Parent node ${a} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}jP(e,n);const c=o?1e3:0,{x:d,y:u,z:f}=OP(e,l,i,s,c),{positionAbsolute:p}=e.internals,y=d!==p.x||u!==p.y;(y||f!==e.internals.z)&&(e.internals={...e.internals,positionAbsolute:y?{x:d,y:u}:p,z:f})}function Xw(e,t){return(mn(e.zIndex)?e.zIndex:0)+(e.selected?t:0)}function OP(e,t,n,r,o){const{x:i,y:s}=t.internals.positionAbsolute,a=Er(e),l=ol(e,n),c=Ji(e.extent)?zo(l,e.extent,a):l;let d=zo({x:i+c.x,y:s+c.y},r,a);e.extent==="parent"&&(d=Lw(d,a,t));const u=Xw(e,o),f=t.internals.z??0;return{x:d.x,y:d.y,z:f>u?f:u}}function Pm(e,t,n,r=[0,0]){var s;const o=[],i=new Map;for(const a of e){const l=t.get(a.parentId);if(!l)continue;const c=((s=i.get(a.parentId))==null?void 0:s.expandedRect)??Qi(l),d=$w(c,a.rect);i.set(a.parentId,{expandedRect:d,parent:l})}return i.size>0&&i.forEach(({expandedRect:a,parent:l},c)=>{var w;const d=l.internals.positionAbsolute,u=Er(l),f=l.origin??r,p=a.x<d.x?Math.round(Math.abs(d.x-a.x)):0,y=a.y<d.y?Math.round(Math.abs(d.y-a.y)):0,v=Math.max(u.width,Math.round(a.width)),_=Math.max(u.height,Math.round(a.height)),m=(v-u.width)*f[0],g=(_-u.height)*f[1];(p>0||y>0||m||g)&&(o.push({id:c,type:"position",position:{x:l.position.x-p+m,y:l.position.y-y+g}}),(w=n.get(c))==null||w.forEach(S=>{e.some(C=>C.id===S.id)||o.push({id:S.id,type:"position",position:{x:S.position.x+p,y:S.position.y+y}})})),(u.width<a.width||u.height<a.height||p||y)&&o.push({id:c,type:"dimensions",setAttributes:!0,dimensions:{width:v+(p?f[0]*p-m:0),height:_+(y?f[1]*y-g:0)}})}),o}function DP(e,t,n,r,o,i){const s=r==null?void 0:r.querySelector(".xyflow__viewport");let a=!1;if(!s)return{changes:[],updatedInternals:a};const l=[],c=window.getComputedStyle(s),{m22:d}=new window.DOMMatrixReadOnly(c.transform),u=[];for(const f of e.values()){const p=t.get(f.id);if(p)if(p.hidden)p.internals={...p.internals,handleBounds:void 0},a=!0;else{const y=Yu(f.nodeElement),v=p.measured.width!==y.width||p.measured.height!==y.height;if(!!(y.width&&y.height&&(v||!p.internals.handleBounds||f.force))){const m=f.nodeElement.getBoundingClientRect(),g=Ji(p.extent)?p.extent:i;let{positionAbsolute:w}=p.internals;p.parentId&&p.extent==="parent"?w=Lw(w,y,t.get(p.parentId)):g&&(w=zo(w,g,y)),p.measured=y,p.internals={...p.internals,positionAbsolute:w,handleBounds:{source:iv("source",f.nodeElement,m,d,p.id),target:iv("target",f.nodeElement,m,d,p.id)}},p.parentId&&Tm(p,t,n,{nodeOrigin:o}),a=!0,v&&(l.push({id:p.id,type:"dimensions",dimensions:y}),p.expandParent&&p.parentId&&u.push({id:p.id,parentId:p.parentId,rect:Qi(p,o)}))}}}if(u.length>0){const f=Pm(u,t,n,o);l.push(...f)}return{changes:l,updatedInternals:a}}async function LP({delta:e,panZoom:t,transform:n,translateExtent:r,width:o,height:i}){if(!t||!e.x&&!e.y)return Promise.resolve(!1);const s=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[o,i]],r),a=!!s&&(s.x!==n[0]||s.y!==n[1]||s.k!==n[2]);return Promise.resolve(a)}function qw(e,t,n){e.clear(),t.clear();for(const r of n){const{source:o,target:i,sourceHandle:s=null,targetHandle:a=null}=r,l=`${o}-source-${s}`,c=`${i}-target-${a}`,d=e.get(l)||new Map,u=e.get(c)||new Map,f={edgeId:r.id,source:o,target:i,sourceHandle:s,targetHandle:a};t.set(r.id,r),e.set(l,d.set(`${i}-${a}`,f)),e.set(c,u.set(`${o}-${s}`,f))}}function Qw(e,t){if(!e.parentId)return!1;const n=t.get(e.parentId);return n?n.selected?!0:Qw(n,t):!1}function fv(e,t,n){let r=e;do{if(r!=null&&r.matches(t))return!0;if(r===n)return!1;r=r.parentElement}while(r);return!1}function zP(e,t,n,r){const o=new Map;for(const[i,s]of e)if((s.selected||s.id===r)&&(!s.parentId||!Qw(s,e))&&(s.draggable||t&&typeof s.draggable>"u")){const a=e.get(i);a&&o.set(i,{id:i,position:a.position||{x:0,y:0},distance:{x:n.x-a.internals.positionAbsolute.x,y:n.y-a.internals.positionAbsolute.y},extent:a.extent,parentId:a.parentId,origin:a.origin,expandParent:a.expandParent,internals:{positionAbsolute:a.internals.positionAbsolute||{x:0,y:0}},measured:{width:a.measured.width??0,height:a.measured.height??0}})}return o}function df({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){var s,a,l;const o=[];for(const[c,d]of t){const u=(s=n.get(c))==null?void 0:s.internals.userNode;u&&o.push({...u,position:d.position,dragging:r})}if(!e)return[o[0],o];const i=(a=n.get(e))==null?void 0:a.internals.userNode;return[i?{...i,position:((l=t.get(e))==null?void 0:l.position)||i.position,dragging:r}:o[0],o]}function $P({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:o}){let i={x:null,y:null},s=0,a=new Map,l=!1,c={x:0,y:0},d=null,u=!1,f=null,p=!1;function y({noDragClassName:_,handleSelector:m,domNode:g,isSelectable:w,nodeId:S,nodeClickDistance:C=0}){f=Ht(g);function N({x:j,y:$},A){const{nodeLookup:L,nodeExtent:b,snapGrid:M,snapToGrid:T,nodeOrigin:D,onNodeDrag:k,onSelectionDrag:I,onError:z,updateNodePositions:U}=t();i={x:j,y:$};let Y=!1,H={x:0,y:0,x2:0,y2:0};if(a.size>1&&b){const Z=il(a);H=Hp(Z)}for(const[Z,K]of a){if(!L.has(Z))continue;let G={x:j-K.distance.x,y:$-K.distance.y};T&&(G=Gu(G,M));let V=[[b[0][0],b[0][1]],[b[1][0],b[1][1]]];if(a.size>1&&b&&!K.extent){const{positionAbsolute:ne}=K.internals,oe=ne.x-H.x+b[0][0],X=ne.x+K.measured.width-H.x2+b[1][0],ae=ne.y-H.y+b[0][1],me=ne.y+K.measured.height-H.y2+b[1][1];V=[[oe,ae],[X,me]]}const{position:B,positionAbsolute:ee}=Dw({nodeId:Z,nextPosition:G,nodeLookup:L,nodeExtent:V,nodeOrigin:D,onError:z});Y=Y||K.position.x!==B.x||K.position.y!==B.y,K.position=B,K.internals.positionAbsolute=ee}if(Y&&(U(a,!0),A&&(r||k||!S&&I))){const[Z,K]=df({nodeId:S,dragItems:a,nodeLookup:L});r==null||r(A,a,Z,K),k==null||k(A,Z,K),S||I==null||I(A,K)}}async function E(){if(!d)return;const{transform:j,panBy:$,autoPanSpeed:A}=t(),[L,b]=zw(c,d,A);(L!==0||b!==0)&&(i.x=(i.x??0)-L/j[2],i.y=(i.y??0)-b/j[2],await $({x:L,y:b})&&N(i,null)),s=requestAnimationFrame(E)}function P(j){var Y;const{nodeLookup:$,multiSelectionActive:A,nodesDraggable:L,transform:b,snapGrid:M,snapToGrid:T,selectNodesOnDrag:D,onNodeDragStart:k,onSelectionDragStart:I,unselectNodesAndEdges:z}=t();u=!0,(!D||!w)&&!A&&S&&((Y=$.get(S))!=null&&Y.selected||z()),w&&D&&S&&(e==null||e(S));const U=ea(j.sourceEvent,{transform:b,snapGrid:M,snapToGrid:T});if(i=U,a=zP($,L,U,S),a.size>0&&(n||k||!S&&I)){const[H,Z]=df({nodeId:S,dragItems:a,nodeLookup:$});n==null||n(j.sourceEvent,a,H,Z),k==null||k(j.sourceEvent,H,Z),S||I==null||I(j.sourceEvent,Z)}}const O=mw().clickDistance(C).on("start",j=>{const{domNode:$,nodeDragThreshold:A,transform:L,snapGrid:b,snapToGrid:M}=t();p=!1,A===0&&P(j),i=ea(j.sourceEvent,{transform:L,snapGrid:b,snapToGrid:M}),d=($==null?void 0:$.getBoundingClientRect())||null,c=lr(j.sourceEvent,d)}).on("drag",j=>{const{autoPanOnNodeDrag:$,transform:A,snapGrid:L,snapToGrid:b,nodeDragThreshold:M,nodeLookup:T}=t(),D=ea(j.sourceEvent,{transform:A,snapGrid:L,snapToGrid:b});if((j.sourceEvent.type==="touchmove"&&j.sourceEvent.touches.length>1||S&&!T.has(S))&&(p=!0),!p){if(!l&&$&&u&&(l=!0,E()),!u){const k=D.xSnapped-(i.x??0),I=D.ySnapped-(i.y??0);Math.sqrt(k*k+I*I)>M&&P(j)}(i.x!==D.xSnapped||i.y!==D.ySnapped)&&a&&u&&(c=lr(j.sourceEvent,d),N(D,j.sourceEvent))}}).on("end",j=>{if(!(!u||p)&&(l=!1,u=!1,cancelAnimationFrame(s),a.size>0)){const{nodeLookup:$,updateNodePositions:A,onNodeDragStop:L,onSelectionDragStop:b}=t();if(A(a,!1),o||L||!S&&b){const[M,T]=df({nodeId:S,dragItems:a,nodeLookup:$,dragging:!1});o==null||o(j.sourceEvent,a,M,T),L==null||L(j.sourceEvent,M,T),S||b==null||b(j.sourceEvent,T)}}}).filter(j=>{const $=j.target;return!j.button&&(!_||!fv($,`.${_}`,g))&&(!m||fv($,m,g))});f.call(O)}function v(){f==null||f.on(".drag",null)}return{update:y,destroy:v}}function FP(e,t,n){const r=[],o={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const i of t.values())Pa(o,Qi(i))>0&&r.push(i);return r}const VP=250;function HP(e,t,n,r){var a,l;let o=[],i=1/0;const s=FP(e,n,t+VP);for(const c of s){const d=[...((a=c.internals.handleBounds)==null?void 0:a.source)??[],...((l=c.internals.handleBounds)==null?void 0:l.target)??[]];for(const u of d){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:f,y:p}=Ia(c,u,u.position,!0),y=Math.sqrt(Math.pow(f-e.x,2)+Math.pow(p-e.y,2));y>t||(y<i?(o=[{...u,x:f,y:p}],i=y):y===i&&o.push({...u,x:f,y:p}))}}if(!o.length)return null;if(o.length>1){const c=r.type==="source"?"target":"source";return o.find(d=>d.type===c)??o[0]}return o[0]}function Jw(e,t,n,r,o,i=!1){var c,d,u;const s=r.get(e);if(!s)return null;const a=o==="strict"?(c=s.internals.handleBounds)==null?void 0:c[t]:[...((d=s.internals.handleBounds)==null?void 0:d.source)??[],...((u=s.internals.handleBounds)==null?void 0:u.target)??[]],l=(n?a==null?void 0:a.find(f=>f.id===n):a==null?void 0:a[0])??null;return l&&i?{...l,...Ia(s,l,l.position,!0)}:l}function e2(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function BP(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}const t2=()=>!0;function UP(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:o,edgeUpdaterType:i,isTarget:s,domNode:a,nodeLookup:l,lib:c,autoPanOnConnect:d,flowId:u,panBy:f,cancelConnection:p,onConnectStart:y,onConnect:v,onConnectEnd:_,isValidConnection:m=t2,onReconnectEnd:g,updateConnection:w,getTransform:S,getFromHandle:C,autoPanSpeed:N}){const E=Bw(e.target);let P=0,O;const{x:j,y:$}=lr(e),A=E==null?void 0:E.elementFromPoint(j,$),L=e2(i,A),b=a==null?void 0:a.getBoundingClientRect();if(!b||!L)return;const M=Jw(o,L,r,l,t);if(!M)return;let T=lr(e,b),D=!1,k=null,I=!1,z=null;function U(){if(!d||!b)return;const[ee,ne]=zw(T,b,N);f({x:ee,y:ne}),P=requestAnimationFrame(U)}const Y={...M,nodeId:o,type:L,position:M.position},H=l.get(o),K={inProgress:!0,isValid:null,from:Ia(H,Y,ue.Left,!0),fromHandle:Y,fromPosition:Y.position,fromNode:H,to:T,toHandle:null,toPosition:nv[Y.position],toNode:null};w(K);let G=K;y==null||y(e,{nodeId:o,handleId:r,handleType:L});function V(ee){if(!C()||!Y){B(ee);return}const ne=S();T=lr(ee,b),O=HP(sl(T,ne,!1,[1,1]),n,l,Y),D||(U(),D=!0);const oe=n2(ee,{handle:O,connectionMode:t,fromNodeId:o,fromHandleId:r,fromType:s?"target":"source",isValidConnection:m,doc:E,lib:c,flowId:u,nodeLookup:l});z=oe.handleDomNode,k=oe.connection,I=BP(!!O,oe.isValid);const X={...G,isValid:I,to:O&&I?Fw({x:O.x,y:O.y},ne):T,toHandle:oe.toHandle,toPosition:I&&oe.toHandle?oe.toHandle.position:nv[Y.position],toNode:oe.toHandle?l.get(oe.toHandle.nodeId):null};I&&O&&G.toHandle&&X.toHandle&&G.toHandle.type===X.toHandle.type&&G.toHandle.nodeId===X.toHandle.nodeId&&G.toHandle.id===X.toHandle.id&&G.to.x===X.to.x&&G.to.y===X.to.y||(w(X),G=X)}function B(ee){(O||z)&&k&&I&&(v==null||v(k));const{inProgress:ne,...oe}=G,X={...oe,toPosition:G.toHandle?G.toPosition:null};_==null||_(ee,X),i&&(g==null||g(ee,X)),p(),cancelAnimationFrame(P),D=!1,I=!1,k=null,z=null,E.removeEventListener("mousemove",V),E.removeEventListener("mouseup",B),E.removeEventListener("touchmove",V),E.removeEventListener("touchend",B)}E.addEventListener("mousemove",V),E.addEventListener("mouseup",B),E.addEventListener("touchmove",V),E.addEventListener("touchend",B)}function n2(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:o,fromType:i,doc:s,lib:a,flowId:l,isValidConnection:c=t2,nodeLookup:d}){const u=i==="target",f=t?s.querySelector(`.${a}-flow__handle[data-id="${l}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:p,y}=lr(e),v=s.elementFromPoint(p,y),_=v!=null&&v.classList.contains(`${a}-flow__handle`)?v:f,m={handleDomNode:_,isValid:!1,connection:null,toHandle:null};if(_){const g=e2(void 0,_),w=_.getAttribute("data-nodeid"),S=_.getAttribute("data-handleid"),C=_.classList.contains("connectable"),N=_.classList.contains("connectableend");if(!w||!g)return m;const E={source:u?w:r,sourceHandle:u?S:o,target:u?r:w,targetHandle:u?o:S};m.connection=E;const O=C&&N&&(n===Xi.Strict?u&&g==="source"||!u&&g==="target":w!==r||S!==o);m.isValid=O&&c(E),m.toHandle=Jw(w,g,S,d,n,!1)}return m}const Gp={onPointerDown:UP,isValid:n2};function WP({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){const o=Ht(e);function i({translateExtent:a,width:l,height:c,zoomStep:d=10,pannable:u=!0,zoomable:f=!0,inversePan:p=!1}){const y=w=>{const S=n();if(w.sourceEvent.type!=="wheel"||!t)return;const C=-w.sourceEvent.deltaY*(w.sourceEvent.deltaMode===1?.05:w.sourceEvent.deltaMode?1:.002)*d,N=S[2]*Math.pow(2,C);t.scaleTo(N)};let v=[0,0];const _=w=>{(w.sourceEvent.type==="mousedown"||w.sourceEvent.type==="touchstart")&&(v=[w.sourceEvent.clientX??w.sourceEvent.touches[0].clientX,w.sourceEvent.clientY??w.sourceEvent.touches[0].clientY])},m=w=>{const S=n();if(w.sourceEvent.type!=="mousemove"&&w.sourceEvent.type!=="touchmove"||!t)return;const C=[w.sourceEvent.clientX??w.sourceEvent.touches[0].clientX,w.sourceEvent.clientY??w.sourceEvent.touches[0].clientY],N=[C[0]-v[0],C[1]-v[1]];v=C;const E=r()*Math.max(S[2],Math.log(S[2]))*(p?-1:1),P={x:S[0]-N[0]*E,y:S[1]-N[1]*E},O=[[0,0],[l,c]];t.setViewportConstrained({x:P.x,y:P.y,zoom:S[2]},O,a)},g=Iw().on("start",_).on("zoom",u?m:null).on("zoom.wheel",f?y:null);o.call(g,{})}function s(){o.on("zoom",null)}return{update:i,destroy:s,pointer:dn}}const ZP=(e,t)=>e.x!==t.x||e.y!==t.y||e.zoom!==t.k,Ku=e=>({x:e.x,y:e.y,zoom:e.k}),ff=({x:e,y:t,zoom:n})=>Uu.translate(e,t).scale(n),_i=(e,t)=>e.target.closest(`.${t}`),r2=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),pf=(e,t=0,n=()=>{})=>{const r=typeof t=="number"&&t>0;return r||n(),r?e.transition().duration(t).on("end",n):e},o2=e=>{const t=e.ctrlKey&&eu()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function GP({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:o,panOnScrollSpeed:i,zoomOnPinch:s,onPanZoomStart:a,onPanZoom:l,onPanZoomEnd:c}){return d=>{if(_i(d,t))return!1;d.preventDefault(),d.stopImmediatePropagation();const u=n.property("__zoom").k||1;if(d.ctrlKey&&s){const _=dn(d),m=o2(d),g=u*Math.pow(2,m);r.scaleTo(n,g,_,d);return}const f=d.deltaMode===1?20:1;let p=o===To.Vertical?0:d.deltaX*f,y=o===To.Horizontal?0:d.deltaY*f;!eu()&&d.shiftKey&&o!==To.Vertical&&(p=d.deltaY*f,y=0),r.translateBy(n,-(p/u)*i,-(y/u)*i,{internal:!0});const v=Ku(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling||(e.isPanScrolling=!0,a==null||a(d,v)),e.isPanScrolling&&(l==null||l(d,v),e.panScrollTimeout=setTimeout(()=>{c==null||c(d,v),e.isPanScrolling=!1},150))}}function YP({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,o){if(!t&&r.type==="wheel"&&!r.ctrlKey||_i(r,e))return null;r.preventDefault(),n.call(this,r,o)}}function KP({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{var i,s,a;if((i=r.sourceEvent)!=null&&i.internal)return;const o=Ku(r.transform);e.mouseButton=((s=r.sourceEvent)==null?void 0:s.button)||0,e.isZoomingOrPanning=!0,e.prevViewport=o,((a=r.sourceEvent)==null?void 0:a.type)==="mousedown"&&t(!0),n&&(n==null||n(r.sourceEvent,o))}}function XP({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:o}){return i=>{var s,a;e.usedRightMouseButton=!!(n&&r2(t,e.mouseButton??0)),(s=i.sourceEvent)!=null&&s.sync||r([i.transform.x,i.transform.y,i.transform.k]),o&&!((a=i.sourceEvent)!=null&&a.internal)&&(o==null||o(i.sourceEvent,Ku(i.transform)))}}function qP({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:o,onPaneContextMenu:i}){return s=>{var a;if(!((a=s.sourceEvent)!=null&&a.internal)&&(e.isZoomingOrPanning=!1,i&&r2(t,e.mouseButton??0)&&!e.usedRightMouseButton&&s.sourceEvent&&i(s.sourceEvent),e.usedRightMouseButton=!1,r(!1),o&&ZP(e.prevViewport,s.transform))){const l=Ku(s.transform);e.prevViewport=l,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{o==null||o(s.sourceEvent,l)},n?150:0)}}}function QP({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:o,zoomOnDoubleClick:i,userSelectionActive:s,noWheelClassName:a,noPanClassName:l,lib:c}){return d=>{var y;const u=e||t,f=n&&d.ctrlKey;if(d.button===1&&d.type==="mousedown"&&(_i(d,`${c}-flow__node`)||_i(d,`${c}-flow__edge`)))return!0;if(!r&&!u&&!o&&!i&&!n||s||_i(d,a)&&d.type==="wheel"||_i(d,l)&&(d.type!=="wheel"||o&&d.type==="wheel"&&!e)||!n&&d.ctrlKey&&d.type==="wheel")return!1;if(!n&&d.type==="touchstart"&&((y=d.touches)==null?void 0:y.length)>1)return d.preventDefault(),!1;if(!u&&!o&&!f&&d.type==="wheel"||!r&&(d.type==="mousedown"||d.type==="touchstart")||Array.isArray(r)&&!r.includes(d.button)&&d.type==="mousedown")return!1;const p=Array.isArray(r)&&r.includes(d.button)||!d.button||d.button<=1;return(!d.ctrlKey||d.type==="wheel")&&p}}function JP({domNode:e,minZoom:t,maxZoom:n,paneClickDistance:r,translateExtent:o,viewport:i,onPanZoom:s,onPanZoomStart:a,onPanZoomEnd:l,onDraggingChange:c}){const d={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{x:0,y:0,zoom:0},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},u=e.getBoundingClientRect(),f=Iw().clickDistance(!mn(r)||r<0?0:r).scaleExtent([t,n]).translateExtent(o),p=Ht(e).call(f);w({x:i.x,y:i.y,zoom:qi(i.zoom,t,n)},[[0,0],[u.width,u.height]],o);const y=p.on("wheel.zoom"),v=p.on("dblclick.zoom");f.wheelDelta(o2);function _(A,L){return p?new Promise(b=>{f==null||f.transform(pf(p,L==null?void 0:L.duration,()=>b(!0)),A)}):Promise.resolve(!1)}function m({noWheelClassName:A,noPanClassName:L,onPaneContextMenu:b,userSelectionActive:M,panOnScroll:T,panOnDrag:D,panOnScrollMode:k,panOnScrollSpeed:I,preventScrolling:z,zoomOnPinch:U,zoomOnScroll:Y,zoomOnDoubleClick:H,zoomActivationKeyPressed:Z,lib:K,onTransformChange:G}){M&&!d.isZoomingOrPanning&&g();const B=T&&!Z&&!M?GP({zoomPanValues:d,noWheelClassName:A,d3Selection:p,d3Zoom:f,panOnScrollMode:k,panOnScrollSpeed:I,zoomOnPinch:U,onPanZoomStart:a,onPanZoom:s,onPanZoomEnd:l}):YP({noWheelClassName:A,preventScrolling:z,d3ZoomHandler:y});if(p.on("wheel.zoom",B,{passive:!1}),!M){const ne=KP({zoomPanValues:d,onDraggingChange:c,onPanZoomStart:a});f.on("start",ne);const oe=XP({zoomPanValues:d,panOnDrag:D,onPaneContextMenu:!!b,onPanZoom:s,onTransformChange:G});f.on("zoom",oe);const X=qP({zoomPanValues:d,panOnDrag:D,panOnScroll:T,onPaneContextMenu:b,onPanZoomEnd:l,onDraggingChange:c});f.on("end",X)}const ee=QP({zoomActivationKeyPressed:Z,panOnDrag:D,zoomOnScroll:Y,panOnScroll:T,zoomOnDoubleClick:H,zoomOnPinch:U,userSelectionActive:M,noPanClassName:L,noWheelClassName:A,lib:K});f.filter(ee),H?p.on("dblclick.zoom",v):p.on("dblclick.zoom",null)}function g(){f.on("zoom",null)}async function w(A,L,b){const M=ff(A),T=f==null?void 0:f.constrain()(M,L,b);return T&&await _(T),new Promise(D=>D(T))}async function S(A,L){const b=ff(A);return await _(b,L),new Promise(M=>M(b))}function C(A){if(p){const L=ff(A),b=p.property("__zoom");(b.k!==A.zoom||b.x!==A.x||b.y!==A.y)&&(f==null||f.transform(p,L,null,{sync:!0}))}}function N(){const A=p?Pw(p.node()):{x:0,y:0,k:1};return{x:A.x,y:A.y,zoom:A.k}}function E(A,L){return p?new Promise(b=>{f==null||f.scaleTo(pf(p,L==null?void 0:L.duration,()=>b(!0)),A)}):Promise.resolve(!1)}function P(A,L){return p?new Promise(b=>{f==null||f.scaleBy(pf(p,L==null?void 0:L.duration,()=>b(!0)),A)}):Promise.resolve(!1)}function O(A){f==null||f.scaleExtent(A)}function j(A){f==null||f.translateExtent(A)}function $(A){const L=!mn(A)||A<0?0:A;f==null||f.clickDistance(L)}return{update:m,destroy:g,setViewport:S,setViewportConstrained:w,getViewport:N,scaleTo:E,scaleBy:P,setScaleExtent:O,setTranslateExtent:j,syncViewport:C,setClickDistance:$}}var ta;(function(e){e.Line="line",e.Handle="handle"})(ta||(ta={}));function e8({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:o,affectsY:i}){const s=e-t,a=n-r,l=[s>0?1:s<0?-1:0,a>0?1:a<0?-1:0];return s&&o&&(l[0]=l[0]*-1),a&&i&&(l[1]=l[1]*-1),l}function t8(e){const t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),r=e.includes("left"),o=e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:r,affectsY:o}}function Pr(e,t){return Math.max(0,t-e)}function Ir(e,t){return Math.max(0,e-t)}function Vl(e,t,n){return Math.max(0,t-e,e-n)}function pv(e,t){return e?!t:t}function n8(e,t,n,r,o,i,s,a){let{affectsX:l,affectsY:c}=t;const{isHorizontal:d,isVertical:u}=t,f=d&&u,{xSnapped:p,ySnapped:y}=n,{minWidth:v,maxWidth:_,minHeight:m,maxHeight:g}=r,{x:w,y:S,width:C,height:N,aspectRatio:E}=e;let P=Math.floor(d?p-e.pointerX:0),O=Math.floor(u?y-e.pointerY:0);const j=C+(l?-P:P),$=N+(c?-O:O),A=-i[0]*C,L=-i[1]*N;let b=Vl(j,v,_),M=Vl($,m,g);if(s){let k=0,I=0;l&&P<0?k=Pr(w+P+A,s[0][0]):!l&&P>0&&(k=Ir(w+j+A,s[1][0])),c&&O<0?I=Pr(S+O+L,s[0][1]):!c&&O>0&&(I=Ir(S+$+L,s[1][1])),b=Math.max(b,k),M=Math.max(M,I)}if(a){let k=0,I=0;l&&P>0?k=Ir(w+P,a[0][0]):!l&&P<0&&(k=Pr(w+j,a[1][0])),c&&O>0?I=Ir(S+O,a[0][1]):!c&&O<0&&(I=Pr(S+$,a[1][1])),b=Math.max(b,k),M=Math.max(M,I)}if(o){if(d){const k=Vl(j/E,m,g)*E;if(b=Math.max(b,k),s){let I=0;!l&&!c||l&&!c&&f?I=Ir(S+L+j/E,s[1][1])*E:I=Pr(S+L+(l?P:-P)/E,s[0][1])*E,b=Math.max(b,I)}if(a){let I=0;!l&&!c||l&&!c&&f?I=Pr(S+j/E,a[1][1])*E:I=Ir(S+(l?P:-P)/E,a[0][1])*E,b=Math.max(b,I)}}if(u){const k=Vl($*E,v,_)/E;if(M=Math.max(M,k),s){let I=0;!l&&!c||c&&!l&&f?I=Ir(w+$*E+A,s[1][0])/E:I=Pr(w+(c?O:-O)*E+A,s[0][0])/E,M=Math.max(M,I)}if(a){let I=0;!l&&!c||c&&!l&&f?I=Pr(w+$*E,a[1][0])/E:I=Ir(w+(c?O:-O)*E,a[0][0])/E,M=Math.max(M,I)}}}O=O+(O<0?M:-M),P=P+(P<0?b:-b),o&&(f?j>$*E?O=(pv(l,c)?-P:P)/E:P=(pv(l,c)?-O:O)*E:d?(O=P/E,c=l):(P=O*E,l=c));const T=l?w+P:w,D=c?S+O:S;return{width:C+(l?-P:P),height:N+(c?-O:O),x:i[0]*P*(l?-1:1)+T,y:i[1]*O*(c?-1:1)+D}}const i2={width:0,height:0,x:0,y:0},r8={...i2,pointerX:0,pointerY:0,aspectRatio:1};function o8(e){return[[0,0],[e.measured.width,e.measured.height]]}function i8(e,t,n){const r=t.position.x+e.position.x,o=t.position.y+e.position.y,i=e.measured.width??0,s=e.measured.height??0,a=n[0]*i,l=n[1]*s;return[[r-a,o-l],[r+i-a,o+s-l]]}function s8({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:o}){const i=Ht(e);function s({controlPosition:l,boundaries:c,keepAspectRatio:d,onResizeStart:u,onResize:f,onResizeEnd:p,shouldResize:y}){let v={...i2},_={...r8};const m=t8(l);let g,w=[],S,C,N;const E=mw().on("start",P=>{const{nodeLookup:O,transform:j,snapGrid:$,snapToGrid:A,nodeOrigin:L}=n();if(g=O.get(t),!g)return;const{xSnapped:b,ySnapped:M}=ea(P.sourceEvent,{transform:j,snapGrid:$,snapToGrid:A});v={width:g.measured.width??0,height:g.measured.height??0,x:g.position.x??0,y:g.position.y??0},_={...v,pointerX:b,pointerY:M,aspectRatio:v.width/v.height},S=void 0,g.parentId&&(g.extent==="parent"||g.expandParent)&&(S=O.get(g.parentId),C=S&&g.extent==="parent"?o8(S):void 0),w=[],N=void 0;for(const[T,D]of O)if(D.parentId===t&&(w.push({id:T,position:{...D.position},extent:D.extent}),D.extent==="parent"||D.expandParent)){const k=i8(D,g,D.origin??L);N?N=[[Math.min(k[0][0],N[0][0]),Math.min(k[0][1],N[0][1])],[Math.max(k[1][0],N[1][0]),Math.max(k[1][1],N[1][1])]]:N=k}u==null||u(P,{...v})}).on("drag",P=>{const{transform:O,snapGrid:j,snapToGrid:$,nodeOrigin:A}=n(),L=ea(P.sourceEvent,{transform:O,snapGrid:j,snapToGrid:$}),b=[];if(!g)return;const{x:M,y:T,width:D,height:k}=v,I={},z=g.origin??A,{width:U,height:Y,x:H,y:Z}=n8(_,m,L,c,d,z,C,N),K=U!==D,G=Y!==k,V=H!==M&&K,B=Z!==T&&G;if(!V&&!B&&!K&&!G)return;if((V||B||z[0]===1||z[1]===1)&&(I.x=V?H:v.x,I.y=B?Z:v.y,v.x=I.x,v.y=I.y,w.length>0)){const X=H-M,ae=Z-T;for(const me of w)me.position={x:me.position.x-X+z[0]*(U-D),y:me.position.y-ae+z[1]*(Y-k)},b.push(me)}if((K||G)&&(I.width=K?U:v.width,I.height=G?Y:v.height,v.width=I.width,v.height=I.height),S&&g.expandParent){const X=z[0]*(I.width??0);I.x&&I.x<X&&(v.x=X,_.x=_.x-(I.x-X));const ae=z[1]*(I.height??0);I.y&&I.y<ae&&(v.y=ae,_.y=_.y-(I.y-ae))}const ee=e8({width:v.width,prevWidth:D,height:v.height,prevHeight:k,affectsX:m.affectsX,affectsY:m.affectsY}),ne={...v,direction:ee};(y==null?void 0:y(P,ne))!==!1&&(f==null||f(P,ne),r(I,b))}).on("end",P=>{p==null||p(P,{...v}),o==null||o()});i.call(E)}function a(){i.on(".drag",null)}return{update:s,destroy:a}}var s2={exports:{}},a2={},l2={exports:{}},c2={};/**
+ * @license React
+ * use-sync-external-store-shim.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */var es=x;function a8(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var l8=typeof Object.is=="function"?Object.is:a8,c8=es.useState,u8=es.useEffect,d8=es.useLayoutEffect,f8=es.useDebugValue;function p8(e,t){var n=t(),r=c8({inst:{value:n,getSnapshot:t}}),o=r[0].inst,i=r[1];return d8(function(){o.value=n,o.getSnapshot=t,hf(o)&&i({inst:o})},[e,n,t]),u8(function(){return hf(o)&&i({inst:o}),e(function(){hf(o)&&i({inst:o})})},[e]),f8(n),n}function hf(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!l8(e,n)}catch{return!0}}function h8(e,t){return t()}var m8=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h8:p8;c2.useSyncExternalStore=es.useSyncExternalStore!==void 0?es.useSyncExternalStore:m8;l2.exports=c2;var g8=l2.exports;/**
+ * @license React
+ * use-sync-external-store-shim/with-selector.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */var Xu=x,v8=g8;function y8(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var x8=typeof Object.is=="function"?Object.is:y8,w8=v8.useSyncExternalStore,_8=Xu.useRef,S8=Xu.useEffect,b8=Xu.useMemo,C8=Xu.useDebugValue;a2.useSyncExternalStoreWithSelector=function(e,t,n,r,o){var i=_8(null);if(i.current===null){var s={hasValue:!1,value:null};i.current=s}else s=i.current;i=b8(function(){function l(p){if(!c){if(c=!0,d=p,p=r(p),o!==void 0&&s.hasValue){var y=s.value;if(o(y,p))return u=y}return u=p}if(y=u,x8(d,p))return y;var v=r(p);return o!==void 0&&o(y,v)?y:(d=p,u=v)}var c=!1,d,u,f=n===void 0?null:n;return[function(){return l(t())},f===null?void 0:function(){return l(f())}]},[t,n,r,o]);var a=w8(e,i[0],i[1]);return S8(function(){s.hasValue=!0,s.value=a},[a]),C8(a),a};s2.exports=a2;var E8=s2.exports;const k8=Sh(E8),N8={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},hv=e=>{let t;const n=new Set,r=(d,u)=>{const f=typeof d=="function"?d(t):d;if(!Object.is(f,t)){const p=t;t=u??(typeof f!="object"||f===null)?f:Object.assign({},t,f),n.forEach(y=>y(t,p))}},o=()=>t,l={setState:r,getState:o,getInitialState:()=>c,subscribe:d=>(n.add(d),()=>n.delete(d)),destroy:()=>{(N8?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},c=t=e(r,o,l);return l},T8=e=>e?hv(e):hv,{useDebugValue:P8}=de,{useSyncExternalStoreWithSelector:I8}=k8,R8=e=>e;function u2(e,t=R8,n){const r=I8(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return P8(r),r}const mv=(e,t)=>{const n=T8(e),r=(o,i=t)=>u2(n,o,i);return Object.assign(r,n),r},A8=(e,t)=>e?mv(e,t):mv;function Ze(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[r,o]of e)if(!Object.is(o,t.get(r)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}const qu=x.createContext(null),M8=qu.Provider,d2=Cr.error001();function Ne(e,t){const n=x.useContext(qu);if(n===null)throw new Error(d2);return u2(n,e,t)}function Fe(){const e=x.useContext(qu);if(e===null)throw new Error(d2);return x.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const gv={display:"none"},j8={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},f2="react-flow__node-desc",p2="react-flow__edge-desc",O8="react-flow__aria-live",D8=e=>e.ariaLiveMessage;function L8({rfId:e}){const t=Ne(D8);return h.jsx("div",{id:`${O8}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:j8,children:t})}function z8({rfId:e,disableKeyboardA11y:t}){return h.jsxs(h.Fragment,{children:[h.jsxs("div",{id:`${f2}-${e}`,style:gv,children:["Press enter or space to select a node.",!t&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "]}),h.jsx("div",{id:`${p2}-${e}`,style:gv,children:"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."}),!t&&h.jsx(L8,{rfId:e})]})}const $8=e=>e.userSelectionActive?"none":"all";function Qu({position:e="top-left",children:t,className:n,style:r,...o}){const i=Ne($8),s=`${e}`.split("-");return h.jsx("div",{className:Je(["react-flow__panel",n,...s]),style:{...r,pointerEvents:i},...o,children:t})}function F8({proOptions:e,position:t="bottom-right"}){return e!=null&&e.hideAttribution?null:h.jsx(Qu,{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:h.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const V8=e=>{const t=[],n=[];for(const[,r]of e.nodeLookup)r.selected&&t.push(r.internals.userNode);for(const[,r]of e.edgeLookup)r.selected&&n.push(r);return{selectedNodes:t,selectedEdges:n}},Hl=e=>e.id;function H8(e,t){return Ze(e.selectedNodes.map(Hl),t.selectedNodes.map(Hl))&&Ze(e.selectedEdges.map(Hl),t.selectedEdges.map(Hl))}function B8({onSelectionChange:e}){const t=Fe(),{selectedNodes:n,selectedEdges:r}=Ne(V8,H8);return x.useEffect(()=>{const o={nodes:n,edges:r};e==null||e(o),t.getState().onSelectionChangeHandlers.forEach(i=>i(o))},[n,r,e]),null}const U8=e=>!!e.onSelectionChangeHandlers;function W8({onSelectionChange:e}){const t=Ne(U8);return e||t?h.jsx(B8,{onSelectionChange:e}):null}const h2=[0,0],Z8={x:0,y:0,zoom:1},G8=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","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","onBeforeDelete","debug","autoPanSpeed","paneClickDistance"],vv=[...G8,"rfId"],Y8=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,setPaneClickDistance:e.setPaneClickDistance}),yv={translateExtent:Na,nodeOrigin:h2,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1",paneClickDistance:0};function K8(e){const{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:o,setTranslateExtent:i,setNodeExtent:s,reset:a,setDefaultNodesAndEdges:l,setPaneClickDistance:c}=Ne(Y8,Ze),d=Fe();x.useEffect(()=>(l(e.defaultNodes,e.defaultEdges),()=>{u.current=yv,a()}),[]);const u=x.useRef(yv);return x.useEffect(()=>{for(const f of vv){const p=e[f],y=u.current[f];p!==y&&(typeof e[f]>"u"||(f==="nodes"?t(p):f==="edges"?n(p):f==="minZoom"?r(p):f==="maxZoom"?o(p):f==="translateExtent"?i(p):f==="nodeExtent"?s(p):f==="paneClickDistance"?c(p):f==="fitView"?d.setState({fitViewOnInit:p}):f==="fitViewOptions"?d.setState({fitViewOnInitOptions:p}):d.setState({[f]:p})))}u.current=e},vv.map(f=>e[f])),null}function xv(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function X8(e){var r;const[t,n]=x.useState(e==="system"?null:e);return x.useEffect(()=>{if(e!=="system"){n(e);return}const o=xv(),i=()=>n(o!=null&&o.matches?"dark":"light");return i(),o==null||o.addEventListener("change",i),()=>{o==null||o.removeEventListener("change",i)}},[e]),t!==null?t:(r=xv())!=null&&r.matches?"dark":"light"}const wv=typeof document<"u"?document:null;function Ra(e=null,t={target:wv,actInsideInputWithModifier:!0}){const[n,r]=x.useState(!1),o=x.useRef(!1),i=x.useRef(new Set([])),[s,a]=x.useMemo(()=>{if(e!==null){const c=(Array.isArray(e)?e:[e]).filter(u=>typeof u=="string").map(u=>u.split("+")),d=c.reduce((u,f)=>u.concat(...f),[]);return[c,d]}return[[],[]]},[e]);return x.useEffect(()=>{const l=(t==null?void 0:t.target)||wv;if(e!==null){const c=f=>{if(o.current=f.ctrlKey||f.metaKey||f.shiftKey,(!o.current||o.current&&!t.actInsideInputWithModifier)&&Bp(f))return!1;const y=Sv(f.code,a);i.current.add(f[y]),_v(s,i.current,!1)&&(f.preventDefault(),r(!0))},d=f=>{if((!o.current||o.current&&!t.actInsideInputWithModifier)&&Bp(f))return!1;const y=Sv(f.code,a);_v(s,i.current,!0)?(r(!1),i.current.clear()):i.current.delete(f[y]),f.key==="Meta"&&i.current.clear(),o.current=!1},u=()=>{i.current.clear(),r(!1)};return l==null||l.addEventListener("keydown",c),l==null||l.addEventListener("keyup",d),window.addEventListener("blur",u),window.addEventListener("contextmenu",u),()=>{l==null||l.removeEventListener("keydown",c),l==null||l.removeEventListener("keyup",d),window.removeEventListener("blur",u),window.removeEventListener("contextmenu",u)}}},[e,r]),n}function _v(e,t,n){return e.filter(r=>n||r.length===t.size).some(r=>r.every(o=>t.has(o)))}function Sv(e,t){return t.includes(e)?"code":"key"}const q8=()=>{const e=Fe();return x.useMemo(()=>({zoomIn:t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,{duration:t==null?void 0:t.duration}):Promise.resolve(!1)},zoomOut:t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,{duration:t==null?void 0:t.duration}):Promise.resolve(!1)},zoomTo:(t,n)=>{const{panZoom:r}=e.getState();return r?r.scaleTo(t,{duration:n==null?void 0:n.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{const{transform:[r,o,i],panZoom:s}=e.getState();return s?(await s.setViewport({x:t.x??r,y:t.y??o,zoom:t.zoom??i},{duration:n==null?void 0:n.duration}),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},fitView:t=>{const{nodeLookup:n,minZoom:r,maxZoom:o,panZoom:i,domNode:s}=e.getState();if(!i||!s)return Promise.resolve(!1);const a=Fp(n,t),{width:l,height:c}=Yu(s);return Vp({nodes:a,width:l,height:c,minZoom:r,maxZoom:o,panZoom:i},t)},setCenter:async(t,n,r)=>{const{width:o,height:i,maxZoom:s,panZoom:a}=e.getState(),l=typeof(r==null?void 0:r.zoom)<"u"?r.zoom:s,c=o/2-t*l,d=i/2-n*l;return a?(await a.setViewport({x:c,y:d,zoom:l},{duration:r==null?void 0:r.duration}),Promise.resolve(!0)):Promise.resolve(!1)},fitBounds:async(t,n)=>{const{width:r,height:o,minZoom:i,maxZoom:s,panZoom:a}=e.getState(),l=Em(t,r,o,i,s,(n==null?void 0:n.padding)??.1);return a?(await a.setViewport(l,{duration:n==null?void 0:n.duration}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(t,n={snapToGrid:!0})=>{const{transform:r,snapGrid:o,domNode:i}=e.getState();if(!i)return t;const{x:s,y:a}=i.getBoundingClientRect(),l={x:t.x-s,y:t.y-a};return sl(l,r,n.snapToGrid,o)},flowToScreenPosition:t=>{const{transform:n,domNode:r}=e.getState();if(!r)return t;const{x:o,y:i}=r.getBoundingClientRect(),s=Fw(t,n);return{x:s.x+o,y:s.y+i}}}),[])};function m2(e,t){const n=[],r=new Map,o=[];for(const i of e)if(i.type==="add"){o.push(i);continue}else if(i.type==="remove"||i.type==="replace")r.set(i.id,[i]);else{const s=r.get(i.id);s?s.push(i):r.set(i.id,[i])}for(const i of t){const s=r.get(i.id);if(!s){n.push(i);continue}if(s[0].type==="remove")continue;if(s[0].type==="replace"){n.push({...s[0].item});continue}const a={...i};for(const l of s)Q8(l,a);n.push(a)}return o.length&&o.forEach(i=>{i.index!==void 0?n.splice(i.index,0,{...i.item}):n.push({...i.item})}),n}function Q8(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??(t.measured={}),t.measured.width=e.dimensions.width,t.measured.height=e.dimensions.height,e.setAttributes&&(t.width=e.dimensions.width,t.height=e.dimensions.height)),typeof e.resizing=="boolean"&&(t.resizing=e.resizing);break}}}function g2(e,t){return m2(e,t)}function Yp(e,t){return m2(e,t)}function yo(e,t){return{id:e,type:"select",selected:t}}function Si(e,t=new Set,n=!1){const r=[];for(const[o,i]of e){const s=t.has(o);!(i.selected===void 0&&!s)&&i.selected!==s&&(n&&(i.selected=s),r.push(yo(i.id,s)))}return r}function bv({items:e=[],lookup:t}){var o;const n=[],r=new Map(e.map(i=>[i.id,i]));for(const[i,s]of e.entries()){const a=t.get(s.id),l=((o=a==null?void 0:a.internals)==null?void 0:o.userNode)??a;l!==void 0&&l!==s&&n.push({id:s.id,item:s,type:"replace"}),l===void 0&&n.push({item:s,type:"add",index:i})}for(const[i]of t)r.get(i)===void 0&&n.push({id:i,type:"remove"});return n}function Cv(e){return{id:e.id,type:"remove"}}const Ev=e=>vP(e),J8=e=>jw(e);function v2(e){return x.forwardRef(e)}const eI=typeof window<"u"?x.useLayoutEffect:x.useEffect;function kv(e){const[t,n]=x.useState(!1),[r]=x.useState(()=>tI(()=>n(!0)));return eI(()=>{if(!t){r.reset();return}const o=r.get();o.length&&(e(o),r.reset()),n(!1)},[t]),r}function tI(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}const y2=x.createContext(null);function nI({children:e}){const t=Fe(),n=x.useCallback(a=>{const{nodes:l=[],setNodes:c,hasDefaultNodes:d,onNodesChange:u,nodeLookup:f}=t.getState();let p=l;for(const y of a)p=typeof y=="function"?y(p):y;d?c(p):u&&u(bv({items:p,lookup:f}))},[]),r=kv(n),o=x.useCallback(a=>{const{edges:l=[],setEdges:c,hasDefaultEdges:d,onEdgesChange:u,edgeLookup:f}=t.getState();let p=l;for(const y of a)p=typeof y=="function"?y(p):y;d?c(p):u&&u(bv({items:p,lookup:f}))},[]),i=kv(o),s=x.useMemo(()=>({nodeQueue:r,edgeQueue:i}),[]);return h.jsx(y2.Provider,{value:s,children:e})}function rI(){const e=x.useContext(y2);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const oI=e=>!!e.panZoom;function Yo(){const e=q8(),t=Fe(),n=rI(),r=Ne(oI),o=x.useMemo(()=>{const i=u=>t.getState().nodeLookup.get(u),s=u=>{n.nodeQueue.push(u)},a=u=>{n.edgeQueue.push(u)},l=u=>{var m,g;const{nodeLookup:f,nodeOrigin:p}=t.getState(),y=Ev(u)?u:f.get(u.id),v=y.parentId?Hw(y.position,y.measured,y.parentId,f,p):y.position,_={id:y.id,position:v,width:((m=y.measured)==null?void 0:m.width)??y.width,height:((g=y.measured)==null?void 0:g.height)??y.height,data:y.data};return Qi(_)},c=(u,f,p={replace:!1})=>{s(y=>y.map(v=>{if(v.id===u){const _=typeof f=="function"?f(v):f;return p.replace&&Ev(_)?_:{...v,..._}}return v}))},d=(u,f,p={replace:!1})=>{a(y=>y.map(v=>{if(v.id===u){const _=typeof f=="function"?f(v):f;return p.replace&&J8(_)?_:{...v,..._}}return v}))};return{getNodes:()=>t.getState().nodes.map(u=>({...u})),getNode:u=>{var f;return(f=i(u))==null?void 0:f.internals.userNode},getInternalNode:i,getEdges:()=>{const{edges:u=[]}=t.getState();return u.map(f=>({...f}))},getEdge:u=>t.getState().edgeLookup.get(u),setNodes:s,setEdges:a,addNodes:u=>{const f=Array.isArray(u)?u:[u];n.nodeQueue.push(p=>[...p,...f])},addEdges:u=>{const f=Array.isArray(u)?u:[u];n.edgeQueue.push(p=>[...p,...f])},toObject:()=>{const{nodes:u=[],edges:f=[],transform:p}=t.getState(),[y,v,_]=p;return{nodes:u.map(m=>({...m})),edges:f.map(m=>({...m})),viewport:{x:y,y:v,zoom:_}}},deleteElements:async({nodes:u=[],edges:f=[]})=>{const{nodes:p,edges:y,onNodesDelete:v,onEdgesDelete:_,triggerNodeChanges:m,triggerEdgeChanges:g,onDelete:w,onBeforeDelete:S}=t.getState(),{nodes:C,edges:N}=await wP({nodesToRemove:u,edgesToRemove:f,nodes:p,edges:y,onBeforeDelete:S}),E=N.length>0,P=C.length>0;if(E){const O=N.map(Cv);_==null||_(N),g(O)}if(P){const O=C.map(Cv);v==null||v(C),m(O)}return(P||E)&&(w==null||w({nodes:C,edges:N})),{deletedNodes:C,deletedEdges:N}},getIntersectingNodes:(u,f=!0,p)=>{const y=ov(u),v=y?u:l(u),_=p!==void 0;return v?(p||t.getState().nodes).filter(m=>{const g=t.getState().nodeLookup.get(m.id);if(g&&!y&&(m.id===u.id||!g.internals.positionAbsolute))return!1;const w=Qi(_?m:g),S=Pa(w,v);return f&&S>0||S>=v.width*v.height}):[]},isNodeIntersecting:(u,f,p=!0)=>{const v=ov(u)?u:l(u);if(!v)return!1;const _=Pa(v,f);return p&&_>0||_>=v.width*v.height},updateNode:c,updateNodeData:(u,f,p={replace:!1})=>{c(u,y=>{const v=typeof f=="function"?f(y):f;return p.replace?{...y,data:v}:{...y,data:{...y.data,...v}}},p)},updateEdge:d,updateEdgeData:(u,f,p={replace:!1})=>{d(u,y=>{const v=typeof f=="function"?f(y):f;return p.replace?{...y,data:v}:{...y,data:{...y.data,...v}}},p)},getNodesBounds:u=>{const{nodeLookup:f,nodeOrigin:p}=t.getState();return yP(u,{nodeLookup:f,nodeOrigin:p})},getHandleConnections:({type:u,id:f,nodeId:p})=>{var y;return Array.from(((y=t.getState().connectionLookup.get(`${p}-${u}-${f??null}`))==null?void 0:y.values())??[])}}},[]);return x.useMemo(()=>({...o,...e,viewportInitialized:r}),[r])}const Nv=e=>e.selected,iI={actInsideInputWithModifier:!1},sI=typeof window<"u"?window:void 0;function aI({deleteKeyCode:e,multiSelectionKeyCode:t}){const n=Fe(),{deleteElements:r}=Yo(),o=Ra(e,iI),i=Ra(t,{target:sI});x.useEffect(()=>{if(o){const{edges:s,nodes:a}=n.getState();r({nodes:a.filter(Nv),edges:s.filter(Nv)}),n.setState({nodesSelectionActive:!1})}},[o]),x.useEffect(()=>{n.setState({multiSelectionActive:i})},[i])}function lI(e){const t=Fe();x.useEffect(()=>{const n=()=>{var o,i;if(!e.current)return!1;const r=Yu(e.current);(r.height===0||r.width===0)&&((i=(o=t.getState()).onError)==null||i.call(o,"004",Cr.error004())),t.setState({width:r.width||500,height:r.height||500})};if(e.current){n(),window.addEventListener("resize",n);const r=new ResizeObserver(()=>n());return r.observe(e.current),()=>{window.removeEventListener("resize",n),r&&e.current&&r.unobserve(e.current)}}},[])}const Ju={position:"absolute",width:"100%",height:"100%",top:0,left:0},cI=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib});function uI({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panOnScrollSpeed:o=.5,panOnScrollMode:i=To.Free,zoomOnDoubleClick:s=!0,panOnDrag:a=!0,defaultViewport:l,translateExtent:c,minZoom:d,maxZoom:u,zoomActivationKeyCode:f,preventScrolling:p=!0,children:y,noWheelClassName:v,noPanClassName:_,onViewportChange:m,isControlledViewport:g,paneClickDistance:w}){const S=Fe(),C=x.useRef(null),{userSelectionActive:N,lib:E}=Ne(cI,Ze),P=Ra(f),O=x.useRef();lI(C);const j=x.useCallback($=>{m==null||m({x:$[0],y:$[1],zoom:$[2]}),g||S.setState({transform:$})},[m,g]);return x.useEffect(()=>{if(C.current){O.current=JP({domNode:C.current,minZoom:d,maxZoom:u,translateExtent:c,viewport:l,paneClickDistance:w,onDraggingChange:b=>S.setState({paneDragging:b}),onPanZoomStart:(b,M)=>{const{onViewportChangeStart:T,onMoveStart:D}=S.getState();D==null||D(b,M),T==null||T(M)},onPanZoom:(b,M)=>{const{onViewportChange:T,onMove:D}=S.getState();D==null||D(b,M),T==null||T(M)},onPanZoomEnd:(b,M)=>{const{onViewportChangeEnd:T,onMoveEnd:D}=S.getState();D==null||D(b,M),T==null||T(M)}});const{x:$,y:A,zoom:L}=O.current.getViewport();return S.setState({panZoom:O.current,transform:[$,A,L],domNode:C.current.closest(".react-flow")}),()=>{var b;(b=O.current)==null||b.destroy()}}},[]),x.useEffect(()=>{var $;($=O.current)==null||$.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panOnScrollSpeed:o,panOnScrollMode:i,zoomOnDoubleClick:s,panOnDrag:a,zoomActivationKeyPressed:P,preventScrolling:p,noPanClassName:_,userSelectionActive:N,noWheelClassName:v,lib:E,onTransformChange:j})},[e,t,n,r,o,i,s,a,P,p,_,N,v,E,j]),h.jsx("div",{className:"react-flow__renderer",ref:C,style:Ju,children:y})}const dI=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function fI(){const{userSelectionActive:e,userSelectionRect:t}=Ne(dI,Ze);return e&&t?h.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 mf=(e,t)=>n=>{n.target===t.current&&(e==null||e(n))},pI=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging});function hI({isSelecting:e,selectionKeyPressed:t,selectionMode:n=Ta.Full,panOnDrag:r,selectionOnDrag:o,onSelectionStart:i,onSelectionEnd:s,onPaneClick:a,onPaneContextMenu:l,onPaneScroll:c,onPaneMouseEnter:d,onPaneMouseMove:u,onPaneMouseLeave:f,children:p}){const y=x.useRef(null),v=Fe(),_=x.useRef(0),m=x.useRef(0),g=x.useRef(),w=x.useRef(new Map),{userSelectionActive:S,elementsSelectable:C,dragging:N}=Ne(pI,Ze),E=C&&(e||S),P=x.useRef(!1),O=x.useRef(!1),j=()=>{v.setState({userSelectionActive:!1,userSelectionRect:null}),_.current=0,m.current=0},$=k=>{if(P.current){P.current=!1;return}a==null||a(k),v.getState().resetSelectedElements(),v.setState({nodesSelectionActive:!1})},A=k=>{if(Array.isArray(r)&&(r!=null&&r.includes(2))){k.preventDefault();return}l==null||l(k)},L=c?k=>c(k):void 0,b=k=>{var Z,K,G,V;const{resetSelectedElements:I,domNode:z,edgeLookup:U}=v.getState();if(g.current=z==null?void 0:z.getBoundingClientRect(),!C||!e||k.button!==0||k.target!==y.current||!g.current)return;(K=(Z=k.target)==null?void 0:Z.setPointerCapture)==null||K.call(Z,k.pointerId),O.current=!0,P.current=!1,w.current=new Map;for(const[B,ee]of U)w.current.set(ee.source,((G=w.current.get(ee.source))==null?void 0:G.add(B))||new Set([B])),w.current.set(ee.target,((V=w.current.get(ee.target))==null?void 0:V.add(B))||new Set([B]));const{x:Y,y:H}=lr(k.nativeEvent,g.current);I(),v.setState({userSelectionRect:{width:0,height:0,startX:Y,startY:H,x:Y,y:H}}),i==null||i(k)},M=k=>{const{userSelectionRect:I,edgeLookup:z,transform:U,nodeLookup:Y,triggerNodeChanges:H,triggerEdgeChanges:Z}=v.getState();if(!g.current||!I)return;P.current=!0;const{x:K,y:G}=lr(k.nativeEvent,g.current),{startX:V,startY:B}=I,ee={startX:V,startY:B,x:K<V?K:V,y:G<B?G:B,width:Math.abs(K-V),height:Math.abs(G-B)},ne=Ow(Y,ee,U,n===Ta.Partial,!0),oe=new Set,X=new Set;for(const ae of ne){X.add(ae.id);const me=w.current.get(ae.id);if(me)for(const Le of me)oe.add(Le)}if(_.current!==X.size){_.current=X.size;const ae=Si(Y,X,!0);H(ae)}if(m.current!==oe.size){m.current=oe.size;const ae=Si(z,oe);Z(ae)}v.setState({userSelectionRect:ee,userSelectionActive:!0,nodesSelectionActive:!1})},T=k=>{var z,U;if(k.button!==0||!O.current)return;(U=(z=k.target)==null?void 0:z.releasePointerCapture)==null||U.call(z,k.pointerId);const{userSelectionRect:I}=v.getState();!S&&I&&k.target===y.current&&($==null||$(k)),_.current>0&&v.setState({nodesSelectionActive:!0}),j(),s==null||s(k),(t||o)&&(P.current=!1),O.current=!1},D=r===!0||Array.isArray(r)&&r.includes(0);return h.jsxs("div",{className:Je(["react-flow__pane",{draggable:D,dragging:N,selection:e}]),onClick:E?void 0:mf($,y),onContextMenu:mf(A,y),onWheel:mf(L,y),onPointerEnter:E?void 0:d,onPointerDown:E?b:u,onPointerMove:E?M:u,onPointerUp:E?T:void 0,onPointerLeave:f,ref:y,style:Ju,children:[p,h.jsx(fI,{})]})}function Kp({id:e,store:t,unselect:n=!1,nodeRef:r}){const{addSelectedNodes:o,unselectNodesAndEdges:i,multiSelectionActive:s,nodeLookup:a,onError:l}=t.getState(),c=a.get(e);if(!c){l==null||l("012",Cr.error012(e));return}t.setState({nodesSelectionActive:!1}),c.selected?(n||c.selected&&s)&&(i({nodes:[c],edges:[]}),requestAnimationFrame(()=>{var d;return(d=r==null?void 0:r.current)==null?void 0:d.blur()})):o([e])}function x2({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:o,isSelectable:i,nodeClickDistance:s}){const a=Fe(),[l,c]=x.useState(!1),d=x.useRef();return x.useEffect(()=>{d.current=$P({getStoreItems:()=>a.getState(),onNodeMouseDown:u=>{Kp({id:u,store:a,nodeRef:e})},onDragStart:()=>{c(!0)},onDragStop:()=>{c(!1)}})},[]),x.useEffect(()=>{var u,f;if(t)(u=d.current)==null||u.destroy();else if(e.current)return(f=d.current)==null||f.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:i,nodeId:o,nodeClickDistance:s}),()=>{var p;(p=d.current)==null||p.destroy()}},[n,r,t,i,e,o]),l}const mI=e=>t=>t.selected&&(t.draggable||e&&typeof t.draggable>"u");function w2(){const e=Fe();return x.useCallback(n=>{const{nodeExtent:r,snapToGrid:o,snapGrid:i,nodesDraggable:s,onError:a,updateNodePositions:l,nodeLookup:c,nodeOrigin:d}=e.getState(),u=new Map,f=mI(s),p=o?i[0]:5,y=o?i[1]:5,v=n.direction.x*p*n.factor,_=n.direction.y*y*n.factor;for(const[,m]of c){if(!f(m))continue;let g={x:m.internals.positionAbsolute.x+v,y:m.internals.positionAbsolute.y+_};o&&(g=Gu(g,i));const{position:w,positionAbsolute:S}=Dw({nodeId:m.id,nextPosition:g,nodeLookup:c,nodeExtent:r,nodeOrigin:d,onError:a});m.position=w,m.internals.positionAbsolute=S,u.set(m.id,m)}l(u)},[])}const Im=x.createContext(null),gI=Im.Provider;Im.Consumer;const _2=()=>x.useContext(Im),vI=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),yI=(e,t,n)=>r=>{const{connectionClickStartHandle:o,connectionMode:i,connection:s}=r,{fromHandle:a,toHandle:l,isValid:c}=s,d=(l==null?void 0:l.nodeId)===e&&(l==null?void 0:l.id)===t&&(l==null?void 0:l.type)===n;return{connectingFrom:(a==null?void 0:a.nodeId)===e&&(a==null?void 0:a.id)===t&&(a==null?void 0:a.type)===n,connectingTo:d,clickConnecting:(o==null?void 0:o.nodeId)===e&&(o==null?void 0:o.id)===t&&(o==null?void 0:o.type)===n,isPossibleEndHandle:i===Xi.Strict?(a==null?void 0:a.type)!==n:e!==(a==null?void 0:a.nodeId)||t!==(a==null?void 0:a.id),connectionInProcess:!!a,valid:d&&c}};function xI({type:e="source",position:t=ue.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:o=!0,isConnectableEnd:i=!0,id:s,onConnect:a,children:l,className:c,onMouseDown:d,onTouchStart:u,...f},p){var b,M;const y=s||null,v=e==="target",_=Fe(),m=_2(),{connectOnClick:g,noPanClassName:w,rfId:S}=Ne(vI,Ze),{connectingFrom:C,connectingTo:N,clickConnecting:E,isPossibleEndHandle:P,connectionInProcess:O,valid:j}=Ne(yI(m,y,e),Ze);m||(M=(b=_.getState()).onError)==null||M.call(b,"010",Cr.error010());const $=T=>{const{defaultEdgeOptions:D,onConnect:k,hasDefaultEdges:I}=_.getState(),z={...D,...T};if(I){const{edges:U,setEdges:Y}=_.getState();Y(Yw(z,U))}k==null||k(z),a==null||a(z)},A=T=>{if(!m)return;const D=Uw(T.nativeEvent);if(o&&(D&&T.button===0||!D)){const k=_.getState();Gp.onPointerDown(T.nativeEvent,{autoPanOnConnect:k.autoPanOnConnect,connectionMode:k.connectionMode,connectionRadius:k.connectionRadius,domNode:k.domNode,nodeLookup:k.nodeLookup,lib:k.lib,isTarget:v,handleId:y,nodeId:m,flowId:k.rfId,panBy:k.panBy,cancelConnection:k.cancelConnection,onConnectStart:k.onConnectStart,onConnectEnd:k.onConnectEnd,updateConnection:k.updateConnection,onConnect:$,isValidConnection:n||k.isValidConnection,getTransform:()=>_.getState().transform,getFromHandle:()=>_.getState().connection.fromHandle,autoPanSpeed:k.autoPanSpeed})}D?d==null||d(T):u==null||u(T)},L=T=>{const{onClickConnectStart:D,onClickConnectEnd:k,connectionClickStartHandle:I,connectionMode:z,isValidConnection:U,lib:Y,rfId:H,nodeLookup:Z,connection:K}=_.getState();if(!m||!I&&!o)return;if(!I){D==null||D(T.nativeEvent,{nodeId:m,handleId:y,handleType:e}),_.setState({connectionClickStartHandle:{nodeId:m,type:e,id:y}});return}const G=Bw(T.target),V=n||U,{connection:B,isValid:ee}=Gp.isValid(T.nativeEvent,{handle:{nodeId:m,id:y,type:e},connectionMode:z,fromNodeId:I.nodeId,fromHandleId:I.id||null,fromType:I.type,isValidConnection:V,flowId:H,doc:G,lib:Y,nodeLookup:Z});ee&&B&&$(B);const ne=structuredClone(K);delete ne.inProgress,ne.toPosition=ne.toHandle?ne.toHandle.position:null,k==null||k(T,ne),_.setState({connectionClickStartHandle:null})};return h.jsx("div",{"data-handleid":y,"data-nodeid":m,"data-handlepos":t,"data-id":`${S}-${m}-${y}-${e}`,className:Je(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",w,c,{source:!v,target:v,connectable:r,connectablestart:o,connectableend:i,clickconnecting:E,connectingfrom:C,connectingto:N,valid:j,connectionindicator:r&&(!O||P)&&(O?i:o)}]),onMouseDown:A,onTouchStart:A,onClick:g?L:void 0,ref:p,...f,children:l})}const Wt=x.memo(v2(xI));function wI({data:e,isConnectable:t,sourcePosition:n=ue.Bottom}){return h.jsxs(h.Fragment,{children:[e==null?void 0:e.label,h.jsx(Wt,{type:"source",position:n,isConnectable:t})]})}function _I({data:e,isConnectable:t,targetPosition:n=ue.Top,sourcePosition:r=ue.Bottom}){return h.jsxs(h.Fragment,{children:[h.jsx(Wt,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label,h.jsx(Wt,{type:"source",position:r,isConnectable:t})]})}function SI(){return null}function bI({data:e,isConnectable:t,targetPosition:n=ue.Top}){return h.jsxs(h.Fragment,{children:[h.jsx(Wt,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label]})}const tu={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},Tv={input:wI,default:_I,output:bI,group:SI};function CI(e){var t,n,r,o;return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??((t=e.style)==null?void 0:t.width),height:e.height??e.initialHeight??((n=e.style)==null?void 0:n.height)}:{width:e.width??((r=e.style)==null?void 0:r.width),height:e.height??((o=e.style)==null?void 0:o.height)}}const EI=e=>{const{width:t,height:n,x:r,y:o}=il(e.nodeLookup,{filter:i=>!!i.selected});return{width:mn(t)?t:null,height:mn(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${o}px)`}};function kI({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){const r=Fe(),{width:o,height:i,transformString:s,userSelectionActive:a}=Ne(EI,Ze),l=w2(),c=x.useRef(null);if(x.useEffect(()=>{var f;n||(f=c.current)==null||f.focus({preventScroll:!0})},[n]),x2({nodeRef:c}),a||!o||!i)return null;const d=e?f=>{const p=r.getState().nodes.filter(y=>y.selected);e(f,p)}:void 0,u=f=>{Object.prototype.hasOwnProperty.call(tu,f.key)&&l({direction:tu[f.key],factor:f.shiftKey?4:1})};return h.jsx("div",{className:Je(["react-flow__nodesselection","react-flow__container",t]),style:{transform:s},children:h.jsx("div",{ref:c,className:"react-flow__nodesselection-rect",onContextMenu:d,tabIndex:n?void 0:-1,onKeyDown:n?void 0:u,style:{width:o,height:i}})})}const Pv=typeof window<"u"?window:void 0,NI=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function S2({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:s,paneClickDistance:a,deleteKeyCode:l,selectionKeyCode:c,selectionOnDrag:d,selectionMode:u,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:y,panActivationKeyCode:v,zoomActivationKeyCode:_,elementsSelectable:m,zoomOnScroll:g,zoomOnPinch:w,panOnScroll:S,panOnScrollSpeed:C,panOnScrollMode:N,zoomOnDoubleClick:E,panOnDrag:P,defaultViewport:O,translateExtent:j,minZoom:$,maxZoom:A,preventScrolling:L,onSelectionContextMenu:b,noWheelClassName:M,noPanClassName:T,disableKeyboardA11y:D,onViewportChange:k,isControlledViewport:I}){const{nodesSelectionActive:z,userSelectionActive:U}=Ne(NI),Y=Ra(c,{target:Pv}),H=Ra(v,{target:Pv}),Z=H||P,K=H||S,G=d&&Z!==!0,V=Y||U||G;return aI({deleteKeyCode:l,multiSelectionKeyCode:y}),h.jsx(uI,{onPaneContextMenu:i,elementsSelectable:m,zoomOnScroll:g,zoomOnPinch:w,panOnScroll:K,panOnScrollSpeed:C,panOnScrollMode:N,zoomOnDoubleClick:E,panOnDrag:!Y&&Z,defaultViewport:O,translateExtent:j,minZoom:$,maxZoom:A,zoomActivationKeyCode:_,preventScrolling:L,noWheelClassName:M,noPanClassName:T,onViewportChange:k,isControlledViewport:I,paneClickDistance:a,children:h.jsxs(hI,{onSelectionStart:f,onSelectionEnd:p,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:s,panOnDrag:Z,isSelecting:!!V,selectionMode:u,selectionKeyPressed:Y,selectionOnDrag:G,children:[e,z&&h.jsx(kI,{onSelectionContextMenu:b,noPanClassName:T,disableKeyboardA11y:D})]})})}S2.displayName="FlowRenderer";const TI=x.memo(S2),PI=e=>t=>e?Ow(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 II(e){return Ne(x.useCallback(PI(e),[e]),Ze)}const RI=e=>e.updateNodeInternals;function AI(){const e=Ne(RI),[t]=x.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const r=new Map;n.forEach(o=>{const i=o.target.getAttribute("data-id");r.set(i,{id:i,nodeElement:o.target,force:!0})}),e(r)}));return x.useEffect(()=>()=>{t==null||t.disconnect()},[t]),t}function MI({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){const o=Fe(),i=x.useRef(null),s=x.useRef(null),a=x.useRef(e.sourcePosition),l=x.useRef(e.targetPosition),c=x.useRef(t),d=n&&!!e.internals.handleBounds;return x.useEffect(()=>{i.current&&!e.hidden&&(!d||s.current!==i.current)&&(s.current&&(r==null||r.unobserve(s.current)),r==null||r.observe(i.current),s.current=i.current)},[d,e.hidden]),x.useEffect(()=>()=>{s.current&&(r==null||r.unobserve(s.current),s.current=null)},[]),x.useEffect(()=>{if(i.current){const u=c.current!==t,f=a.current!==e.sourcePosition,p=l.current!==e.targetPosition;(u||f||p)&&(c.current=t,a.current=e.sourcePosition,l.current=e.targetPosition,o.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:i.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),i}function jI({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:o,onContextMenu:i,onDoubleClick:s,nodesDraggable:a,elementsSelectable:l,nodesConnectable:c,nodesFocusable:d,resizeObserver:u,noDragClassName:f,noPanClassName:p,disableKeyboardA11y:y,rfId:v,nodeTypes:_,nodeExtent:m,nodeClickDistance:g,onError:w}){const{node:S,internals:C,isParent:N}=Ne(B=>{const ee=B.nodeLookup.get(e),ne=B.parentLookup.has(e);return{node:ee,internals:ee.internals,isParent:ne}},Ze);let E=S.type||"default",P=(_==null?void 0:_[E])||Tv[E];P===void 0&&(w==null||w("003",Cr.error003(E)),E="default",P=Tv.default);const O=!!(S.draggable||a&&typeof S.draggable>"u"),j=!!(S.selectable||l&&typeof S.selectable>"u"),$=!!(S.connectable||c&&typeof S.connectable>"u"),A=!!(S.focusable||d&&typeof S.focusable>"u"),L=Fe(),b=Vw(S),M=MI({node:S,nodeType:E,hasDimensions:b,resizeObserver:u}),T=x2({nodeRef:M,disabled:S.hidden||!O,noDragClassName:f,handleSelector:S.dragHandle,nodeId:e,isSelectable:j,nodeClickDistance:g}),D=w2();if(S.hidden)return null;const k=Er(S),I=CI(S),z=j||O||t||n||r||o,U=n?B=>n(B,{...C.userNode}):void 0,Y=r?B=>r(B,{...C.userNode}):void 0,H=o?B=>o(B,{...C.userNode}):void 0,Z=i?B=>i(B,{...C.userNode}):void 0,K=s?B=>s(B,{...C.userNode}):void 0,G=B=>{const{selectNodesOnDrag:ee,nodeDragThreshold:ne}=L.getState();j&&(!ee||!O||ne>0)&&Kp({id:e,store:L,nodeRef:M}),t&&t(B,{...C.userNode})},V=B=>{if(!(Bp(B.nativeEvent)||y))if(Rw.includes(B.key)&&j){const ee=B.key==="Escape";Kp({id:e,store:L,unselect:ee,nodeRef:M})}else O&&S.selected&&Object.prototype.hasOwnProperty.call(tu,B.key)&&(L.setState({ariaLiveMessage:`Moved selected node ${B.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~C.positionAbsolute.x}, y: ${~~C.positionAbsolute.y}`}),D({direction:tu[B.key],factor:B.shiftKey?4:1}))};return h.jsx("div",{className:Je(["react-flow__node",`react-flow__node-${E}`,{[p]:O},S.className,{selected:S.selected,selectable:j,parent:N,draggable:O,dragging:T}]),ref:M,style:{zIndex:C.z,transform:`translate(${C.positionAbsolute.x}px,${C.positionAbsolute.y}px)`,pointerEvents:z?"all":"none",visibility:b?"visible":"hidden",...S.style,...I},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:U,onMouseMove:Y,onMouseLeave:H,onContextMenu:Z,onClick:G,onDoubleClick:K,onKeyDown:A?V:void 0,tabIndex:A?0:void 0,role:A?"button":void 0,"aria-describedby":y?void 0:`${f2}-${v}`,"aria-label":S.ariaLabel,children:h.jsx(gI,{value:e,children:h.jsx(P,{id:e,data:S.data,type:E,positionAbsoluteX:C.positionAbsolute.x,positionAbsoluteY:C.positionAbsolute.y,selected:S.selected,selectable:j,draggable:O,deletable:S.deletable??!0,isConnectable:$,sourcePosition:S.sourcePosition,targetPosition:S.targetPosition,dragging:T,dragHandle:S.dragHandle,zIndex:C.z,parentId:S.parentId,...k})})})}const OI=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function b2(e){const{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:o,onError:i}=Ne(OI,Ze),s=II(e.onlyRenderVisibleElements),a=AI();return h.jsx("div",{className:"react-flow__nodes",style:Ju,children:s.map(l=>h.jsx(jI,{id:l,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:a,nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:o,nodeClickDistance:e.nodeClickDistance,onError:i},l))})}b2.displayName="NodeRenderer";const DI=x.memo(b2);function LI(e){return Ne(x.useCallback(n=>{if(!e)return n.edges.map(o=>o.id);const r=[];if(n.width&&n.height)for(const o of n.edges){const i=n.nodeLookup.get(o.source),s=n.nodeLookup.get(o.target);i&&s&&CP({sourceNode:i,targetNode:s,width:n.width,height:n.height,transform:n.transform})&&r.push(o.id)}return r},[e]),Ze)}const zI=({color:e="none",strokeWidth:t=1})=>h.jsx("polyline",{style:{stroke:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),$I=({color:e="none",strokeWidth:t=1})=>h.jsx("polyline",{style:{stroke:e,fill:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"}),Iv={[Qc.Arrow]:zI,[Qc.ArrowClosed]:$I};function FI(e){const t=Fe();return x.useMemo(()=>{var o,i;return Object.prototype.hasOwnProperty.call(Iv,e)?Iv[e]:((i=(o=t.getState()).onError)==null||i.call(o,"009",Cr.error009(e)),null)},[e])}const VI=({id:e,type:t,color:n,width:r=12.5,height:o=12.5,markerUnits:i="strokeWidth",strokeWidth:s,orient:a="auto-start-reverse"})=>{const l=FI(t);return l?h.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${r}`,markerHeight:`${o}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:a,refX:"0",refY:"0",children:h.jsx(l,{color:n,strokeWidth:s})}):null},C2=({defaultColor:e,rfId:t})=>{const n=Ne(i=>i.edges),r=Ne(i=>i.defaultEdgeOptions),o=x.useMemo(()=>RP(n,{id:t,defaultColor:e,defaultMarkerStart:r==null?void 0:r.markerStart,defaultMarkerEnd:r==null?void 0:r.markerEnd}),[n,r,t,e]);return o.length?h.jsx("svg",{className:"react-flow__marker",children:h.jsx("defs",{children:o.map(i=>h.jsx(VI,{id:i.id,type:i.type,color:i.color,width:i.width,height:i.height,markerUnits:i.markerUnits,strokeWidth:i.strokeWidth,orient:i.orient},i.id))})}):null};C2.displayName="MarkerDefinitions";var HI=x.memo(C2);function E2({x:e,y:t,label:n,labelStyle:r={},labelShowBg:o=!0,labelBgStyle:i={},labelBgPadding:s=[2,4],labelBgBorderRadius:a=2,children:l,className:c,...d}){const[u,f]=x.useState({x:1,y:0,width:0,height:0}),p=Je(["react-flow__edge-textwrapper",c]),y=x.useRef(null);return x.useEffect(()=>{if(y.current){const v=y.current.getBBox();f({x:v.x,y:v.y,width:v.width,height:v.height})}},[n]),typeof n>"u"||!n?null:h.jsxs("g",{transform:`translate(${e-u.width/2} ${t-u.height/2})`,className:p,visibility:u.width?"visible":"hidden",...d,children:[o&&h.jsx("rect",{width:u.width+2*s[0],x:-s[0],y:-s[1],height:u.height+2*s[1],className:"react-flow__edge-textbg",style:i,rx:a,ry:a}),h.jsx("text",{className:"react-flow__edge-text",y:u.height/2,dy:"0.3em",ref:y,style:r,children:n}),l]})}E2.displayName="EdgeText";const BI=x.memo(E2);function ed({id:e,path:t,labelX:n,labelY:r,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:u,markerStart:f,className:p,interactionWidth:y=20}){return h.jsxs(h.Fragment,{children:[h.jsx("path",{id:e,style:d,d:t,fill:"none",className:Je(["react-flow__edge-path",p]),markerEnd:u,markerStart:f}),y&&h.jsx("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:y,className:"react-flow__edge-interaction"}),o&&mn(n)&&mn(r)?h.jsx(BI,{x:n,y:r,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:c}):null]})}function Rv({pos:e,x1:t,y1:n,x2:r,y2:o}){return e===ue.Left||e===ue.Right?[.5*(t+r),n]:[t,.5*(n+o)]}function k2({sourceX:e,sourceY:t,sourcePosition:n=ue.Bottom,targetX:r,targetY:o,targetPosition:i=ue.Top}){const[s,a]=Rv({pos:n,x1:e,y1:t,x2:r,y2:o}),[l,c]=Rv({pos:i,x1:r,y1:o,x2:e,y2:t}),[d,u,f,p]=Ww({sourceX:e,sourceY:t,targetX:r,targetY:o,sourceControlX:s,sourceControlY:a,targetControlX:l,targetControlY:c});return[`M${e},${t} C${s},${a} ${l},${c} ${r},${o}`,d,u,f,p]}function N2(e){return x.memo(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,sourcePosition:s=ue.Bottom,targetPosition:a=ue.Top,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:y,markerEnd:v,markerStart:_,interactionWidth:m})=>{const[g,w,S]=k2({sourceX:n,sourceY:r,sourcePosition:s,targetX:o,targetY:i,targetPosition:a}),C=e.isInternal?void 0:t;return h.jsx(ed,{id:C,path:g,labelX:w,labelY:S,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:y,markerEnd:v,markerStart:_,interactionWidth:m})})}const UI=N2({isInternal:!1}),T2=N2({isInternal:!0});UI.displayName="SimpleBezierEdge";T2.displayName="SimpleBezierEdgeInternal";function P2(e){return x.memo(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,label:s,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,sourcePosition:p=ue.Bottom,targetPosition:y=ue.Top,markerEnd:v,markerStart:_,pathOptions:m,interactionWidth:g})=>{const[w,S,C]=Up({sourceX:n,sourceY:r,sourcePosition:p,targetX:o,targetY:i,targetPosition:y,borderRadius:m==null?void 0:m.borderRadius,offset:m==null?void 0:m.offset}),N=e.isInternal?void 0:t;return h.jsx(ed,{id:N,path:w,labelX:S,labelY:C,label:s,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,markerEnd:v,markerStart:_,interactionWidth:g})})}const I2=P2({isInternal:!1}),R2=P2({isInternal:!0});I2.displayName="SmoothStepEdge";R2.displayName="SmoothStepEdgeInternal";function A2(e){return x.memo(({id:t,...n})=>{var o;const r=e.isInternal?void 0:t;return h.jsx(I2,{...n,id:r,pathOptions:x.useMemo(()=>{var i;return{borderRadius:0,offset:(i=n.pathOptions)==null?void 0:i.offset}},[(o=n.pathOptions)==null?void 0:o.offset])})})}const WI=A2({isInternal:!1}),M2=A2({isInternal:!0});WI.displayName="StepEdge";M2.displayName="StepEdgeInternal";function j2(e){return x.memo(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,label:s,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,markerEnd:p,markerStart:y,interactionWidth:v})=>{const[_,m,g]=Kw({sourceX:n,sourceY:r,targetX:o,targetY:i}),w=e.isInternal?void 0:t;return h.jsx(ed,{id:w,path:_,labelX:m,labelY:g,label:s,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:u,style:f,markerEnd:p,markerStart:y,interactionWidth:v})})}const ZI=j2({isInternal:!1}),O2=j2({isInternal:!0});ZI.displayName="StraightEdge";O2.displayName="StraightEdgeInternal";function D2(e){return x.memo(({id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,sourcePosition:s=ue.Bottom,targetPosition:a=ue.Top,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:y,markerEnd:v,markerStart:_,pathOptions:m,interactionWidth:g})=>{const[w,S,C]=Zw({sourceX:n,sourceY:r,sourcePosition:s,targetX:o,targetY:i,targetPosition:a,curvature:m==null?void 0:m.curvature}),N=e.isInternal?void 0:t;return h.jsx(ed,{id:N,path:w,labelX:S,labelY:C,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:y,markerEnd:v,markerStart:_,interactionWidth:g})})}const GI=D2({isInternal:!1}),L2=D2({isInternal:!0});GI.displayName="BezierEdge";L2.displayName="BezierEdgeInternal";const Av={default:L2,straight:O2,step:M2,smoothstep:R2,simplebezier:T2},Mv={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},YI=(e,t,n)=>n===ue.Left?e-t:n===ue.Right?e+t:e,KI=(e,t,n)=>n===ue.Top?e-t:n===ue.Bottom?e+t:e,jv="react-flow__edgeupdater";function Ov({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:o,onMouseEnter:i,onMouseOut:s,type:a}){return h.jsx("circle",{onMouseDown:o,onMouseEnter:i,onMouseOut:s,className:Je([jv,`${jv}-${a}`]),cx:YI(t,r,e),cy:KI(n,r,e),r,stroke:"transparent",fill:"transparent"})}function XI({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:o,targetX:i,targetY:s,sourcePosition:a,targetPosition:l,onReconnect:c,onReconnectStart:d,onReconnectEnd:u,setReconnecting:f,setUpdateHover:p}){const y=Fe(),v=(S,C)=>{if(S.button!==0)return;const{autoPanOnConnect:N,domNode:E,isValidConnection:P,connectionMode:O,connectionRadius:j,lib:$,onConnectStart:A,onConnectEnd:L,cancelConnection:b,nodeLookup:M,rfId:T,panBy:D,updateConnection:k}=y.getState(),I=C.type==="target";f(!0),d==null||d(S,n,C.type);const z=(Y,H)=>{f(!1),u==null||u(Y,n,C.type,H)},U=Y=>c==null?void 0:c(n,Y);Gp.onPointerDown(S.nativeEvent,{autoPanOnConnect:N,connectionMode:O,connectionRadius:j,domNode:E,handleId:C.id,nodeId:C.nodeId,nodeLookup:M,isTarget:I,edgeUpdaterType:C.type,lib:$,flowId:T,cancelConnection:b,panBy:D,isValidConnection:P,onConnect:U,onConnectStart:A,onConnectEnd:L,onReconnectEnd:z,updateConnection:k,getTransform:()=>y.getState().transform,getFromHandle:()=>y.getState().connection.fromHandle})},_=S=>v(S,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),m=S=>v(S,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),g=()=>p(!0),w=()=>p(!1);return h.jsxs(h.Fragment,{children:[(e===!0||e==="source")&&h.jsx(Ov,{position:a,centerX:r,centerY:o,radius:t,onMouseDown:_,onMouseEnter:g,onMouseOut:w,type:"source"}),(e===!0||e==="target")&&h.jsx(Ov,{position:l,centerX:i,centerY:s,radius:t,onMouseDown:m,onMouseEnter:g,onMouseOut:w,type:"target"})]})}function qI({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:o,onDoubleClick:i,onContextMenu:s,onMouseEnter:a,onMouseMove:l,onMouseLeave:c,reconnectRadius:d,onReconnect:u,onReconnectStart:f,onReconnectEnd:p,rfId:y,edgeTypes:v,noPanClassName:_,onError:m,disableKeyboardA11y:g}){let w=Ne(X=>X.edgeLookup.get(e));const S=Ne(X=>X.defaultEdgeOptions);w=S?{...S,...w}:w;let C=w.type||"default",N=(v==null?void 0:v[C])||Av[C];N===void 0&&(m==null||m("011",Cr.error011(C)),C="default",N=Av.default);const E=!!(w.focusable||t&&typeof w.focusable>"u"),P=typeof u<"u"&&(w.reconnectable||n&&typeof w.reconnectable>"u"),O=!!(w.selectable||r&&typeof w.selectable>"u"),j=x.useRef(null),[$,A]=x.useState(!1),[L,b]=x.useState(!1),M=Fe(),{zIndex:T,sourceX:D,sourceY:k,targetX:I,targetY:z,sourcePosition:U,targetPosition:Y}=Ne(x.useCallback(X=>{const ae=X.nodeLookup.get(w.source),me=X.nodeLookup.get(w.target);if(!ae||!me)return{zIndex:w.zIndex,...Mv};const Le=IP({id:e,sourceNode:ae,targetNode:me,sourceHandle:w.sourceHandle||null,targetHandle:w.targetHandle||null,connectionMode:X.connectionMode,onError:m});return{zIndex:bP({selected:w.selected,zIndex:w.zIndex,sourceNode:ae,targetNode:me,elevateOnSelect:X.elevateEdgesOnSelect}),...Le||Mv}},[w.source,w.target,w.sourceHandle,w.targetHandle,w.selected,w.zIndex]),Ze),H=x.useMemo(()=>w.markerStart?`url('#${Wp(w.markerStart,y)}')`:void 0,[w.markerStart,y]),Z=x.useMemo(()=>w.markerEnd?`url('#${Wp(w.markerEnd,y)}')`:void 0,[w.markerEnd,y]);if(w.hidden||D===null||k===null||I===null||z===null)return null;const K=X=>{var qe;const{addSelectedEdges:ae,unselectNodesAndEdges:me,multiSelectionActive:Le}=M.getState();O&&(M.setState({nodesSelectionActive:!1}),w.selected&&Le?(me({nodes:[],edges:[w]}),(qe=j.current)==null||qe.blur()):ae([e])),o&&o(X,w)},G=i?X=>{i(X,{...w})}:void 0,V=s?X=>{s(X,{...w})}:void 0,B=a?X=>{a(X,{...w})}:void 0,ee=l?X=>{l(X,{...w})}:void 0,ne=c?X=>{c(X,{...w})}:void 0,oe=X=>{var ae;if(!g&&Rw.includes(X.key)&&O){const{unselectNodesAndEdges:me,addSelectedEdges:Le}=M.getState();X.key==="Escape"?((ae=j.current)==null||ae.blur(),me({edges:[w]})):Le([e])}};return h.jsx("svg",{style:{zIndex:T},children:h.jsxs("g",{className:Je(["react-flow__edge",`react-flow__edge-${C}`,w.className,_,{selected:w.selected,animated:w.animated,inactive:!O&&!o,updating:$,selectable:O}]),onClick:K,onDoubleClick:G,onContextMenu:V,onMouseEnter:B,onMouseMove:ee,onMouseLeave:ne,onKeyDown:E?oe:void 0,tabIndex:E?0:void 0,role:E?"button":"img","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":w.ariaLabel===null?void 0:w.ariaLabel||`Edge from ${w.source} to ${w.target}`,"aria-describedby":E?`${p2}-${y}`:void 0,ref:j,children:[!L&&h.jsx(N,{id:e,source:w.source,target:w.target,type:w.type,selected:w.selected,animated:w.animated,selectable:O,deletable:w.deletable??!0,label:w.label,labelStyle:w.labelStyle,labelShowBg:w.labelShowBg,labelBgStyle:w.labelBgStyle,labelBgPadding:w.labelBgPadding,labelBgBorderRadius:w.labelBgBorderRadius,sourceX:D,sourceY:k,targetX:I,targetY:z,sourcePosition:U,targetPosition:Y,data:w.data,style:w.style,sourceHandleId:w.sourceHandle,targetHandleId:w.targetHandle,markerStart:H,markerEnd:Z,pathOptions:"pathOptions"in w?w.pathOptions:void 0,interactionWidth:w.interactionWidth}),P&&h.jsx(XI,{edge:w,isReconnectable:P,reconnectRadius:d,onReconnect:u,onReconnectStart:f,onReconnectEnd:p,sourceX:D,sourceY:k,targetX:I,targetY:z,sourcePosition:U,targetPosition:Y,setUpdateHover:A,setReconnecting:b})]})})}const QI=e=>({width:e.width,height:e.height,edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function z2({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:o,onReconnect:i,onEdgeContextMenu:s,onEdgeMouseEnter:a,onEdgeMouseMove:l,onEdgeMouseLeave:c,onEdgeClick:d,reconnectRadius:u,onEdgeDoubleClick:f,onReconnectStart:p,onReconnectEnd:y,disableKeyboardA11y:v}){const{edgesFocusable:_,edgesReconnectable:m,elementsSelectable:g,onError:w}=Ne(QI,Ze),S=LI(t);return h.jsxs("div",{className:"react-flow__edges",children:[h.jsx(HI,{defaultColor:e,rfId:n}),S.map(C=>h.jsx(qI,{id:C,edgesFocusable:_,edgesReconnectable:m,elementsSelectable:g,noPanClassName:o,onReconnect:i,onContextMenu:s,onMouseEnter:a,onMouseMove:l,onMouseLeave:c,onClick:d,reconnectRadius:u,onDoubleClick:f,onReconnectStart:p,onReconnectEnd:y,rfId:n,onError:w,edgeTypes:r,disableKeyboardA11y:v},C))]})}z2.displayName="EdgeRenderer";const JI=x.memo(z2),eR=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function tR({children:e}){const t=Ne(eR);return h.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}function nR(e){const t=Yo(),n=x.useRef(!1);x.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const rR=e=>{var t;return(t=e.panZoom)==null?void 0:t.syncViewport};function oR(e){const t=Ne(rR),n=Fe();return x.useEffect(()=>{e&&(t==null||t(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function iR(e){return e.connection.inProgress?{...e.connection,to:sl(e.connection.to,e.transform)}:{...e.connection}}function sR(e){return iR}function aR(e){const t=sR();return Ne(t,Ze)}const lR=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function cR({containerStyle:e,style:t,type:n,component:r}){const{nodesConnectable:o,width:i,height:s,isValid:a,inProgress:l}=Ne(lR,Ze);return!(i&&o&&l)?null:h.jsx("svg",{style:e,width:i,height:s,className:"react-flow__connectionline react-flow__container",children:h.jsx("g",{className:Je(["react-flow__connection",Mw(a)]),children:h.jsx($2,{style:t,type:n,CustomComponent:r,isValid:a})})})}const $2=({style:e,type:t=$r.Bezier,CustomComponent:n,isValid:r})=>{const{inProgress:o,from:i,fromNode:s,fromHandle:a,fromPosition:l,to:c,toNode:d,toHandle:u,toPosition:f}=aR();if(!o)return;if(n)return h.jsx(n,{connectionLineType:t,connectionLineStyle:e,fromNode:s,fromHandle:a,fromX:i.x,fromY:i.y,toX:c.x,toY:c.y,fromPosition:l,toPosition:f,connectionStatus:Mw(r),toNode:d,toHandle:u});let p="";const y={sourceX:i.x,sourceY:i.y,sourcePosition:l,targetX:c.x,targetY:c.y,targetPosition:f};switch(t){case $r.Bezier:[p]=Zw(y);break;case $r.SimpleBezier:[p]=k2(y);break;case $r.Step:[p]=Up({...y,borderRadius:0});break;case $r.SmoothStep:[p]=Up(y);break;default:[p]=Kw(y)}return h.jsx("path",{d:p,fill:"none",className:"react-flow__connection-path",style:e})};$2.displayName="ConnectionLine";const uR={};function Dv(e=uR){x.useRef(e),Fe(),x.useEffect(()=>{},[e])}function dR(){Fe(),x.useRef(!1),x.useEffect(()=>{},[])}function F2({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:o,onNodeDoubleClick:i,onEdgeDoubleClick:s,onNodeMouseEnter:a,onNodeMouseMove:l,onNodeMouseLeave:c,onNodeContextMenu:d,onSelectionContextMenu:u,onSelectionStart:f,onSelectionEnd:p,connectionLineType:y,connectionLineStyle:v,connectionLineComponent:_,connectionLineContainerStyle:m,selectionKeyCode:g,selectionOnDrag:w,selectionMode:S,multiSelectionKeyCode:C,panActivationKeyCode:N,zoomActivationKeyCode:E,deleteKeyCode:P,onlyRenderVisibleElements:O,elementsSelectable:j,defaultViewport:$,translateExtent:A,minZoom:L,maxZoom:b,preventScrolling:M,defaultMarkerColor:T,zoomOnScroll:D,zoomOnPinch:k,panOnScroll:I,panOnScrollSpeed:z,panOnScrollMode:U,zoomOnDoubleClick:Y,panOnDrag:H,onPaneClick:Z,onPaneMouseEnter:K,onPaneMouseMove:G,onPaneMouseLeave:V,onPaneScroll:B,onPaneContextMenu:ee,paneClickDistance:ne,nodeClickDistance:oe,onEdgeContextMenu:X,onEdgeMouseEnter:ae,onEdgeMouseMove:me,onEdgeMouseLeave:Le,reconnectRadius:qe,onReconnect:Et,onReconnectStart:R,onReconnectEnd:F,noDragClassName:W,noWheelClassName:ie,noPanClassName:te,disableKeyboardA11y:q,nodeExtent:pe,rfId:ye,viewport:ze,onViewportChange:Ve}){return Dv(e),Dv(t),dR(),nR(n),oR(ze),h.jsx(TI,{onPaneClick:Z,onPaneMouseEnter:K,onPaneMouseMove:G,onPaneMouseLeave:V,onPaneContextMenu:ee,onPaneScroll:B,paneClickDistance:ne,deleteKeyCode:P,selectionKeyCode:g,selectionOnDrag:w,selectionMode:S,onSelectionStart:f,onSelectionEnd:p,multiSelectionKeyCode:C,panActivationKeyCode:N,zoomActivationKeyCode:E,elementsSelectable:j,zoomOnScroll:D,zoomOnPinch:k,zoomOnDoubleClick:Y,panOnScroll:I,panOnScrollSpeed:z,panOnScrollMode:U,panOnDrag:H,defaultViewport:$,translateExtent:A,minZoom:L,maxZoom:b,onSelectionContextMenu:u,preventScrolling:M,noDragClassName:W,noWheelClassName:ie,noPanClassName:te,disableKeyboardA11y:q,onViewportChange:Ve,isControlledViewport:!!ze,children:h.jsxs(tR,{children:[h.jsx(JI,{edgeTypes:t,onEdgeClick:o,onEdgeDoubleClick:s,onReconnect:Et,onReconnectStart:R,onReconnectEnd:F,onlyRenderVisibleElements:O,onEdgeContextMenu:X,onEdgeMouseEnter:ae,onEdgeMouseMove:me,onEdgeMouseLeave:Le,reconnectRadius:qe,defaultMarkerColor:T,noPanClassName:te,disableKeyboardA11y:q,rfId:ye}),h.jsx(cR,{style:v,type:y,component:_,containerStyle:m}),h.jsx("div",{className:"react-flow__edgelabel-renderer"}),h.jsx(DI,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:i,onNodeMouseEnter:a,onNodeMouseMove:l,onNodeMouseLeave:c,onNodeContextMenu:d,nodeClickDistance:oe,onlyRenderVisibleElements:O,noPanClassName:te,noDragClassName:W,disableKeyboardA11y:q,nodeExtent:pe,rfId:ye}),h.jsx("div",{className:"react-flow__viewport-portal"})]})})}F2.displayName="GraphView";const fR=x.memo(F2),Lv=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:o,height:i,fitView:s,nodeOrigin:a,nodeExtent:l}={})=>{const c=new Map,d=new Map,u=new Map,f=new Map,p=r??t??[],y=n??e??[],v=a??[0,0],_=l??Na;qw(u,f,p),Zp(y,c,d,{nodeOrigin:v,nodeExtent:_,elevateNodesOnSelect:!1});let m=[0,0,1];if(s&&o&&i){const g=il(c,{filter:N=>!!((N.width||N.initialWidth)&&(N.height||N.initialHeight))}),{x:w,y:S,zoom:C}=Em(g,o,i,.5,2,.1);m=[w,S,C]}return{rfId:"1",width:0,height:0,transform:m,nodes:y,nodeLookup:c,parentLookup:d,edges:p,edgeLookup:f,connectionLookup:u,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:.5,maxZoom:2,translateExtent:Na,nodeExtent:_,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:Xi.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:v,nodeDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!1,fitViewOnInit:!1,fitViewDone:!1,fitViewOnInitOptions:void 0,selectNodesOnDrag:!0,multiSelectionActive:!1,connection:{...Aw},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanSpeed:15,connectionRadius:20,onError:_P,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1}},pR=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:o,height:i,fitView:s,nodeOrigin:a,nodeExtent:l})=>A8((c,d)=>({...Lv({nodes:e,edges:t,width:o,height:i,fitView:s,nodeOrigin:a,nodeExtent:l,defaultNodes:n,defaultEdges:r}),setNodes:u=>{const{nodeLookup:f,parentLookup:p,nodeOrigin:y,elevateNodesOnSelect:v}=d();Zp(u,f,p,{nodeOrigin:y,nodeExtent:l,elevateNodesOnSelect:v,checkEquality:!0}),c({nodes:u})},setEdges:u=>{const{connectionLookup:f,edgeLookup:p}=d();qw(f,p,u),c({edges:u})},setDefaultNodesAndEdges:(u,f)=>{if(u){const{setNodes:p}=d();p(u),c({hasDefaultNodes:!0})}if(f){const{setEdges:p}=d();p(f),c({hasDefaultEdges:!0})}},updateNodeInternals:(u,f={triggerFitView:!0})=>{const{triggerNodeChanges:p,nodeLookup:y,parentLookup:v,fitViewOnInit:_,fitViewDone:m,fitViewOnInitOptions:g,domNode:w,nodeOrigin:S,nodeExtent:C,debug:N,fitViewSync:E}=d(),{changes:P,updatedInternals:O}=DP(u,y,v,w,S,C);if(O){if(MP(y,v,{nodeOrigin:S,nodeExtent:C}),f.triggerFitView){let j=m;!m&&_&&(j=E({...g,nodes:g==null?void 0:g.nodes})),c({fitViewDone:j})}else c({});(P==null?void 0:P.length)>0&&(N&&console.log("React Flow: trigger node changes",P),p==null||p(P))}},updateNodePositions:(u,f=!1)=>{const p=[],y=[];for(const[v,_]of u){const m={id:v,type:"position",position:_.position,dragging:f};_!=null&&_.expandParent&&(_!=null&&_.parentId)&&m.position&&(p.push({id:v,parentId:_.parentId,rect:{..._.internals.positionAbsolute,width:_.measured.width,height:_.measured.height}}),m.position.x=Math.max(0,m.position.x),m.position.y=Math.max(0,m.position.y)),y.push(m)}if(p.length>0){const{nodeLookup:v,parentLookup:_,nodeOrigin:m}=d(),g=Pm(p,v,_,m);y.push(...g)}d().triggerNodeChanges(y)},triggerNodeChanges:u=>{const{onNodesChange:f,setNodes:p,nodes:y,hasDefaultNodes:v,debug:_}=d();if(u!=null&&u.length){if(v){const m=g2(u,y);p(m)}_&&console.log("React Flow: trigger node changes",u),f==null||f(u)}},triggerEdgeChanges:u=>{const{onEdgesChange:f,setEdges:p,edges:y,hasDefaultEdges:v,debug:_}=d();if(u!=null&&u.length){if(v){const m=Yp(u,y);p(m)}_&&console.log("React Flow: trigger edge changes",u),f==null||f(u)}},addSelectedNodes:u=>{const{multiSelectionActive:f,edgeLookup:p,nodeLookup:y,triggerNodeChanges:v,triggerEdgeChanges:_}=d();if(f){const m=u.map(g=>yo(g,!0));v(m);return}v(Si(y,new Set([...u]),!0)),_(Si(p))},addSelectedEdges:u=>{const{multiSelectionActive:f,edgeLookup:p,nodeLookup:y,triggerNodeChanges:v,triggerEdgeChanges:_}=d();if(f){const m=u.map(g=>yo(g,!0));_(m);return}_(Si(p,new Set([...u]))),v(Si(y,new Set,!0))},unselectNodesAndEdges:({nodes:u,edges:f}={})=>{const{edges:p,nodes:y,nodeLookup:v,triggerNodeChanges:_,triggerEdgeChanges:m}=d(),g=u||y,w=f||p,S=g.map(N=>{const E=v.get(N.id);return E&&(E.selected=!1),yo(N.id,!1)}),C=w.map(N=>yo(N.id,!1));_(S),m(C)},setMinZoom:u=>{const{panZoom:f,maxZoom:p}=d();f==null||f.setScaleExtent([u,p]),c({minZoom:u})},setMaxZoom:u=>{const{panZoom:f,minZoom:p}=d();f==null||f.setScaleExtent([p,u]),c({maxZoom:u})},setTranslateExtent:u=>{var f;(f=d().panZoom)==null||f.setTranslateExtent(u),c({translateExtent:u})},setPaneClickDistance:u=>{var f;(f=d().panZoom)==null||f.setClickDistance(u)},resetSelectedElements:()=>{const{edges:u,nodes:f,triggerNodeChanges:p,triggerEdgeChanges:y}=d(),v=f.reduce((m,g)=>g.selected?[...m,yo(g.id,!1)]:m,[]),_=u.reduce((m,g)=>g.selected?[...m,yo(g.id,!1)]:m,[]);p(v),y(_)},setNodeExtent:u=>{const{nodes:f,nodeLookup:p,parentLookup:y,nodeOrigin:v,elevateNodesOnSelect:_,nodeExtent:m}=d();u[0][0]===m[0][0]&&u[0][1]===m[0][1]&&u[1][0]===m[1][0]&&u[1][1]===m[1][1]||(Zp(f,p,y,{nodeOrigin:v,nodeExtent:u,elevateNodesOnSelect:_,checkEquality:!1}),c({nodeExtent:u}))},panBy:u=>{const{transform:f,width:p,height:y,panZoom:v,translateExtent:_}=d();return LP({delta:u,panZoom:v,transform:f,translateExtent:_,width:p,height:y})},fitView:u=>{const{panZoom:f,width:p,height:y,minZoom:v,maxZoom:_,nodeLookup:m}=d();if(!f)return Promise.resolve(!1);const g=Fp(m,u);return Vp({nodes:g,width:p,height:y,panZoom:f,minZoom:v,maxZoom:_},u)},fitViewSync:u=>{const{panZoom:f,width:p,height:y,minZoom:v,maxZoom:_,nodeLookup:m}=d();if(!f)return!1;const g=Fp(m,u);return Vp({nodes:g,width:p,height:y,panZoom:f,minZoom:v,maxZoom:_},u),g.size>0},cancelConnection:()=>{c({connection:{...Aw}})},updateConnection:u=>{c({connection:u})},reset:()=>c({...Lv()})}),Object.is);function V2({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:o,initialHeight:i,fitView:s,nodeOrigin:a,nodeExtent:l,children:c}){const[d]=x.useState(()=>pR({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:o,height:i,fitView:s,nodeOrigin:a,nodeExtent:l}));return h.jsx(M8,{value:d,children:h.jsx(nI,{children:c})})}function hR({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:o,width:i,height:s,fitView:a,nodeOrigin:l,nodeExtent:c}){return x.useContext(qu)?h.jsx(h.Fragment,{children:e}):h.jsx(V2,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:o,initialWidth:i,initialHeight:s,fitView:a,nodeOrigin:l,nodeExtent:c,children:e})}const mR={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function gR({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:o,nodeTypes:i,edgeTypes:s,onNodeClick:a,onEdgeClick:l,onInit:c,onMove:d,onMoveStart:u,onMoveEnd:f,onConnect:p,onConnectStart:y,onConnectEnd:v,onClickConnectStart:_,onClickConnectEnd:m,onNodeMouseEnter:g,onNodeMouseMove:w,onNodeMouseLeave:S,onNodeContextMenu:C,onNodeDoubleClick:N,onNodeDragStart:E,onNodeDrag:P,onNodeDragStop:O,onNodesDelete:j,onEdgesDelete:$,onDelete:A,onSelectionChange:L,onSelectionDragStart:b,onSelectionDrag:M,onSelectionDragStop:T,onSelectionContextMenu:D,onSelectionStart:k,onSelectionEnd:I,onBeforeDelete:z,connectionMode:U,connectionLineType:Y=$r.Bezier,connectionLineStyle:H,connectionLineComponent:Z,connectionLineContainerStyle:K,deleteKeyCode:G="Backspace",selectionKeyCode:V="Shift",selectionOnDrag:B=!1,selectionMode:ee=Ta.Full,panActivationKeyCode:ne="Space",multiSelectionKeyCode:oe=eu()?"Meta":"Control",zoomActivationKeyCode:X=eu()?"Meta":"Control",snapToGrid:ae,snapGrid:me,onlyRenderVisibleElements:Le=!1,selectNodesOnDrag:qe,nodesDraggable:Et,nodesConnectable:R,nodesFocusable:F,nodeOrigin:W=h2,edgesFocusable:ie,edgesReconnectable:te,elementsSelectable:q=!0,defaultViewport:pe=Z8,minZoom:ye=.5,maxZoom:ze=2,translateExtent:Ve=Na,preventScrolling:Yn=!0,nodeExtent:gs,defaultMarkerColor:vs="#b1b1b7",zoomOnScroll:ys=!0,zoomOnPinch:Rd=!0,panOnScroll:gl=!1,panOnScrollSpeed:Ad=.5,panOnScrollMode:vl=To.Free,zoomOnDoubleClick:_E=!0,panOnDrag:SE=!0,onPaneClick:bE,onPaneMouseEnter:CE,onPaneMouseMove:EE,onPaneMouseLeave:kE,onPaneScroll:NE,onPaneContextMenu:TE,paneClickDistance:Cg=0,nodeClickDistance:PE=0,children:IE,onReconnect:RE,onReconnectStart:AE,onReconnectEnd:ME,onEdgeContextMenu:jE,onEdgeDoubleClick:OE,onEdgeMouseEnter:DE,onEdgeMouseMove:LE,onEdgeMouseLeave:zE,reconnectRadius:$E=10,onNodesChange:FE,onEdgesChange:VE,noDragClassName:HE="nodrag",noWheelClassName:BE="nowheel",noPanClassName:Eg="nopan",fitView:kg,fitViewOptions:UE,connectOnClick:WE,attributionPosition:ZE,proOptions:GE,defaultEdgeOptions:YE,elevateNodesOnSelect:KE,elevateEdgesOnSelect:XE,disableKeyboardA11y:Ng=!1,autoPanOnConnect:qE,autoPanOnNodeDrag:QE,autoPanSpeed:JE,connectionRadius:e3,isValidConnection:t3,onError:n3,style:r3,id:Tg,nodeDragThreshold:o3,viewport:i3,onViewportChange:s3,width:a3,height:l3,colorMode:c3="light",debug:u3,...d3},f3){const Md=Tg||"1",p3=X8(c3);return h.jsx("div",{...d3,style:{...r3,...mR},ref:f3,className:Je(["react-flow",o,p3]),"data-testid":"rf__wrapper",id:Tg,children:h.jsxs(hR,{nodes:e,edges:t,width:a3,height:l3,fitView:kg,nodeOrigin:W,nodeExtent:gs,children:[h.jsx(fR,{onInit:c,onNodeClick:a,onEdgeClick:l,onNodeMouseEnter:g,onNodeMouseMove:w,onNodeMouseLeave:S,onNodeContextMenu:C,onNodeDoubleClick:N,nodeTypes:i,edgeTypes:s,connectionLineType:Y,connectionLineStyle:H,connectionLineComponent:Z,connectionLineContainerStyle:K,selectionKeyCode:V,selectionOnDrag:B,selectionMode:ee,deleteKeyCode:G,multiSelectionKeyCode:oe,panActivationKeyCode:ne,zoomActivationKeyCode:X,onlyRenderVisibleElements:Le,defaultViewport:pe,translateExtent:Ve,minZoom:ye,maxZoom:ze,preventScrolling:Yn,zoomOnScroll:ys,zoomOnPinch:Rd,zoomOnDoubleClick:_E,panOnScroll:gl,panOnScrollSpeed:Ad,panOnScrollMode:vl,panOnDrag:SE,onPaneClick:bE,onPaneMouseEnter:CE,onPaneMouseMove:EE,onPaneMouseLeave:kE,onPaneScroll:NE,onPaneContextMenu:TE,paneClickDistance:Cg,nodeClickDistance:PE,onSelectionContextMenu:D,onSelectionStart:k,onSelectionEnd:I,onReconnect:RE,onReconnectStart:AE,onReconnectEnd:ME,onEdgeContextMenu:jE,onEdgeDoubleClick:OE,onEdgeMouseEnter:DE,onEdgeMouseMove:LE,onEdgeMouseLeave:zE,reconnectRadius:$E,defaultMarkerColor:vs,noDragClassName:HE,noWheelClassName:BE,noPanClassName:Eg,rfId:Md,disableKeyboardA11y:Ng,nodeExtent:gs,viewport:i3,onViewportChange:s3}),h.jsx(K8,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:p,onConnectStart:y,onConnectEnd:v,onClickConnectStart:_,onClickConnectEnd:m,nodesDraggable:Et,nodesConnectable:R,nodesFocusable:F,edgesFocusable:ie,edgesReconnectable:te,elementsSelectable:q,elevateNodesOnSelect:KE,elevateEdgesOnSelect:XE,minZoom:ye,maxZoom:ze,nodeExtent:gs,onNodesChange:FE,onEdgesChange:VE,snapToGrid:ae,snapGrid:me,connectionMode:U,translateExtent:Ve,connectOnClick:WE,defaultEdgeOptions:YE,fitView:kg,fitViewOptions:UE,onNodesDelete:j,onEdgesDelete:$,onDelete:A,onNodeDragStart:E,onNodeDrag:P,onNodeDragStop:O,onSelectionDrag:M,onSelectionDragStart:b,onSelectionDragStop:T,onMove:d,onMoveStart:u,onMoveEnd:f,noPanClassName:Eg,nodeOrigin:W,rfId:Md,autoPanOnConnect:qE,autoPanOnNodeDrag:QE,autoPanSpeed:JE,onError:n3,connectionRadius:e3,isValidConnection:t3,selectNodesOnDrag:qe,nodeDragThreshold:o3,onBeforeDelete:z,paneClickDistance:Cg,debug:u3}),h.jsx(W8,{onSelectionChange:L}),IE,h.jsx(F8,{proOptions:GE,position:ZE}),h.jsx(z8,{rfId:Md,disableKeyboardA11y:Ng})]})})}var vR=v2(gR);const yR=e=>e.nodes;function Ko(){return Ne(yR,Ze)}function xR({dimensions:e,lineWidth:t,variant:n,className:r}){return h.jsx("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:Je(["react-flow__background-pattern",n,r])})}function wR({radius:e,className:t}){return h.jsx("circle",{cx:e,cy:e,r:e,className:Je(["react-flow__background-pattern","dots",t])})}var cr;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(cr||(cr={}));const _R={[cr.Dots]:1,[cr.Lines]:1,[cr.Cross]:6},SR=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function H2({id:e,variant:t=cr.Dots,gap:n=20,size:r,lineWidth:o=1,offset:i=0,color:s,bgColor:a,style:l,className:c,patternClassName:d}){const u=x.useRef(null),{transform:f,patternId:p}=Ne(SR,Ze),y=r||_R[t],v=t===cr.Dots,_=t===cr.Cross,m=Array.isArray(n)?n:[n,n],g=[m[0]*f[2]||1,m[1]*f[2]||1],w=y*f[2],S=Array.isArray(i)?i:[i,i],C=_?[w,w]:g,N=[S[0]*f[2]||1+C[0]/2,S[1]*f[2]||1+C[1]/2],E=`${p}${e||""}`;return h.jsxs("svg",{className:Je(["react-flow__background",c]),style:{...l,...Ju,"--xy-background-color-props":a,"--xy-background-pattern-color-props":s},ref:u,"data-testid":"rf__background",children:[h.jsx("pattern",{id:E,x:f[0]%g[0],y:f[1]%g[1],width:g[0],height:g[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${N[0]},-${N[1]})`,children:v?h.jsx(wR,{radius:w/2,className:d}):h.jsx(xR,{dimensions:C,lineWidth:o,variant:t,className:d})}),h.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${E})`})]})}H2.displayName="Background";const bR=x.memo(H2);function CR(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:h.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function ER(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:h.jsx("path",{d:"M0 0h32v4.2H0z"})})}function kR(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:h.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 NR(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:h.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 TR(){return h.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:h.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 Bl({children:e,className:t,...n}){return h.jsx("button",{type:"button",className:Je(["react-flow__controls-button",t]),...n,children:e})}const PR=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom});function B2({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:o,onZoomIn:i,onZoomOut:s,onFitView:a,onInteractiveChange:l,className:c,children:d,position:u="bottom-left",orientation:f="vertical","aria-label":p="React Flow controls"}){const y=Fe(),{isInteractive:v,minZoomReached:_,maxZoomReached:m}=Ne(PR,Ze),{zoomIn:g,zoomOut:w,fitView:S}=Yo(),C=()=>{g(),i==null||i()},N=()=>{w(),s==null||s()},E=()=>{S(o),a==null||a()},P=()=>{y.setState({nodesDraggable:!v,nodesConnectable:!v,elementsSelectable:!v}),l==null||l(!v)},O=f==="horizontal"?"horizontal":"vertical";return h.jsxs(Qu,{className:Je(["react-flow__controls",O,c]),position:u,style:e,"data-testid":"rf__controls","aria-label":p,children:[t&&h.jsxs(h.Fragment,{children:[h.jsx(Bl,{onClick:C,className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:m,children:h.jsx(CR,{})}),h.jsx(Bl,{onClick:N,className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:_,children:h.jsx(ER,{})})]}),n&&h.jsx(Bl,{className:"react-flow__controls-fitview",onClick:E,title:"fit view","aria-label":"fit view",children:h.jsx(kR,{})}),r&&h.jsx(Bl,{className:"react-flow__controls-interactive",onClick:P,title:"toggle interactivity","aria-label":"toggle interactivity",children:v?h.jsx(TR,{}):h.jsx(NR,{})}),d]})}B2.displayName="Controls";const IR=x.memo(B2);function RR({id:e,x:t,y:n,width:r,height:o,style:i,color:s,strokeColor:a,strokeWidth:l,className:c,borderRadius:d,shapeRendering:u,selected:f,onClick:p}){const{background:y,backgroundColor:v}=i||{},_=s||y||v;return h.jsx("rect",{className:Je(["react-flow__minimap-node",{selected:f},c]),x:t,y:n,rx:d,ry:d,width:r,height:o,style:{fill:_,stroke:a,strokeWidth:l},shapeRendering:u,onClick:p?m=>p(m,e):void 0})}const AR=x.memo(RR),MR=e=>e.nodes.map(t=>t.id),gf=e=>e instanceof Function?e:()=>e;function jR({nodeStrokeColor:e,nodeColor:t,nodeClassName:n="",nodeBorderRadius:r=5,nodeStrokeWidth:o,nodeComponent:i=AR,onClick:s}){const a=Ne(MR,Ze),l=gf(t),c=gf(e),d=gf(n),u=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return h.jsx(h.Fragment,{children:a.map(f=>h.jsx(DR,{id:f,nodeColorFunc:l,nodeStrokeColorFunc:c,nodeClassNameFunc:d,nodeBorderRadius:r,nodeStrokeWidth:o,NodeComponent:i,onClick:s,shapeRendering:u},f))})}function OR({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:o,nodeStrokeWidth:i,shapeRendering:s,NodeComponent:a,onClick:l}){const{node:c,x:d,y:u,width:f,height:p}=Ne(y=>{const v=y.nodeLookup.get(e),{x:_,y:m}=v.internals.positionAbsolute,{width:g,height:w}=Er(v);return{node:v,x:_,y:m,width:g,height:w}},Ze);return!c||c.hidden||!Vw(c)?null:h.jsx(a,{x:d,y:u,width:f,height:p,style:c.style,selected:!!c.selected,className:r(c),color:t(c),borderRadius:o,strokeColor:n(c),strokeWidth:i,shapeRendering:s,onClick:l,id:c.id})}const DR=x.memo(OR);var LR=x.memo(jR);const zR=200,$R=150,FR=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?$w(il(e.nodeLookup),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height}},VR="react-flow__minimap-desc";function U2({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:o="",nodeBorderRadius:i=5,nodeStrokeWidth:s,nodeComponent:a,bgColor:l,maskColor:c,maskStrokeColor:d,maskStrokeWidth:u,position:f="bottom-right",onClick:p,onNodeClick:y,pannable:v=!1,zoomable:_=!1,ariaLabel:m="React Flow mini map",inversePan:g,zoomStep:w=10,offsetScale:S=5}){const C=Fe(),N=x.useRef(null),{boundingRect:E,viewBB:P,rfId:O,panZoom:j,translateExtent:$,flowWidth:A,flowHeight:L}=Ne(FR,Ze),b=(e==null?void 0:e.width)??zR,M=(e==null?void 0:e.height)??$R,T=E.width/b,D=E.height/M,k=Math.max(T,D),I=k*b,z=k*M,U=S*k,Y=E.x-(I-E.width)/2-U,H=E.y-(z-E.height)/2-U,Z=I+U*2,K=z+U*2,G=`${VR}-${O}`,V=x.useRef(0),B=x.useRef();V.current=k,x.useEffect(()=>{if(N.current&&j)return B.current=WP({domNode:N.current,panZoom:j,getTransform:()=>C.getState().transform,getViewScale:()=>V.current}),()=>{var oe;(oe=B.current)==null||oe.destroy()}},[j]),x.useEffect(()=>{var oe;(oe=B.current)==null||oe.update({translateExtent:$,width:A,height:L,inversePan:g,pannable:v,zoomStep:w,zoomable:_})},[v,_,g,w,$,A,L]);const ee=p?oe=>{var me;const[X,ae]=((me=B.current)==null?void 0:me.pointer(oe))||[0,0];p(oe,{x:X,y:ae})}:void 0,ne=y?x.useCallback((oe,X)=>{const ae=C.getState().nodeLookup.get(X);y(oe,ae)},[]):void 0;return h.jsx(Qu,{position:f,style:{...e,"--xy-minimap-background-color-props":typeof l=="string"?l:void 0,"--xy-minimap-mask-background-color-props":typeof c=="string"?c:void 0,"--xy-minimap-mask-stroke-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-stroke-width-props":typeof u=="number"?u*k:void 0,"--xy-minimap-node-background-color-props":typeof r=="string"?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof s=="string"?s:void 0},className:Je(["react-flow__minimap",t]),"data-testid":"rf__minimap",children:h.jsxs("svg",{width:b,height:M,viewBox:`${Y} ${H} ${Z} ${K}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":G,ref:N,onClick:ee,children:[m&&h.jsx("title",{id:G,children:m}),h.jsx(LR,{onClick:ne,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:i,nodeClassName:o,nodeStrokeWidth:s,nodeComponent:a}),h.jsx("path",{className:"react-flow__minimap-mask",d:`M${Y-U},${H-U}h${Z+U*2}v${K+U*2}h${-Z-U*2}z
+        M${P.x},${P.y}h${P.width}v${P.height}h${-P.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}U2.displayName="MiniMap";x.memo(U2);function HR({nodeId:e,position:t,variant:n=ta.Handle,className:r,style:o={},children:i,color:s,minWidth:a=10,minHeight:l=10,maxWidth:c=Number.MAX_VALUE,maxHeight:d=Number.MAX_VALUE,keepAspectRatio:u=!1,shouldResize:f,onResizeStart:p,onResize:y,onResizeEnd:v}){const _=_2(),m=typeof e=="string"?e:_,g=Fe(),w=x.useRef(null),S=n===ta.Line?"right":"bottom-right",C=t??S,N=x.useRef(null);x.useEffect(()=>{if(!(!w.current||!m))return N.current||(N.current=s8({domNode:w.current,nodeId:m,getStoreItems:()=>{const{nodeLookup:j,transform:$,snapGrid:A,snapToGrid:L,nodeOrigin:b}=g.getState();return{nodeLookup:j,transform:$,snapGrid:A,snapToGrid:L,nodeOrigin:b}},onChange:(j,$)=>{const{triggerNodeChanges:A,nodeLookup:L,parentLookup:b,nodeOrigin:M}=g.getState(),T=[],D={x:j.x,y:j.y},k=L.get(m);if(k&&k.expandParent&&k.parentId){const I=k.origin??M,z=j.width??k.measured.width,U=j.height??k.measured.height,Y={id:k.id,parentId:k.parentId,rect:{width:z,height:U,...Hw({x:j.x??k.position.x,y:j.y??k.position.y},{width:z,height:U},k.parentId,L,I)}},H=Pm([Y],L,b,M);T.push(...H),D.x=j.x?Math.max(I[0]*z,j.x):void 0,D.y=j.y?Math.max(I[1]*U,j.y):void 0}if(D.x!==void 0&&D.y!==void 0){const I={id:m,type:"position",position:{...D}};T.push(I)}if(j.width!==void 0&&j.height!==void 0){const I={id:m,type:"dimensions",resizing:!0,setAttributes:!0,dimensions:{width:j.width,height:j.height}};T.push(I)}for(const I of $){const z={...I,type:"position"};T.push(z)}A(T)},onEnd:()=>{const j={id:m,type:"dimensions",resizing:!1};g.getState().triggerNodeChanges([j])}})),N.current.update({controlPosition:C,boundaries:{minWidth:a,minHeight:l,maxWidth:c,maxHeight:d},keepAspectRatio:u,onResizeStart:p,onResize:y,onResizeEnd:v,shouldResize:f}),()=>{var j;(j=N.current)==null||j.destroy()}},[C,a,l,c,d,u,p,y,v,f]);const E=C.split("-"),P=n===ta.Line?"borderColor":"backgroundColor",O=s?{...o,[P]:s}:o;return h.jsx("div",{className:Je(["react-flow__resize-control","nodrag",...E,n,r]),ref:w,style:O,children:i})}x.memo(HR);function BR(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function W2(...e){return t=>e.forEach(n=>BR(n,t))}function Ae(...e){return x.useCallback(W2(...e),e)}var to=x.forwardRef((e,t)=>{const{children:n,...r}=e,o=x.Children.toArray(n),i=o.find(UR);if(i){const s=i.props.children,a=o.map(l=>l===i?x.Children.count(s)>1?x.Children.only(null):x.isValidElement(s)?s.props.children:null:l);return h.jsx(Xp,{...r,ref:t,children:x.isValidElement(s)?x.cloneElement(s,void 0,a):null})}return h.jsx(Xp,{...r,ref:t,children:n})});to.displayName="Slot";var Xp=x.forwardRef((e,t)=>{const{children:n,...r}=e;if(x.isValidElement(n)){const o=ZR(n);return x.cloneElement(n,{...WR(r,n.props),ref:t?W2(t,o):o})}return x.Children.count(n)>1?x.Children.only(null):null});Xp.displayName="SlotClone";var Z2=({children:e})=>h.jsx(h.Fragment,{children:e});function UR(e){return x.isValidElement(e)&&e.type===Z2}function WR(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...a)=>{i(...a),o(...a)}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}function ZR(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function G2(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=G2(e[t]))&&(r&&(r+=" "),r+=n);else for(t in e)e[t]&&(r&&(r+=" "),r+=t);return r}function GR(){for(var e,t,n=0,r="";n<arguments.length;)(e=arguments[n++])&&(t=G2(e))&&(r&&(r+=" "),r+=t);return r}const zv=e=>typeof e=="boolean"?"".concat(e):e===0?"0":e,$v=GR,td=(e,t)=>n=>{var r;if((t==null?void 0:t.variants)==null)return $v(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:o,defaultVariants:i}=t,s=Object.keys(o).map(c=>{const d=n==null?void 0:n[c],u=i==null?void 0:i[c];if(d===null)return null;const f=zv(d)||zv(u);return o[c][f]}),a=n&&Object.entries(n).reduce((c,d)=>{let[u,f]=d;return f===void 0||(c[u]=f),c},{}),l=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((c,d)=>{let{class:u,className:f,...p}=d;return Object.entries(p).every(y=>{let[v,_]=y;return Array.isArray(_)?_.includes({...i,...a}[v]):{...i,...a}[v]===_})?[...c,u,f]:c},[]);return $v(e,s,l,n==null?void 0:n.class,n==null?void 0:n.className)};function Y2(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=Y2(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function YR(){for(var e,t,n=0,r="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=Y2(e))&&(r&&(r+=" "),r+=t);return r}const Rm="-",KR=e=>{const t=qR(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:s=>{const a=s.split(Rm);return a[0]===""&&a.length!==1&&a.shift(),K2(a,t)||XR(s)},getConflictingClassGroupIds:(s,a)=>{const l=n[s]||[];return a&&r[s]?[...l,...r[s]]:l}}},K2=(e,t)=>{var s;if(e.length===0)return t.classGroupId;const n=e[0],r=t.nextPart.get(n),o=r?K2(e.slice(1),r):void 0;if(o)return o;if(t.validators.length===0)return;const i=e.join(Rm);return(s=t.validators.find(({validator:a})=>a(i)))==null?void 0:s.classGroupId},Fv=/^\[(.+)\]$/,XR=e=>{if(Fv.test(e)){const t=Fv.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},qR=e=>{const{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return JR(Object.entries(e.classGroups),n).forEach(([i,s])=>{qp(s,r,i,t)}),r},qp=(e,t,n,r)=>{e.forEach(o=>{if(typeof o=="string"){const i=o===""?t:Vv(t,o);i.classGroupId=n;return}if(typeof o=="function"){if(QR(o)){qp(o(r),t,n,r);return}t.validators.push({validator:o,classGroupId:n});return}Object.entries(o).forEach(([i,s])=>{qp(s,Vv(t,i),n,r)})})},Vv=(e,t)=>{let n=e;return t.split(Rm).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},QR=e=>e.isThemeGetter,JR=(e,t)=>t?e.map(([n,r])=>{const o=r.map(i=>typeof i=="string"?t+i:typeof i=="object"?Object.fromEntries(Object.entries(i).map(([s,a])=>[t+s,a])):i);return[n,o]}):e,eA=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,r=new Map;const o=(i,s)=>{n.set(i,s),t++,t>e&&(t=0,r=n,n=new Map)};return{get(i){let s=n.get(i);if(s!==void 0)return s;if((s=r.get(i))!==void 0)return o(i,s),s},set(i,s){n.has(i)?n.set(i,s):o(i,s)}}},X2="!",tA=e=>{const{separator:t,experimentalParseClassName:n}=e,r=t.length===1,o=t[0],i=t.length,s=a=>{const l=[];let c=0,d=0,u;for(let _=0;_<a.length;_++){let m=a[_];if(c===0){if(m===o&&(r||a.slice(_,_+i)===t)){l.push(a.slice(d,_)),d=_+i;continue}if(m==="/"){u=_;continue}}m==="["?c++:m==="]"&&c--}const f=l.length===0?a:a.substring(d),p=f.startsWith(X2),y=p?f.substring(1):f,v=u&&u>d?u-d:void 0;return{modifiers:l,hasImportantModifier:p,baseClassName:y,maybePostfixModifierPosition:v}};return n?a=>n({className:a,parseClassName:s}):s},nA=e=>{if(e.length<=1)return e;const t=[];let n=[];return e.forEach(r=>{r[0]==="["?(t.push(...n.sort(),r),n=[]):n.push(r)}),t.push(...n.sort()),t},rA=e=>({cache:eA(e.cacheSize),parseClassName:tA(e),...KR(e)}),oA=/\s+/,iA=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:o}=t,i=[],s=e.trim().split(oA);let a="";for(let l=s.length-1;l>=0;l-=1){const c=s[l],{modifiers:d,hasImportantModifier:u,baseClassName:f,maybePostfixModifierPosition:p}=n(c);let y=!!p,v=r(y?f.substring(0,p):f);if(!v){if(!y){a=c+(a.length>0?" "+a:a);continue}if(v=r(f),!v){a=c+(a.length>0?" "+a:a);continue}y=!1}const _=nA(d).join(":"),m=u?_+X2:_,g=m+v;if(i.includes(g))continue;i.push(g);const w=o(v,y);for(let S=0;S<w.length;++S){const C=w[S];i.push(m+C)}a=c+(a.length>0?" "+a:a)}return a};function sA(){let e=0,t,n,r="";for(;e<arguments.length;)(t=arguments[e++])&&(n=q2(t))&&(r&&(r+=" "),r+=n);return r}const q2=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=q2(e[r]))&&(n&&(n+=" "),n+=t);return n};function aA(e,...t){let n,r,o,i=s;function s(l){const c=t.reduce((d,u)=>u(d),e());return n=rA(c),r=n.cache.get,o=n.cache.set,i=a,a(l)}function a(l){const c=r(l);if(c)return c;const d=iA(l,n);return o(l,d),d}return function(){return i(sA.apply(null,arguments))}}const je=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},Q2=/^\[(?:([a-z-]+):)?(.+)\]$/i,lA=/^\d+\/\d+$/,cA=new Set(["px","full","screen"]),uA=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,dA=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,fA=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,pA=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,hA=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Xn=e=>Mi(e)||cA.has(e)||lA.test(e),Rr=e=>ds(e,"length",SA),Mi=e=>!!e&&!Number.isNaN(Number(e)),vf=e=>ds(e,"number",Mi),Ps=e=>!!e&&Number.isInteger(Number(e)),mA=e=>e.endsWith("%")&&Mi(e.slice(0,-1)),Se=e=>Q2.test(e),Ar=e=>uA.test(e),gA=new Set(["length","size","percentage"]),vA=e=>ds(e,gA,J2),yA=e=>ds(e,"position",J2),xA=new Set(["image","url"]),wA=e=>ds(e,xA,CA),_A=e=>ds(e,"",bA),Is=()=>!0,ds=(e,t,n)=>{const r=Q2.exec(e);return r?r[1]?typeof t=="string"?r[1]===t:t.has(r[1]):n(r[2]):!1},SA=e=>dA.test(e)&&!fA.test(e),J2=()=>!1,bA=e=>pA.test(e),CA=e=>hA.test(e),EA=()=>{const e=je("colors"),t=je("spacing"),n=je("blur"),r=je("brightness"),o=je("borderColor"),i=je("borderRadius"),s=je("borderSpacing"),a=je("borderWidth"),l=je("contrast"),c=je("grayscale"),d=je("hueRotate"),u=je("invert"),f=je("gap"),p=je("gradientColorStops"),y=je("gradientColorStopPositions"),v=je("inset"),_=je("margin"),m=je("opacity"),g=je("padding"),w=je("saturate"),S=je("scale"),C=je("sepia"),N=je("skew"),E=je("space"),P=je("translate"),O=()=>["auto","contain","none"],j=()=>["auto","hidden","clip","visible","scroll"],$=()=>["auto",Se,t],A=()=>[Se,t],L=()=>["",Xn,Rr],b=()=>["auto",Mi,Se],M=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],T=()=>["solid","dashed","dotted","double","none"],D=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],k=()=>["start","end","center","between","around","evenly","stretch"],I=()=>["","0",Se],z=()=>["auto","avoid","all","avoid-page","page","left","right","column"],U=()=>[Mi,Se];return{cacheSize:500,separator:":",theme:{colors:[Is],spacing:[Xn,Rr],blur:["none","",Ar,Se],brightness:U(),borderColor:[e],borderRadius:["none","","full",Ar,Se],borderSpacing:A(),borderWidth:L(),contrast:U(),grayscale:I(),hueRotate:U(),invert:I(),gap:A(),gradientColorStops:[e],gradientColorStopPositions:[mA,Rr],inset:$(),margin:$(),opacity:U(),padding:A(),saturate:U(),scale:U(),sepia:I(),skew:U(),space:A(),translate:A()},classGroups:{aspect:[{aspect:["auto","square","video",Se]}],container:["container"],columns:[{columns:[Ar]}],"break-after":[{"break-after":z()}],"break-before":[{"break-before":z()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...M(),Se]}],overflow:[{overflow:j()}],"overflow-x":[{"overflow-x":j()}],"overflow-y":[{"overflow-y":j()}],overscroll:[{overscroll:O()}],"overscroll-x":[{"overscroll-x":O()}],"overscroll-y":[{"overscroll-y":O()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[v]}],"inset-x":[{"inset-x":[v]}],"inset-y":[{"inset-y":[v]}],start:[{start:[v]}],end:[{end:[v]}],top:[{top:[v]}],right:[{right:[v]}],bottom:[{bottom:[v]}],left:[{left:[v]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",Ps,Se]}],basis:[{basis:$()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",Se]}],grow:[{grow:I()}],shrink:[{shrink:I()}],order:[{order:["first","last","none",Ps,Se]}],"grid-cols":[{"grid-cols":[Is]}],"col-start-end":[{col:["auto",{span:["full",Ps,Se]},Se]}],"col-start":[{"col-start":b()}],"col-end":[{"col-end":b()}],"grid-rows":[{"grid-rows":[Is]}],"row-start-end":[{row:["auto",{span:[Ps,Se]},Se]}],"row-start":[{"row-start":b()}],"row-end":[{"row-end":b()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",Se]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",Se]}],gap:[{gap:[f]}],"gap-x":[{"gap-x":[f]}],"gap-y":[{"gap-y":[f]}],"justify-content":[{justify:["normal",...k()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...k(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...k(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[g]}],px:[{px:[g]}],py:[{py:[g]}],ps:[{ps:[g]}],pe:[{pe:[g]}],pt:[{pt:[g]}],pr:[{pr:[g]}],pb:[{pb:[g]}],pl:[{pl:[g]}],m:[{m:[_]}],mx:[{mx:[_]}],my:[{my:[_]}],ms:[{ms:[_]}],me:[{me:[_]}],mt:[{mt:[_]}],mr:[{mr:[_]}],mb:[{mb:[_]}],ml:[{ml:[_]}],"space-x":[{"space-x":[E]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[E]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",Se,t]}],"min-w":[{"min-w":[Se,t,"min","max","fit"]}],"max-w":[{"max-w":[Se,t,"none","full","min","max","fit","prose",{screen:[Ar]},Ar]}],h:[{h:[Se,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[Se,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[Se,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[Se,t,"auto","min","max","fit"]}],"font-size":[{text:["base",Ar,Rr]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",vf]}],"font-family":[{font:[Is]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractons"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",Se]}],"line-clamp":[{"line-clamp":["none",Mi,vf]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",Xn,Se]}],"list-image":[{"list-image":["none",Se]}],"list-style-type":[{list:["none","disc","decimal",Se]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[m]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[m]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...T(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",Xn,Rr]}],"underline-offset":[{"underline-offset":["auto",Xn,Se]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:A()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Se]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",Se]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[m]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...M(),yA]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",vA]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},wA]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[y]}],"gradient-via-pos":[{via:[y]}],"gradient-to-pos":[{to:[y]}],"gradient-from":[{from:[p]}],"gradient-via":[{via:[p]}],"gradient-to":[{to:[p]}],rounded:[{rounded:[i]}],"rounded-s":[{"rounded-s":[i]}],"rounded-e":[{"rounded-e":[i]}],"rounded-t":[{"rounded-t":[i]}],"rounded-r":[{"rounded-r":[i]}],"rounded-b":[{"rounded-b":[i]}],"rounded-l":[{"rounded-l":[i]}],"rounded-ss":[{"rounded-ss":[i]}],"rounded-se":[{"rounded-se":[i]}],"rounded-ee":[{"rounded-ee":[i]}],"rounded-es":[{"rounded-es":[i]}],"rounded-tl":[{"rounded-tl":[i]}],"rounded-tr":[{"rounded-tr":[i]}],"rounded-br":[{"rounded-br":[i]}],"rounded-bl":[{"rounded-bl":[i]}],"border-w":[{border:[a]}],"border-w-x":[{"border-x":[a]}],"border-w-y":[{"border-y":[a]}],"border-w-s":[{"border-s":[a]}],"border-w-e":[{"border-e":[a]}],"border-w-t":[{"border-t":[a]}],"border-w-r":[{"border-r":[a]}],"border-w-b":[{"border-b":[a]}],"border-w-l":[{"border-l":[a]}],"border-opacity":[{"border-opacity":[m]}],"border-style":[{border:[...T(),"hidden"]}],"divide-x":[{"divide-x":[a]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[a]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[m]}],"divide-style":[{divide:T()}],"border-color":[{border:[o]}],"border-color-x":[{"border-x":[o]}],"border-color-y":[{"border-y":[o]}],"border-color-s":[{"border-s":[o]}],"border-color-e":[{"border-e":[o]}],"border-color-t":[{"border-t":[o]}],"border-color-r":[{"border-r":[o]}],"border-color-b":[{"border-b":[o]}],"border-color-l":[{"border-l":[o]}],"divide-color":[{divide:[o]}],"outline-style":[{outline:["",...T()]}],"outline-offset":[{"outline-offset":[Xn,Se]}],"outline-w":[{outline:[Xn,Rr]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:L()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[m]}],"ring-offset-w":[{"ring-offset":[Xn,Rr]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",Ar,_A]}],"shadow-color":[{shadow:[Is]}],opacity:[{opacity:[m]}],"mix-blend":[{"mix-blend":[...D(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":D()}],filter:[{filter:["","none"]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[l]}],"drop-shadow":[{"drop-shadow":["","none",Ar,Se]}],grayscale:[{grayscale:[c]}],"hue-rotate":[{"hue-rotate":[d]}],invert:[{invert:[u]}],saturate:[{saturate:[w]}],sepia:[{sepia:[C]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[l]}],"backdrop-grayscale":[{"backdrop-grayscale":[c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[d]}],"backdrop-invert":[{"backdrop-invert":[u]}],"backdrop-opacity":[{"backdrop-opacity":[m]}],"backdrop-saturate":[{"backdrop-saturate":[w]}],"backdrop-sepia":[{"backdrop-sepia":[C]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[s]}],"border-spacing-x":[{"border-spacing-x":[s]}],"border-spacing-y":[{"border-spacing-y":[s]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",Se]}],duration:[{duration:U()}],ease:[{ease:["linear","in","out","in-out",Se]}],delay:[{delay:U()}],animate:[{animate:["none","spin","ping","pulse","bounce",Se]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[S]}],"scale-x":[{"scale-x":[S]}],"scale-y":[{"scale-y":[S]}],rotate:[{rotate:[Ps,Se]}],"translate-x":[{"translate-x":[P]}],"translate-y":[{"translate-y":[P]}],"skew-x":[{"skew-x":[N]}],"skew-y":[{"skew-y":[N]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",Se]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",Se]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":A()}],"scroll-mx":[{"scroll-mx":A()}],"scroll-my":[{"scroll-my":A()}],"scroll-ms":[{"scroll-ms":A()}],"scroll-me":[{"scroll-me":A()}],"scroll-mt":[{"scroll-mt":A()}],"scroll-mr":[{"scroll-mr":A()}],"scroll-mb":[{"scroll-mb":A()}],"scroll-ml":[{"scroll-ml":A()}],"scroll-p":[{"scroll-p":A()}],"scroll-px":[{"scroll-px":A()}],"scroll-py":[{"scroll-py":A()}],"scroll-ps":[{"scroll-ps":A()}],"scroll-pe":[{"scroll-pe":A()}],"scroll-pt":[{"scroll-pt":A()}],"scroll-pr":[{"scroll-pr":A()}],"scroll-pb":[{"scroll-pb":A()}],"scroll-pl":[{"scroll-pl":A()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",Se]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[Xn,Rr,vf]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},kA=aA(EA);function we(...e){return kA(YR(e))}const NA=td("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),Ln=x.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...o},i)=>{const s=r?to:"button";return h.jsx(s,{className:we(NA({variant:t,size:n,className:e})),ref:i,...o})});Ln.displayName="Button";const lt=[];for(let e=0;e<256;++e)lt.push((e+256).toString(16).slice(1));function TA(e,t=0){return(lt[e[t+0]]+lt[e[t+1]]+lt[e[t+2]]+lt[e[t+3]]+"-"+lt[e[t+4]]+lt[e[t+5]]+"-"+lt[e[t+6]]+lt[e[t+7]]+"-"+lt[e[t+8]]+lt[e[t+9]]+"-"+lt[e[t+10]]+lt[e[t+11]]+lt[e[t+12]]+lt[e[t+13]]+lt[e[t+14]]+lt[e[t+15]]).toLowerCase()}let yf;const PA=new Uint8Array(16);function IA(){if(!yf){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");yf=crypto.getRandomValues.bind(crypto)}return yf(PA)}const RA=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Hv={randomUUID:RA};function Aa(e,t,n){if(Hv.randomUUID&&!t&&!e)return Hv.randomUUID();e=e||{};const r=e.random||(e.rng||IA)();return r[6]=r[6]&15|64,r[8]=r[8]&63|128,TA(r)}function AA(e,t){const n=x.createContext(t),r=i=>{const{children:s,...a}=i,l=x.useMemo(()=>a,Object.values(a));return h.jsx(n.Provider,{value:l,children:s})};r.displayName=e+"Provider";function o(i){const s=x.useContext(n);if(s)return s;if(t!==void 0)return t;throw new Error(`\`${i}\` must be used within \`${e}\``)}return[r,o]}function Xo(e,t=[]){let n=[];function r(i,s){const a=x.createContext(s),l=n.length;n=[...n,s];const c=u=>{var m;const{scope:f,children:p,...y}=u,v=((m=f==null?void 0:f[e])==null?void 0:m[l])||a,_=x.useMemo(()=>y,Object.values(y));return h.jsx(v.Provider,{value:_,children:p})};c.displayName=i+"Provider";function d(u,f){var v;const p=((v=f==null?void 0:f[e])==null?void 0:v[l])||a,y=x.useContext(p);if(y)return y;if(s!==void 0)return s;throw new Error(`\`${u}\` must be used within \`${i}\``)}return[c,d]}const o=()=>{const i=n.map(s=>x.createContext(s));return function(a){const l=(a==null?void 0:a[e])||i;return x.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,MA(o,...t)]}function MA(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const s=r.reduce((a,{useScope:l,scopeName:c})=>{const u=l(i)[`__scope${c}`];return{...a,...u}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])}};return n.scopeName=t.scopeName,n}function jA(e,t=[]){let n=[];function r(i,s){const a=x.createContext(s),l=n.length;n=[...n,s];function c(u){const{scope:f,children:p,...y}=u,v=(f==null?void 0:f[e][l])||a,_=x.useMemo(()=>y,Object.values(y));return h.jsx(v.Provider,{value:_,children:p})}function d(u,f){const p=(f==null?void 0:f[e][l])||a,y=x.useContext(p);if(y)return y;if(s!==void 0)return s;throw new Error(`\`${u}\` must be used within \`${i}\``)}return c.displayName=i+"Provider",[c,d]}const o=()=>{const i=n.map(s=>x.createContext(s));return function(a){const l=(a==null?void 0:a[e])||i;return x.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,OA(o,...t)]}function OA(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const s=r.reduce((a,{useScope:l,scopeName:c})=>{const u=l(i)[`__scope${c}`];return{...a,...u}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])}};return n.scopeName=t.scopeName,n}function nd(e){const t=e+"CollectionProvider",[n,r]=jA(t),[o,i]=n(t,{collectionRef:{current:null},itemMap:new Map}),s=p=>{const{scope:y,children:v}=p,_=de.useRef(null),m=de.useRef(new Map).current;return h.jsx(o,{scope:y,itemMap:m,collectionRef:_,children:v})};s.displayName=t;const a=e+"CollectionSlot",l=de.forwardRef((p,y)=>{const{scope:v,children:_}=p,m=i(a,v),g=Ae(y,m.collectionRef);return h.jsx(to,{ref:g,children:_})});l.displayName=a;const c=e+"CollectionItemSlot",d="data-radix-collection-item",u=de.forwardRef((p,y)=>{const{scope:v,children:_,...m}=p,g=de.useRef(null),w=Ae(y,g),S=i(c,v);return de.useEffect(()=>(S.itemMap.set(g,{ref:g,...m}),()=>void S.itemMap.delete(g))),h.jsx(to,{[d]:"",ref:w,children:_})});u.displayName=c;function f(p){const y=i(e+"CollectionConsumer",p);return de.useCallback(()=>{const _=y.collectionRef.current;if(!_)return[];const m=Array.from(_.querySelectorAll(`[${d}]`));return Array.from(y.itemMap.values()).sort((S,C)=>m.indexOf(S.ref.current)-m.indexOf(C.ref.current))},[y.collectionRef,y.itemMap])}return[{Provider:s,Slot:l,ItemSlot:u},f,r]}function he(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e==null||e(o),n===!1||!o.defaultPrevented)return t==null?void 0:t(o)}}function Dt(e){const t=x.useRef(e);return x.useEffect(()=>{t.current=e}),x.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}function Hn({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,o]=DA({defaultProp:t,onChange:n}),i=e!==void 0,s=i?e:r,a=Dt(n),l=x.useCallback(c=>{if(i){const u=typeof c=="function"?c(e):c;u!==e&&a(u)}else o(c)},[i,e,o,a]);return[s,l]}function DA({defaultProp:e,onChange:t}){const n=x.useState(e),[r]=n,o=x.useRef(r),i=Dt(t);return x.useEffect(()=>{o.current!==r&&(i(r),o.current=r)},[r,o,i]),n}var LA=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],xe=LA.reduce((e,t)=>{const n=x.forwardRef((r,o)=>{const{asChild:i,...s}=r,a=i?to:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),h.jsx(a,{...s,ref:o})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function e_(e,t){e&&Go.flushSync(()=>e.dispatchEvent(t))}var pt=globalThis!=null&&globalThis.document?x.useLayoutEffect:()=>{};function zA(e,t){return x.useReducer((n,r)=>t[n][r]??n,e)}var kr=e=>{const{present:t,children:n}=e,r=$A(t),o=typeof n=="function"?n({present:r.isPresent}):x.Children.only(n),i=Ae(r.ref,FA(o));return typeof n=="function"||r.isPresent?x.cloneElement(o,{ref:i}):null};kr.displayName="Presence";function $A(e){const[t,n]=x.useState(),r=x.useRef({}),o=x.useRef(e),i=x.useRef("none"),s=e?"mounted":"unmounted",[a,l]=zA(s,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return x.useEffect(()=>{const c=Ul(r.current);i.current=a==="mounted"?c:"none"},[a]),pt(()=>{const c=r.current,d=o.current;if(d!==e){const f=i.current,p=Ul(c);e?l("MOUNT"):p==="none"||(c==null?void 0:c.display)==="none"?l("UNMOUNT"):l(d&&f!==p?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,l]),pt(()=>{if(t){let c;const d=t.ownerDocument.defaultView??window,u=p=>{const v=Ul(r.current).includes(p.animationName);if(p.target===t&&v&&(l("ANIMATION_END"),!o.current)){const _=t.style.animationFillMode;t.style.animationFillMode="forwards",c=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=_)})}},f=p=>{p.target===t&&(i.current=Ul(r.current))};return t.addEventListener("animationstart",f),t.addEventListener("animationcancel",u),t.addEventListener("animationend",u),()=>{d.clearTimeout(c),t.removeEventListener("animationstart",f),t.removeEventListener("animationcancel",u),t.removeEventListener("animationend",u)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:x.useCallback(c=>{c&&(r.current=getComputedStyle(c)),n(c)},[])}}function Ul(e){return(e==null?void 0:e.animationName)||"none"}function FA(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var VA=Nh.useId||(()=>{}),HA=0;function xn(e){const[t,n]=x.useState(VA());return pt(()=>{n(r=>r??String(HA++))},[e]),t?`radix-${t}`:""}var Am="Collapsible",[BA,t_]=Xo(Am),[UA,Mm]=BA(Am),n_=x.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:i,onOpenChange:s,...a}=e,[l=!1,c]=Hn({prop:r,defaultProp:o,onChange:s});return h.jsx(UA,{scope:n,disabled:i,contentId:xn(),open:l,onOpenToggle:x.useCallback(()=>c(d=>!d),[c]),children:h.jsx(xe.div,{"data-state":Om(l),"data-disabled":i?"":void 0,...a,ref:t})})});n_.displayName=Am;var r_="CollapsibleTrigger",o_=x.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=Mm(r_,n);return h.jsx(xe.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":Om(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...r,ref:t,onClick:he(e.onClick,o.onOpenToggle)})});o_.displayName=r_;var jm="CollapsibleContent",i_=x.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Mm(jm,e.__scopeCollapsible);return h.jsx(kr,{present:n||o.open,children:({present:i})=>h.jsx(WA,{...r,ref:t,present:i})})});i_.displayName=jm;var WA=x.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...i}=e,s=Mm(jm,n),[a,l]=x.useState(r),c=x.useRef(null),d=Ae(t,c),u=x.useRef(0),f=u.current,p=x.useRef(0),y=p.current,v=s.open||a,_=x.useRef(v),m=x.useRef();return x.useEffect(()=>{const g=requestAnimationFrame(()=>_.current=!1);return()=>cancelAnimationFrame(g)},[]),pt(()=>{const g=c.current;if(g){m.current=m.current||{transitionDuration:g.style.transitionDuration,animationName:g.style.animationName},g.style.transitionDuration="0s",g.style.animationName="none";const w=g.getBoundingClientRect();u.current=w.height,p.current=w.width,_.current||(g.style.transitionDuration=m.current.transitionDuration,g.style.animationName=m.current.animationName),l(r)}},[s.open,r]),h.jsx(xe.div,{"data-state":Om(s.open),"data-disabled":s.disabled?"":void 0,id:s.contentId,hidden:!v,...i,ref:d,style:{"--radix-collapsible-content-height":f?`${f}px`:void 0,"--radix-collapsible-content-width":y?`${y}px`:void 0,...e.style},children:v&&o})});function Om(e){return e?"open":"closed"}var ZA=n_,GA=o_,YA=i_,KA=x.createContext(void 0);function rd(e){const t=x.useContext(KA);return e||t||"ltr"}var Nr="Accordion",XA=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[Dm,qA,QA]=nd(Nr),[od,pz]=Xo(Nr,[QA,t_]),Lm=t_(),s_=de.forwardRef((e,t)=>{const{type:n,...r}=e,o=r,i=r;return h.jsx(Dm.Provider,{scope:e.__scopeAccordion,children:n==="multiple"?h.jsx(n6,{...i,ref:t}):h.jsx(t6,{...o,ref:t})})});s_.displayName=Nr;var[a_,JA]=od(Nr),[l_,e6]=od(Nr,{collapsible:!1}),t6=de.forwardRef((e,t)=>{const{value:n,defaultValue:r,onValueChange:o=()=>{},collapsible:i=!1,...s}=e,[a,l]=Hn({prop:n,defaultProp:r,onChange:o});return h.jsx(a_,{scope:e.__scopeAccordion,value:a?[a]:[],onItemOpen:l,onItemClose:de.useCallback(()=>i&&l(""),[i,l]),children:h.jsx(l_,{scope:e.__scopeAccordion,collapsible:i,children:h.jsx(c_,{...s,ref:t})})})}),n6=de.forwardRef((e,t)=>{const{value:n,defaultValue:r,onValueChange:o=()=>{},...i}=e,[s=[],a]=Hn({prop:n,defaultProp:r,onChange:o}),l=de.useCallback(d=>a((u=[])=>[...u,d]),[a]),c=de.useCallback(d=>a((u=[])=>u.filter(f=>f!==d)),[a]);return h.jsx(a_,{scope:e.__scopeAccordion,value:s,onItemOpen:l,onItemClose:c,children:h.jsx(l_,{scope:e.__scopeAccordion,collapsible:!0,children:h.jsx(c_,{...i,ref:t})})})}),[r6,id]=od(Nr),c_=de.forwardRef((e,t)=>{const{__scopeAccordion:n,disabled:r,dir:o,orientation:i="vertical",...s}=e,a=de.useRef(null),l=Ae(a,t),c=qA(n),u=rd(o)==="ltr",f=he(e.onKeyDown,p=>{var P;if(!XA.includes(p.key))return;const y=p.target,v=c().filter(O=>{var j;return!((j=O.ref.current)!=null&&j.disabled)}),_=v.findIndex(O=>O.ref.current===y),m=v.length;if(_===-1)return;p.preventDefault();let g=_;const w=0,S=m-1,C=()=>{g=_+1,g>S&&(g=w)},N=()=>{g=_-1,g<w&&(g=S)};switch(p.key){case"Home":g=w;break;case"End":g=S;break;case"ArrowRight":i==="horizontal"&&(u?C():N());break;case"ArrowDown":i==="vertical"&&C();break;case"ArrowLeft":i==="horizontal"&&(u?N():C());break;case"ArrowUp":i==="vertical"&&N();break}const E=g%m;(P=v[E].ref.current)==null||P.focus()});return h.jsx(r6,{scope:n,disabled:r,direction:o,orientation:i,children:h.jsx(Dm.Slot,{scope:n,children:h.jsx(xe.div,{...s,"data-orientation":i,ref:l,onKeyDown:r?void 0:f})})})}),nu="AccordionItem",[o6,zm]=od(nu),sd=de.forwardRef((e,t)=>{const{__scopeAccordion:n,value:r,...o}=e,i=id(nu,n),s=JA(nu,n),a=Lm(n),l=xn(),c=r&&s.value.includes(r)||!1,d=i.disabled||e.disabled;return h.jsx(o6,{scope:n,open:c,disabled:d,triggerId:l,children:h.jsx(ZA,{"data-orientation":i.orientation,"data-state":h_(c),...a,...o,ref:t,disabled:d,open:c,onOpenChange:u=>{u?s.onItemOpen(r):s.onItemClose(r)}})})});sd.displayName=nu;var u_="AccordionHeader",d_=de.forwardRef((e,t)=>{const{__scopeAccordion:n,...r}=e,o=id(Nr,n),i=zm(u_,n);return h.jsx(xe.h3,{"data-orientation":o.orientation,"data-state":h_(i.open),"data-disabled":i.disabled?"":void 0,...r,ref:t})});d_.displayName=u_;var Qp="AccordionTrigger",f_=de.forwardRef((e,t)=>{const{__scopeAccordion:n,...r}=e,o=id(Nr,n),i=zm(Qp,n),s=e6(Qp,n),a=Lm(n);return h.jsx(Dm.ItemSlot,{scope:n,children:h.jsx(GA,{"aria-disabled":i.open&&!s.collapsible||void 0,"data-orientation":o.orientation,id:i.triggerId,...a,...r,ref:t})})});f_.displayName=Qp;var p_="AccordionContent",$m=de.forwardRef((e,t)=>{const{__scopeAccordion:n,...r}=e,o=id(Nr,n),i=zm(p_,n),s=Lm(n);return h.jsx(YA,{role:"region","aria-labelledby":i.triggerId,"data-orientation":o.orientation,...s,...r,ref:t,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}})});$m.displayName=p_;function h_(e){return e?"open":"closed"}var i6=s_,s6=sd,a6=d_,m_=f_,g_=$m;function fs(e,t){if(e==null)return{};var n={},r=Object.keys(e),o,i;for(i=0;i<r.length;i++)o=r[i],!(t.indexOf(o)>=0)&&(n[o]=e[o]);return n}var l6=["color"],c6=x.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=fs(e,l6);return x.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),x.createElement("path",{d:"M4.93179 5.43179C4.75605 5.60753 4.75605 5.89245 4.93179 6.06819C5.10753 6.24392 5.39245 6.24392 5.56819 6.06819L7.49999 4.13638L9.43179 6.06819C9.60753 6.24392 9.89245 6.24392 10.0682 6.06819C10.2439 5.89245 10.2439 5.60753 10.0682 5.43179L7.81819 3.18179C7.73379 3.0974 7.61933 3.04999 7.49999 3.04999C7.38064 3.04999 7.26618 3.0974 7.18179 3.18179L4.93179 5.43179ZM10.0682 9.56819C10.2439 9.39245 10.2439 9.10753 10.0682 8.93179C9.89245 8.75606 9.60753 8.75606 9.43179 8.93179L7.49999 10.8636L5.56819 8.93179C5.39245 8.75606 5.10753 8.75606 4.93179 8.93179C4.75605 9.10753 4.75605 9.39245 4.93179 9.56819L7.18179 11.8182C7.35753 11.9939 7.64245 11.9939 7.81819 11.8182L10.0682 9.56819Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),u6=["color"],d6=x.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=fs(e,u6);return x.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),x.createElement("path",{d:"M11.4669 3.72684C11.7558 3.91574 11.8369 4.30308 11.648 4.59198L7.39799 11.092C7.29783 11.2452 7.13556 11.3467 6.95402 11.3699C6.77247 11.3931 6.58989 11.3355 6.45446 11.2124L3.70446 8.71241C3.44905 8.48022 3.43023 8.08494 3.66242 7.82953C3.89461 7.57412 4.28989 7.55529 4.5453 7.78749L6.75292 9.79441L10.6018 3.90792C10.7907 3.61902 11.178 3.53795 11.4669 3.72684Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),f6=["color"],v_=x.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=fs(e,f6);return x.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),x.createElement("path",{d:"M3.13523 6.15803C3.3241 5.95657 3.64052 5.94637 3.84197 6.13523L7.5 9.56464L11.158 6.13523C11.3595 5.94637 11.6759 5.95657 11.8648 6.15803C12.0536 6.35949 12.0434 6.67591 11.842 6.86477L7.84197 10.6148C7.64964 10.7951 7.35036 10.7951 7.15803 10.6148L3.15803 6.86477C2.95657 6.67591 2.94637 6.35949 3.13523 6.15803Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),p6=["color"],h6=x.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=fs(e,p6);return x.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),x.createElement("path",{d:"M3.13523 8.84197C3.3241 9.04343 3.64052 9.05363 3.84197 8.86477L7.5 5.43536L11.158 8.86477C11.3595 9.05363 11.6759 9.04343 11.8648 8.84197C12.0536 8.64051 12.0434 8.32409 11.842 8.13523L7.84197 4.38523C7.64964 4.20492 7.35036 4.20492 7.15803 4.38523L3.15803 8.13523C2.95657 8.32409 2.94637 8.64051 3.13523 8.84197Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),m6=["color"],y_=x.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=fs(e,m6);return x.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),x.createElement("path",{d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))}),g6=["color"],v6=x.forwardRef(function(e,t){var n=e.color,r=n===void 0?"currentColor":n,o=fs(e,g6);return x.createElement("svg",Object.assign({width:"15",height:"15",viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},o,{ref:t}),x.createElement("path",{d:"M5.5 4.625C6.12132 4.625 6.625 4.12132 6.625 3.5C6.625 2.87868 6.12132 2.375 5.5 2.375C4.87868 2.375 4.375 2.87868 4.375 3.5C4.375 4.12132 4.87868 4.625 5.5 4.625ZM9.5 4.625C10.1213 4.625 10.625 4.12132 10.625 3.5C10.625 2.87868 10.1213 2.375 9.5 2.375C8.87868 2.375 8.375 2.87868 8.375 3.5C8.375 4.12132 8.87868 4.625 9.5 4.625ZM10.625 7.5C10.625 8.12132 10.1213 8.625 9.5 8.625C8.87868 8.625 8.375 8.12132 8.375 7.5C8.375 6.87868 8.87868 6.375 9.5 6.375C10.1213 6.375 10.625 6.87868 10.625 7.5ZM5.5 8.625C6.12132 8.625 6.625 8.12132 6.625 7.5C6.625 6.87868 6.12132 6.375 5.5 6.375C4.87868 6.375 4.375 6.87868 4.375 7.5C4.375 8.12132 4.87868 8.625 5.5 8.625ZM10.625 11.5C10.625 12.1213 10.1213 12.625 9.5 12.625C8.87868 12.625 8.375 12.1213 8.375 11.5C8.375 10.8787 8.87868 10.375 9.5 10.375C10.1213 10.375 10.625 10.8787 10.625 11.5ZM5.5 12.625C6.12132 12.625 6.625 12.1213 6.625 11.5C6.625 10.8787 6.12132 10.375 5.5 10.375C4.87868 10.375 4.375 10.8787 4.375 11.5C4.375 12.1213 4.87868 12.625 5.5 12.625Z",fill:r,fillRule:"evenodd",clipRule:"evenodd"}))});const Fm=i6,x_=x.forwardRef(({className:e,...t},n)=>h.jsx(s6,{ref:n,className:we("border-b",e),...t}));x_.displayName="AccordionItem";const ad=x.forwardRef(({className:e,children:t,...n},r)=>h.jsx(a6,{className:"flex",children:h.jsxs(m_,{ref:r,className:we("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180",e),...n,children:[t,h.jsx(v_,{className:"h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200"})]})}));ad.displayName=m_.displayName;const Vm=x.forwardRef(({className:e,children:t,...n},r)=>h.jsx(g_,{ref:r,className:"overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...n,children:h.jsx("div",{className:we("pb-4 pt-0",e),children:t})}));Vm.displayName=g_.displayName;const Bv=e=>{let t;const n=new Set,r=(c,d)=>{const u=typeof c=="function"?c(t):c;if(!Object.is(u,t)){const f=t;t=d??(typeof u!="object"||u===null)?u:Object.assign({},t,u),n.forEach(p=>p(t,f))}},o=()=>t,a={setState:r,getState:o,getInitialState:()=>l,subscribe:c=>(n.add(c),()=>n.delete(c))},l=t=e(r,o,a);return a},y6=e=>e?Bv(e):Bv,x6=e=>e;function w6(e,t=x6){const n=de.useSyncExternalStore(e.subscribe,()=>t(e.getState()),()=>t(e.getInitialState()));return de.useDebugValue(n),n}const Uv=e=>{const t=y6(e),n=r=>w6(t,r);return Object.assign(n,t),n},_6=e=>e?Uv(e):Uv,qn={label:"",envVars:[],ports:[]},S6=[{title:"Repository",items:[{title:"Github",init:{...qn},type:"github"},{title:"Gitlab",init:{...qn},type:"github"},{title:"Create new",init:{...qn},type:"github"}]},{title:"Services",items:[{title:"Service",init:{...qn},type:"app"}]},{title:"Storage",items:[{title:"Volume",init:{...qn},type:"volume"},{title:"PostgreSQL",init:{...qn,ports:[{id:"connection",name:"connection",value:5432}]},type:"postgresql"},{title:"MongoDB",init:{...qn,ports:[{id:"connection",name:"connection",value:27017}]},type:"mongodb"}]},{title:"Gateways",items:[{title:"HTTPS",init:{...qn},type:"gateway-https"},{title:"TCP",init:{...qn},type:"gateway-tcp"}]}];function w_(e,t){try{const n=new Map(t.networks.map(s=>[s.domain,s.name])),r=e.filter(s=>s.type==="gateway-https").filter(s=>s.data.https!==void 0),o=e.filter(s=>s.type==="gateway-tcp").filter(s=>s.data.exposed!==void 0),i=s=>s.data.ports.map(a=>[s.id,a.id,a.name]).flatMap(a=>o.flatMap(l=>(l.data.exposed||[]).filter(c=>c.serviceId===a[0]&&c.portId===a[1]).map(()=>({network:n.get(l.data.network),subdomain:l.data.subdomain,port:{name:a[2]}}))));return{service:e.filter(s=>s.type==="app").map(s=>({type:s.data.type,name:s.data.label,source:{repository:e.filter(a=>a.type==="github").find(a=>a.id===s.data.repository.id).data.address,branch:s.data.repository.branch,rootDir:s.data.repository.rootDir},ports:(s.data.ports||[]).map(a=>({name:a.name,value:a.value,protocol:"TCP"})),env:(s.data.envVars||[]).filter(a=>"name"in a).map(a=>({name:a.name,alias:"alias"in a?a.alias:void 0})),ingress:(a=>{if(a!==void 0)return{network:n.get(a.data.network),subdomain:a.data.subdomain,port:{name:s.data.ports.find(l=>l.id===a.data.https.portId).name},auth:{enabled:!1}}})(r.find(a=>a.data.https.serviceId===s.id)),expose:i(s)})),volume:e.filter(s=>s.type==="volume").map(s=>({name:s.data.label,accessMode:s.data.type,size:s.data.size})),postgresql:e.filter(s=>s.type==="postgresql").map(s=>({name:s.data.label,size:"1Gi",expose:i(s).map(a=>({network:a.network,subdomain:a.subdomain}))})),mongodb:e.filter(s=>s.type==="mongodb").map(s=>({name:s.data.label,size:"1Gi",expose:i(s).map(a=>({network:a.network,subdomain:a.subdomain}))}))}}catch(n){return console.log(n),null}}function b6(...e){return t=>e.flatMap(n=>n(t))}function Wv(e){switch(e){case"FATAL":return 0;case"WARNING":return 1;case"INFO":return 2}}function C6(e){switch(e){case"github":return 0;case"app":return 1;case"volume":return 2;case"postgresql":return 3;case"mongodb":return 4;case"gateway-https":return 5;case void 0:return 100}}function E6(e){return t=>{const n=new Map(t.map(r=>[r.id,C6(r.type)]));return e(t).sort((r,o)=>{const i=Wv(r.type),s=Wv(o.type);if(r.nodeId===void 0&&o.nodeId===void 0)return i!==s?i-s:r.id.localeCompare(o.id);if(r.nodeId===void 0)return-1;if(o.nodeId===void 0)return 1;if(r.nodeId===o.nodeId)return i!==s?i-s:r.id.localeCompare(o.id);const a=n.get(r.id),l=n.get(o.id);return a!==l?a-l:r.id.localeCompare(o.id)})}}function k6(){return E6(b6(N6,T6,P6,I6,R6))}function N6(e){return e.length>0?[]:[{id:"no-nodes",type:"FATAL",message:"Start by importing application source code",onHighlight:t=>t.setHighlightCategory("repository",!0),onLooseHighlight:t=>t.setHighlightCategory("repository",!1)}]}function T6(e){const t=e.filter(o=>o.type==="github"),n=t.filter(o=>o.data==null||o.data.address==null||o.data.address==="").map(o=>({id:`${o.id}-no-address`,type:"FATAL",nodeId:o.id,message:"Configure repository address",onHighlight:i=>i.updateNode(o.id,{selected:!0}),onLooseHighlight:i=>i.updateNode(o.id,{selected:!1})})),r=t.filter(o=>!e.some(i=>{var s,a;return i.type==="app"&&((a=(s=i.data)==null?void 0:s.repository)==null?void 0:a.id)===o.id})).map(o=>({id:`${o.id}-no-app`,type:"WARNING",nodeId:o.id,message:"Connect to service",onHighlight:i=>i.setHighlightCategory("Services",!0),onLooseHighlight:i=>i.setHighlightCategory("Services",!1)}));return n.concat(r)}function P6(e){const t=e.filter(l=>l.type==="app"),n=t.filter(l=>l.data==null||l.data.label==null||l.data.label==="").map(l=>({id:`${l.id}-no-name`,type:"FATAL",nodeId:l.id,message:"Name the service",onHighlight:c=>c.updateNode(l.id,{selected:!0}),onLooseHighlight:c=>c.updateNode(l.id,{selected:!1}),onClick:c=>{c.updateNode(l.id,{selected:!0}),c.updateNodeData(l.id,{activeField:"name"})}})),r=t.filter(l=>l.data==null||l.data.repository==null||l.data.repository.id==="").map(l=>({id:`${l.id}-no-repo`,type:"FATAL",nodeId:l.id,message:"Connect to source repository",onHighlight:c=>c.updateNode(l.id,{selected:!0}),onLooseHighlight:c=>c.updateNode(l.id,{selected:!1})})),o=t.filter(l=>l.data==null||l.data.type==null).map(l=>({id:`${l.id}-no-runtime`,type:"FATAL",nodeId:l.id,message:"Choose runtime",onHighlight:c=>c.updateNode(l.id,{selected:!0}),onLooseHighlight:c=>c.updateNode(l.id,{selected:!1}),onClick:c=>{c.updateNode(l.id,{selected:!0}),c.updateNodeData(l.id,{activeField:"type"})}})),i=t.filter(l=>l.data==null||l.data.ports==null||l.data.ports.length===0).map(l=>({id:`${l.id}-no-ports`,type:"INFO",nodeId:l.id,message:"Expose ports",onHighlight:c=>c.updateNode(l.id,{selected:!0}),onLooseHighlight:c=>c.updateNode(l.id,{selected:!1})})),s=t.flatMap(l=>l.data==null?[]:(l.data.ports||[]).filter(c=>!e.filter(d=>d.type==="gateway-https").some(d=>!!(d.data&&d.data.https&&d.data.https.serviceId===l.id&&d.data.https.portId===c.id))).map(c=>({id:`${l.id}-${c.id}-no-ingress`,type:"WARNING",nodeId:l.id,message:`Connect to ingress: ${c.name} - ${c.value}`,onHighlight:d=>{d.updateNode(l.id,{selected:!0}),d.setHighlightCategory("gateways",!0)},onLooseHighlight:d=>{d.updateNode(l.id,{selected:!1}),d.setHighlightCategory("gateways",!1)}}))),a=t.filter(l=>l.data!=null&&l.data.ports!=null).flatMap(l=>l.data.ports.map(c=>{if(!(e.filter(u=>u.type==="gateway-https").filter(u=>u.data&&u.data.https&&u.data.https.serviceId===l.id&&u.data.https.portId===c.id).length<2))return{id:`${l.id}-${c.id}-multiple-ingress`,type:"FATAL",nodeId:l.id,message:`Can not expose same port using multiple ingresses: ${c.name} - ${c.value}`,onHighlight:u=>u.updateNode(l.id,{selected:!0}),onLooseHighlight:u=>u.updateNode(l.id,{selected:!1})}})).filter(l=>l!==void 0);return n.concat(r).concat(o).concat(i).concat(s).concat(a)}function I6(e){const t=e.filter(o=>o.type==="gateway-https"),n=t.filter(o=>o.data==null||o.data.network==null||o.data.network==""||o.data.subdomain==null||o.data.subdomain=="").map(o=>({id:`${o.id}-no-network`,type:"FATAL",nodeId:o.id,message:"Network and subdomain must be defined",onHighlight:i=>i.updateNode(o.id,{selected:!0}),onLooseHighlight:i=>i.updateNode(o.id,{selected:!1})})),r=t.filter(o=>o.data==null||o.data.https==null||o.data.https.serviceId==null||o.data.https.serviceId==""||o.data.https.portId==null||o.data.https.portId=="").map(o=>({id:`${o.id}-not-connected`,type:"FATAL",nodeId:o.id,message:"Connect to a service port",onHighlight:i=>i.updateNode(o.id,{selected:!0}),onLooseHighlight:i=>i.updateNode(o.id,{selected:!1})}));return n.concat(r)}function R6(e){const t=e.filter(o=>o.type==="gateway-tcp"),n=t.filter(o=>o.data==null||o.data.network==null||o.data.network==""||o.data.subdomain==null||o.data.subdomain=="").map(o=>({id:`${o.id}-no-network`,type:"FATAL",nodeId:o.id,message:"Network and subdomain must be defined",onHighlight:i=>i.updateNode(o.id,{selected:!0}),onLooseHighlight:i=>i.updateNode(o.id,{selected:!1})})),r=t.filter(o=>o.data==null||o.data.exposed==null||o.data.exposed.length===0).map(o=>({id:`${o.id}-not-connected`,type:"FATAL",nodeId:o.id,message:"Connect to a service port",onHighlight:i=>i.updateNode(o.id,{selected:!0}),onLooseHighlight:i=>i.updateNode(o.id,{selected:!1})}));return n.concat(r)}var ke;(function(e){e.assertEqual=o=>o;function t(o){}e.assertIs=t;function n(o){throw new Error}e.assertNever=n,e.arrayToEnum=o=>{const i={};for(const s of o)i[s]=s;return i},e.getValidEnumValues=o=>{const i=e.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),s={};for(const a of i)s[a]=o[a];return e.objectValues(s)},e.objectValues=o=>e.objectKeys(o).map(function(i){return o[i]}),e.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{const i=[];for(const s in o)Object.prototype.hasOwnProperty.call(o,s)&&i.push(s);return i},e.find=(o,i)=>{for(const s of o)if(i(s))return s},e.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&isFinite(o)&&Math.floor(o)===o;function r(o,i=" | "){return o.map(s=>typeof s=="string"?`'${s}'`:s).join(i)}e.joinValues=r,e.jsonStringifyReplacer=(o,i)=>typeof i=="bigint"?i.toString():i})(ke||(ke={}));var Jp;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(Jp||(Jp={}));const le=ke.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Fr=e=>{switch(typeof e){case"undefined":return le.undefined;case"string":return le.string;case"number":return isNaN(e)?le.nan:le.number;case"boolean":return le.boolean;case"function":return le.function;case"bigint":return le.bigint;case"symbol":return le.symbol;case"object":return Array.isArray(e)?le.array:e===null?le.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?le.promise:typeof Map<"u"&&e instanceof Map?le.map:typeof Set<"u"&&e instanceof Set?le.set:typeof Date<"u"&&e instanceof Date?le.date:le.object;default:return le.unknown}},J=ke.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),A6=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:");class Zt extends Error{constructor(t){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=t}get errors(){return this.issues}format(t){const n=t||function(i){return i.message},r={_errors:[]},o=i=>{for(const s of i.issues)if(s.code==="invalid_union")s.unionErrors.map(o);else if(s.code==="invalid_return_type")o(s.returnTypeError);else if(s.code==="invalid_arguments")o(s.argumentsError);else if(s.path.length===0)r._errors.push(n(s));else{let a=r,l=0;for(;l<s.path.length;){const c=s.path[l];l===s.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(n(s))):a[c]=a[c]||{_errors:[]},a=a[c],l++}}};return o(this),r}static assert(t){if(!(t instanceof Zt))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,ke.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=n=>n.message){const n={},r=[];for(const o of this.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):r.push(t(o));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}}Zt.create=e=>new Zt(e);const ts=(e,t)=>{let n;switch(e.code){case J.invalid_type:e.received===le.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case J.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,ke.jsonStringifyReplacer)}`;break;case J.unrecognized_keys:n=`Unrecognized key(s) in object: ${ke.joinValues(e.keys,", ")}`;break;case J.invalid_union:n="Invalid input";break;case J.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${ke.joinValues(e.options)}`;break;case J.invalid_enum_value:n=`Invalid enum value. Expected ${ke.joinValues(e.options)}, received '${e.received}'`;break;case J.invalid_arguments:n="Invalid function arguments";break;case J.invalid_return_type:n="Invalid function return type";break;case J.invalid_date:n="Invalid date";break;case J.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:ke.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case J.too_small:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:n="Invalid input";break;case J.too_big:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?n=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:n="Invalid input";break;case J.custom:n="Invalid input";break;case J.invalid_intersection_types:n="Intersection results could not be merged";break;case J.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case J.not_finite:n="Number must be finite";break;default:n=t.defaultError,ke.assertNever(e)}return{message:n}};let __=ts;function M6(e){__=e}function ru(){return __}const ou=e=>{const{data:t,path:n,errorMaps:r,issueData:o}=e,i=[...n,...o.path||[]],s={...o,path:i};if(o.message!==void 0)return{...o,path:i,message:o.message};let a="";const l=r.filter(c=>!!c).slice().reverse();for(const c of l)a=c(s,{data:t,defaultError:a}).message;return{...o,path:i,message:a}},j6=[];function se(e,t){const n=ru(),r=ou({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===ts?void 0:ts].filter(o=>!!o)});e.common.issues.push(r)}class yt{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,n){const r=[];for(const o of n){if(o.status==="aborted")return ve;o.status==="dirty"&&t.dirty(),r.push(o.value)}return{status:t.value,value:r}}static async mergeObjectAsync(t,n){const r=[];for(const o of n){const i=await o.key,s=await o.value;r.push({key:i,value:s})}return yt.mergeObjectSync(t,r)}static mergeObjectSync(t,n){const r={};for(const o of n){const{key:i,value:s}=o;if(i.status==="aborted"||s.status==="aborted")return ve;i.status==="dirty"&&t.dirty(),s.status==="dirty"&&t.dirty(),i.value!=="__proto__"&&(typeof s.value<"u"||o.alwaysSet)&&(r[i.value]=s.value)}return{status:t.value,value:r}}}const ve=Object.freeze({status:"aborted"}),bi=e=>({status:"dirty",value:e}),St=e=>({status:"valid",value:e}),eh=e=>e.status==="aborted",th=e=>e.status==="dirty",Ma=e=>e.status==="valid",ja=e=>typeof Promise<"u"&&e instanceof Promise;function iu(e,t,n,r){if(typeof t=="function"?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t.get(e)}function S_(e,t,n,r,o){if(typeof t=="function"?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return t.set(e,n),n}var fe;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(fe||(fe={}));var Fs,Vs;class Bn{constructor(t,n,r,o){this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=o}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Zv=(e,t)=>{if(Ma(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const n=new Zt(e.common.issues);return this._error=n,this._error}}};function _e(e){if(!e)return{};const{errorMap:t,invalid_type_error:n,required_error:r,description:o}=e;if(t&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:o}:{errorMap:(s,a)=>{var l,c;const{message:d}=e;return s.code==="invalid_enum_value"?{message:d??a.defaultError}:typeof a.data>"u"?{message:(l=d??r)!==null&&l!==void 0?l:a.defaultError}:s.code!=="invalid_type"?{message:a.defaultError}:{message:(c=d??n)!==null&&c!==void 0?c:a.defaultError}},description:o}}class Ce{constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(t){return Fr(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:Fr(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new yt,ctx:{common:t.parent.common,data:t.data,parsedType:Fr(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){const n=this._parse(t);if(ja(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(t){const n=this._parse(t);return Promise.resolve(n)}parse(t,n){const r=this.safeParse(t,n);if(r.success)return r.data;throw r.error}safeParse(t,n){var r;const o={common:{issues:[],async:(r=n==null?void 0:n.async)!==null&&r!==void 0?r:!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Fr(t)},i=this._parseSync({data:t,path:o.path,parent:o});return Zv(o,i)}async parseAsync(t,n){const r=await this.safeParseAsync(t,n);if(r.success)return r.data;throw r.error}async safeParseAsync(t,n){const r={common:{issues:[],contextualErrorMap:n==null?void 0:n.errorMap,async:!0},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Fr(t)},o=this._parse({data:t,path:r.path,parent:r}),i=await(ja(o)?o:Promise.resolve(o));return Zv(r,i)}refine(t,n){const r=o=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(o):n;return this._refinement((o,i)=>{const s=t(o),a=()=>i.addIssue({code:J.custom,...r(o)});return typeof Promise<"u"&&s instanceof Promise?s.then(l=>l?!0:(a(),!1)):s?!0:(a(),!1)})}refinement(t,n){return this._refinement((r,o)=>t(r)?!0:(o.addIssue(typeof n=="function"?n(r,o):n),!1))}_refinement(t){return new Cn({schema:this,typeName:ge.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}optional(){return zn.create(this,this._def)}nullable(){return io.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return wn.create(this,this._def)}promise(){return rs.create(this,this._def)}or(t){return za.create([this,t],this._def)}and(t){return $a.create(this,t,this._def)}transform(t){return new Cn({..._e(this._def),schema:this,typeName:ge.ZodEffects,effect:{type:"transform",transform:t}})}default(t){const n=typeof t=="function"?t:()=>t;return new Ua({..._e(this._def),innerType:this,defaultValue:n,typeName:ge.ZodDefault})}brand(){return new Hm({typeName:ge.ZodBranded,type:this,..._e(this._def)})}catch(t){const n=typeof t=="function"?t:()=>t;return new Wa({..._e(this._def),innerType:this,catchValue:n,typeName:ge.ZodCatch})}describe(t){const n=this.constructor;return new n({...this._def,description:t})}pipe(t){return al.create(this,t)}readonly(){return Za.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const O6=/^c[^\s-]{8,}$/i,D6=/^[0-9a-z]+$/,L6=/^[0-9A-HJKMNP-TV-Z]{26}$/,z6=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,$6=/^[a-z0-9_-]{21}$/i,F6=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,V6=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,H6="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let xf;const B6=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,U6=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,W6=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,b_="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Z6=new RegExp(`^${b_}$`);function C_(e){let t="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`),t}function G6(e){return new RegExp(`^${C_(e)}$`)}function E_(e){let t=`${b_}T${C_(e)}`;const n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${n.join("|")})`,new RegExp(`^${t}$`)}function Y6(e,t){return!!((t==="v4"||!t)&&B6.test(e)||(t==="v6"||!t)&&U6.test(e))}class gn extends Ce{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==le.string){const i=this._getOrReturnCtx(t);return se(i,{code:J.invalid_type,expected:le.string,received:i.parsedType}),ve}const r=new yt;let o;for(const i of this._def.checks)if(i.kind==="min")t.data.length<i.value&&(o=this._getOrReturnCtx(t,o),se(o,{code:J.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="max")t.data.length>i.value&&(o=this._getOrReturnCtx(t,o),se(o,{code:J.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="length"){const s=t.data.length>i.value,a=t.data.length<i.value;(s||a)&&(o=this._getOrReturnCtx(t,o),s?se(o,{code:J.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):a&&se(o,{code:J.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),r.dirty())}else if(i.kind==="email")V6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"email",code:J.invalid_string,message:i.message}),r.dirty());else if(i.kind==="emoji")xf||(xf=new RegExp(H6,"u")),xf.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"emoji",code:J.invalid_string,message:i.message}),r.dirty());else if(i.kind==="uuid")z6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"uuid",code:J.invalid_string,message:i.message}),r.dirty());else if(i.kind==="nanoid")$6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"nanoid",code:J.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid")O6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"cuid",code:J.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid2")D6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"cuid2",code:J.invalid_string,message:i.message}),r.dirty());else if(i.kind==="ulid")L6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"ulid",code:J.invalid_string,message:i.message}),r.dirty());else if(i.kind==="url")try{new URL(t.data)}catch{o=this._getOrReturnCtx(t,o),se(o,{validation:"url",code:J.invalid_string,message:i.message}),r.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"regex",code:J.invalid_string,message:i.message}),r.dirty())):i.kind==="trim"?t.data=t.data.trim():i.kind==="includes"?t.data.includes(i.value,i.position)||(o=this._getOrReturnCtx(t,o),se(o,{code:J.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),r.dirty()):i.kind==="toLowerCase"?t.data=t.data.toLowerCase():i.kind==="toUpperCase"?t.data=t.data.toUpperCase():i.kind==="startsWith"?t.data.startsWith(i.value)||(o=this._getOrReturnCtx(t,o),se(o,{code:J.invalid_string,validation:{startsWith:i.value},message:i.message}),r.dirty()):i.kind==="endsWith"?t.data.endsWith(i.value)||(o=this._getOrReturnCtx(t,o),se(o,{code:J.invalid_string,validation:{endsWith:i.value},message:i.message}),r.dirty()):i.kind==="datetime"?E_(i).test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{code:J.invalid_string,validation:"datetime",message:i.message}),r.dirty()):i.kind==="date"?Z6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{code:J.invalid_string,validation:"date",message:i.message}),r.dirty()):i.kind==="time"?G6(i).test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{code:J.invalid_string,validation:"time",message:i.message}),r.dirty()):i.kind==="duration"?F6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"duration",code:J.invalid_string,message:i.message}),r.dirty()):i.kind==="ip"?Y6(t.data,i.version)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"ip",code:J.invalid_string,message:i.message}),r.dirty()):i.kind==="base64"?W6.test(t.data)||(o=this._getOrReturnCtx(t,o),se(o,{validation:"base64",code:J.invalid_string,message:i.message}),r.dirty()):ke.assertNever(i);return{status:r.value,value:t.data}}_regex(t,n,r){return this.refinement(o=>t.test(o),{validation:n,code:J.invalid_string,...fe.errToObj(r)})}_addCheck(t){return new gn({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...fe.errToObj(t)})}url(t){return this._addCheck({kind:"url",...fe.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...fe.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...fe.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...fe.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...fe.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...fe.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...fe.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...fe.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...fe.errToObj(t)})}datetime(t){var n,r;return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof(t==null?void 0:t.precision)>"u"?null:t==null?void 0:t.precision,offset:(n=t==null?void 0:t.offset)!==null&&n!==void 0?n:!1,local:(r=t==null?void 0:t.local)!==null&&r!==void 0?r:!1,...fe.errToObj(t==null?void 0:t.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof(t==null?void 0:t.precision)>"u"?null:t==null?void 0:t.precision,...fe.errToObj(t==null?void 0:t.message)})}duration(t){return this._addCheck({kind:"duration",...fe.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...fe.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n==null?void 0:n.position,...fe.errToObj(n==null?void 0:n.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...fe.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...fe.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...fe.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...fe.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...fe.errToObj(n)})}nonempty(t){return this.min(1,fe.errToObj(t))}trim(){return new gn({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new gn({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new gn({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get minLength(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxLength(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}gn.create=e=>{var t;return new gn({checks:[],typeName:ge.ZodString,coerce:(t=e==null?void 0:e.coerce)!==null&&t!==void 0?t:!1,..._e(e)})};function K6(e,t){const n=(e.toString().split(".")[1]||"").length,r=(t.toString().split(".")[1]||"").length,o=n>r?n:r,i=parseInt(e.toFixed(o).replace(".","")),s=parseInt(t.toFixed(o).replace(".",""));return i%s/Math.pow(10,o)}class no extends Ce{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==le.number){const i=this._getOrReturnCtx(t);return se(i,{code:J.invalid_type,expected:le.number,received:i.parsedType}),ve}let r;const o=new yt;for(const i of this._def.checks)i.kind==="int"?ke.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),se(r,{code:J.invalid_type,expected:"integer",received:"float",message:i.message}),o.dirty()):i.kind==="min"?(i.inclusive?t.data<i.value:t.data<=i.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:J.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),o.dirty()):i.kind==="max"?(i.inclusive?t.data>i.value:t.data>=i.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:J.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),o.dirty()):i.kind==="multipleOf"?K6(t.data,i.value)!==0&&(r=this._getOrReturnCtx(t,r),se(r,{code:J.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):i.kind==="finite"?Number.isFinite(t.data)||(r=this._getOrReturnCtx(t,r),se(r,{code:J.not_finite,message:i.message}),o.dirty()):ke.assertNever(i);return{status:o.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,fe.toString(n))}gt(t,n){return this.setLimit("min",t,!1,fe.toString(n))}lte(t,n){return this.setLimit("max",t,!0,fe.toString(n))}lt(t,n){return this.setLimit("max",t,!1,fe.toString(n))}setLimit(t,n,r,o){return new no({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:fe.toString(o)}]})}_addCheck(t){return new no({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:fe.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:fe.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:fe.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:fe.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:fe.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:fe.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:fe.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:fe.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:fe.toString(t)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&ke.isInteger(t.value))}get isFinite(){let t=null,n=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(t===null||r.value<t)&&(t=r.value)}return Number.isFinite(n)&&Number.isFinite(t)}}no.create=e=>new no({checks:[],typeName:ge.ZodNumber,coerce:(e==null?void 0:e.coerce)||!1,..._e(e)});class ro extends Ce{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce&&(t.data=BigInt(t.data)),this._getType(t)!==le.bigint){const i=this._getOrReturnCtx(t);return se(i,{code:J.invalid_type,expected:le.bigint,received:i.parsedType}),ve}let r;const o=new yt;for(const i of this._def.checks)i.kind==="min"?(i.inclusive?t.data<i.value:t.data<=i.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:J.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),o.dirty()):i.kind==="max"?(i.inclusive?t.data>i.value:t.data>=i.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:J.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),o.dirty()):i.kind==="multipleOf"?t.data%i.value!==BigInt(0)&&(r=this._getOrReturnCtx(t,r),se(r,{code:J.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):ke.assertNever(i);return{status:o.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,fe.toString(n))}gt(t,n){return this.setLimit("min",t,!1,fe.toString(n))}lte(t,n){return this.setLimit("max",t,!0,fe.toString(n))}lt(t,n){return this.setLimit("max",t,!1,fe.toString(n))}setLimit(t,n,r,o){return new ro({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:fe.toString(o)}]})}_addCheck(t){return new ro({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:fe.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:fe.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:fe.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:fe.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:fe.toString(n)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}ro.create=e=>{var t;return new ro({checks:[],typeName:ge.ZodBigInt,coerce:(t=e==null?void 0:e.coerce)!==null&&t!==void 0?t:!1,..._e(e)})};class Oa extends Ce{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==le.boolean){const r=this._getOrReturnCtx(t);return se(r,{code:J.invalid_type,expected:le.boolean,received:r.parsedType}),ve}return St(t.data)}}Oa.create=e=>new Oa({typeName:ge.ZodBoolean,coerce:(e==null?void 0:e.coerce)||!1,..._e(e)});class $o extends Ce{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==le.date){const i=this._getOrReturnCtx(t);return se(i,{code:J.invalid_type,expected:le.date,received:i.parsedType}),ve}if(isNaN(t.data.getTime())){const i=this._getOrReturnCtx(t);return se(i,{code:J.invalid_date}),ve}const r=new yt;let o;for(const i of this._def.checks)i.kind==="min"?t.data.getTime()<i.value&&(o=this._getOrReturnCtx(t,o),se(o,{code:J.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),r.dirty()):i.kind==="max"?t.data.getTime()>i.value&&(o=this._getOrReturnCtx(t,o),se(o,{code:J.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):ke.assertNever(i);return{status:r.value,value:new Date(t.data.getTime())}}_addCheck(t){return new $o({...this._def,checks:[...this._def.checks,t]})}min(t,n){return this._addCheck({kind:"min",value:t.getTime(),message:fe.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:fe.toString(n)})}get minDate(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t!=null?new Date(t):null}}$o.create=e=>new $o({checks:[],coerce:(e==null?void 0:e.coerce)||!1,typeName:ge.ZodDate,..._e(e)});class su extends Ce{_parse(t){if(this._getType(t)!==le.symbol){const r=this._getOrReturnCtx(t);return se(r,{code:J.invalid_type,expected:le.symbol,received:r.parsedType}),ve}return St(t.data)}}su.create=e=>new su({typeName:ge.ZodSymbol,..._e(e)});class Da extends Ce{_parse(t){if(this._getType(t)!==le.undefined){const r=this._getOrReturnCtx(t);return se(r,{code:J.invalid_type,expected:le.undefined,received:r.parsedType}),ve}return St(t.data)}}Da.create=e=>new Da({typeName:ge.ZodUndefined,..._e(e)});class La extends Ce{_parse(t){if(this._getType(t)!==le.null){const r=this._getOrReturnCtx(t);return se(r,{code:J.invalid_type,expected:le.null,received:r.parsedType}),ve}return St(t.data)}}La.create=e=>new La({typeName:ge.ZodNull,..._e(e)});class ns extends Ce{constructor(){super(...arguments),this._any=!0}_parse(t){return St(t.data)}}ns.create=e=>new ns({typeName:ge.ZodAny,..._e(e)});class Po extends Ce{constructor(){super(...arguments),this._unknown=!0}_parse(t){return St(t.data)}}Po.create=e=>new Po({typeName:ge.ZodUnknown,..._e(e)});class vr extends Ce{_parse(t){const n=this._getOrReturnCtx(t);return se(n,{code:J.invalid_type,expected:le.never,received:n.parsedType}),ve}}vr.create=e=>new vr({typeName:ge.ZodNever,..._e(e)});class au extends Ce{_parse(t){if(this._getType(t)!==le.undefined){const r=this._getOrReturnCtx(t);return se(r,{code:J.invalid_type,expected:le.void,received:r.parsedType}),ve}return St(t.data)}}au.create=e=>new au({typeName:ge.ZodVoid,..._e(e)});class wn extends Ce{_parse(t){const{ctx:n,status:r}=this._processInputParams(t),o=this._def;if(n.parsedType!==le.array)return se(n,{code:J.invalid_type,expected:le.array,received:n.parsedType}),ve;if(o.exactLength!==null){const s=n.data.length>o.exactLength.value,a=n.data.length<o.exactLength.value;(s||a)&&(se(n,{code:s?J.too_big:J.too_small,minimum:a?o.exactLength.value:void 0,maximum:s?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),r.dirty())}if(o.minLength!==null&&n.data.length<o.minLength.value&&(se(n,{code:J.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),r.dirty()),o.maxLength!==null&&n.data.length>o.maxLength.value&&(se(n,{code:J.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((s,a)=>o.type._parseAsync(new Bn(n,s,n.path,a)))).then(s=>yt.mergeArray(r,s));const i=[...n.data].map((s,a)=>o.type._parseSync(new Bn(n,s,n.path,a)));return yt.mergeArray(r,i)}get element(){return this._def.type}min(t,n){return new wn({...this._def,minLength:{value:t,message:fe.toString(n)}})}max(t,n){return new wn({...this._def,maxLength:{value:t,message:fe.toString(n)}})}length(t,n){return new wn({...this._def,exactLength:{value:t,message:fe.toString(n)}})}nonempty(t){return this.min(1,t)}}wn.create=(e,t)=>new wn({type:e,minLength:null,maxLength:null,exactLength:null,typeName:ge.ZodArray,..._e(t)});function ai(e){if(e instanceof He){const t={};for(const n in e.shape){const r=e.shape[n];t[n]=zn.create(ai(r))}return new He({...e._def,shape:()=>t})}else return e instanceof wn?new wn({...e._def,type:ai(e.element)}):e instanceof zn?zn.create(ai(e.unwrap())):e instanceof io?io.create(ai(e.unwrap())):e instanceof Un?Un.create(e.items.map(t=>ai(t))):e}class He extends Ce{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const t=this._def.shape(),n=ke.objectKeys(t);return this._cached={shape:t,keys:n}}_parse(t){if(this._getType(t)!==le.object){const c=this._getOrReturnCtx(t);return se(c,{code:J.invalid_type,expected:le.object,received:c.parsedType}),ve}const{status:r,ctx:o}=this._processInputParams(t),{shape:i,keys:s}=this._getCached(),a=[];if(!(this._def.catchall instanceof vr&&this._def.unknownKeys==="strip"))for(const c in o.data)s.includes(c)||a.push(c);const l=[];for(const c of s){const d=i[c],u=o.data[c];l.push({key:{status:"valid",value:c},value:d._parse(new Bn(o,u,o.path,c)),alwaysSet:c in o.data})}if(this._def.catchall instanceof vr){const c=this._def.unknownKeys;if(c==="passthrough")for(const d of a)l.push({key:{status:"valid",value:d},value:{status:"valid",value:o.data[d]}});else if(c==="strict")a.length>0&&(se(o,{code:J.unrecognized_keys,keys:a}),r.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const d of a){const u=o.data[d];l.push({key:{status:"valid",value:d},value:c._parse(new Bn(o,u,o.path,d)),alwaysSet:d in o.data})}}return o.common.async?Promise.resolve().then(async()=>{const c=[];for(const d of l){const u=await d.key,f=await d.value;c.push({key:u,value:f,alwaysSet:d.alwaysSet})}return c}).then(c=>yt.mergeObjectSync(r,c)):yt.mergeObjectSync(r,l)}get shape(){return this._def.shape()}strict(t){return fe.errToObj,new He({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(n,r)=>{var o,i,s,a;const l=(s=(i=(o=this._def).errorMap)===null||i===void 0?void 0:i.call(o,n,r).message)!==null&&s!==void 0?s:r.defaultError;return n.code==="unrecognized_keys"?{message:(a=fe.errToObj(t).message)!==null&&a!==void 0?a:l}:{message:l}}}:{}})}strip(){return new He({...this._def,unknownKeys:"strip"})}passthrough(){return new He({...this._def,unknownKeys:"passthrough"})}extend(t){return new He({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new He({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:ge.ZodObject})}setKey(t,n){return this.augment({[t]:n})}catchall(t){return new He({...this._def,catchall:t})}pick(t){const n={};return ke.objectKeys(t).forEach(r=>{t[r]&&this.shape[r]&&(n[r]=this.shape[r])}),new He({...this._def,shape:()=>n})}omit(t){const n={};return ke.objectKeys(this.shape).forEach(r=>{t[r]||(n[r]=this.shape[r])}),new He({...this._def,shape:()=>n})}deepPartial(){return ai(this)}partial(t){const n={};return ke.objectKeys(this.shape).forEach(r=>{const o=this.shape[r];t&&!t[r]?n[r]=o:n[r]=o.optional()}),new He({...this._def,shape:()=>n})}required(t){const n={};return ke.objectKeys(this.shape).forEach(r=>{if(t&&!t[r])n[r]=this.shape[r];else{let i=this.shape[r];for(;i instanceof zn;)i=i._def.innerType;n[r]=i}}),new He({...this._def,shape:()=>n})}keyof(){return k_(ke.objectKeys(this.shape))}}He.create=(e,t)=>new He({shape:()=>e,unknownKeys:"strip",catchall:vr.create(),typeName:ge.ZodObject,..._e(t)});He.strictCreate=(e,t)=>new He({shape:()=>e,unknownKeys:"strict",catchall:vr.create(),typeName:ge.ZodObject,..._e(t)});He.lazycreate=(e,t)=>new He({shape:e,unknownKeys:"strip",catchall:vr.create(),typeName:ge.ZodObject,..._e(t)});class za extends Ce{_parse(t){const{ctx:n}=this._processInputParams(t),r=this._def.options;function o(i){for(const a of i)if(a.result.status==="valid")return a.result;for(const a of i)if(a.result.status==="dirty")return n.common.issues.push(...a.ctx.common.issues),a.result;const s=i.map(a=>new Zt(a.ctx.common.issues));return se(n,{code:J.invalid_union,unionErrors:s}),ve}if(n.common.async)return Promise.all(r.map(async i=>{const s={...n,common:{...n.common,issues:[]},parent:null};return{result:await i._parseAsync({data:n.data,path:n.path,parent:s}),ctx:s}})).then(o);{let i;const s=[];for(const l of r){const c={...n,common:{...n.common,issues:[]},parent:null},d=l._parseSync({data:n.data,path:n.path,parent:c});if(d.status==="valid")return d;d.status==="dirty"&&!i&&(i={result:d,ctx:c}),c.common.issues.length&&s.push(c.common.issues)}if(i)return n.common.issues.push(...i.ctx.common.issues),i.result;const a=s.map(l=>new Zt(l));return se(n,{code:J.invalid_union,unionErrors:a}),ve}}get options(){return this._def.options}}za.create=(e,t)=>new za({options:e,typeName:ge.ZodUnion,..._e(t)});const Jn=e=>e instanceof Va?Jn(e.schema):e instanceof Cn?Jn(e.innerType()):e instanceof Ha?[e.value]:e instanceof oo?e.options:e instanceof Ba?ke.objectValues(e.enum):e instanceof Ua?Jn(e._def.innerType):e instanceof Da?[void 0]:e instanceof La?[null]:e instanceof zn?[void 0,...Jn(e.unwrap())]:e instanceof io?[null,...Jn(e.unwrap())]:e instanceof Hm||e instanceof Za?Jn(e.unwrap()):e instanceof Wa?Jn(e._def.innerType):[];class ld extends Ce{_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==le.object)return se(n,{code:J.invalid_type,expected:le.object,received:n.parsedType}),ve;const r=this.discriminator,o=n.data[r],i=this.optionsMap.get(o);return i?n.common.async?i._parseAsync({data:n.data,path:n.path,parent:n}):i._parseSync({data:n.data,path:n.path,parent:n}):(se(n,{code:J.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),ve)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){const o=new Map;for(const i of n){const s=Jn(i.shape[t]);if(!s.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(const a of s){if(o.has(a))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(a)}`);o.set(a,i)}}return new ld({typeName:ge.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:o,..._e(r)})}}function nh(e,t){const n=Fr(e),r=Fr(t);if(e===t)return{valid:!0,data:e};if(n===le.object&&r===le.object){const o=ke.objectKeys(t),i=ke.objectKeys(e).filter(a=>o.indexOf(a)!==-1),s={...e,...t};for(const a of i){const l=nh(e[a],t[a]);if(!l.valid)return{valid:!1};s[a]=l.data}return{valid:!0,data:s}}else if(n===le.array&&r===le.array){if(e.length!==t.length)return{valid:!1};const o=[];for(let i=0;i<e.length;i++){const s=e[i],a=t[i],l=nh(s,a);if(!l.valid)return{valid:!1};o.push(l.data)}return{valid:!0,data:o}}else return n===le.date&&r===le.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}class $a extends Ce{_parse(t){const{status:n,ctx:r}=this._processInputParams(t),o=(i,s)=>{if(eh(i)||eh(s))return ve;const a=nh(i.value,s.value);return a.valid?((th(i)||th(s))&&n.dirty(),{status:n.value,value:a.data}):(se(r,{code:J.invalid_intersection_types}),ve)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([i,s])=>o(i,s)):o(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}$a.create=(e,t,n)=>new $a({left:e,right:t,typeName:ge.ZodIntersection,..._e(n)});class Un extends Ce{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==le.array)return se(r,{code:J.invalid_type,expected:le.array,received:r.parsedType}),ve;if(r.data.length<this._def.items.length)return se(r,{code:J.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),ve;!this._def.rest&&r.data.length>this._def.items.length&&(se(r,{code:J.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());const i=[...r.data].map((s,a)=>{const l=this._def.items[a]||this._def.rest;return l?l._parse(new Bn(r,s,r.path,a)):null}).filter(s=>!!s);return r.common.async?Promise.all(i).then(s=>yt.mergeArray(n,s)):yt.mergeArray(n,i)}get items(){return this._def.items}rest(t){return new Un({...this._def,rest:t})}}Un.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Un({items:e,typeName:ge.ZodTuple,rest:null,..._e(t)})};class Fa extends Ce{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==le.object)return se(r,{code:J.invalid_type,expected:le.object,received:r.parsedType}),ve;const o=[],i=this._def.keyType,s=this._def.valueType;for(const a in r.data)o.push({key:i._parse(new Bn(r,a,r.path,a)),value:s._parse(new Bn(r,r.data[a],r.path,a)),alwaysSet:a in r.data});return r.common.async?yt.mergeObjectAsync(n,o):yt.mergeObjectSync(n,o)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof Ce?new Fa({keyType:t,valueType:n,typeName:ge.ZodRecord,..._e(r)}):new Fa({keyType:gn.create(),valueType:t,typeName:ge.ZodRecord,..._e(n)})}}class lu extends Ce{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==le.map)return se(r,{code:J.invalid_type,expected:le.map,received:r.parsedType}),ve;const o=this._def.keyType,i=this._def.valueType,s=[...r.data.entries()].map(([a,l],c)=>({key:o._parse(new Bn(r,a,r.path,[c,"key"])),value:i._parse(new Bn(r,l,r.path,[c,"value"]))}));if(r.common.async){const a=new Map;return Promise.resolve().then(async()=>{for(const l of s){const c=await l.key,d=await l.value;if(c.status==="aborted"||d.status==="aborted")return ve;(c.status==="dirty"||d.status==="dirty")&&n.dirty(),a.set(c.value,d.value)}return{status:n.value,value:a}})}else{const a=new Map;for(const l of s){const c=l.key,d=l.value;if(c.status==="aborted"||d.status==="aborted")return ve;(c.status==="dirty"||d.status==="dirty")&&n.dirty(),a.set(c.value,d.value)}return{status:n.value,value:a}}}}lu.create=(e,t,n)=>new lu({valueType:t,keyType:e,typeName:ge.ZodMap,..._e(n)});class Fo extends Ce{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==le.set)return se(r,{code:J.invalid_type,expected:le.set,received:r.parsedType}),ve;const o=this._def;o.minSize!==null&&r.data.size<o.minSize.value&&(se(r,{code:J.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),n.dirty()),o.maxSize!==null&&r.data.size>o.maxSize.value&&(se(r,{code:J.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),n.dirty());const i=this._def.valueType;function s(l){const c=new Set;for(const d of l){if(d.status==="aborted")return ve;d.status==="dirty"&&n.dirty(),c.add(d.value)}return{status:n.value,value:c}}const a=[...r.data.values()].map((l,c)=>i._parse(new Bn(r,l,r.path,c)));return r.common.async?Promise.all(a).then(l=>s(l)):s(a)}min(t,n){return new Fo({...this._def,minSize:{value:t,message:fe.toString(n)}})}max(t,n){return new Fo({...this._def,maxSize:{value:t,message:fe.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}}Fo.create=(e,t)=>new Fo({valueType:e,minSize:null,maxSize:null,typeName:ge.ZodSet,..._e(t)});class ji extends Ce{constructor(){super(...arguments),this.validate=this.implement}_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==le.function)return se(n,{code:J.invalid_type,expected:le.function,received:n.parsedType}),ve;function r(a,l){return ou({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,ru(),ts].filter(c=>!!c),issueData:{code:J.invalid_arguments,argumentsError:l}})}function o(a,l){return ou({data:a,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,ru(),ts].filter(c=>!!c),issueData:{code:J.invalid_return_type,returnTypeError:l}})}const i={errorMap:n.common.contextualErrorMap},s=n.data;if(this._def.returns instanceof rs){const a=this;return St(async function(...l){const c=new Zt([]),d=await a._def.args.parseAsync(l,i).catch(p=>{throw c.addIssue(r(l,p)),c}),u=await Reflect.apply(s,this,d);return await a._def.returns._def.type.parseAsync(u,i).catch(p=>{throw c.addIssue(o(u,p)),c})})}else{const a=this;return St(function(...l){const c=a._def.args.safeParse(l,i);if(!c.success)throw new Zt([r(l,c.error)]);const d=Reflect.apply(s,this,c.data),u=a._def.returns.safeParse(d,i);if(!u.success)throw new Zt([o(d,u.error)]);return u.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new ji({...this._def,args:Un.create(t).rest(Po.create())})}returns(t){return new ji({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,n,r){return new ji({args:t||Un.create([]).rest(Po.create()),returns:n||Po.create(),typeName:ge.ZodFunction,..._e(r)})}}class Va extends Ce{get schema(){return this._def.getter()}_parse(t){const{ctx:n}=this._processInputParams(t);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}}Va.create=(e,t)=>new Va({getter:e,typeName:ge.ZodLazy,..._e(t)});class Ha extends Ce{_parse(t){if(t.data!==this._def.value){const n=this._getOrReturnCtx(t);return se(n,{received:n.data,code:J.invalid_literal,expected:this._def.value}),ve}return{status:"valid",value:t.data}}get value(){return this._def.value}}Ha.create=(e,t)=>new Ha({value:e,typeName:ge.ZodLiteral,..._e(t)});function k_(e,t){return new oo({values:e,typeName:ge.ZodEnum,..._e(t)})}class oo extends Ce{constructor(){super(...arguments),Fs.set(this,void 0)}_parse(t){if(typeof t.data!="string"){const n=this._getOrReturnCtx(t),r=this._def.values;return se(n,{expected:ke.joinValues(r),received:n.parsedType,code:J.invalid_type}),ve}if(iu(this,Fs)||S_(this,Fs,new Set(this._def.values)),!iu(this,Fs).has(t.data)){const n=this._getOrReturnCtx(t),r=this._def.values;return se(n,{received:n.data,code:J.invalid_enum_value,options:r}),ve}return St(t.data)}get options(){return this._def.values}get enum(){const t={};for(const n of this._def.values)t[n]=n;return t}get Values(){const t={};for(const n of this._def.values)t[n]=n;return t}get Enum(){const t={};for(const n of this._def.values)t[n]=n;return t}extract(t,n=this._def){return oo.create(t,{...this._def,...n})}exclude(t,n=this._def){return oo.create(this.options.filter(r=>!t.includes(r)),{...this._def,...n})}}Fs=new WeakMap;oo.create=k_;class Ba extends Ce{constructor(){super(...arguments),Vs.set(this,void 0)}_parse(t){const n=ke.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(t);if(r.parsedType!==le.string&&r.parsedType!==le.number){const o=ke.objectValues(n);return se(r,{expected:ke.joinValues(o),received:r.parsedType,code:J.invalid_type}),ve}if(iu(this,Vs)||S_(this,Vs,new Set(ke.getValidEnumValues(this._def.values))),!iu(this,Vs).has(t.data)){const o=ke.objectValues(n);return se(r,{received:r.data,code:J.invalid_enum_value,options:o}),ve}return St(t.data)}get enum(){return this._def.values}}Vs=new WeakMap;Ba.create=(e,t)=>new Ba({values:e,typeName:ge.ZodNativeEnum,..._e(t)});class rs extends Ce{unwrap(){return this._def.type}_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==le.promise&&n.common.async===!1)return se(n,{code:J.invalid_type,expected:le.promise,received:n.parsedType}),ve;const r=n.parsedType===le.promise?n.data:Promise.resolve(n.data);return St(r.then(o=>this._def.type.parseAsync(o,{path:n.path,errorMap:n.common.contextualErrorMap})))}}rs.create=(e,t)=>new rs({type:e,typeName:ge.ZodPromise,..._e(t)});class Cn extends Ce{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ge.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){const{status:n,ctx:r}=this._processInputParams(t),o=this._def.effect||null,i={addIssue:s=>{se(r,s),s.fatal?n.abort():n.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),o.type==="preprocess"){const s=o.transform(r.data,i);if(r.common.async)return Promise.resolve(s).then(async a=>{if(n.value==="aborted")return ve;const l=await this._def.schema._parseAsync({data:a,path:r.path,parent:r});return l.status==="aborted"?ve:l.status==="dirty"||n.value==="dirty"?bi(l.value):l});{if(n.value==="aborted")return ve;const a=this._def.schema._parseSync({data:s,path:r.path,parent:r});return a.status==="aborted"?ve:a.status==="dirty"||n.value==="dirty"?bi(a.value):a}}if(o.type==="refinement"){const s=a=>{const l=o.refinement(a,i);if(r.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(r.common.async===!1){const a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?ve:(a.status==="dirty"&&n.dirty(),s(a.value),{status:n.value,value:a.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>a.status==="aborted"?ve:(a.status==="dirty"&&n.dirty(),s(a.value).then(()=>({status:n.value,value:a.value}))))}if(o.type==="transform")if(r.common.async===!1){const s=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!Ma(s))return s;const a=o.transform(s.value,i);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:a}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(s=>Ma(s)?Promise.resolve(o.transform(s.value,i)).then(a=>({status:n.value,value:a})):s);ke.assertNever(o)}}Cn.create=(e,t,n)=>new Cn({schema:e,typeName:ge.ZodEffects,effect:t,..._e(n)});Cn.createWithPreprocess=(e,t,n)=>new Cn({schema:t,effect:{type:"preprocess",transform:e},typeName:ge.ZodEffects,..._e(n)});class zn extends Ce{_parse(t){return this._getType(t)===le.undefined?St(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}zn.create=(e,t)=>new zn({innerType:e,typeName:ge.ZodOptional,..._e(t)});class io extends Ce{_parse(t){return this._getType(t)===le.null?St(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}io.create=(e,t)=>new io({innerType:e,typeName:ge.ZodNullable,..._e(t)});class Ua extends Ce{_parse(t){const{ctx:n}=this._processInputParams(t);let r=n.data;return n.parsedType===le.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}}Ua.create=(e,t)=>new Ua({innerType:e,typeName:ge.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,..._e(t)});class Wa extends Ce{_parse(t){const{ctx:n}=this._processInputParams(t),r={...n,common:{...n.common,issues:[]}},o=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return ja(o)?o.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Zt(r.common.issues)},input:r.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Zt(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Wa.create=(e,t)=>new Wa({innerType:e,typeName:ge.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,..._e(t)});class cu extends Ce{_parse(t){if(this._getType(t)!==le.nan){const r=this._getOrReturnCtx(t);return se(r,{code:J.invalid_type,expected:le.nan,received:r.parsedType}),ve}return{status:"valid",value:t.data}}}cu.create=e=>new cu({typeName:ge.ZodNaN,..._e(e)});const X6=Symbol("zod_brand");class Hm extends Ce{_parse(t){const{ctx:n}=this._processInputParams(t),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}}class al extends Ce{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.common.async)return(async()=>{const i=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?ve:i.status==="dirty"?(n.dirty(),bi(i.value)):this._def.out._parseAsync({data:i.value,path:r.path,parent:r})})();{const o=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?ve:o.status==="dirty"?(n.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:r.path,parent:r})}}static create(t,n){return new al({in:t,out:n,typeName:ge.ZodPipeline})}}class Za extends Ce{_parse(t){const n=this._def.innerType._parse(t),r=o=>(Ma(o)&&(o.value=Object.freeze(o.value)),o);return ja(n)?n.then(o=>r(o)):r(n)}unwrap(){return this._def.innerType}}Za.create=(e,t)=>new Za({innerType:e,typeName:ge.ZodReadonly,..._e(t)});function N_(e,t={},n){return e?ns.create().superRefine((r,o)=>{var i,s;if(!e(r)){const a=typeof t=="function"?t(r):typeof t=="string"?{message:t}:t,l=(s=(i=a.fatal)!==null&&i!==void 0?i:n)!==null&&s!==void 0?s:!0,c=typeof a=="string"?{message:a}:a;o.addIssue({code:"custom",...c,fatal:l})}}):ns.create()}const q6={object:He.lazycreate};var ge;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(ge||(ge={}));const Q6=(e,t={message:`Input not instance of ${e.name}`})=>N_(n=>n instanceof e,t),T_=gn.create,P_=no.create,J6=cu.create,eM=ro.create,I_=Oa.create,tM=$o.create,nM=su.create,rM=Da.create,oM=La.create,iM=ns.create,sM=Po.create,aM=vr.create,lM=au.create,cM=wn.create,uM=He.create,dM=He.strictCreate,fM=za.create,pM=ld.create,hM=$a.create,mM=Un.create,gM=Fa.create,vM=lu.create,yM=Fo.create,xM=ji.create,wM=Va.create,_M=Ha.create,SM=oo.create,bM=Ba.create,CM=rs.create,Gv=Cn.create,EM=zn.create,kM=io.create,NM=Cn.createWithPreprocess,TM=al.create,PM=()=>T_().optional(),IM=()=>P_().optional(),RM=()=>I_().optional(),AM={string:e=>gn.create({...e,coerce:!0}),number:e=>no.create({...e,coerce:!0}),boolean:e=>Oa.create({...e,coerce:!0}),bigint:e=>ro.create({...e,coerce:!0}),date:e=>$o.create({...e,coerce:!0})},MM=ve;var Pe=Object.freeze({__proto__:null,defaultErrorMap:ts,setErrorMap:M6,getErrorMap:ru,makeIssue:ou,EMPTY_PATH:j6,addIssueToContext:se,ParseStatus:yt,INVALID:ve,DIRTY:bi,OK:St,isAborted:eh,isDirty:th,isValid:Ma,isAsync:ja,get util(){return ke},get objectUtil(){return Jp},ZodParsedType:le,getParsedType:Fr,ZodType:Ce,datetimeRegex:E_,ZodString:gn,ZodNumber:no,ZodBigInt:ro,ZodBoolean:Oa,ZodDate:$o,ZodSymbol:su,ZodUndefined:Da,ZodNull:La,ZodAny:ns,ZodUnknown:Po,ZodNever:vr,ZodVoid:au,ZodArray:wn,ZodObject:He,ZodUnion:za,ZodDiscriminatedUnion:ld,ZodIntersection:$a,ZodTuple:Un,ZodRecord:Fa,ZodMap:lu,ZodSet:Fo,ZodFunction:ji,ZodLazy:Va,ZodLiteral:Ha,ZodEnum:oo,ZodNativeEnum:Ba,ZodPromise:rs,ZodEffects:Cn,ZodTransformer:Cn,ZodOptional:zn,ZodNullable:io,ZodDefault:Ua,ZodCatch:Wa,ZodNaN:cu,BRAND:X6,ZodBranded:Hm,ZodPipeline:al,ZodReadonly:Za,custom:N_,Schema:Ce,ZodSchema:Ce,late:q6,get ZodFirstPartyTypeKind(){return ge},coerce:AM,any:iM,array:cM,bigint:eM,boolean:I_,date:tM,discriminatedUnion:pM,effect:Gv,enum:SM,function:xM,instanceof:Q6,intersection:hM,lazy:wM,literal:_M,map:vM,nan:J6,nativeEnum:bM,never:aM,null:oM,nullable:kM,number:P_,object:uM,oboolean:RM,onumber:IM,optional:EM,ostring:PM,pipeline:TM,preprocess:NM,promise:CM,record:gM,set:yM,strictObject:dM,string:T_,symbol:nM,transformer:Gv,tuple:mM,undefined:rM,union:fM,unknown:sM,void:lM,NEVER:MM,ZodIssueCode:J,quotelessJson:A6,ZodError:Zt});const R_=["node-23.1.0","nextjs:deno-2.0.0"];function Lt(e){switch(e.type){case"app":return e.data.label||"Service";case"github":return e.data.address||"Github";case"gateway-https":return e.data&&e.data.network&&e.data.subdomain?`https://${e.data.subdomain}.${e.data.network}`:"HTTPS Gateway";case"gateway-tcp":return e.data&&e.data.network&&e.data.subdomain?`${e.data.subdomain}.${e.data.network}`:"TCP Gateway";case"mongodb":return e.data.label||"MongoDB";case"postgresql":return e.data.label||"PostgreSQL";case"volume":return e.data.label||"Volume";case void 0:throw new Error("MUST NOT REACH!")}}function os(e,t){switch(e.type){case"app":return t==="ports"?e.data!==void 0&&e.data.ports!==void 0&&e.data.ports.length>0:t==="repository"?!e.data||!e.data.repository||!e.data.repository.id:!1;case"github":return!!(e.data!==void 0&&e.data.address);case"gateway-https":return e.data===void 0||e.data.https===void 0;case"gateway-tcp":return!0;case"mongodb":return!0;case"postgresql":return!0;case"volume":return e.data===void 0||e.data.type===void 0?!1:e.data.type==="ReadWriteOnce"||e.data.type==="ReadWriteOncePod"?e.data.attachedTo===void 0||e.data.attachedTo.length===0:!0;case void 0:throw new Error("MUST NOT REACH!")}}function jM(e){switch(e.type){case"app":return[`DODO_SERVICE_${e.data.label.toUpperCase()}_ADDRESS`,...(e.data.ports||[]).map(t=>`DODO_SERVICE_${e.data.label.toUpperCase()}_ADDRESS_${t.name.toUpperCase()}`)];case"github":return[];case"gateway-https":return[];case"gateway-tcp":return[];case"mongodb":return[`DODO_MONGODB_${e.data.label.toUpperCase()}_CONNECTION_URL`];case"postgresql":return[`DODO_POSTGRESQL_${e.data.label.toUpperCase()}_CONNECTION_URL`];case"volume":return[`DODO_VOLUME_${e.data.label.toUpperCase()}_PATH`];case void 0:throw new Error("MUST NOT REACH")}}Pe.object({deployKey:Pe.string(),networks:Pe.array(Pe.object({name:Pe.string(),domain:Pe.string()}))});const OM=e=>e.projectId,DM=e=>e.categories,LM=e=>e.messages;function A_(){return zt(OM)}function zM(){return zt(DM)}function cd(){return zt(LM)}function $M(e){return cd().filter(t=>t.nodeId===e)}function ll(){return{deployKey:"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPK58vMu0MwIzdZT+mqpIBkhl48p9+/YwDCZv7MgTesF",networks:[{name:"Public",domain:"v1.dodo.cloud"},{name:"Private",domain:"p.v1.dodo.cloud"}]}}const Yv=k6(),zt=_6((e,t)=>{e({env:{deployKey:"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPK58vMu0MwIzdZT+mqpIBkhl48p9+/YwDCZv7MgTesF",networks:[{name:"Public",domain:"v1.dodo.cloud"},{name:"Private",domain:"p.v1.dodo.cloud"}]}}),console.log(t().env);const n=s=>{e({nodes:s,messages:Yv(s)})};function r(s,a){n(t().nodes.map(l=>l.id!==s?l:{...l,data:{...l.data,...a}}))}function o(s,a){n(t().nodes.map(l=>l.id!==s?l:{...l,...a}))}function i(s){const{nodes:a,edges:l}=t();e({edges:Yw(s,l)});const c=a.filter(u=>u.id===s.source)[0],d=a.filter(u=>u.id===s.target)[0];if(s.sourceHandle==="env_var"&&s.targetHandle==="env_var"){const u=jM(c);if(u.length===0)throw new Error("MUST NOT REACH!");const f=Aa();u.length===1?o(s.target,{...d,data:{...d.data,envVars:[...d.data.envVars||[],{id:f,source:s.source,name:u[0],isEditting:!1}]}}):o(s.target,{...d,data:{...d.data,envVars:[...d.data.envVars||[],{id:f,source:s.source}]}})}if(s.sourceHandle==="volume"&&r(s.source,{attachedTo:(c.data.attachedTo||[]).concat(s.source)}),s.targetHandle==="volume"&&(d.type==="postgresql"||d.type==="mongodb")&&r(s.target,{volumeId:s.source}),s.targetHandle==="https"&&((c.data.ports||[]).length===1?r(s.target,{https:{serviceId:s.source,portId:c.data.ports[0].id}}):r(s.target,{https:{serviceId:s.source,portId:""}})),s.targetHandle==="tcp"){const u=d.data;(c.data.ports||[]).length===1?r(s.target,{exposed:(u.exposed||[]).concat({serviceId:s.source,portId:c.data.ports[0].id})}):r(s.target,{selected:{serviceId:s.source,portId:void 0}})}c.type==="app"&&s.sourceHandle==="ports"&&r(c.id,{isChoosingPortToConnect:!0}),d.type==="app"&&s.targetHandle==="repository"&&r(d.id,{repository:{id:s.source,branch:"master",rootDir:"/"}})}return{projectId:void 0,projects:[],nodes:[],edges:[],categories:S6,messages:Yv([]),setHighlightCategory:(s,a)=>{e({categories:t().categories.map(l=>l.title.toLowerCase()!==s.toLowerCase()?l:{...l,active:a})})},onNodesChange:s=>{const a=g2(s,t().nodes);n(a)},onEdgesChange:s=>{e({edges:Yp(s,t().edges)})},setNodes:s=>{n(s)},setEdges:s=>{e({edges:s})},replaceEdge:(s,a)=>{let l;a===void 0?(l={type:"add",item:{id:Aa(),...s}},i(s)):l={type:"replace",id:a,item:{id:a,...s}},e({edges:Yp([l],t().edges)})},updateNode:o,updateNodeData:r,onConnect:i,refreshEnv:async()=>t().env,setProject:s=>e({projectId:s}),setProjects:s=>e({projects:s})}});var M_={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},Kv=de.createContext&&de.createContext(M_),FM=["attr","size","title"];function VM(e,t){if(e==null)return{};var n=HM(e,t),r,o;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)r=i[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function HM(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function uu(){return uu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},uu.apply(this,arguments)}function Xv(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function du(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Xv(Object(n),!0).forEach(function(r){BM(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Xv(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function BM(e,t,n){return t=UM(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function UM(e){var t=WM(e,"string");return typeof t=="symbol"?t:t+""}function WM(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function j_(e){return e&&e.map((t,n)=>de.createElement(t.tag,du({key:n},t.attr),j_(t.child)))}function qo(e){return t=>de.createElement(ZM,uu({attr:du({},e.attr)},t),j_(e.child))}function ZM(e){var t=n=>{var{attr:r,size:o,title:i}=e,s=VM(e,FM),a=o||n.size||"1em",l;return n.className&&(l=n.className),e.className&&(l=(l?l+" ":"")+e.className),de.createElement("svg",uu({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},n.attr,r,s,{className:l,style:du(du({color:e.color||n.color},n.style),e.style),height:a,width:a,xmlns:"http://www.w3.org/2000/svg"}),i&&de.createElement("title",null,i),e.children)};return Kv!==void 0?de.createElement(Kv.Consumer,null,n=>t(n)):t(M_)}function GM(e){return qo({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"},child:[]},{tag:"path",attr:{d:"M2 20h20v-4H2v4zm2-3h2v2H4v-2zM2 4v4h20V4H2zm4 3H4V5h2v2zm-4 7h20v-4H2v4zm2-3h2v2H4v-2z"},child:[]}]})(e)}function YM(e){return qo({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"},child:[]}]})(e)}function KM(e){return qo({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M22.55 6.55v10.9c0 .434-.184.749-.55.95l-9.45 5.45c-.367.2-.733.2-1.1 0L2 18.4c-.366-.201-.55-.516-.55-.95V6.55c0-.434.184-.749.55-.95L11.45.15c.367-.2.733-.2 1.1 0L22 5.6c.366.201.55.516.55.95zM21 17.8l-3.9-2.25.5-.9 3.9 2.249V6.549l-.05-.048-8.95-5.2v4.5h-1v-4.5l-9 5.2v10.398l3.9-2.248.5.899L3 17.8l8.95 5.15h.1L21 17.8zM4.55 7.675c0-.016.016-.025.05-.025h14.8c.033 0 .05.009.05.025v.075l-7.4 12.799c0 .034-.017.05-.05.05-.034 0-.05-.016-.05-.05L4.55 7.75v-.075zm6.95 5.076c0-.301-.15-.533-.45-.7L6.9 9.65h-.05v.05l4.6 7.9c.033 0 .05-.019.05-.051v-4.8zm.9-1.601l4.2-2.45H7.4l.05.051 4.15 2.399a.701.701 0 00.8 0zM17.15 9.7v-.05h-.05l-4.15 2.4c-.3.167-.45.417-.45.749v4.8h.1l4.55-7.899z"},child:[]}]})(e)}function XM(e){return qo({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M23.0864 13.1643c.0456 0 .0717-.0132.0717-.062 0-.0482-.0254-.0593-.0731-.0593h-.1023v.1213zm-.1037.0417v.1285h-.0445v-.334h.1487c.0846 0 .1172.0347.1172.1006 0 .054-.0229.0912-.0806.102l.0755.1314h-.0484l-.0746-.1285zm.0746-.2918a.2535.2535 0 0 0-.2533.2531c0 .1395.1136.2532.2533.2532a.2535.2535 0 0 0 .253-.2532.2534.2534 0 0 0-.253-.2531zm-.291.2531a.2912.2912 0 0 1 .291-.2908.291.291 0 0 1 .2905.2908.291.291 0 0 1-.2905.2907.2912.2912 0 0 1-.291-.2907zm-20.7445-.6602V8.8304h-.4212v3.6767c0 .8506.0337 1.5332-1.4404 1.5332A4.029 4.029 0 0 1 0 14.0369v.397a6.215 6.215 0 0 0 .1602.0022c1.7858 0 1.8616-.8002 1.8616-1.929zm15.5404-1.6972h3.1334c-.042-.918-.1011-1.7014-1.4404-1.7014-1.2887 0-1.6425.6992-1.693 1.7014zm1.7016-2.0889c1.794 0 1.853 1.2045 1.8447 2.4764h-3.5548c.0085 1.1204.2863 1.9544 1.7436 1.9544.775 0 1.1288-.2107 1.5079-.4886l.2357.3116c-.421.3117-.918.556-1.7436.556-1.8194 0-2.1565-1.053-2.1565-2.4091 0-1.356.3877-2.4007 2.123-2.4007zm-4.1484 2.7055c.7439 0 1.1135-.3625 1.1135-1.0949 0-.7322-.3988-1.0798-1.132-1.0798h-1.7285v2.1747zM15.109 8.839c1.0678 0 1.5519.5307 1.5519 1.474 0 .9497-.478 1.527-1.5578 1.527h-1.7348v1.5981h-.4124V8.839zm-2.9253 0v4.5991h-.4122V8.839zm-1.1939 4.5991h-.4296v-2.8134c0-.8086.0084-1.491-1.474-1.491-1.4743 0-1.4405.6824-1.4405 1.5331v2.7713h-.4212v-2.7713c0-1.1288.076-1.9289 1.8616-1.9289 1.7943 0 1.9037.8001 1.9037 1.8952zM2.7466 8.8304h.4297v2.8134c0 .8088-.0084 1.491 1.474 1.491 1.4742 0 1.4405-.6822 1.4405-1.533V8.8303h.4212v2.7713c0 1.1289-.0759 1.929-1.8616 1.929-1.7943 0-1.9038-.8001-1.9038-1.8952zm18.9675 1.8364v2.7713h.421v-2.7713c0-.8507-.0336-1.533 1.4407-1.533.1579 0 .298.0083.4242.023v-.4012a4.8535 4.8535 0 0 0-.4242-.0177c-1.7859 0-1.8617.8001-1.8617 1.929zm-.4315 4.3602c.1525.096.3017.1286.4542.1286.2624 0 .3789-.0737.3789-.2486 0-.18-.1508-.2057-.3789-.2468-.2743-.048-.4594-.0944-.4594-.3514 0-.2453.1577-.3413.4594-.3413.199 0 .3412.0447.4423.1132l-.072.1097c-.0908-.06-.2263-.0995-.3703-.0995-.228 0-.3257.0636-.3257.2144 0 .1612.132.192.3584.233.2776.0499.4782.091.4782.3635 0 .2521-.1612.3737-.5074.3737-.192 0-.3652-.0393-.5263-.1456zm-.7886-.4423l-.2538.2777v.396h-.132v-1.2703h.132v.7012l.643-.7012h.156l-.456.4989.5176.7715h-.1525l-.4543-.6738m-1.1006.0326c.18 0 .2914-.0549.2914-.2555 0-.1971-.108-.2485-.2965-.2485h-.4132v.504zm-.0377.1234h-.3806v.5178h-.132V13.988h.5486c.2948 0 .4286.1183.4286.3703 0 .2194-.1046.348-.3258.377l.3068.523h-.1439l-.3017-.5177m-.924-.1166c0-.3429-.1594-.528-.5058-.528-.3446 0-.5023.1851-.5023.528 0 .3446.1577.5298.5023.5298.3464 0 .5058-.1852.5058-.5298zm-.5058-.6566c.408 0 .6412.2024.6412.655 0 .4542-.2332.6565-.6412.6565-.4063 0-.6377-.2023-.6377-.6566 0-.4525.2314-.6549.6377-.6549zm-2.3571.0206l.3342 1.0508.3412-1.0508h.1166l.3394 1.0508.336-1.0508h.1303l-.408 1.2789h-.1165l-.343-1.0577-.341 1.0577h-.1183l-.4098-1.2789zm-1.392.1286v-.1286h1.0886v.1286h-.4766v1.1418h-.1355v-1.1418zm-.204-.1286v.1286h-.7046v.42h.6874v.127h-.6874v.4713h.7114v.1235h-.8468V13.988zm-2.0539 0l.7596 1.0475V13.988h.1303v1.2704h-.1235l-.7835-1.0784v1.0784h-.1303V13.988Z"},child:[]}]})(e)}function qM(e){return qo({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M17.193 9.555c-1.264-5.58-4.252-7.414-4.573-8.115-.28-.394-.53-.954-.735-1.44-.036.495-.055.685-.523 1.184-.723.566-4.438 3.682-4.74 10.02-.282 5.912 4.27 9.435 4.888 9.884l.07.05A73.49 73.49 0 0111.91 24h.481c.114-1.032.284-2.056.51-3.07.417-.296.604-.463.85-.693a11.342 11.342 0 003.639-8.464c.01-.814-.103-1.662-.197-2.218zm-5.336 8.195s0-8.291.275-8.29c.213 0 .49 10.695.49 10.695-.381-.045-.765-1.76-.765-2.405z"},child:[]}]})(e)}function QM(e){return qo({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M23.5594 14.7228a.5269.5269 0 0 0-.0563-.1191c-.139-.2632-.4768-.3418-1.0074-.2321-1.6533.3411-2.2935.1312-2.5256-.0191 1.342-2.0482 2.445-4.522 3.0411-6.8297.2714-1.0507.7982-3.5237.1222-4.7316a1.5641 1.5641 0 0 0-.1509-.235C21.6931.9086 19.8007.0248 17.5099.0005c-1.4947-.0158-2.7705.3461-3.1161.4794a9.449 9.449 0 0 0-.5159-.0816 8.044 8.044 0 0 0-1.3114-.1278c-1.1822-.0184-2.2038.2642-3.0498.8406-.8573-.3211-4.7888-1.645-7.2219.0788C.9359 2.1526.3086 3.8733.4302 6.3043c.0409.818.5069 3.334 1.2423 5.7436.4598 1.5065.9387 2.7019 1.4334 3.582.553.9942 1.1259 1.5933 1.7143 1.7895.4474.1491 1.1327.1441 1.8581-.7279.8012-.9635 1.5903-1.8258 1.9446-2.2069.4351.2355.9064.3625 1.39.3772a.0569.0569 0 0 0 .0004.0041 11.0312 11.0312 0 0 0-.2472.3054c-.3389.4302-.4094.5197-1.5002.7443-.3102.064-1.1344.2339-1.1464.8115-.0025.1224.0329.2309.0919.3268.2269.4231.9216.6097 1.015.6331 1.3345.3335 2.5044.092 3.3714-.6787-.017 2.231.0775 4.4174.3454 5.0874.2212.5529.7618 1.9045 2.4692 1.9043.2505 0 .5263-.0291.8296-.0941 1.7819-.3821 2.5557-1.1696 2.855-2.9059.1503-.8707.4016-2.8753.5388-4.1012.0169-.0703.0357-.1207.057-.1362.0007-.0005.0697-.0471.4272.0307a.3673.3673 0 0 0 .0443.0068l.2539.0223.0149.001c.8468.0384 1.9114-.1426 2.5312-.4308.6438-.2988 1.8057-1.0323 1.5951-1.6698zM2.371 11.8765c-.7435-2.4358-1.1779-4.8851-1.2123-5.5719-.1086-2.1714.4171-3.6829 1.5623-4.4927 1.8367-1.2986 4.8398-.5408 6.108-.13-.0032.0032-.0066.0061-.0098.0094-2.0238 2.044-1.9758 5.536-1.9708 5.7495-.0002.0823.0066.1989.0162.3593.0348.5873.0996 1.6804-.0735 2.9184-.1609 1.1504.1937 2.2764.9728 3.0892.0806.0841.1648.1631.2518.2374-.3468.3714-1.1004 1.1926-1.9025 2.1576-.5677.6825-.9597.5517-1.0886.5087-.3919-.1307-.813-.5871-1.2381-1.3223-.4796-.839-.9635-2.0317-1.4155-3.5126zm6.0072 5.0871c-.1711-.0428-.3271-.1132-.4322-.1772.0889-.0394.2374-.0902.4833-.1409 1.2833-.2641 1.4815-.4506 1.9143-1.0002.0992-.126.2116-.2687.3673-.4426a.3549.3549 0 0 0 .0737-.1298c.1708-.1513.2724-.1099.4369-.0417.156.0646.3078.26.3695.4752.0291.1016.0619.2945-.0452.4444-.9043 1.2658-2.2216 1.2494-3.1676 1.0128zm2.094-3.988-.0525.141c-.133.3566-.2567.6881-.3334 1.003-.6674-.0021-1.3168-.2872-1.8105-.8024-.6279-.6551-.9131-1.5664-.7825-2.5004.1828-1.3079.1153-2.4468.079-3.0586-.005-.0857-.0095-.1607-.0122-.2199.2957-.2621 1.6659-.9962 2.6429-.7724.4459.1022.7176.4057.8305.928.5846 2.7038.0774 3.8307-.3302 4.7363-.084.1866-.1633.3629-.2311.5454zm7.3637 4.5725c-.0169.1768-.0358.376-.0618.5959l-.146.4383a.3547.3547 0 0 0-.0182.1077c-.0059.4747-.054.6489-.115.8693-.0634.2292-.1353.4891-.1794 1.0575-.11 1.4143-.8782 2.2267-2.4172 2.5565-1.5155.3251-1.7843-.4968-2.0212-1.2217a6.5824 6.5824 0 0 0-.0769-.2266c-.2154-.5858-.1911-1.4119-.1574-2.5551.0165-.5612-.0249-1.9013-.3302-2.6462.0044-.2932.0106-.5909.019-.8918a.3529.3529 0 0 0-.0153-.1126 1.4927 1.4927 0 0 0-.0439-.208c-.1226-.4283-.4213-.7866-.7797-.9351-.1424-.059-.4038-.1672-.7178-.0869.067-.276.1831-.5875.309-.9249l.0529-.142c.0595-.16.134-.3257.213-.5012.4265-.9476 1.0106-2.2453.3766-5.1772-.2374-1.0981-1.0304-1.6343-2.2324-1.5098-.7207.0746-1.3799.3654-1.7088.5321a5.6716 5.6716 0 0 0-.1958.1041c.0918-1.1064.4386-3.1741 1.7357-4.4823a4.0306 4.0306 0 0 1 .3033-.276.3532.3532 0 0 0 .1447-.0644c.7524-.5706 1.6945-.8506 2.802-.8325.4091.0067.8017.0339 1.1742.081 1.939.3544 3.2439 1.4468 4.0359 2.3827.8143.9623 1.2552 1.9315 1.4312 2.4543-1.3232-.1346-2.2234.1268-2.6797.779-.9926 1.4189.543 4.1729 1.2811 5.4964.1353.2426.2522.4522.2889.5413.2403.5825.5515.9713.7787 1.2552.0696.087.1372.1714.1885.245-.4008.1155-1.1208.3825-1.0552 1.717-.0123.1563-.0423.4469-.0834.8148-.0461.2077-.0702.4603-.0994.7662zm.8905-1.6211c-.0405-.8316.2691-.9185.5967-1.0105a2.8566 2.8566 0 0 0 .135-.0406 1.202 1.202 0 0 0 .1342.103c.5703.3765 1.5823.4213 3.0068.1344-.2016.1769-.5189.3994-.9533.6011-.4098.1903-1.0957.333-1.7473.3636-.7197.0336-1.0859-.0807-1.1721-.151zm.5695-9.2712c-.0059.3508-.0542.6692-.1054 1.0017-.055.3576-.112.7274-.1264 1.1762-.0142.4368.0404.8909.0932 1.3301.1066.887.216 1.8003-.2075 2.7014a3.5272 3.5272 0 0 1-.1876-.3856c-.0527-.1276-.1669-.3326-.3251-.6162-.6156-1.1041-2.0574-3.6896-1.3193-4.7446.3795-.5427 1.3408-.5661 2.1781-.463zm.2284 7.0137a12.3762 12.3762 0 0 0-.0853-.1074l-.0355-.0444c.7262-1.1995.5842-2.3862.4578-3.4385-.0519-.4318-.1009-.8396-.0885-1.2226.0129-.4061.0666-.7543.1185-1.0911.0639-.415.1288-.8443.1109-1.3505.0134-.0531.0188-.1158.0118-.1902-.0457-.4855-.5999-1.938-1.7294-3.253-.6076-.7073-1.4896-1.4972-2.6889-2.0395.5251-.1066 1.2328-.2035 2.0244-.1859 2.0515.0456 3.6746.8135 4.8242 2.2824a.908.908 0 0 1 .0667.1002c.7231 1.3556-.2762 6.2751-2.9867 10.5405zm-8.8166-6.1162c-.025.1794-.3089.4225-.6211.4225a.5821.5821 0 0 1-.0809-.0056c-.1873-.026-.3765-.144-.5059-.3156-.0458-.0605-.1203-.178-.1055-.2844.0055-.0401.0261-.0985.0925-.1488.1182-.0894.3518-.1226.6096-.0867.3163.0441.6426.1938.6113.4186zm7.9305-.4114c.0111.0792-.049.201-.1531.3102-.0683.0717-.212.1961-.4079.2232a.5456.5456 0 0 1-.075.0052c-.2935 0-.5414-.2344-.5607-.3717-.024-.1765.2641-.3106.5611-.352.297-.0414.6111.0088.6356.1851z"},child:[]}]})(e)}function JM(e){return qo({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M24 18.185v2.274h-4.89v-2.274H24zm-24-.106h11.505v2.274H0zm12.89 0h4.89v2.274h-4.89zm6.221-3.607H24v2.274h-4.89l.001-2.274zM0 14.367h11.505v2.274H0v-2.274zm12.89 0h4.89v2.274h-4.89v-2.274zm6.221-3.346H24v2.273h-4.89l.001-2.273zM0 10.916h11.505v2.271H0v-2.271zm12.89 0h4.89v2.271h-4.89v-2.271zm6.22-3.609H24v2.279h-4.89V7.307zM0 7.206h11.505V9.48H0V7.201zm12.89 0h4.89V9.48h-4.89V7.201zm6.221-3.556H24v2.276h-4.89v-2.28l.001.004zM0 3.541h11.505v2.274H0V3.541zm12.89 0h4.89v2.274h-4.89V3.541z"},child:[]}]})(e)}function Bm(e){switch(e){case"app":return h.jsx(JM,{});case"github":return h.jsx(YM,{});case"gateway-https":return h.jsx(KM,{});case"gateway-tcp":return h.jsx(XM,{});case"mongodb":return h.jsx(qM,{});case"postgresql":return h.jsx(QM,{});case"volume":return h.jsx(GM,{});case void 0:throw new Error("MUST NOT REACH!")}}function ej(e,t){t.addNodes({id:Aa(),position:{x:0,y:0},type:e.type,connectable:!0,data:e.init})}function tj(){let e=Yo();const t=zM();let n=x.useCallback(i=>()=>ej(i,e),[e]);const[r,o]=x.useState(t.map(i=>i.title));return h.jsx(h.Fragment,{children:h.jsx(Fm,{type:"multiple",value:r,onValueChange:i=>o(i),children:t.map(i=>h.jsxs(sd,{value:i.title,className:"px-3"+(i.active?" bg-amber-100":""),children:[h.jsx(ad,{children:i.title}),h.jsx($m,{children:h.jsx("div",{className:"flex flex-col space-y-1",children:i.items.map(s=>h.jsxs(Ln,{onClick:n(s),style:{justifyContent:"flex-start"},children:[Bm(s.type),s.title]},s.title))})})]},i.title))})})}const qv=e=>Symbol.iterator in e,Qv=e=>"entries"in e,Jv=(e,t)=>{const n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(const[o,i]of n)if(!Object.is(i,r.get(o)))return!1;return!0},nj=(e,t)=>{const n=e[Symbol.iterator](),r=t[Symbol.iterator]();let o=n.next(),i=r.next();for(;!o.done&&!i.done;){if(!Object.is(o.value,i.value))return!1;o=n.next(),i=r.next()}return!!o.done&&!!i.done};function rj(e,t){return Object.is(e,t)?!0:typeof e!="object"||e===null||typeof t!="object"||t===null?!1:!qv(e)||!qv(t)?Jv({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)}):Qv(e)&&Qv(t)?Jv(e,t):nj(e,t)}function oj(e){const t=de.useRef();return n=>{const r=e(n);return rj(t.current,r)?t.current:t.current=r}}function Qo(e){const{id:t,selected:n,children:r}=e,o=$M(t),i=o.some(l=>l.type==="FATAL"),s=o.some(l=>l.type==="WARNING"),a=["px-4","py-2","rounded-md","bg-white"];return i?a.push("border-red-500"):s?a.push("border-yellow-500"):a.push("border-black"),n?a.push("border-2"):a.push("border"),h.jsxs("div",{className:a.join(" "),children:[h.jsx("div",{style:{position:"absolute",top:"5px",left:"5px"},children:Bm(e.type)}),r]})}var cl=e=>e.type==="checkbox",bo=e=>e instanceof Date,wt=e=>e==null;const O_=e=>typeof e=="object";var Xe=e=>!wt(e)&&!Array.isArray(e)&&O_(e)&&!bo(e),D_=e=>Xe(e)&&e.target?cl(e.target)?e.target.checked:e.target.value:e,ij=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,L_=(e,t)=>e.has(ij(t)),sj=e=>{const t=e.constructor&&e.constructor.prototype;return Xe(t)&&t.hasOwnProperty("isPrototypeOf")},Um=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function Nt(e){let t;const n=Array.isArray(e);if(e instanceof Date)t=new Date(e);else if(e instanceof Set)t=new Set(e);else if(!(Um&&(e instanceof Blob||e instanceof FileList))&&(n||Xe(e)))if(t=n?[]:{},!n&&!sj(e))t=e;else for(const r in e)e.hasOwnProperty(r)&&(t[r]=Nt(e[r]));else return e;return t}var ud=e=>Array.isArray(e)?e.filter(Boolean):[],Ye=e=>e===void 0,re=(e,t,n)=>{if(!t||!Xe(e))return n;const r=ud(t.split(/[,[\].]+?/)).reduce((o,i)=>wt(o)?o:o[i],e);return Ye(r)||r===e?Ye(e[t])?n:e[t]:r},Qt=e=>typeof e=="boolean",Wm=e=>/^\w*$/.test(e),z_=e=>ud(e.replace(/["|']|\]/g,"").split(/\.|\[/)),Ie=(e,t,n)=>{let r=-1;const o=Wm(t)?[t]:z_(t),i=o.length,s=i-1;for(;++r<i;){const a=o[r];let l=n;if(r!==s){const c=e[a];l=Xe(c)||Array.isArray(c)?c:isNaN(+o[r+1])?{}:[]}if(a==="__proto__")return;e[a]=l,e=e[a]}return e};const fu={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},hn={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},Qn={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},$_=de.createContext(null),dd=()=>de.useContext($_),aj=e=>{const{children:t,...n}=e;return de.createElement($_.Provider,{value:n},t)};var F_=(e,t,n,r=!0)=>{const o={defaultValues:t._defaultValues};for(const i in e)Object.defineProperty(o,i,{get:()=>{const s=i;return t._proxyFormState[s]!==hn.all&&(t._proxyFormState[s]=!r||hn.all),n&&(n[s]=!0),e[s]}});return o},Tt=e=>Xe(e)&&!Object.keys(e).length,V_=(e,t,n,r)=>{n(e);const{name:o,...i}=e;return Tt(i)||Object.keys(i).length>=Object.keys(t).length||Object.keys(i).find(s=>t[s]===(!r||hn.all))},na=e=>Array.isArray(e)?e:[e],H_=(e,t,n)=>!e||!t||e===t||na(e).some(r=>r&&(n?r===t:r.startsWith(t)||t.startsWith(r)));function Zm(e){const t=de.useRef(e);t.current=e,de.useEffect(()=>{const n=!e.disabled&&t.current.subject&&t.current.subject.subscribe({next:t.current.next});return()=>{n&&n.unsubscribe()}},[e.disabled])}function lj(e){const t=dd(),{control:n=t.control,disabled:r,name:o,exact:i}=e||{},[s,a]=de.useState(n._formState),l=de.useRef(!0),c=de.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1}),d=de.useRef(o);return d.current=o,Zm({disabled:r,next:u=>l.current&&H_(d.current,u.name,i)&&V_(u,c.current,n._updateFormState)&&a({...n._formState,...u}),subject:n._subjects.state}),de.useEffect(()=>(l.current=!0,c.current.isValid&&n._updateValid(!0),()=>{l.current=!1}),[n]),F_(s,n,c.current,!1)}var Mn=e=>typeof e=="string",B_=(e,t,n,r,o)=>Mn(e)?(r&&t.watch.add(e),re(n,e,o)):Array.isArray(e)?e.map(i=>(r&&t.watch.add(i),re(n,i))):(r&&(t.watchAll=!0),n);function cj(e){const t=dd(),{control:n=t.control,name:r,defaultValue:o,disabled:i,exact:s}=e||{},a=de.useRef(r);a.current=r,Zm({disabled:i,subject:n._subjects.values,next:d=>{H_(a.current,d.name,s)&&c(Nt(B_(a.current,n._names,d.values||n._formValues,!1,o)))}});const[l,c]=de.useState(n._getWatch(r,o));return de.useEffect(()=>n._removeUnmounted()),l}function uj(e){const t=dd(),{name:n,disabled:r,control:o=t.control,shouldUnregister:i}=e,s=L_(o._names.array,n),a=cj({control:o,name:n,defaultValue:re(o._formValues,n,re(o._defaultValues,n,e.defaultValue)),exact:!0}),l=lj({control:o,name:n,exact:!0}),c=de.useRef(o.register(n,{...e.rules,value:a,...Qt(e.disabled)?{disabled:e.disabled}:{}}));return de.useEffect(()=>{const d=o._options.shouldUnregister||i,u=(f,p)=>{const y=re(o._fields,f);y&&y._f&&(y._f.mount=p)};if(u(n,!0),d){const f=Nt(re(o._options.defaultValues,n));Ie(o._defaultValues,n,f),Ye(re(o._formValues,n))&&Ie(o._formValues,n,f)}return()=>{(s?d&&!o._state.action:d)?o.unregister(n):u(n,!1)}},[n,o,s,i]),de.useEffect(()=>{re(o._fields,n)&&o._updateDisabledField({disabled:r,fields:o._fields,name:n,value:re(o._fields,n)._f.value})},[r,n,o]),{field:{name:n,value:a,...Qt(r)||l.disabled?{disabled:l.disabled||r}:{},onChange:de.useCallback(d=>c.current.onChange({target:{value:D_(d),name:n},type:fu.CHANGE}),[n]),onBlur:de.useCallback(()=>c.current.onBlur({target:{value:re(o._formValues,n),name:n},type:fu.BLUR}),[n,o]),ref:de.useCallback(d=>{const u=re(o._fields,n);u&&d&&(u._f.ref={focus:()=>d.focus(),select:()=>d.select(),setCustomValidity:f=>d.setCustomValidity(f),reportValidity:()=>d.reportValidity()})},[o._fields,n])},formState:l,fieldState:Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!re(l.errors,n)},isDirty:{enumerable:!0,get:()=>!!re(l.dirtyFields,n)},isTouched:{enumerable:!0,get:()=>!!re(l.touchedFields,n)},isValidating:{enumerable:!0,get:()=>!!re(l.validatingFields,n)},error:{enumerable:!0,get:()=>re(l.errors,n)}})}}const dj=e=>e.render(uj(e));var U_=(e,t,n,r,o)=>t?{...n[e],types:{...n[e]&&n[e].types?n[e].types:{},[r]:o||!0}}:{},ey=e=>({isOnSubmit:!e||e===hn.onSubmit,isOnBlur:e===hn.onBlur,isOnChange:e===hn.onChange,isOnAll:e===hn.all,isOnTouch:e===hn.onTouched}),ty=(e,t,n)=>!n&&(t.watchAll||t.watch.has(e)||[...t.watch].some(r=>e.startsWith(r)&&/^\.\w+/.test(e.slice(r.length))));const ra=(e,t,n,r)=>{for(const o of n||Object.keys(e)){const i=re(e,o);if(i){const{_f:s,...a}=i;if(s){if(s.refs&&s.refs[0]&&t(s.refs[0],o)&&!r)return!0;if(s.ref&&t(s.ref,s.name)&&!r)return!0;if(ra(a,t))break}else if(Xe(a)&&ra(a,t))break}}};var fj=(e,t,n)=>{const r=na(re(e,n));return Ie(r,"root",t[n]),Ie(e,n,r),e},Gm=e=>e.type==="file",sr=e=>typeof e=="function",pu=e=>{if(!Um)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},hc=e=>Mn(e),Ym=e=>e.type==="radio",hu=e=>e instanceof RegExp;const ny={value:!1,isValid:!1},ry={value:!0,isValid:!0};var W_=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(n=>n&&n.checked&&!n.disabled).map(n=>n.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!Ye(e[0].attributes.value)?Ye(e[0].value)||e[0].value===""?ry:{value:e[0].value,isValid:!0}:ry:ny}return ny};const oy={isValid:!1,value:null};var Z_=e=>Array.isArray(e)?e.reduce((t,n)=>n&&n.checked&&!n.disabled?{isValid:!0,value:n.value}:t,oy):oy;function iy(e,t,n="validate"){if(hc(e)||Array.isArray(e)&&e.every(hc)||Qt(e)&&!e)return{type:n,message:hc(e)?e:"",ref:t}}var ei=e=>Xe(e)&&!hu(e)?e:{value:e,message:""},sy=async(e,t,n,r,o)=>{const{ref:i,refs:s,required:a,maxLength:l,minLength:c,min:d,max:u,pattern:f,validate:p,name:y,valueAsNumber:v,mount:_,disabled:m}=e._f,g=re(t,y);if(!_||m)return{};const w=s?s[0]:i,S=A=>{r&&w.reportValidity&&(w.setCustomValidity(Qt(A)?"":A||""),w.reportValidity())},C={},N=Ym(i),E=cl(i),P=N||E,O=(v||Gm(i))&&Ye(i.value)&&Ye(g)||pu(i)&&i.value===""||g===""||Array.isArray(g)&&!g.length,j=U_.bind(null,y,n,C),$=(A,L,b,M=Qn.maxLength,T=Qn.minLength)=>{const D=A?L:b;C[y]={type:A?M:T,message:D,ref:i,...j(A?M:T,D)}};if(o?!Array.isArray(g)||!g.length:a&&(!P&&(O||wt(g))||Qt(g)&&!g||E&&!W_(s).isValid||N&&!Z_(s).isValid)){const{value:A,message:L}=hc(a)?{value:!!a,message:a}:ei(a);if(A&&(C[y]={type:Qn.required,message:L,ref:w,...j(Qn.required,L)},!n))return S(L),C}if(!O&&(!wt(d)||!wt(u))){let A,L;const b=ei(u),M=ei(d);if(!wt(g)&&!isNaN(g)){const T=i.valueAsNumber||g&&+g;wt(b.value)||(A=T>b.value),wt(M.value)||(L=T<M.value)}else{const T=i.valueAsDate||new Date(g),D=z=>new Date(new Date().toDateString()+" "+z),k=i.type=="time",I=i.type=="week";Mn(b.value)&&g&&(A=k?D(g)>D(b.value):I?g>b.value:T>new Date(b.value)),Mn(M.value)&&g&&(L=k?D(g)<D(M.value):I?g<M.value:T<new Date(M.value))}if((A||L)&&($(!!A,b.message,M.message,Qn.max,Qn.min),!n))return S(C[y].message),C}if((l||c)&&!O&&(Mn(g)||o&&Array.isArray(g))){const A=ei(l),L=ei(c),b=!wt(A.value)&&g.length>+A.value,M=!wt(L.value)&&g.length<+L.value;if((b||M)&&($(b,A.message,L.message),!n))return S(C[y].message),C}if(f&&!O&&Mn(g)){const{value:A,message:L}=ei(f);if(hu(A)&&!g.match(A)&&(C[y]={type:Qn.pattern,message:L,ref:i,...j(Qn.pattern,L)},!n))return S(L),C}if(p){if(sr(p)){const A=await p(g,t),L=iy(A,w);if(L&&(C[y]={...L,...j(Qn.validate,L.message)},!n))return S(L.message),C}else if(Xe(p)){let A={};for(const L in p){if(!Tt(A)&&!n)break;const b=iy(await p[L](g,t),w,L);b&&(A={...b,...j(L,b.message)},S(b.message),n&&(C[y]=A))}if(!Tt(A)&&(C[y]={ref:w,...A},!n))return C}}return S(!0),C};function pj(e,t){const n=t.slice(0,-1).length;let r=0;for(;r<n;)e=Ye(e)?r++:e[t[r++]];return e}function hj(e){for(const t in e)if(e.hasOwnProperty(t)&&!Ye(e[t]))return!1;return!0}function et(e,t){const n=Array.isArray(t)?t:Wm(t)?[t]:z_(t),r=n.length===1?e:pj(e,n),o=n.length-1,i=n[o];return r&&delete r[i],o!==0&&(Xe(r)&&Tt(r)||Array.isArray(r)&&hj(r))&&et(e,n.slice(0,-1)),e}var wf=()=>{let e=[];return{get observers(){return e},next:o=>{for(const i of e)i.next&&i.next(o)},subscribe:o=>(e.push(o),{unsubscribe:()=>{e=e.filter(i=>i!==o)}}),unsubscribe:()=>{e=[]}}},rh=e=>wt(e)||!O_(e);function Vr(e,t){if(rh(e)||rh(t))return e===t;if(bo(e)&&bo(t))return e.getTime()===t.getTime();const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(const o of n){const i=e[o];if(!r.includes(o))return!1;if(o!=="ref"){const s=t[o];if(bo(i)&&bo(s)||Xe(i)&&Xe(s)||Array.isArray(i)&&Array.isArray(s)?!Vr(i,s):i!==s)return!1}}return!0}var G_=e=>e.type==="select-multiple",mj=e=>Ym(e)||cl(e),_f=e=>pu(e)&&e.isConnected,Y_=e=>{for(const t in e)if(sr(e[t]))return!0;return!1};function mu(e,t={}){const n=Array.isArray(e);if(Xe(e)||n)for(const r in e)Array.isArray(e[r])||Xe(e[r])&&!Y_(e[r])?(t[r]=Array.isArray(e[r])?[]:{},mu(e[r],t[r])):wt(e[r])||(t[r]=!0);return t}function K_(e,t,n){const r=Array.isArray(e);if(Xe(e)||r)for(const o in e)Array.isArray(e[o])||Xe(e[o])&&!Y_(e[o])?Ye(t)||rh(n[o])?n[o]=Array.isArray(e[o])?mu(e[o],[]):{...mu(e[o])}:K_(e[o],wt(t)?{}:t[o],n[o]):n[o]=!Vr(e[o],t[o]);return n}var Rs=(e,t)=>K_(e,t,mu(t)),X_=(e,{valueAsNumber:t,valueAsDate:n,setValueAs:r})=>Ye(e)?e:t?e===""?NaN:e&&+e:n&&Mn(e)?new Date(e):r?r(e):e;function Sf(e){const t=e.ref;if(!(e.refs?e.refs.every(n=>n.disabled):t.disabled))return Gm(t)?t.files:Ym(t)?Z_(e.refs).value:G_(t)?[...t.selectedOptions].map(({value:n})=>n):cl(t)?W_(e.refs).value:X_(Ye(t.value)?e.ref.value:t.value,e)}var gj=(e,t,n,r)=>{const o={};for(const i of e){const s=re(t,i);s&&Ie(o,i,s._f)}return{criteriaMode:n,names:[...e],fields:o,shouldUseNativeValidation:r}},As=e=>Ye(e)?e:hu(e)?e.source:Xe(e)?hu(e.value)?e.value.source:e.value:e;const ay="AsyncFunction";var vj=e=>(!e||!e.validate)&&!!(sr(e.validate)&&e.validate.constructor.name===ay||Xe(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===ay)),yj=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function ly(e,t,n){const r=re(e,n);if(r||Wm(n))return{error:r,name:n};const o=n.split(".");for(;o.length;){const i=o.join("."),s=re(t,i),a=re(e,i);if(s&&!Array.isArray(s)&&n!==i)return{name:n};if(a&&a.type)return{name:i,error:a};o.pop()}return{name:n}}var xj=(e,t,n,r,o)=>o.isOnAll?!1:!n&&o.isOnTouch?!(t||e):(n?r.isOnBlur:o.isOnBlur)?!e:(n?r.isOnChange:o.isOnChange)?e:!0,wj=(e,t)=>!ud(re(e,t)).length&&et(e,t);const _j={mode:hn.onSubmit,reValidateMode:hn.onChange,shouldFocusError:!0};function Sj(e={}){let t={..._j,...e},n={submitCount:0,isDirty:!1,isLoading:sr(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},r={},o=Xe(t.defaultValues)||Xe(t.values)?Nt(t.defaultValues||t.values)||{}:{},i=t.shouldUnregister?{}:Nt(o),s={action:!1,mount:!1,watch:!1},a={mount:new Set,unMount:new Set,array:new Set,watch:new Set},l,c=0;const d={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},u={values:wf(),array:wf(),state:wf()},f=ey(t.mode),p=ey(t.reValidateMode),y=t.criteriaMode===hn.all,v=R=>F=>{clearTimeout(c),c=setTimeout(R,F)},_=async R=>{if(!e.disabled&&(d.isValid||R)){const F=t.resolver?Tt((await P()).errors):await j(r,!0);F!==n.isValid&&u.state.next({isValid:F})}},m=(R,F)=>{!e.disabled&&(d.isValidating||d.validatingFields)&&((R||Array.from(a.mount)).forEach(W=>{W&&(F?Ie(n.validatingFields,W,F):et(n.validatingFields,W))}),u.state.next({validatingFields:n.validatingFields,isValidating:!Tt(n.validatingFields)}))},g=(R,F=[],W,ie,te=!0,q=!0)=>{if(ie&&W&&!e.disabled){if(s.action=!0,q&&Array.isArray(re(r,R))){const pe=W(re(r,R),ie.argA,ie.argB);te&&Ie(r,R,pe)}if(q&&Array.isArray(re(n.errors,R))){const pe=W(re(n.errors,R),ie.argA,ie.argB);te&&Ie(n.errors,R,pe),wj(n.errors,R)}if(d.touchedFields&&q&&Array.isArray(re(n.touchedFields,R))){const pe=W(re(n.touchedFields,R),ie.argA,ie.argB);te&&Ie(n.touchedFields,R,pe)}d.dirtyFields&&(n.dirtyFields=Rs(o,i)),u.state.next({name:R,isDirty:A(R,F),dirtyFields:n.dirtyFields,errors:n.errors,isValid:n.isValid})}else Ie(i,R,F)},w=(R,F)=>{Ie(n.errors,R,F),u.state.next({errors:n.errors})},S=R=>{n.errors=R,u.state.next({errors:n.errors,isValid:!1})},C=(R,F,W,ie)=>{const te=re(r,R);if(te){const q=re(i,R,Ye(W)?re(o,R):W);Ye(q)||ie&&ie.defaultChecked||F?Ie(i,R,F?q:Sf(te._f)):M(R,q),s.mount&&_()}},N=(R,F,W,ie,te)=>{let q=!1,pe=!1;const ye={name:R};if(!e.disabled){const ze=!!(re(r,R)&&re(r,R)._f&&re(r,R)._f.disabled);if(!W||ie){d.isDirty&&(pe=n.isDirty,n.isDirty=ye.isDirty=A(),q=pe!==ye.isDirty);const Ve=ze||Vr(re(o,R),F);pe=!!(!ze&&re(n.dirtyFields,R)),Ve||ze?et(n.dirtyFields,R):Ie(n.dirtyFields,R,!0),ye.dirtyFields=n.dirtyFields,q=q||d.dirtyFields&&pe!==!Ve}if(W){const Ve=re(n.touchedFields,R);Ve||(Ie(n.touchedFields,R,W),ye.touchedFields=n.touchedFields,q=q||d.touchedFields&&Ve!==W)}q&&te&&u.state.next(ye)}return q?ye:{}},E=(R,F,W,ie)=>{const te=re(n.errors,R),q=d.isValid&&Qt(F)&&n.isValid!==F;if(e.delayError&&W?(l=v(()=>w(R,W)),l(e.delayError)):(clearTimeout(c),l=null,W?Ie(n.errors,R,W):et(n.errors,R)),(W?!Vr(te,W):te)||!Tt(ie)||q){const pe={...ie,...q&&Qt(F)?{isValid:F}:{},errors:n.errors,name:R};n={...n,...pe},u.state.next(pe)}},P=async R=>{m(R,!0);const F=await t.resolver(i,t.context,gj(R||a.mount,r,t.criteriaMode,t.shouldUseNativeValidation));return m(R),F},O=async R=>{const{errors:F}=await P(R);if(R)for(const W of R){const ie=re(F,W);ie?Ie(n.errors,W,ie):et(n.errors,W)}else n.errors=F;return F},j=async(R,F,W={valid:!0})=>{for(const ie in R){const te=R[ie];if(te){const{_f:q,...pe}=te;if(q){const ye=a.array.has(q.name),ze=te._f&&vj(te._f);ze&&d.validatingFields&&m([ie],!0);const Ve=await sy(te,i,y,t.shouldUseNativeValidation&&!F,ye);if(ze&&d.validatingFields&&m([ie]),Ve[q.name]&&(W.valid=!1,F))break;!F&&(re(Ve,q.name)?ye?fj(n.errors,Ve,q.name):Ie(n.errors,q.name,Ve[q.name]):et(n.errors,q.name))}!Tt(pe)&&await j(pe,F,W)}}return W.valid},$=()=>{for(const R of a.unMount){const F=re(r,R);F&&(F._f.refs?F._f.refs.every(W=>!_f(W)):!_f(F._f.ref))&&G(R)}a.unMount=new Set},A=(R,F)=>!e.disabled&&(R&&F&&Ie(i,R,F),!Vr(U(),o)),L=(R,F,W)=>B_(R,a,{...s.mount?i:Ye(F)?o:Mn(R)?{[R]:F}:F},W,F),b=R=>ud(re(s.mount?i:o,R,e.shouldUnregister?re(o,R,[]):[])),M=(R,F,W={})=>{const ie=re(r,R);let te=F;if(ie){const q=ie._f;q&&(!q.disabled&&Ie(i,R,X_(F,q)),te=pu(q.ref)&&wt(F)?"":F,G_(q.ref)?[...q.ref.options].forEach(pe=>pe.selected=te.includes(pe.value)):q.refs?cl(q.ref)?q.refs.length>1?q.refs.forEach(pe=>(!pe.defaultChecked||!pe.disabled)&&(pe.checked=Array.isArray(te)?!!te.find(ye=>ye===pe.value):te===pe.value)):q.refs[0]&&(q.refs[0].checked=!!te):q.refs.forEach(pe=>pe.checked=pe.value===te):Gm(q.ref)?q.ref.value="":(q.ref.value=te,q.ref.type||u.values.next({name:R,values:{...i}})))}(W.shouldDirty||W.shouldTouch)&&N(R,te,W.shouldTouch,W.shouldDirty,!0),W.shouldValidate&&z(R)},T=(R,F,W)=>{for(const ie in F){const te=F[ie],q=`${R}.${ie}`,pe=re(r,q);(a.array.has(R)||Xe(te)||pe&&!pe._f)&&!bo(te)?T(q,te,W):M(q,te,W)}},D=(R,F,W={})=>{const ie=re(r,R),te=a.array.has(R),q=Nt(F);Ie(i,R,q),te?(u.array.next({name:R,values:{...i}}),(d.isDirty||d.dirtyFields)&&W.shouldDirty&&u.state.next({name:R,dirtyFields:Rs(o,i),isDirty:A(R,q)})):ie&&!ie._f&&!wt(q)?T(R,q,W):M(R,q,W),ty(R,a)&&u.state.next({...n}),u.values.next({name:s.mount?R:void 0,values:{...i}})},k=async R=>{s.mount=!0;const F=R.target;let W=F.name,ie=!0;const te=re(r,W),q=()=>F.type?Sf(te._f):D_(R),pe=ye=>{ie=Number.isNaN(ye)||bo(ye)&&isNaN(ye.getTime())||Vr(ye,re(i,W,ye))};if(te){let ye,ze;const Ve=q(),Yn=R.type===fu.BLUR||R.type===fu.FOCUS_OUT,gs=!yj(te._f)&&!t.resolver&&!re(n.errors,W)&&!te._f.deps||xj(Yn,re(n.touchedFields,W),n.isSubmitted,p,f),vs=ty(W,a,Yn);Ie(i,W,Ve),Yn?(te._f.onBlur&&te._f.onBlur(R),l&&l(0)):te._f.onChange&&te._f.onChange(R);const ys=N(W,Ve,Yn,!1),Rd=!Tt(ys)||vs;if(!Yn&&u.values.next({name:W,type:R.type,values:{...i}}),gs)return d.isValid&&(e.mode==="onBlur"?Yn&&_():_()),Rd&&u.state.next({name:W,...vs?{}:ys});if(!Yn&&vs&&u.state.next({...n}),t.resolver){const{errors:gl}=await P([W]);if(pe(Ve),ie){const Ad=ly(n.errors,r,W),vl=ly(gl,r,Ad.name||W);ye=vl.error,W=vl.name,ze=Tt(gl)}}else m([W],!0),ye=(await sy(te,i,y,t.shouldUseNativeValidation))[W],m([W]),pe(Ve),ie&&(ye?ze=!1:d.isValid&&(ze=await j(r,!0)));ie&&(te._f.deps&&z(te._f.deps),E(W,ze,ye,ys))}},I=(R,F)=>{if(re(n.errors,F)&&R.focus)return R.focus(),1},z=async(R,F={})=>{let W,ie;const te=na(R);if(t.resolver){const q=await O(Ye(R)?R:te);W=Tt(q),ie=R?!te.some(pe=>re(q,pe)):W}else R?(ie=(await Promise.all(te.map(async q=>{const pe=re(r,q);return await j(pe&&pe._f?{[q]:pe}:pe)}))).every(Boolean),!(!ie&&!n.isValid)&&_()):ie=W=await j(r);return u.state.next({...!Mn(R)||d.isValid&&W!==n.isValid?{}:{name:R},...t.resolver||!R?{isValid:W}:{},errors:n.errors}),F.shouldFocus&&!ie&&ra(r,I,R?te:a.mount),ie},U=R=>{const F={...s.mount?i:o};return Ye(R)?F:Mn(R)?re(F,R):R.map(W=>re(F,W))},Y=(R,F)=>({invalid:!!re((F||n).errors,R),isDirty:!!re((F||n).dirtyFields,R),error:re((F||n).errors,R),isValidating:!!re(n.validatingFields,R),isTouched:!!re((F||n).touchedFields,R)}),H=R=>{R&&na(R).forEach(F=>et(n.errors,F)),u.state.next({errors:R?n.errors:{}})},Z=(R,F,W)=>{const ie=(re(r,R,{_f:{}})._f||{}).ref,te=re(n.errors,R)||{},{ref:q,message:pe,type:ye,...ze}=te;Ie(n.errors,R,{...ze,...F,ref:ie}),u.state.next({name:R,errors:n.errors,isValid:!1}),W&&W.shouldFocus&&ie&&ie.focus&&ie.focus()},K=(R,F)=>sr(R)?u.values.subscribe({next:W=>R(L(void 0,F),W)}):L(R,F,!0),G=(R,F={})=>{for(const W of R?na(R):a.mount)a.mount.delete(W),a.array.delete(W),F.keepValue||(et(r,W),et(i,W)),!F.keepError&&et(n.errors,W),!F.keepDirty&&et(n.dirtyFields,W),!F.keepTouched&&et(n.touchedFields,W),!F.keepIsValidating&&et(n.validatingFields,W),!t.shouldUnregister&&!F.keepDefaultValue&&et(o,W);u.values.next({values:{...i}}),u.state.next({...n,...F.keepDirty?{isDirty:A()}:{}}),!F.keepIsValid&&_()},V=({disabled:R,name:F,field:W,fields:ie,value:te})=>{if(Qt(R)&&s.mount||R){const q=R?void 0:Ye(te)?Sf(W?W._f:re(ie,F)._f):te;Ie(i,F,q),N(F,q,!1,!1,!0)}},B=(R,F={})=>{let W=re(r,R);const ie=Qt(F.disabled)||Qt(e.disabled);return Ie(r,R,{...W||{},_f:{...W&&W._f?W._f:{ref:{name:R}},name:R,mount:!0,...F}}),a.mount.add(R),W?V({field:W,disabled:Qt(F.disabled)?F.disabled:e.disabled,name:R,value:F.value}):C(R,!0,F.value),{...ie?{disabled:F.disabled||e.disabled}:{},...t.progressive?{required:!!F.required,min:As(F.min),max:As(F.max),minLength:As(F.minLength),maxLength:As(F.maxLength),pattern:As(F.pattern)}:{},name:R,onChange:k,onBlur:k,ref:te=>{if(te){B(R,F),W=re(r,R);const q=Ye(te.value)&&te.querySelectorAll&&te.querySelectorAll("input,select,textarea")[0]||te,pe=mj(q),ye=W._f.refs||[];if(pe?ye.find(ze=>ze===q):q===W._f.ref)return;Ie(r,R,{_f:{...W._f,...pe?{refs:[...ye.filter(_f),q,...Array.isArray(re(o,R))?[{}]:[]],ref:{type:q.type,name:R}}:{ref:q}}}),C(R,!1,void 0,q)}else W=re(r,R,{}),W._f&&(W._f.mount=!1),(t.shouldUnregister||F.shouldUnregister)&&!(L_(a.array,R)&&s.action)&&a.unMount.add(R)}}},ee=()=>t.shouldFocusError&&ra(r,I,a.mount),ne=R=>{Qt(R)&&(u.state.next({disabled:R}),ra(r,(F,W)=>{const ie=re(r,W);ie&&(F.disabled=ie._f.disabled||R,Array.isArray(ie._f.refs)&&ie._f.refs.forEach(te=>{te.disabled=ie._f.disabled||R}))},0,!1))},oe=(R,F)=>async W=>{let ie;W&&(W.preventDefault&&W.preventDefault(),W.persist&&W.persist());let te=Nt(i);if(u.state.next({isSubmitting:!0}),t.resolver){const{errors:q,values:pe}=await P();n.errors=q,te=pe}else await j(r);if(et(n.errors,"root"),Tt(n.errors)){u.state.next({errors:{}});try{await R(te,W)}catch(q){ie=q}}else F&&await F({...n.errors},W),ee(),setTimeout(ee);if(u.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Tt(n.errors)&&!ie,submitCount:n.submitCount+1,errors:n.errors}),ie)throw ie},X=(R,F={})=>{re(r,R)&&(Ye(F.defaultValue)?D(R,Nt(re(o,R))):(D(R,F.defaultValue),Ie(o,R,Nt(F.defaultValue))),F.keepTouched||et(n.touchedFields,R),F.keepDirty||(et(n.dirtyFields,R),n.isDirty=F.defaultValue?A(R,Nt(re(o,R))):A()),F.keepError||(et(n.errors,R),d.isValid&&_()),u.state.next({...n}))},ae=(R,F={})=>{const W=R?Nt(R):o,ie=Nt(W),te=Tt(R),q=te?o:ie;if(F.keepDefaultValues||(o=W),!F.keepValues){if(F.keepDirtyValues){const pe=new Set([...a.mount,...Object.keys(Rs(o,i))]);for(const ye of Array.from(pe))re(n.dirtyFields,ye)?Ie(q,ye,re(i,ye)):D(ye,re(q,ye))}else{if(Um&&Ye(R))for(const pe of a.mount){const ye=re(r,pe);if(ye&&ye._f){const ze=Array.isArray(ye._f.refs)?ye._f.refs[0]:ye._f.ref;if(pu(ze)){const Ve=ze.closest("form");if(Ve){Ve.reset();break}}}}r={}}i=e.shouldUnregister?F.keepDefaultValues?Nt(o):{}:Nt(q),u.array.next({values:{...q}}),u.values.next({values:{...q}})}a={mount:F.keepDirtyValues?a.mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},s.mount=!d.isValid||!!F.keepIsValid||!!F.keepDirtyValues,s.watch=!!e.shouldUnregister,u.state.next({submitCount:F.keepSubmitCount?n.submitCount:0,isDirty:te?!1:F.keepDirty?n.isDirty:!!(F.keepDefaultValues&&!Vr(R,o)),isSubmitted:F.keepIsSubmitted?n.isSubmitted:!1,dirtyFields:te?{}:F.keepDirtyValues?F.keepDefaultValues&&i?Rs(o,i):n.dirtyFields:F.keepDefaultValues&&R?Rs(o,R):F.keepDirty?n.dirtyFields:{},touchedFields:F.keepTouched?n.touchedFields:{},errors:F.keepErrors?n.errors:{},isSubmitSuccessful:F.keepIsSubmitSuccessful?n.isSubmitSuccessful:!1,isSubmitting:!1})},me=(R,F)=>ae(sr(R)?R(i):R,F);return{control:{register:B,unregister:G,getFieldState:Y,handleSubmit:oe,setError:Z,_executeSchema:P,_getWatch:L,_getDirty:A,_updateValid:_,_removeUnmounted:$,_updateFieldArray:g,_updateDisabledField:V,_getFieldArray:b,_reset:ae,_resetDefaultValues:()=>sr(t.defaultValues)&&t.defaultValues().then(R=>{me(R,t.resetOptions),u.state.next({isLoading:!1})}),_updateFormState:R=>{n={...n,...R}},_disableForm:ne,_subjects:u,_proxyFormState:d,_setErrors:S,get _fields(){return r},get _formValues(){return i},get _state(){return s},set _state(R){s=R},get _defaultValues(){return o},get _names(){return a},set _names(R){a=R},get _formState(){return n},set _formState(R){n=R},get _options(){return t},set _options(R){t={...t,...R}}},trigger:z,register:B,handleSubmit:oe,watch:K,setValue:D,getValues:U,reset:me,resetField:X,clearErrors:H,unregister:G,setError:Z,setFocus:(R,F={})=>{const W=re(r,R),ie=W&&W._f;if(ie){const te=ie.refs?ie.refs[0]:ie.ref;te.focus&&(te.focus(),F.shouldSelect&&te.select())}},getFieldState:Y}}function yr(e={}){const t=de.useRef(),n=de.useRef(),[r,o]=de.useState({isDirty:!1,isValidating:!1,isLoading:sr(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:sr(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...Sj(e),formState:r});const i=t.current.control;return i._options=e,Zm({subject:i._subjects.state,next:s=>{V_(s,i._proxyFormState,i._updateFormState,!0)&&o({...i._formState})}}),de.useEffect(()=>i._disableForm(e.disabled),[i,e.disabled]),de.useEffect(()=>{if(i._proxyFormState.isDirty){const s=i._getDirty();s!==r.isDirty&&i._subjects.state.next({isDirty:s})}},[i,r.isDirty]),de.useEffect(()=>{e.values&&!Vr(e.values,n.current)?(i._reset(e.values,i._options.resetOptions),n.current=e.values,o(s=>({...s}))):i._resetDefaultValues()},[e.values,i]),de.useEffect(()=>{e.errors&&i._setErrors(e.errors)},[e.errors,i]),de.useEffect(()=>{i._state.mount||(i._updateValid(),i._state.mount=!0),i._state.watch&&(i._state.watch=!1,i._subjects.state.next({...i._formState})),i._removeUnmounted()}),de.useEffect(()=>{e.shouldUnregister&&i._subjects.values.next({values:i._getWatch()})},[e.shouldUnregister,i]),de.useEffect(()=>{t.current&&(t.current.watch=t.current.watch.bind({}))},[r]),t.current.formState=F_(r,i),t.current}const cy=(e,t,n)=>{if(e&&"reportValidity"in e){const r=re(n,t);e.setCustomValidity(r&&r.message||""),e.reportValidity()}},q_=(e,t)=>{for(const n in t.fields){const r=t.fields[n];r&&r.ref&&"reportValidity"in r.ref?cy(r.ref,n,e):r.refs&&r.refs.forEach(o=>cy(o,n,e))}},bj=(e,t)=>{t.shouldUseNativeValidation&&q_(e,t);const n={};for(const r in e){const o=re(t.fields,r),i=Object.assign(e[r]||{},{ref:o&&o.ref});if(Cj(t.names||Object.keys(e),r)){const s=Object.assign({},re(n,r));Ie(s,"root",i),Ie(n,r,s)}else Ie(n,r,i)}return n},Cj=(e,t)=>e.some(n=>n.startsWith(t+"."));var Ej=function(e,t){for(var n={};e.length;){var r=e[0],o=r.code,i=r.message,s=r.path.join(".");if(!n[s])if("unionErrors"in r){var a=r.unionErrors[0].errors[0];n[s]={message:a.message,type:a.code}}else n[s]={message:i,type:o};if("unionErrors"in r&&r.unionErrors.forEach(function(d){return d.errors.forEach(function(u){return e.push(u)})}),t){var l=n[s].types,c=l&&l[r.code];n[s]=U_(s,t,n,o,c?[].concat(c,r.message):r.message)}e.shift()}return n},xr=function(e,t,n){return n===void 0&&(n={}),function(r,o,i){try{return Promise.resolve(function(s,a){try{var l=Promise.resolve(e[n.mode==="sync"?"parse":"parseAsync"](r,t)).then(function(c){return i.shouldUseNativeValidation&&q_({},i),{errors:{},values:n.raw?r:c}})}catch(c){return a(c)}return l&&l.then?l.then(void 0,a):l}(0,function(s){if(function(a){return Array.isArray(a==null?void 0:a.errors)}(s))return{values:{},errors:bj(Ej(s.errors,!i.shouldUseNativeValidation&&i.criteriaMode==="all"),i)};throw s}))}catch(s){return Promise.reject(s)}}},kj="Label",Q_=x.forwardRef((e,t)=>h.jsx(xe.label,{...e,ref:t,onMouseDown:n=>{var o;n.target.closest("button, input, select, textarea")||((o=e.onMouseDown)==null||o.call(e,n),!n.defaultPrevented&&n.detail>1&&n.preventDefault())}}));Q_.displayName=kj;var J_=Q_;const Nj=td("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),eS=x.forwardRef(({className:e,...t},n)=>h.jsx(J_,{ref:n,className:we(Nj(),e),...t}));eS.displayName=J_.displayName;const wr=aj,tS=x.createContext({}),ut=({...e})=>h.jsx(tS.Provider,{value:{name:e.name},children:h.jsx(dj,{...e})}),fd=()=>{const e=x.useContext(tS),t=x.useContext(nS),{getFieldState:n,formState:r}=dd(),o=n(e.name,r);if(!e)throw new Error("useFormField should be used within <FormField>");const{id:i}=t;return{id:i,name:e.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...o}},nS=x.createContext({}),ot=x.forwardRef(({className:e,...t},n)=>{const r=x.useId();return h.jsx(nS.Provider,{value:{id:r},children:h.jsx("div",{ref:n,className:we("space-y-2",e),...t})})});ot.displayName="FormItem";const Tj=x.forwardRef(({className:e,...t},n)=>{const{error:r,formItemId:o}=fd();return h.jsx(eS,{ref:n,className:we(r&&"text-destructive",e),htmlFor:o,...t})});Tj.displayName="FormLabel";const it=x.forwardRef(({...e},t)=>{const{error:n,formItemId:r,formDescriptionId:o,formMessageId:i}=fd();return h.jsx(to,{ref:t,id:r,"aria-describedby":n?`${o} ${i}`:`${o}`,"aria-invalid":!!n,...e})});it.displayName="FormControl";const Pj=x.forwardRef(({className:e,...t},n)=>{const{formDescriptionId:r}=fd();return h.jsx("p",{ref:n,id:r,className:we("text-[0.8rem] text-muted-foreground",e),...t})});Pj.displayName="FormDescription";const st=x.forwardRef(({className:e,children:t,...n},r)=>{const{error:o,formMessageId:i}=fd(),s=o?String(o==null?void 0:o.message):t;return s?h.jsx("p",{ref:r,id:i,className:we("text-[0.8rem] font-medium text-destructive",e),...n,children:s}):null});st.displayName="FormMessage";const nn=x.forwardRef(({className:e,type:t,...n},r)=>h.jsx("input",{type:t,className:we("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:r,...n}));nn.displayName="Input";function uy(e,[t,n]){return Math.min(n,Math.max(t,e))}function Ij(e,t=globalThis==null?void 0:globalThis.document){const n=Dt(e);x.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var Rj="DismissableLayer",oh="dismissableLayer.update",Aj="dismissableLayer.pointerDownOutside",Mj="dismissableLayer.focusOutside",dy,rS=x.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),ul=x.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:i,onInteractOutside:s,onDismiss:a,...l}=e,c=x.useContext(rS),[d,u]=x.useState(null),f=(d==null?void 0:d.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,p]=x.useState({}),y=Ae(t,E=>u(E)),v=Array.from(c.layers),[_]=[...c.layersWithOutsidePointerEventsDisabled].slice(-1),m=v.indexOf(_),g=d?v.indexOf(d):-1,w=c.layersWithOutsidePointerEventsDisabled.size>0,S=g>=m,C=Oj(E=>{const P=E.target,O=[...c.branches].some(j=>j.contains(P));!S||O||(o==null||o(E),s==null||s(E),E.defaultPrevented||a==null||a())},f),N=Dj(E=>{const P=E.target;[...c.branches].some(j=>j.contains(P))||(i==null||i(E),s==null||s(E),E.defaultPrevented||a==null||a())},f);return Ij(E=>{g===c.layers.size-1&&(r==null||r(E),!E.defaultPrevented&&a&&(E.preventDefault(),a()))},f),x.useEffect(()=>{if(d)return n&&(c.layersWithOutsidePointerEventsDisabled.size===0&&(dy=f.body.style.pointerEvents,f.body.style.pointerEvents="none"),c.layersWithOutsidePointerEventsDisabled.add(d)),c.layers.add(d),fy(),()=>{n&&c.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=dy)}},[d,f,n,c]),x.useEffect(()=>()=>{d&&(c.layers.delete(d),c.layersWithOutsidePointerEventsDisabled.delete(d),fy())},[d,c]),x.useEffect(()=>{const E=()=>p({});return document.addEventListener(oh,E),()=>document.removeEventListener(oh,E)},[]),h.jsx(xe.div,{...l,ref:y,style:{pointerEvents:w?S?"auto":"none":void 0,...e.style},onFocusCapture:he(e.onFocusCapture,N.onFocusCapture),onBlurCapture:he(e.onBlurCapture,N.onBlurCapture),onPointerDownCapture:he(e.onPointerDownCapture,C.onPointerDownCapture)})});ul.displayName=Rj;var jj="DismissableLayerBranch",oS=x.forwardRef((e,t)=>{const n=x.useContext(rS),r=x.useRef(null),o=Ae(t,r);return x.useEffect(()=>{const i=r.current;if(i)return n.branches.add(i),()=>{n.branches.delete(i)}},[n.branches]),h.jsx(xe.div,{...e,ref:o})});oS.displayName=jj;function Oj(e,t=globalThis==null?void 0:globalThis.document){const n=Dt(e),r=x.useRef(!1),o=x.useRef(()=>{});return x.useEffect(()=>{const i=a=>{if(a.target&&!r.current){let l=function(){iS(Aj,n,c,{discrete:!0})};const c={originalEvent:a};a.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=l,t.addEventListener("click",o.current,{once:!0})):l()}else t.removeEventListener("click",o.current);r.current=!1},s=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(s),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function Dj(e,t=globalThis==null?void 0:globalThis.document){const n=Dt(e),r=x.useRef(!1);return x.useEffect(()=>{const o=i=>{i.target&&!r.current&&iS(Mj,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function fy(){const e=new CustomEvent(oh);document.dispatchEvent(e)}function iS(e,t,n,{discrete:r}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?e_(o,i):o.dispatchEvent(i)}var Lj=ul,zj=oS,bf=0;function sS(){x.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??py()),document.body.insertAdjacentElement("beforeend",e[1]??py()),bf++,()=>{bf===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),bf--}},[])}function py(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var Cf="focusScope.autoFocusOnMount",Ef="focusScope.autoFocusOnUnmount",hy={bubbles:!1,cancelable:!0},$j="FocusScope",Km=x.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...s}=e,[a,l]=x.useState(null),c=Dt(o),d=Dt(i),u=x.useRef(null),f=Ae(t,v=>l(v)),p=x.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;x.useEffect(()=>{if(r){let v=function(w){if(p.paused||!a)return;const S=w.target;a.contains(S)?u.current=S:Mr(u.current,{select:!0})},_=function(w){if(p.paused||!a)return;const S=w.relatedTarget;S!==null&&(a.contains(S)||Mr(u.current,{select:!0}))},m=function(w){if(document.activeElement===document.body)for(const C of w)C.removedNodes.length>0&&Mr(a)};document.addEventListener("focusin",v),document.addEventListener("focusout",_);const g=new MutationObserver(m);return a&&g.observe(a,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",v),document.removeEventListener("focusout",_),g.disconnect()}}},[r,a,p.paused]),x.useEffect(()=>{if(a){gy.add(p);const v=document.activeElement;if(!a.contains(v)){const m=new CustomEvent(Cf,hy);a.addEventListener(Cf,c),a.dispatchEvent(m),m.defaultPrevented||(Fj(Wj(aS(a)),{select:!0}),document.activeElement===v&&Mr(a))}return()=>{a.removeEventListener(Cf,c),setTimeout(()=>{const m=new CustomEvent(Ef,hy);a.addEventListener(Ef,d),a.dispatchEvent(m),m.defaultPrevented||Mr(v??document.body,{select:!0}),a.removeEventListener(Ef,d),gy.remove(p)},0)}}},[a,c,d,p]);const y=x.useCallback(v=>{if(!n&&!r||p.paused)return;const _=v.key==="Tab"&&!v.altKey&&!v.ctrlKey&&!v.metaKey,m=document.activeElement;if(_&&m){const g=v.currentTarget,[w,S]=Vj(g);w&&S?!v.shiftKey&&m===S?(v.preventDefault(),n&&Mr(w,{select:!0})):v.shiftKey&&m===w&&(v.preventDefault(),n&&Mr(S,{select:!0})):m===g&&v.preventDefault()}},[n,r,p.paused]);return h.jsx(xe.div,{tabIndex:-1,...s,ref:f,onKeyDown:y})});Km.displayName=$j;function Fj(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(Mr(r,{select:t}),document.activeElement!==n)return}function Vj(e){const t=aS(e),n=my(t,e),r=my(t.reverse(),e);return[n,r]}function aS(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function my(e,t){for(const n of e)if(!Hj(n,{upTo:t}))return n}function Hj(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function Bj(e){return e instanceof HTMLInputElement&&"select"in e}function Mr(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&Bj(e)&&t&&e.select()}}var gy=Uj();function Uj(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=vy(e,t),e.unshift(t)},remove(t){var n;e=vy(e,t),(n=e[0])==null||n.resume()}}}function vy(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Wj(e){return e.filter(t=>t.tagName!=="A")}const Zj=["top","right","bottom","left"],so=Math.min,Vt=Math.max,gu=Math.round,Wl=Math.floor,$n=e=>({x:e,y:e}),Gj={left:"right",right:"left",bottom:"top",top:"bottom"},Yj={start:"end",end:"start"};function ih(e,t,n){return Vt(e,so(t,n))}function _r(e,t){return typeof e=="function"?e(t):e}function Sr(e){return e.split("-")[0]}function ps(e){return e.split("-")[1]}function Xm(e){return e==="x"?"y":"x"}function qm(e){return e==="y"?"height":"width"}function ao(e){return["top","bottom"].includes(Sr(e))?"y":"x"}function Qm(e){return Xm(ao(e))}function Kj(e,t,n){n===void 0&&(n=!1);const r=ps(e),o=Qm(e),i=qm(o);let s=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(s=vu(s)),[s,vu(s)]}function Xj(e){const t=vu(e);return[sh(e),t,sh(t)]}function sh(e){return e.replace(/start|end/g,t=>Yj[t])}function qj(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],s=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:s;default:return[]}}function Qj(e,t,n,r){const o=ps(e);let i=qj(Sr(e),n==="start",r);return o&&(i=i.map(s=>s+"-"+o),t&&(i=i.concat(i.map(sh)))),i}function vu(e){return e.replace(/left|right|bottom|top/g,t=>Gj[t])}function Jj(e){return{top:0,right:0,bottom:0,left:0,...e}}function lS(e){return typeof e!="number"?Jj(e):{top:e,right:e,bottom:e,left:e}}function yu(e){const{x:t,y:n,width:r,height:o}=e;return{width:r,height:o,top:n,left:t,right:t+r,bottom:n+o,x:t,y:n}}function yy(e,t,n){let{reference:r,floating:o}=e;const i=ao(t),s=Qm(t),a=qm(s),l=Sr(t),c=i==="y",d=r.x+r.width/2-o.width/2,u=r.y+r.height/2-o.height/2,f=r[a]/2-o[a]/2;let p;switch(l){case"top":p={x:d,y:r.y-o.height};break;case"bottom":p={x:d,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:u};break;case"left":p={x:r.x-o.width,y:u};break;default:p={x:r.x,y:r.y}}switch(ps(t)){case"start":p[s]-=f*(n&&c?-1:1);break;case"end":p[s]+=f*(n&&c?-1:1);break}return p}const e9=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:s}=n,a=i.filter(Boolean),l=await(s.isRTL==null?void 0:s.isRTL(t));let c=await s.getElementRects({reference:e,floating:t,strategy:o}),{x:d,y:u}=yy(c,r,l),f=r,p={},y=0;for(let v=0;v<a.length;v++){const{name:_,fn:m}=a[v],{x:g,y:w,data:S,reset:C}=await m({x:d,y:u,initialPlacement:r,placement:f,strategy:o,middlewareData:p,rects:c,platform:s,elements:{reference:e,floating:t}});d=g??d,u=w??u,p={...p,[_]:{...p[_],...S}},C&&y<=50&&(y++,typeof C=="object"&&(C.placement&&(f=C.placement),C.rects&&(c=C.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:o}):C.rects),{x:d,y:u}=yy(c,f,l)),v=-1)}return{x:d,y:u,placement:f,strategy:o,middlewareData:p}};async function Ga(e,t){var n;t===void 0&&(t={});const{x:r,y:o,platform:i,rects:s,elements:a,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:u="floating",altBoundary:f=!1,padding:p=0}=_r(t,e),y=lS(p),_=a[f?u==="floating"?"reference":"floating":u],m=yu(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(_)))==null||n?_:_.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(a.floating)),boundary:c,rootBoundary:d,strategy:l})),g=u==="floating"?{x:r,y:o,width:s.floating.width,height:s.floating.height}:s.reference,w=await(i.getOffsetParent==null?void 0:i.getOffsetParent(a.floating)),S=await(i.isElement==null?void 0:i.isElement(w))?await(i.getScale==null?void 0:i.getScale(w))||{x:1,y:1}:{x:1,y:1},C=yu(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:g,offsetParent:w,strategy:l}):g);return{top:(m.top-C.top+y.top)/S.y,bottom:(C.bottom-m.bottom+y.bottom)/S.y,left:(m.left-C.left+y.left)/S.x,right:(C.right-m.right+y.right)/S.x}}const t9=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:s,elements:a,middlewareData:l}=t,{element:c,padding:d=0}=_r(e,t)||{};if(c==null)return{};const u=lS(d),f={x:n,y:r},p=Qm(o),y=qm(p),v=await s.getDimensions(c),_=p==="y",m=_?"top":"left",g=_?"bottom":"right",w=_?"clientHeight":"clientWidth",S=i.reference[y]+i.reference[p]-f[p]-i.floating[y],C=f[p]-i.reference[p],N=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c));let E=N?N[w]:0;(!E||!await(s.isElement==null?void 0:s.isElement(N)))&&(E=a.floating[w]||i.floating[y]);const P=S/2-C/2,O=E/2-v[y]/2-1,j=so(u[m],O),$=so(u[g],O),A=j,L=E-v[y]-$,b=E/2-v[y]/2+P,M=ih(A,b,L),T=!l.arrow&&ps(o)!=null&&b!==M&&i.reference[y]/2-(b<A?j:$)-v[y]/2<0,D=T?b<A?b-A:b-L:0;return{[p]:f[p]+D,data:{[p]:M,centerOffset:b-M-D,...T&&{alignmentOffset:D}},reset:T}}}),n9=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:s,initialPlacement:a,platform:l,elements:c}=t,{mainAxis:d=!0,crossAxis:u=!0,fallbackPlacements:f,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:y="none",flipAlignment:v=!0,..._}=_r(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const m=Sr(o),g=ao(a),w=Sr(a)===a,S=await(l.isRTL==null?void 0:l.isRTL(c.floating)),C=f||(w||!v?[vu(a)]:Xj(a)),N=y!=="none";!f&&N&&C.push(...Qj(a,v,y,S));const E=[a,...C],P=await Ga(t,_),O=[];let j=((r=i.flip)==null?void 0:r.overflows)||[];if(d&&O.push(P[m]),u){const b=Kj(o,s,S);O.push(P[b[0]],P[b[1]])}if(j=[...j,{placement:o,overflows:O}],!O.every(b=>b<=0)){var $,A;const b=((($=i.flip)==null?void 0:$.index)||0)+1,M=E[b];if(M)return{data:{index:b,overflows:j},reset:{placement:M}};let T=(A=j.filter(D=>D.overflows[0]<=0).sort((D,k)=>D.overflows[1]-k.overflows[1])[0])==null?void 0:A.placement;if(!T)switch(p){case"bestFit":{var L;const D=(L=j.filter(k=>{if(N){const I=ao(k.placement);return I===g||I==="y"}return!0}).map(k=>[k.placement,k.overflows.filter(I=>I>0).reduce((I,z)=>I+z,0)]).sort((k,I)=>k[1]-I[1])[0])==null?void 0:L[0];D&&(T=D);break}case"initialPlacement":T=a;break}if(o!==T)return{reset:{placement:T}}}return{}}}};function xy(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function wy(e){return Zj.some(t=>e[t]>=0)}const r9=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=_r(e,t);switch(r){case"referenceHidden":{const i=await Ga(t,{...o,elementContext:"reference"}),s=xy(i,n.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:wy(s)}}}case"escaped":{const i=await Ga(t,{...o,altBoundary:!0}),s=xy(i,n.floating);return{data:{escapedOffsets:s,escaped:wy(s)}}}default:return{}}}}};async function o9(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),s=Sr(n),a=ps(n),l=ao(n)==="y",c=["left","top"].includes(s)?-1:1,d=i&&l?-1:1,u=_r(t,e);let{mainAxis:f,crossAxis:p,alignmentAxis:y}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return a&&typeof y=="number"&&(p=a==="end"?y*-1:y),l?{x:p*d,y:f*c}:{x:f*c,y:p*d}}const i9=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:s,middlewareData:a}=t,l=await o9(t,e);return s===((n=a.offset)==null?void 0:n.placement)&&(r=a.arrow)!=null&&r.alignmentOffset?{}:{x:o+l.x,y:i+l.y,data:{...l,placement:s}}}}},s9=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:s=!1,limiter:a={fn:_=>{let{x:m,y:g}=_;return{x:m,y:g}}},...l}=_r(e,t),c={x:n,y:r},d=await Ga(t,l),u=ao(Sr(o)),f=Xm(u);let p=c[f],y=c[u];if(i){const _=f==="y"?"top":"left",m=f==="y"?"bottom":"right",g=p+d[_],w=p-d[m];p=ih(g,p,w)}if(s){const _=u==="y"?"top":"left",m=u==="y"?"bottom":"right",g=y+d[_],w=y-d[m];y=ih(g,y,w)}const v=a.fn({...t,[f]:p,[u]:y});return{...v,data:{x:v.x-n,y:v.y-r,enabled:{[f]:i,[u]:s}}}}}},a9=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:s}=t,{offset:a=0,mainAxis:l=!0,crossAxis:c=!0}=_r(e,t),d={x:n,y:r},u=ao(o),f=Xm(u);let p=d[f],y=d[u];const v=_r(a,t),_=typeof v=="number"?{mainAxis:v,crossAxis:0}:{mainAxis:0,crossAxis:0,...v};if(l){const w=f==="y"?"height":"width",S=i.reference[f]-i.floating[w]+_.mainAxis,C=i.reference[f]+i.reference[w]-_.mainAxis;p<S?p=S:p>C&&(p=C)}if(c){var m,g;const w=f==="y"?"width":"height",S=["top","left"].includes(Sr(o)),C=i.reference[u]-i.floating[w]+(S&&((m=s.offset)==null?void 0:m[u])||0)+(S?0:_.crossAxis),N=i.reference[u]+i.reference[w]+(S?0:((g=s.offset)==null?void 0:g[u])||0)-(S?_.crossAxis:0);y<C?y=C:y>N&&(y=N)}return{[f]:p,[u]:y}}}},l9=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:o,rects:i,platform:s,elements:a}=t,{apply:l=()=>{},...c}=_r(e,t),d=await Ga(t,c),u=Sr(o),f=ps(o),p=ao(o)==="y",{width:y,height:v}=i.floating;let _,m;u==="top"||u==="bottom"?(_=u,m=f===(await(s.isRTL==null?void 0:s.isRTL(a.floating))?"start":"end")?"left":"right"):(m=u,_=f==="end"?"top":"bottom");const g=v-d.top-d.bottom,w=y-d.left-d.right,S=so(v-d[_],g),C=so(y-d[m],w),N=!t.middlewareData.shift;let E=S,P=C;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(P=w),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(E=g),N&&!f){const j=Vt(d.left,0),$=Vt(d.right,0),A=Vt(d.top,0),L=Vt(d.bottom,0);p?P=y-2*(j!==0||$!==0?j+$:Vt(d.left,d.right)):E=v-2*(A!==0||L!==0?A+L:Vt(d.top,d.bottom))}await l({...t,availableWidth:P,availableHeight:E});const O=await s.getDimensions(a.floating);return y!==O.width||v!==O.height?{reset:{rects:!0}}:{}}}};function pd(){return typeof window<"u"}function hs(e){return cS(e)?(e.nodeName||"").toLowerCase():"#document"}function Gt(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Gn(e){var t;return(t=(cS(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function cS(e){return pd()?e instanceof Node||e instanceof Gt(e).Node:!1}function En(e){return pd()?e instanceof Element||e instanceof Gt(e).Element:!1}function Wn(e){return pd()?e instanceof HTMLElement||e instanceof Gt(e).HTMLElement:!1}function _y(e){return!pd()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Gt(e).ShadowRoot}function dl(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=kn(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function c9(e){return["table","td","th"].includes(hs(e))}function hd(e){return[":popover-open",":modal"].some(t=>{try{return e.matches(t)}catch{return!1}})}function Jm(e){const t=eg(),n=En(e)?kn(e):e;return n.transform!=="none"||n.perspective!=="none"||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||["transform","perspective","filter"].some(r=>(n.willChange||"").includes(r))||["paint","layout","strict","content"].some(r=>(n.contain||"").includes(r))}function u9(e){let t=lo(e);for(;Wn(t)&&!is(t);){if(Jm(t))return t;if(hd(t))return null;t=lo(t)}return null}function eg(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function is(e){return["html","body","#document"].includes(hs(e))}function kn(e){return Gt(e).getComputedStyle(e)}function md(e){return En(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function lo(e){if(hs(e)==="html")return e;const t=e.assignedSlot||e.parentNode||_y(e)&&e.host||Gn(e);return _y(t)?t.host:t}function uS(e){const t=lo(e);return is(t)?e.ownerDocument?e.ownerDocument.body:e.body:Wn(t)&&dl(t)?t:uS(t)}function Ya(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=uS(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),s=Gt(o);if(i){const a=ah(s);return t.concat(s,s.visualViewport||[],dl(o)?o:[],a&&n?Ya(a):[])}return t.concat(o,Ya(o,[],n))}function ah(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function dS(e){const t=kn(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=Wn(e),i=o?e.offsetWidth:n,s=o?e.offsetHeight:r,a=gu(n)!==i||gu(r)!==s;return a&&(n=i,r=s),{width:n,height:r,$:a}}function tg(e){return En(e)?e:e.contextElement}function Oi(e){const t=tg(e);if(!Wn(t))return $n(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=dS(t);let s=(i?gu(n.width):n.width)/r,a=(i?gu(n.height):n.height)/o;return(!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}const d9=$n(0);function fS(e){const t=Gt(e);return!eg()||!t.visualViewport?d9:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function f9(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Gt(e)?!1:t}function Vo(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=tg(e);let s=$n(1);t&&(r?En(r)&&(s=Oi(r)):s=Oi(e));const a=f9(i,n,r)?fS(i):$n(0);let l=(o.left+a.x)/s.x,c=(o.top+a.y)/s.y,d=o.width/s.x,u=o.height/s.y;if(i){const f=Gt(i),p=r&&En(r)?Gt(r):r;let y=f,v=ah(y);for(;v&&r&&p!==y;){const _=Oi(v),m=v.getBoundingClientRect(),g=kn(v),w=m.left+(v.clientLeft+parseFloat(g.paddingLeft))*_.x,S=m.top+(v.clientTop+parseFloat(g.paddingTop))*_.y;l*=_.x,c*=_.y,d*=_.x,u*=_.y,l+=w,c+=S,y=Gt(v),v=ah(y)}}return yu({width:d,height:u,x:l,y:c})}function ng(e,t){const n=md(e).scrollLeft;return t?t.left+n:Vo(Gn(e)).left+n}function pS(e,t,n){n===void 0&&(n=!1);const r=e.getBoundingClientRect(),o=r.left+t.scrollLeft-(n?0:ng(e,r)),i=r.top+t.scrollTop;return{x:o,y:i}}function p9(e){let{elements:t,rect:n,offsetParent:r,strategy:o}=e;const i=o==="fixed",s=Gn(r),a=t?hd(t.floating):!1;if(r===s||a&&i)return n;let l={scrollLeft:0,scrollTop:0},c=$n(1);const d=$n(0),u=Wn(r);if((u||!u&&!i)&&((hs(r)!=="body"||dl(s))&&(l=md(r)),Wn(r))){const p=Vo(r);c=Oi(r),d.x=p.x+r.clientLeft,d.y=p.y+r.clientTop}const f=s&&!u&&!i?pS(s,l,!0):$n(0);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-l.scrollLeft*c.x+d.x+f.x,y:n.y*c.y-l.scrollTop*c.y+d.y+f.y}}function h9(e){return Array.from(e.getClientRects())}function m9(e){const t=Gn(e),n=md(e),r=e.ownerDocument.body,o=Vt(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=Vt(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let s=-n.scrollLeft+ng(e);const a=-n.scrollTop;return kn(r).direction==="rtl"&&(s+=Vt(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:s,y:a}}function g9(e,t){const n=Gt(e),r=Gn(e),o=n.visualViewport;let i=r.clientWidth,s=r.clientHeight,a=0,l=0;if(o){i=o.width,s=o.height;const c=eg();(!c||c&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}return{width:i,height:s,x:a,y:l}}function v9(e,t){const n=Vo(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=Wn(e)?Oi(e):$n(1),s=e.clientWidth*i.x,a=e.clientHeight*i.y,l=o*i.x,c=r*i.y;return{width:s,height:a,x:l,y:c}}function Sy(e,t,n){let r;if(t==="viewport")r=g9(e,n);else if(t==="document")r=m9(Gn(e));else if(En(t))r=v9(t,n);else{const o=fS(e);r={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return yu(r)}function hS(e,t){const n=lo(e);return n===t||!En(n)||is(n)?!1:kn(n).position==="fixed"||hS(n,t)}function y9(e,t){const n=t.get(e);if(n)return n;let r=Ya(e,[],!1).filter(a=>En(a)&&hs(a)!=="body"),o=null;const i=kn(e).position==="fixed";let s=i?lo(e):e;for(;En(s)&&!is(s);){const a=kn(s),l=Jm(s);!l&&a.position==="fixed"&&(o=null),(i?!l&&!o:!l&&a.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||dl(s)&&!l&&hS(e,s))?r=r.filter(d=>d!==s):o=a,s=lo(s)}return t.set(e,r),r}function x9(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const s=[...n==="clippingAncestors"?hd(t)?[]:y9(t,this._c):[].concat(n),r],a=s[0],l=s.reduce((c,d)=>{const u=Sy(t,d,o);return c.top=Vt(u.top,c.top),c.right=so(u.right,c.right),c.bottom=so(u.bottom,c.bottom),c.left=Vt(u.left,c.left),c},Sy(t,a,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function w9(e){const{width:t,height:n}=dS(e);return{width:t,height:n}}function _9(e,t,n){const r=Wn(t),o=Gn(t),i=n==="fixed",s=Vo(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const l=$n(0);if(r||!r&&!i)if((hs(t)!=="body"||dl(o))&&(a=md(t)),r){const f=Vo(t,!0,i,t);l.x=f.x+t.clientLeft,l.y=f.y+t.clientTop}else o&&(l.x=ng(o));const c=o&&!r&&!i?pS(o,a):$n(0),d=s.left+a.scrollLeft-l.x-c.x,u=s.top+a.scrollTop-l.y-c.y;return{x:d,y:u,width:s.width,height:s.height}}function kf(e){return kn(e).position==="static"}function by(e,t){if(!Wn(e)||kn(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return Gn(e)===n&&(n=n.ownerDocument.body),n}function mS(e,t){const n=Gt(e);if(hd(e))return n;if(!Wn(e)){let o=lo(e);for(;o&&!is(o);){if(En(o)&&!kf(o))return o;o=lo(o)}return n}let r=by(e,t);for(;r&&c9(r)&&kf(r);)r=by(r,t);return r&&is(r)&&kf(r)&&!Jm(r)?n:r||u9(e)||n}const S9=async function(e){const t=this.getOffsetParent||mS,n=this.getDimensions,r=await n(e.floating);return{reference:_9(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function b9(e){return kn(e).direction==="rtl"}const C9={convertOffsetParentRelativeRectToViewportRelativeRect:p9,getDocumentElement:Gn,getClippingRect:x9,getOffsetParent:mS,getElementRects:S9,getClientRects:h9,getDimensions:w9,getScale:Oi,isElement:En,isRTL:b9};function E9(e,t){let n=null,r;const o=Gn(e);function i(){var a;clearTimeout(r),(a=n)==null||a.disconnect(),n=null}function s(a,l){a===void 0&&(a=!1),l===void 0&&(l=1),i();const{left:c,top:d,width:u,height:f}=e.getBoundingClientRect();if(a||t(),!u||!f)return;const p=Wl(d),y=Wl(o.clientWidth-(c+u)),v=Wl(o.clientHeight-(d+f)),_=Wl(c),g={rootMargin:-p+"px "+-y+"px "+-v+"px "+-_+"px",threshold:Vt(0,so(1,l))||1};let w=!0;function S(C){const N=C[0].intersectionRatio;if(N!==l){if(!w)return s();N?s(!1,N):r=setTimeout(()=>{s(!1,1e-7)},1e3)}w=!1}try{n=new IntersectionObserver(S,{...g,root:o.ownerDocument})}catch{n=new IntersectionObserver(S,g)}n.observe(e)}return s(!0),i}function k9(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,c=tg(e),d=o||i?[...c?Ya(c):[],...Ya(t)]:[];d.forEach(m=>{o&&m.addEventListener("scroll",n,{passive:!0}),i&&m.addEventListener("resize",n)});const u=c&&a?E9(c,n):null;let f=-1,p=null;s&&(p=new ResizeObserver(m=>{let[g]=m;g&&g.target===c&&p&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var w;(w=p)==null||w.observe(t)})),n()}),c&&!l&&p.observe(c),p.observe(t));let y,v=l?Vo(e):null;l&&_();function _(){const m=Vo(e);v&&(m.x!==v.x||m.y!==v.y||m.width!==v.width||m.height!==v.height)&&n(),v=m,y=requestAnimationFrame(_)}return n(),()=>{var m;d.forEach(g=>{o&&g.removeEventListener("scroll",n),i&&g.removeEventListener("resize",n)}),u==null||u(),(m=p)==null||m.disconnect(),p=null,l&&cancelAnimationFrame(y)}}const N9=i9,T9=s9,P9=n9,I9=l9,R9=r9,Cy=t9,A9=a9,M9=(e,t,n)=>{const r=new Map,o={platform:C9,...n},i={...o.platform,_c:r};return e9(e,t,{...o,platform:i})};var mc=typeof document<"u"?x.useLayoutEffect:x.useEffect;function xu(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,o;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!xu(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!xu(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function gS(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Ey(e,t){const n=gS(e);return Math.round(t*n)/n}function Nf(e){const t=x.useRef(e);return mc(()=>{t.current=e}),t}function j9(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:s}={},transform:a=!0,whileElementsMounted:l,open:c}=e,[d,u]=x.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=x.useState(r);xu(f,r)||p(r);const[y,v]=x.useState(null),[_,m]=x.useState(null),g=x.useCallback(k=>{k!==N.current&&(N.current=k,v(k))},[]),w=x.useCallback(k=>{k!==E.current&&(E.current=k,m(k))},[]),S=i||y,C=s||_,N=x.useRef(null),E=x.useRef(null),P=x.useRef(d),O=l!=null,j=Nf(l),$=Nf(o),A=Nf(c),L=x.useCallback(()=>{if(!N.current||!E.current)return;const k={placement:t,strategy:n,middleware:f};$.current&&(k.platform=$.current),M9(N.current,E.current,k).then(I=>{const z={...I,isPositioned:A.current!==!1};b.current&&!xu(P.current,z)&&(P.current=z,Go.flushSync(()=>{u(z)}))})},[f,t,n,$,A]);mc(()=>{c===!1&&P.current.isPositioned&&(P.current.isPositioned=!1,u(k=>({...k,isPositioned:!1})))},[c]);const b=x.useRef(!1);mc(()=>(b.current=!0,()=>{b.current=!1}),[]),mc(()=>{if(S&&(N.current=S),C&&(E.current=C),S&&C){if(j.current)return j.current(S,C,L);L()}},[S,C,L,j,O]);const M=x.useMemo(()=>({reference:N,floating:E,setReference:g,setFloating:w}),[g,w]),T=x.useMemo(()=>({reference:S,floating:C}),[S,C]),D=x.useMemo(()=>{const k={position:n,left:0,top:0};if(!T.floating)return k;const I=Ey(T.floating,d.x),z=Ey(T.floating,d.y);return a?{...k,transform:"translate("+I+"px, "+z+"px)",...gS(T.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:I,top:z}},[n,a,T.floating,d.x,d.y]);return x.useMemo(()=>({...d,update:L,refs:M,elements:T,floatingStyles:D}),[d,L,M,T,D])}const O9=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:o}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Cy({element:r.current,padding:o}).fn(n):{}:r?Cy({element:r,padding:o}).fn(n):{}}}},D9=(e,t)=>({...N9(e),options:[e,t]}),L9=(e,t)=>({...T9(e),options:[e,t]}),z9=(e,t)=>({...A9(e),options:[e,t]}),$9=(e,t)=>({...P9(e),options:[e,t]}),F9=(e,t)=>({...I9(e),options:[e,t]}),V9=(e,t)=>({...R9(e),options:[e,t]}),H9=(e,t)=>({...O9(e),options:[e,t]});var B9="Arrow",vS=x.forwardRef((e,t)=>{const{children:n,width:r=10,height:o=5,...i}=e;return h.jsx(xe.svg,{...i,ref:t,width:r,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:h.jsx("polygon",{points:"0,0 30,0 15,10"})})});vS.displayName=B9;var U9=vS;function W9(e,t=[]){let n=[];function r(i,s){const a=x.createContext(s),l=n.length;n=[...n,s];function c(u){const{scope:f,children:p,...y}=u,v=(f==null?void 0:f[e][l])||a,_=x.useMemo(()=>y,Object.values(y));return h.jsx(v.Provider,{value:_,children:p})}function d(u,f){const p=(f==null?void 0:f[e][l])||a,y=x.useContext(p);if(y)return y;if(s!==void 0)return s;throw new Error(`\`${u}\` must be used within \`${i}\``)}return c.displayName=i+"Provider",[c,d]}const o=()=>{const i=n.map(s=>x.createContext(s));return function(a){const l=(a==null?void 0:a[e])||i;return x.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,Z9(o,...t)]}function Z9(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const s=r.reduce((a,{useScope:l,scopeName:c})=>{const u=l(i)[`__scope${c}`];return{...a,...u}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])}};return n.scopeName=t.scopeName,n}function G9(e){const[t,n]=x.useState(void 0);return pt(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let s,a;if("borderBoxSize"in i){const l=i.borderBoxSize,c=Array.isArray(l)?l[0]:l;s=c.inlineSize,a=c.blockSize}else s=e.offsetWidth,a=e.offsetHeight;n({width:s,height:a})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}var rg="Popper",[yS,gd]=W9(rg),[Y9,xS]=yS(rg),wS=e=>{const{__scopePopper:t,children:n}=e,[r,o]=x.useState(null);return h.jsx(Y9,{scope:t,anchor:r,onAnchorChange:o,children:n})};wS.displayName=rg;var _S="PopperAnchor",SS=x.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=xS(_S,n),s=x.useRef(null),a=Ae(t,s);return x.useEffect(()=>{i.onAnchorChange((r==null?void 0:r.current)||s.current)}),r?null:h.jsx(xe.div,{...o,ref:a})});SS.displayName=_S;var og="PopperContent",[K9,X9]=yS(og),bS=x.forwardRef((e,t)=>{var V,B,ee,ne,oe,X;const{__scopePopper:n,side:r="bottom",sideOffset:o=0,align:i="center",alignOffset:s=0,arrowPadding:a=0,avoidCollisions:l=!0,collisionBoundary:c=[],collisionPadding:d=0,sticky:u="partial",hideWhenDetached:f=!1,updatePositionStrategy:p="optimized",onPlaced:y,...v}=e,_=xS(og,n),[m,g]=x.useState(null),w=Ae(t,ae=>g(ae)),[S,C]=x.useState(null),N=G9(S),E=(N==null?void 0:N.width)??0,P=(N==null?void 0:N.height)??0,O=r+(i!=="center"?"-"+i:""),j=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},$=Array.isArray(c)?c:[c],A=$.length>0,L={padding:j,boundary:$.filter(Q9),altBoundary:A},{refs:b,floatingStyles:M,placement:T,isPositioned:D,middlewareData:k}=j9({strategy:"fixed",placement:O,whileElementsMounted:(...ae)=>k9(...ae,{animationFrame:p==="always"}),elements:{reference:_.anchor},middleware:[D9({mainAxis:o+P,alignmentAxis:s}),l&&L9({mainAxis:!0,crossAxis:!1,limiter:u==="partial"?z9():void 0,...L}),l&&$9({...L}),F9({...L,apply:({elements:ae,rects:me,availableWidth:Le,availableHeight:qe})=>{const{width:Et,height:R}=me.reference,F=ae.floating.style;F.setProperty("--radix-popper-available-width",`${Le}px`),F.setProperty("--radix-popper-available-height",`${qe}px`),F.setProperty("--radix-popper-anchor-width",`${Et}px`),F.setProperty("--radix-popper-anchor-height",`${R}px`)}}),S&&H9({element:S,padding:a}),J9({arrowWidth:E,arrowHeight:P}),f&&V9({strategy:"referenceHidden",...L})]}),[I,z]=kS(T),U=Dt(y);pt(()=>{D&&(U==null||U())},[D,U]);const Y=(V=k.arrow)==null?void 0:V.x,H=(B=k.arrow)==null?void 0:B.y,Z=((ee=k.arrow)==null?void 0:ee.centerOffset)!==0,[K,G]=x.useState();return pt(()=>{m&&G(window.getComputedStyle(m).zIndex)},[m]),h.jsx("div",{ref:b.setFloating,"data-radix-popper-content-wrapper":"",style:{...M,transform:D?M.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:K,"--radix-popper-transform-origin":[(ne=k.transformOrigin)==null?void 0:ne.x,(oe=k.transformOrigin)==null?void 0:oe.y].join(" "),...((X=k.hide)==null?void 0:X.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:h.jsx(K9,{scope:n,placedSide:I,onArrowChange:C,arrowX:Y,arrowY:H,shouldHideArrow:Z,children:h.jsx(xe.div,{"data-side":I,"data-align":z,...v,ref:w,style:{...v.style,animation:D?void 0:"none"}})})})});bS.displayName=og;var CS="PopperArrow",q9={top:"bottom",right:"left",bottom:"top",left:"right"},ES=x.forwardRef(function(t,n){const{__scopePopper:r,...o}=t,i=X9(CS,r),s=q9[i.placedSide];return h.jsx("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[s]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:h.jsx(U9,{...o,ref:n,style:{...o.style,display:"block"}})})});ES.displayName=CS;function Q9(e){return e!==null}var J9=e=>({name:"transformOrigin",options:e,fn(t){var _,m,g;const{placement:n,rects:r,middlewareData:o}=t,s=((_=o.arrow)==null?void 0:_.centerOffset)!==0,a=s?0:e.arrowWidth,l=s?0:e.arrowHeight,[c,d]=kS(n),u={start:"0%",center:"50%",end:"100%"}[d],f=(((m=o.arrow)==null?void 0:m.x)??0)+a/2,p=(((g=o.arrow)==null?void 0:g.y)??0)+l/2;let y="",v="";return c==="bottom"?(y=s?u:`${f}px`,v=`${-l}px`):c==="top"?(y=s?u:`${f}px`,v=`${r.floating.height+l}px`):c==="right"?(y=`${-l}px`,v=s?u:`${p}px`):c==="left"&&(y=`${r.floating.width+l}px`,v=s?u:`${p}px`),{data:{x:y,y:v}}}});function kS(e){const[t,n="center"]=e.split("-");return[t,n]}var NS=wS,TS=SS,PS=bS,IS=ES,e7="Portal",fl=x.forwardRef((e,t)=>{var a;const{container:n,...r}=e,[o,i]=x.useState(!1);pt(()=>i(!0),[]);const s=n||o&&((a=globalThis==null?void 0:globalThis.document)==null?void 0:a.body);return s?F5.createPortal(h.jsx(xe.div,{...r,ref:t}),s):null});fl.displayName=e7;function t7(e){const t=x.useRef({value:e,previous:e});return x.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}var n7="VisuallyHidden",pl=x.forwardRef((e,t)=>h.jsx(xe.span,{...e,ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...e.style}}));pl.displayName=n7;var r7=pl,o7=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},ti=new WeakMap,Zl=new WeakMap,Gl={},Tf=0,RS=function(e){return e&&(e.host||RS(e.parentNode))},i7=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=RS(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},s7=function(e,t,n,r){var o=i7(t,Array.isArray(e)?e:[e]);Gl[n]||(Gl[n]=new WeakMap);var i=Gl[n],s=[],a=new Set,l=new Set(o),c=function(u){!u||a.has(u)||(a.add(u),c(u.parentNode))};o.forEach(c);var d=function(u){!u||l.has(u)||Array.prototype.forEach.call(u.children,function(f){if(a.has(f))d(f);else try{var p=f.getAttribute(r),y=p!==null&&p!=="false",v=(ti.get(f)||0)+1,_=(i.get(f)||0)+1;ti.set(f,v),i.set(f,_),s.push(f),v===1&&y&&Zl.set(f,!0),_===1&&f.setAttribute(n,"true"),y||f.setAttribute(r,"true")}catch(m){console.error("aria-hidden: cannot operate on ",f,m)}})};return d(t),a.clear(),Tf++,function(){s.forEach(function(u){var f=ti.get(u)-1,p=i.get(u)-1;ti.set(u,f),i.set(u,p),f||(Zl.has(u)||u.removeAttribute(r),Zl.delete(u)),p||u.removeAttribute(n)}),Tf--,Tf||(ti=new WeakMap,ti=new WeakMap,Zl=new WeakMap,Gl={})}},AS=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=o7(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live]"))),s7(r,o,n,"aria-hidden")):function(){return null}},An=function(){return An=Object.assign||function(t){for(var n,r=1,o=arguments.length;r<o;r++){n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},An.apply(this,arguments)};function MS(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]]);return n}function a7(e,t,n){if(n||arguments.length===2)for(var r=0,o=t.length,i;r<o;r++)(i||!(r in t))&&(i||(i=Array.prototype.slice.call(t,0,r)),i[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}var gc="right-scroll-bar-position",vc="width-before-scroll-bar",l7="with-scroll-bars-hidden",c7="--removed-body-scroll-bar-size";function Pf(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function u7(e,t){var n=x.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var o=n.value;o!==r&&(n.value=r,n.callback(r,o))}}}})[0];return n.callback=t,n.facade}var d7=typeof window<"u"?x.useLayoutEffect:x.useEffect,ky=new WeakMap;function f7(e,t){var n=u7(null,function(r){return e.forEach(function(o){return Pf(o,r)})});return d7(function(){var r=ky.get(n);if(r){var o=new Set(r),i=new Set(e),s=n.current;o.forEach(function(a){i.has(a)||Pf(a,null)}),i.forEach(function(a){o.has(a)||Pf(a,s)})}ky.set(n,e)},[e]),n}function p7(e){return e}function h7(e,t){t===void 0&&(t=p7);var n=[],r=!1,o={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(i){var s=t(i,r);return n.push(s),function(){n=n.filter(function(a){return a!==s})}},assignSyncMedium:function(i){for(r=!0;n.length;){var s=n;n=[],s.forEach(i)}n={push:function(a){return i(a)},filter:function(){return n}}},assignMedium:function(i){r=!0;var s=[];if(n.length){var a=n;n=[],a.forEach(i),s=n}var l=function(){var d=s;s=[],d.forEach(i)},c=function(){return Promise.resolve().then(l)};c(),n={push:function(d){s.push(d),c()},filter:function(d){return s=s.filter(d),n}}}};return o}function m7(e){e===void 0&&(e={});var t=h7(null);return t.options=An({async:!0,ssr:!1},e),t}var jS=function(e){var t=e.sideCar,n=MS(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return x.createElement(r,An({},n))};jS.isSideCarExport=!0;function g7(e,t){return e.useMedium(t),jS}var OS=m7(),If=function(){},vd=x.forwardRef(function(e,t){var n=x.useRef(null),r=x.useState({onScrollCapture:If,onWheelCapture:If,onTouchMoveCapture:If}),o=r[0],i=r[1],s=e.forwardProps,a=e.children,l=e.className,c=e.removeScrollBar,d=e.enabled,u=e.shards,f=e.sideCar,p=e.noIsolation,y=e.inert,v=e.allowPinchZoom,_=e.as,m=_===void 0?"div":_,g=e.gapMode,w=MS(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=f,C=f7([n,t]),N=An(An({},w),o);return x.createElement(x.Fragment,null,d&&x.createElement(S,{sideCar:OS,removeScrollBar:c,shards:u,noIsolation:p,inert:y,setCallbacks:i,allowPinchZoom:!!v,lockRef:n,gapMode:g}),s?x.cloneElement(x.Children.only(a),An(An({},N),{ref:C})):x.createElement(m,An({},N,{className:l,ref:C}),a))});vd.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};vd.classNames={fullWidth:vc,zeroRight:gc};var v7=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function y7(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=v7();return t&&e.setAttribute("nonce",t),e}function x7(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function w7(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var _7=function(){var e=0,t=null;return{add:function(n){e==0&&(t=y7())&&(x7(t,n),w7(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},S7=function(){var e=_7();return function(t,n){x.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},DS=function(){var e=S7(),t=function(n){var r=n.styles,o=n.dynamic;return e(r,o),null};return t},b7={left:0,top:0,right:0,gap:0},Rf=function(e){return parseInt(e||"",10)||0},C7=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],o=t[e==="padding"?"paddingRight":"marginRight"];return[Rf(n),Rf(r),Rf(o)]},E7=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return b7;var t=C7(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},k7=DS(),Di="data-scroll-locked",N7=function(e,t,n,r){var o=e.left,i=e.top,s=e.right,a=e.gap;return n===void 0&&(n="margin"),`
+  .`.concat(l7,` {
+   overflow: hidden `).concat(r,`;
+   padding-right: `).concat(a,"px ").concat(r,`;
+  }
+  body[`).concat(Di,`] {
+    overflow: hidden `).concat(r,`;
+    overscroll-behavior: contain;
+    `).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&`
+    padding-left: `.concat(o,`px;
+    padding-top: `).concat(i,`px;
+    padding-right: `).concat(s,`px;
+    margin-left:0;
+    margin-top:0;
+    margin-right: `).concat(a,"px ").concat(r,`;
+    `),n==="padding"&&"padding-right: ".concat(a,"px ").concat(r,";")].filter(Boolean).join(""),`
+  }
+  
+  .`).concat(gc,` {
+    right: `).concat(a,"px ").concat(r,`;
+  }
+  
+  .`).concat(vc,` {
+    margin-right: `).concat(a,"px ").concat(r,`;
+  }
+  
+  .`).concat(gc," .").concat(gc,` {
+    right: 0 `).concat(r,`;
+  }
+  
+  .`).concat(vc," .").concat(vc,` {
+    margin-right: 0 `).concat(r,`;
+  }
+  
+  body[`).concat(Di,`] {
+    `).concat(c7,": ").concat(a,`px;
+  }
+`)},Ny=function(){var e=parseInt(document.body.getAttribute(Di)||"0",10);return isFinite(e)?e:0},T7=function(){x.useEffect(function(){return document.body.setAttribute(Di,(Ny()+1).toString()),function(){var e=Ny()-1;e<=0?document.body.removeAttribute(Di):document.body.setAttribute(Di,e.toString())}},[])},P7=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,o=r===void 0?"margin":r;T7();var i=x.useMemo(function(){return E7(o)},[o]);return x.createElement(k7,{styles:N7(i,!t,o,n?"":"!important")})},lh=!1;if(typeof window<"u")try{var Yl=Object.defineProperty({},"passive",{get:function(){return lh=!0,!0}});window.addEventListener("test",Yl,Yl),window.removeEventListener("test",Yl,Yl)}catch{lh=!1}var ni=lh?{passive:!1}:!1,I7=function(e){return e.tagName==="TEXTAREA"},LS=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!I7(e)&&n[t]==="visible")},R7=function(e){return LS(e,"overflowY")},A7=function(e){return LS(e,"overflowX")},Ty=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var o=zS(e,r);if(o){var i=$S(e,r),s=i[1],a=i[2];if(s>a)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},M7=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},j7=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},zS=function(e,t){return e==="v"?R7(t):A7(t)},$S=function(e,t){return e==="v"?M7(t):j7(t)},O7=function(e,t){return e==="h"&&t==="rtl"?-1:1},D7=function(e,t,n,r,o){var i=O7(e,window.getComputedStyle(t).direction),s=i*r,a=n.target,l=t.contains(a),c=!1,d=s>0,u=0,f=0;do{var p=$S(e,a),y=p[0],v=p[1],_=p[2],m=v-_-i*y;(y||m)&&zS(e,a)&&(u+=m,f+=y),a instanceof ShadowRoot?a=a.host:a=a.parentNode}while(!l&&a!==document.body||l&&(t.contains(a)||t===a));return(d&&(Math.abs(u)<1||!o)||!d&&(Math.abs(f)<1||!o))&&(c=!0),c},Kl=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Py=function(e){return[e.deltaX,e.deltaY]},Iy=function(e){return e&&"current"in e?e.current:e},L7=function(e,t){return e[0]===t[0]&&e[1]===t[1]},z7=function(e){return`
+  .block-interactivity-`.concat(e,` {pointer-events: none;}
+  .allow-interactivity-`).concat(e,` {pointer-events: all;}
+`)},$7=0,ri=[];function F7(e){var t=x.useRef([]),n=x.useRef([0,0]),r=x.useRef(),o=x.useState($7++)[0],i=x.useState(DS)[0],s=x.useRef(e);x.useEffect(function(){s.current=e},[e]),x.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var v=a7([e.lockRef.current],(e.shards||[]).map(Iy),!0).filter(Boolean);return v.forEach(function(_){return _.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),v.forEach(function(_){return _.classList.remove("allow-interactivity-".concat(o))})}}},[e.inert,e.lockRef.current,e.shards]);var a=x.useCallback(function(v,_){if("touches"in v&&v.touches.length===2||v.type==="wheel"&&v.ctrlKey)return!s.current.allowPinchZoom;var m=Kl(v),g=n.current,w="deltaX"in v?v.deltaX:g[0]-m[0],S="deltaY"in v?v.deltaY:g[1]-m[1],C,N=v.target,E=Math.abs(w)>Math.abs(S)?"h":"v";if("touches"in v&&E==="h"&&N.type==="range")return!1;var P=Ty(E,N);if(!P)return!0;if(P?C=E:(C=E==="v"?"h":"v",P=Ty(E,N)),!P)return!1;if(!r.current&&"changedTouches"in v&&(w||S)&&(r.current=C),!C)return!0;var O=r.current||C;return D7(O,_,v,O==="h"?w:S,!0)},[]),l=x.useCallback(function(v){var _=v;if(!(!ri.length||ri[ri.length-1]!==i)){var m="deltaY"in _?Py(_):Kl(_),g=t.current.filter(function(C){return C.name===_.type&&(C.target===_.target||_.target===C.shadowParent)&&L7(C.delta,m)})[0];if(g&&g.should){_.cancelable&&_.preventDefault();return}if(!g){var w=(s.current.shards||[]).map(Iy).filter(Boolean).filter(function(C){return C.contains(_.target)}),S=w.length>0?a(_,w[0]):!s.current.noIsolation;S&&_.cancelable&&_.preventDefault()}}},[]),c=x.useCallback(function(v,_,m,g){var w={name:v,delta:_,target:m,should:g,shadowParent:V7(m)};t.current.push(w),setTimeout(function(){t.current=t.current.filter(function(S){return S!==w})},1)},[]),d=x.useCallback(function(v){n.current=Kl(v),r.current=void 0},[]),u=x.useCallback(function(v){c(v.type,Py(v),v.target,a(v,e.lockRef.current))},[]),f=x.useCallback(function(v){c(v.type,Kl(v),v.target,a(v,e.lockRef.current))},[]);x.useEffect(function(){return ri.push(i),e.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:f}),document.addEventListener("wheel",l,ni),document.addEventListener("touchmove",l,ni),document.addEventListener("touchstart",d,ni),function(){ri=ri.filter(function(v){return v!==i}),document.removeEventListener("wheel",l,ni),document.removeEventListener("touchmove",l,ni),document.removeEventListener("touchstart",d,ni)}},[]);var p=e.removeScrollBar,y=e.inert;return x.createElement(x.Fragment,null,y?x.createElement(i,{styles:z7(o)}):null,p?x.createElement(P7,{gapMode:e.gapMode}):null)}function V7(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const H7=g7(OS,F7);var ig=x.forwardRef(function(e,t){return x.createElement(vd,An({},e,{ref:t,sideCar:H7}))});ig.classNames=vd.classNames;var B7=[" ","Enter","ArrowUp","ArrowDown"],U7=[" ","Enter"],hl="Select",[yd,xd,W7]=nd(hl),[ms,hz]=Xo(hl,[W7,gd]),wd=gd(),[Z7,po]=ms(hl),[G7,Y7]=ms(hl),FS=e=>{const{__scopeSelect:t,children:n,open:r,defaultOpen:o,onOpenChange:i,value:s,defaultValue:a,onValueChange:l,dir:c,name:d,autoComplete:u,disabled:f,required:p,form:y}=e,v=wd(t),[_,m]=x.useState(null),[g,w]=x.useState(null),[S,C]=x.useState(!1),N=rd(c),[E=!1,P]=Hn({prop:r,defaultProp:o,onChange:i}),[O,j]=Hn({prop:s,defaultProp:a,onChange:l}),$=x.useRef(null),A=_?y||!!_.closest("form"):!0,[L,b]=x.useState(new Set),M=Array.from(L).map(T=>T.props.value).join(";");return h.jsx(NS,{...v,children:h.jsxs(Z7,{required:p,scope:t,trigger:_,onTriggerChange:m,valueNode:g,onValueNodeChange:w,valueNodeHasChildren:S,onValueNodeHasChildrenChange:C,contentId:xn(),value:O,onValueChange:j,open:E,onOpenChange:P,dir:N,triggerPointerDownPosRef:$,disabled:f,children:[h.jsx(yd.Provider,{scope:t,children:h.jsx(G7,{scope:e.__scopeSelect,onNativeOptionAdd:x.useCallback(T=>{b(D=>new Set(D).add(T))},[]),onNativeOptionRemove:x.useCallback(T=>{b(D=>{const k=new Set(D);return k.delete(T),k})},[]),children:n})}),A?h.jsxs(db,{"aria-hidden":!0,required:p,tabIndex:-1,name:d,autoComplete:u,value:O,onChange:T=>j(T.target.value),disabled:f,form:y,children:[O===void 0?h.jsx("option",{value:""}):null,Array.from(L)]},M):null]})})};FS.displayName=hl;var VS="SelectTrigger",HS=x.forwardRef((e,t)=>{const{__scopeSelect:n,disabled:r=!1,...o}=e,i=wd(n),s=po(VS,n),a=s.disabled||r,l=Ae(t,s.onTriggerChange),c=xd(n),d=x.useRef("touch"),[u,f,p]=fb(v=>{const _=c().filter(w=>!w.disabled),m=_.find(w=>w.value===s.value),g=pb(_,v,m);g!==void 0&&s.onValueChange(g.value)}),y=v=>{a||(s.onOpenChange(!0),p()),v&&(s.triggerPointerDownPosRef.current={x:Math.round(v.pageX),y:Math.round(v.pageY)})};return h.jsx(TS,{asChild:!0,...i,children:h.jsx(xe.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:a,"data-disabled":a?"":void 0,"data-placeholder":ub(s.value)?"":void 0,...o,ref:l,onClick:he(o.onClick,v=>{v.currentTarget.focus(),d.current!=="mouse"&&y(v)}),onPointerDown:he(o.onPointerDown,v=>{d.current=v.pointerType;const _=v.target;_.hasPointerCapture(v.pointerId)&&_.releasePointerCapture(v.pointerId),v.button===0&&v.ctrlKey===!1&&v.pointerType==="mouse"&&(y(v),v.preventDefault())}),onKeyDown:he(o.onKeyDown,v=>{const _=u.current!=="";!(v.ctrlKey||v.altKey||v.metaKey)&&v.key.length===1&&f(v.key),!(_&&v.key===" ")&&B7.includes(v.key)&&(y(),v.preventDefault())})})})});HS.displayName=VS;var BS="SelectValue",US=x.forwardRef((e,t)=>{const{__scopeSelect:n,className:r,style:o,children:i,placeholder:s="",...a}=e,l=po(BS,n),{onValueNodeHasChildrenChange:c}=l,d=i!==void 0,u=Ae(t,l.onValueNodeChange);return pt(()=>{c(d)},[c,d]),h.jsx(xe.span,{...a,ref:u,style:{pointerEvents:"none"},children:ub(l.value)?h.jsx(h.Fragment,{children:s}):i})});US.displayName=BS;var K7="SelectIcon",WS=x.forwardRef((e,t)=>{const{__scopeSelect:n,children:r,...o}=e;return h.jsx(xe.span,{"aria-hidden":!0,...o,ref:t,children:r||"â–¼"})});WS.displayName=K7;var X7="SelectPortal",ZS=e=>h.jsx(fl,{asChild:!0,...e});ZS.displayName=X7;var Ho="SelectContent",GS=x.forwardRef((e,t)=>{const n=po(Ho,e.__scopeSelect),[r,o]=x.useState();if(pt(()=>{o(new DocumentFragment)},[]),!n.open){const i=r;return i?Go.createPortal(h.jsx(YS,{scope:e.__scopeSelect,children:h.jsx(yd.Slot,{scope:e.__scopeSelect,children:h.jsx("div",{children:e.children})})}),i):null}return h.jsx(KS,{...e,ref:t})});GS.displayName=Ho;var ln=10,[YS,ho]=ms(Ho),q7="SelectContentImpl",KS=x.forwardRef((e,t)=>{const{__scopeSelect:n,position:r="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:i,onPointerDownOutside:s,side:a,sideOffset:l,align:c,alignOffset:d,arrowPadding:u,collisionBoundary:f,collisionPadding:p,sticky:y,hideWhenDetached:v,avoidCollisions:_,...m}=e,g=po(Ho,n),[w,S]=x.useState(null),[C,N]=x.useState(null),E=Ae(t,V=>S(V)),[P,O]=x.useState(null),[j,$]=x.useState(null),A=xd(n),[L,b]=x.useState(!1),M=x.useRef(!1);x.useEffect(()=>{if(w)return AS(w)},[w]),sS();const T=x.useCallback(V=>{const[B,...ee]=A().map(X=>X.ref.current),[ne]=ee.slice(-1),oe=document.activeElement;for(const X of V)if(X===oe||(X==null||X.scrollIntoView({block:"nearest"}),X===B&&C&&(C.scrollTop=0),X===ne&&C&&(C.scrollTop=C.scrollHeight),X==null||X.focus(),document.activeElement!==oe))return},[A,C]),D=x.useCallback(()=>T([P,w]),[T,P,w]);x.useEffect(()=>{L&&D()},[L,D]);const{onOpenChange:k,triggerPointerDownPosRef:I}=g;x.useEffect(()=>{if(w){let V={x:0,y:0};const B=ne=>{var oe,X;V={x:Math.abs(Math.round(ne.pageX)-(((oe=I.current)==null?void 0:oe.x)??0)),y:Math.abs(Math.round(ne.pageY)-(((X=I.current)==null?void 0:X.y)??0))}},ee=ne=>{V.x<=10&&V.y<=10?ne.preventDefault():w.contains(ne.target)||k(!1),document.removeEventListener("pointermove",B),I.current=null};return I.current!==null&&(document.addEventListener("pointermove",B),document.addEventListener("pointerup",ee,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",B),document.removeEventListener("pointerup",ee,{capture:!0})}}},[w,k,I]),x.useEffect(()=>{const V=()=>k(!1);return window.addEventListener("blur",V),window.addEventListener("resize",V),()=>{window.removeEventListener("blur",V),window.removeEventListener("resize",V)}},[k]);const[z,U]=fb(V=>{const B=A().filter(oe=>!oe.disabled),ee=B.find(oe=>oe.ref.current===document.activeElement),ne=pb(B,V,ee);ne&&setTimeout(()=>ne.ref.current.focus())}),Y=x.useCallback((V,B,ee)=>{const ne=!M.current&&!ee;(g.value!==void 0&&g.value===B||ne)&&(O(V),ne&&(M.current=!0))},[g.value]),H=x.useCallback(()=>w==null?void 0:w.focus(),[w]),Z=x.useCallback((V,B,ee)=>{const ne=!M.current&&!ee;(g.value!==void 0&&g.value===B||ne)&&$(V)},[g.value]),K=r==="popper"?ch:XS,G=K===ch?{side:a,sideOffset:l,align:c,alignOffset:d,arrowPadding:u,collisionBoundary:f,collisionPadding:p,sticky:y,hideWhenDetached:v,avoidCollisions:_}:{};return h.jsx(YS,{scope:n,content:w,viewport:C,onViewportChange:N,itemRefCallback:Y,selectedItem:P,onItemLeave:H,itemTextRefCallback:Z,focusSelectedItem:D,selectedItemText:j,position:r,isPositioned:L,searchRef:z,children:h.jsx(ig,{as:to,allowPinchZoom:!0,children:h.jsx(Km,{asChild:!0,trapped:g.open,onMountAutoFocus:V=>{V.preventDefault()},onUnmountAutoFocus:he(o,V=>{var B;(B=g.trigger)==null||B.focus({preventScroll:!0}),V.preventDefault()}),children:h.jsx(ul,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:V=>V.preventDefault(),onDismiss:()=>g.onOpenChange(!1),children:h.jsx(K,{role:"listbox",id:g.contentId,"data-state":g.open?"open":"closed",dir:g.dir,onContextMenu:V=>V.preventDefault(),...m,...G,onPlaced:()=>b(!0),ref:E,style:{display:"flex",flexDirection:"column",outline:"none",...m.style},onKeyDown:he(m.onKeyDown,V=>{const B=V.ctrlKey||V.altKey||V.metaKey;if(V.key==="Tab"&&V.preventDefault(),!B&&V.key.length===1&&U(V.key),["ArrowUp","ArrowDown","Home","End"].includes(V.key)){let ne=A().filter(oe=>!oe.disabled).map(oe=>oe.ref.current);if(["ArrowUp","End"].includes(V.key)&&(ne=ne.slice().reverse()),["ArrowUp","ArrowDown"].includes(V.key)){const oe=V.target,X=ne.indexOf(oe);ne=ne.slice(X+1)}setTimeout(()=>T(ne)),V.preventDefault()}})})})})})})});KS.displayName=q7;var Q7="SelectItemAlignedPosition",XS=x.forwardRef((e,t)=>{const{__scopeSelect:n,onPlaced:r,...o}=e,i=po(Ho,n),s=ho(Ho,n),[a,l]=x.useState(null),[c,d]=x.useState(null),u=Ae(t,E=>d(E)),f=xd(n),p=x.useRef(!1),y=x.useRef(!0),{viewport:v,selectedItem:_,selectedItemText:m,focusSelectedItem:g}=s,w=x.useCallback(()=>{if(i.trigger&&i.valueNode&&a&&c&&v&&_&&m){const E=i.trigger.getBoundingClientRect(),P=c.getBoundingClientRect(),O=i.valueNode.getBoundingClientRect(),j=m.getBoundingClientRect();if(i.dir!=="rtl"){const oe=j.left-P.left,X=O.left-oe,ae=E.left-X,me=E.width+ae,Le=Math.max(me,P.width),qe=window.innerWidth-ln,Et=uy(X,[ln,Math.max(ln,qe-Le)]);a.style.minWidth=me+"px",a.style.left=Et+"px"}else{const oe=P.right-j.right,X=window.innerWidth-O.right-oe,ae=window.innerWidth-E.right-X,me=E.width+ae,Le=Math.max(me,P.width),qe=window.innerWidth-ln,Et=uy(X,[ln,Math.max(ln,qe-Le)]);a.style.minWidth=me+"px",a.style.right=Et+"px"}const $=f(),A=window.innerHeight-ln*2,L=v.scrollHeight,b=window.getComputedStyle(c),M=parseInt(b.borderTopWidth,10),T=parseInt(b.paddingTop,10),D=parseInt(b.borderBottomWidth,10),k=parseInt(b.paddingBottom,10),I=M+T+L+k+D,z=Math.min(_.offsetHeight*5,I),U=window.getComputedStyle(v),Y=parseInt(U.paddingTop,10),H=parseInt(U.paddingBottom,10),Z=E.top+E.height/2-ln,K=A-Z,G=_.offsetHeight/2,V=_.offsetTop+G,B=M+T+V,ee=I-B;if(B<=Z){const oe=$.length>0&&_===$[$.length-1].ref.current;a.style.bottom="0px";const X=c.clientHeight-v.offsetTop-v.offsetHeight,ae=Math.max(K,G+(oe?H:0)+X+D),me=B+ae;a.style.height=me+"px"}else{const oe=$.length>0&&_===$[0].ref.current;a.style.top="0px";const ae=Math.max(Z,M+v.offsetTop+(oe?Y:0)+G)+ee;a.style.height=ae+"px",v.scrollTop=B-Z+v.offsetTop}a.style.margin=`${ln}px 0`,a.style.minHeight=z+"px",a.style.maxHeight=A+"px",r==null||r(),requestAnimationFrame(()=>p.current=!0)}},[f,i.trigger,i.valueNode,a,c,v,_,m,i.dir,r]);pt(()=>w(),[w]);const[S,C]=x.useState();pt(()=>{c&&C(window.getComputedStyle(c).zIndex)},[c]);const N=x.useCallback(E=>{E&&y.current===!0&&(w(),g==null||g(),y.current=!1)},[w,g]);return h.jsx(eO,{scope:n,contentWrapper:a,shouldExpandOnScrollRef:p,onScrollButtonChange:N,children:h.jsx("div",{ref:l,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:S},children:h.jsx(xe.div,{...o,ref:u,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});XS.displayName=Q7;var J7="SelectPopperPosition",ch=x.forwardRef((e,t)=>{const{__scopeSelect:n,align:r="start",collisionPadding:o=ln,...i}=e,s=wd(n);return h.jsx(PS,{...s,...i,ref:t,align:r,collisionPadding:o,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ch.displayName=J7;var[eO,sg]=ms(Ho,{}),uh="SelectViewport",qS=x.forwardRef((e,t)=>{const{__scopeSelect:n,nonce:r,...o}=e,i=ho(uh,n),s=sg(uh,n),a=Ae(t,i.onViewportChange),l=x.useRef(0);return h.jsxs(h.Fragment,{children:[h.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:r}),h.jsx(yd.Slot,{scope:n,children:h.jsx(xe.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:a,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:he(o.onScroll,c=>{const d=c.currentTarget,{contentWrapper:u,shouldExpandOnScrollRef:f}=s;if(f!=null&&f.current&&u){const p=Math.abs(l.current-d.scrollTop);if(p>0){const y=window.innerHeight-ln*2,v=parseFloat(u.style.minHeight),_=parseFloat(u.style.height),m=Math.max(v,_);if(m<y){const g=m+p,w=Math.min(y,g),S=g-w;u.style.height=w+"px",u.style.bottom==="0px"&&(d.scrollTop=S>0?S:0,u.style.justifyContent="flex-end")}}}l.current=d.scrollTop})})})]})});qS.displayName=uh;var QS="SelectGroup",[tO,nO]=ms(QS),rO=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=xn();return h.jsx(tO,{scope:n,id:o,children:h.jsx(xe.div,{role:"group","aria-labelledby":o,...r,ref:t})})});rO.displayName=QS;var JS="SelectLabel",eb=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=nO(JS,n);return h.jsx(xe.div,{id:o.id,...r,ref:t})});eb.displayName=JS;var wu="SelectItem",[oO,tb]=ms(wu),nb=x.forwardRef((e,t)=>{const{__scopeSelect:n,value:r,disabled:o=!1,textValue:i,...s}=e,a=po(wu,n),l=ho(wu,n),c=a.value===r,[d,u]=x.useState(i??""),[f,p]=x.useState(!1),y=Ae(t,g=>{var w;return(w=l.itemRefCallback)==null?void 0:w.call(l,g,r,o)}),v=xn(),_=x.useRef("touch"),m=()=>{o||(a.onValueChange(r),a.onOpenChange(!1))};if(r==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return h.jsx(oO,{scope:n,value:r,disabled:o,textId:v,isSelected:c,onItemTextChange:x.useCallback(g=>{u(w=>w||((g==null?void 0:g.textContent)??"").trim())},[]),children:h.jsx(yd.ItemSlot,{scope:n,value:r,disabled:o,textValue:d,children:h.jsx(xe.div,{role:"option","aria-labelledby":v,"data-highlighted":f?"":void 0,"aria-selected":c&&f,"data-state":c?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...s,ref:y,onFocus:he(s.onFocus,()=>p(!0)),onBlur:he(s.onBlur,()=>p(!1)),onClick:he(s.onClick,()=>{_.current!=="mouse"&&m()}),onPointerUp:he(s.onPointerUp,()=>{_.current==="mouse"&&m()}),onPointerDown:he(s.onPointerDown,g=>{_.current=g.pointerType}),onPointerMove:he(s.onPointerMove,g=>{var w;_.current=g.pointerType,o?(w=l.onItemLeave)==null||w.call(l):_.current==="mouse"&&g.currentTarget.focus({preventScroll:!0})}),onPointerLeave:he(s.onPointerLeave,g=>{var w;g.currentTarget===document.activeElement&&((w=l.onItemLeave)==null||w.call(l))}),onKeyDown:he(s.onKeyDown,g=>{var S;((S=l.searchRef)==null?void 0:S.current)!==""&&g.key===" "||(U7.includes(g.key)&&m(),g.key===" "&&g.preventDefault())})})})})});nb.displayName=wu;var Hs="SelectItemText",rb=x.forwardRef((e,t)=>{const{__scopeSelect:n,className:r,style:o,...i}=e,s=po(Hs,n),a=ho(Hs,n),l=tb(Hs,n),c=Y7(Hs,n),[d,u]=x.useState(null),f=Ae(t,m=>u(m),l.onItemTextChange,m=>{var g;return(g=a.itemTextRefCallback)==null?void 0:g.call(a,m,l.value,l.disabled)}),p=d==null?void 0:d.textContent,y=x.useMemo(()=>h.jsx("option",{value:l.value,disabled:l.disabled,children:p},l.value),[l.disabled,l.value,p]),{onNativeOptionAdd:v,onNativeOptionRemove:_}=c;return pt(()=>(v(y),()=>_(y)),[v,_,y]),h.jsxs(h.Fragment,{children:[h.jsx(xe.span,{id:l.textId,...i,ref:f}),l.isSelected&&s.valueNode&&!s.valueNodeHasChildren?Go.createPortal(i.children,s.valueNode):null]})});rb.displayName=Hs;var ob="SelectItemIndicator",ib=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return tb(ob,n).isSelected?h.jsx(xe.span,{"aria-hidden":!0,...r,ref:t}):null});ib.displayName=ob;var dh="SelectScrollUpButton",sb=x.forwardRef((e,t)=>{const n=ho(dh,e.__scopeSelect),r=sg(dh,e.__scopeSelect),[o,i]=x.useState(!1),s=Ae(t,r.onScrollButtonChange);return pt(()=>{if(n.viewport&&n.isPositioned){let a=function(){const c=l.scrollTop>0;i(c)};const l=n.viewport;return a(),l.addEventListener("scroll",a),()=>l.removeEventListener("scroll",a)}},[n.viewport,n.isPositioned]),o?h.jsx(lb,{...e,ref:s,onAutoScroll:()=>{const{viewport:a,selectedItem:l}=n;a&&l&&(a.scrollTop=a.scrollTop-l.offsetHeight)}}):null});sb.displayName=dh;var fh="SelectScrollDownButton",ab=x.forwardRef((e,t)=>{const n=ho(fh,e.__scopeSelect),r=sg(fh,e.__scopeSelect),[o,i]=x.useState(!1),s=Ae(t,r.onScrollButtonChange);return pt(()=>{if(n.viewport&&n.isPositioned){let a=function(){const c=l.scrollHeight-l.clientHeight,d=Math.ceil(l.scrollTop)<c;i(d)};const l=n.viewport;return a(),l.addEventListener("scroll",a),()=>l.removeEventListener("scroll",a)}},[n.viewport,n.isPositioned]),o?h.jsx(lb,{...e,ref:s,onAutoScroll:()=>{const{viewport:a,selectedItem:l}=n;a&&l&&(a.scrollTop=a.scrollTop+l.offsetHeight)}}):null});ab.displayName=fh;var lb=x.forwardRef((e,t)=>{const{__scopeSelect:n,onAutoScroll:r,...o}=e,i=ho("SelectScrollButton",n),s=x.useRef(null),a=xd(n),l=x.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return x.useEffect(()=>()=>l(),[l]),pt(()=>{var d;const c=a().find(u=>u.ref.current===document.activeElement);(d=c==null?void 0:c.ref.current)==null||d.scrollIntoView({block:"nearest"})},[a]),h.jsx(xe.div,{"aria-hidden":!0,...o,ref:t,style:{flexShrink:0,...o.style},onPointerDown:he(o.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(r,50))}),onPointerMove:he(o.onPointerMove,()=>{var c;(c=i.onItemLeave)==null||c.call(i),s.current===null&&(s.current=window.setInterval(r,50))}),onPointerLeave:he(o.onPointerLeave,()=>{l()})})}),iO="SelectSeparator",cb=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e;return h.jsx(xe.div,{"aria-hidden":!0,...r,ref:t})});cb.displayName=iO;var ph="SelectArrow",sO=x.forwardRef((e,t)=>{const{__scopeSelect:n,...r}=e,o=wd(n),i=po(ph,n),s=ho(ph,n);return i.open&&s.position==="popper"?h.jsx(IS,{...o,...r,ref:t}):null});sO.displayName=ph;function ub(e){return e===""||e===void 0}var db=x.forwardRef((e,t)=>{const{value:n,...r}=e,o=x.useRef(null),i=Ae(t,o),s=t7(n);return x.useEffect(()=>{const a=o.current,l=window.HTMLSelectElement.prototype,d=Object.getOwnPropertyDescriptor(l,"value").set;if(s!==n&&d){const u=new Event("change",{bubbles:!0});d.call(a,n),a.dispatchEvent(u)}},[s,n]),h.jsx(pl,{asChild:!0,children:h.jsx("select",{...r,ref:i,defaultValue:n})})});db.displayName="BubbleSelect";function fb(e){const t=Dt(e),n=x.useRef(""),r=x.useRef(0),o=x.useCallback(s=>{const a=n.current+s;t(a),function l(c){n.current=c,window.clearTimeout(r.current),c!==""&&(r.current=window.setTimeout(()=>l(""),1e3))}(a)},[t]),i=x.useCallback(()=>{n.current="",window.clearTimeout(r.current)},[]);return x.useEffect(()=>()=>window.clearTimeout(r.current),[]),[n,o,i]}function pb(e,t,n){const o=t.length>1&&Array.from(t).every(c=>c===t[0])?t[0]:t,i=n?e.indexOf(n):-1;let s=aO(e,Math.max(i,0));o.length===1&&(s=s.filter(c=>c!==n));const l=s.find(c=>c.textValue.toLowerCase().startsWith(o.toLowerCase()));return l!==n?l:void 0}function aO(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var lO=FS,hb=HS,cO=US,uO=WS,dO=ZS,mb=GS,fO=qS,gb=eb,vb=nb,pO=rb,hO=ib,yb=sb,xb=ab,wb=cb;const ur=lO,dr=cO,Fn=x.forwardRef(({className:e,children:t,...n},r)=>h.jsxs(hb,{ref:r,className:we("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",e),...n,children:[t,h.jsx(uO,{asChild:!0,children:h.jsx(c6,{className:"h-4 w-4 opacity-50"})})]}));Fn.displayName=hb.displayName;const _b=x.forwardRef(({className:e,...t},n)=>h.jsx(yb,{ref:n,className:we("flex cursor-default items-center justify-center py-1",e),...t,children:h.jsx(h6,{})}));_b.displayName=yb.displayName;const Sb=x.forwardRef(({className:e,...t},n)=>h.jsx(xb,{ref:n,className:we("flex cursor-default items-center justify-center py-1",e),...t,children:h.jsx(v_,{})}));Sb.displayName=xb.displayName;const Vn=x.forwardRef(({className:e,children:t,position:n="popper",...r},o)=>h.jsx(dO,{children:h.jsxs(mb,{ref:o,className:we("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:n,...r,children:[h.jsx(_b,{}),h.jsx(fO,{className:we("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),h.jsx(Sb,{})]})}));Vn.displayName=mb.displayName;const mO=x.forwardRef(({className:e,...t},n)=>h.jsx(gb,{ref:n,className:we("px-2 py-1.5 text-sm font-semibold",e),...t}));mO.displayName=gb.displayName;const _n=x.forwardRef(({className:e,children:t,...n},r)=>h.jsxs(vb,{ref:r,className:we("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...n,children:[h.jsx("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:h.jsx(hO,{children:h.jsx(d6,{className:"h-4 w-4"})})}),h.jsx(pO,{children:t})]}));_n.displayName=vb.displayName;const gO=x.forwardRef(({className:e,...t},n)=>h.jsx(wb,{ref:n,className:we("-mx-1 my-1 h-px bg-muted",e),...t}));gO.displayName=wb.displayName;const vO=Pe.object({network:Pe.string().min(1,"reqired"),subdomain:Pe.string().min(1,"required")}),yO=Pe.object({id:Pe.string(),portId:Pe.string()});function xO(e){const{id:t,selected:n}=e,r=x.useMemo(()=>os(e,"https"),[e]);return h.jsxs(Qo,{id:t,selected:n,type:e.type,children:[Lt(e),h.jsx(Wt,{type:"target",id:"https",position:ue.Bottom,isConnectable:r,isConnectableStart:r,isConnectableEnd:r})]})}function wO({id:e,data:t}){var c,d;const n=zt(),r=ll(),o=yr({resolver:xr(vO),mode:"onChange",defaultValues:{network:"",subdomain:""}});x.useEffect(()=>{const u=o.watch((f,{name:p})=>{p==="network"?f.network!==void 0&&n.updateNodeData(e,{network:f.network}):p==="subdomain"&&n.updateNodeData(e,{subdomain:f.subdomain})});return()=>u.unsubscribe()},[o,n]);const i=yr({resolver:xr(yO),mode:"onChange",defaultValues:{id:(c=t.https)==null?void 0:c.serviceId,portId:(d=t.https)==null?void 0:d.portId}});x.useEffect(()=>{var u,f;i.reset({id:(u=t.https)==null?void 0:u.serviceId,portId:(f=t.https)==null?void 0:f.portId})},[i,t]);const s=Ko(),a=x.useMemo(()=>{if(t!==void 0&&t.https!==void 0){const u=t.https;return s.find(f=>f.id===u.serviceId)}return null},[t]),l=x.useMemo(()=>s.filter(u=>u.id===e?!1:a!==null&&a.id===e?!0:u.type!=="app"?!1:u.data&&u.data.ports&&u.data.ports.length>0),[s,a]);return x.useEffect(()=>{const u=i.watch((f,{name:p,type:y})=>{if(console.log({name:p,type:y}),y==="change")switch(p){case"id":if(!f.id)break;const v=n.edges.filter(m=>m.target===e),_=v[0]?v[0].id:void 0;n.replaceEdge({source:f.id,sourceHandle:"ports",target:e,targetHandle:"https"},_);break;case"portId":n.updateNodeData(e,{https:{serviceId:f.id,portId:f.portId}});break}});return()=>u.unsubscribe()},[i,n,l]),h.jsxs(h.Fragment,{children:[h.jsx(wr,{...o,children:h.jsxs("form",{className:"space-y-2",children:[h.jsx(ut,{control:o.control,name:"network",render:({field:u})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:u.onChange,defaultValue:u.value,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Network"})})}),h.jsx(Vn,{children:r.networks.map(f=>h.jsx(_n,{value:f.domain,children:`${f.name} - ${f.domain}`},f.name))})]}),h.jsx(st,{})]})}),h.jsx(ut,{control:o.control,name:"subdomain",render:({field:u})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"subdomain",className:"border border-black",...u})}),h.jsx(st,{})]})})]})}),h.jsx(wr,{...i,children:h.jsxs("form",{className:"space-y-2",children:[h.jsx(ut,{control:i.control,name:"id",render:({field:u})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:u.onChange,defaultValue:u.value,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Service"})})}),h.jsx(Vn,{children:l.map(f=>h.jsx(_n,{value:f.id,children:Lt(f)},f.id))})]}),h.jsx(st,{})]})}),h.jsx(ut,{control:i.control,name:"portId",render:({field:u})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:u.onChange,defaultValue:u.value,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Port"})})}),h.jsx(Vn,{children:a&&a.data.ports.map(f=>h.jsxs(_n,{value:f.id,children:[f.name," - ",f.value]},f.id))})]}),h.jsx(st,{})]})})]})})]})}/**
+ * @license lucide-react v0.454.0 - ISC
+ *
+ * This source code is licensed under the ISC license.
+ * See the LICENSE file in the root directory of this source tree.
+ */const _O=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),bb=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();/**
+ * @license lucide-react v0.454.0 - ISC
+ *
+ * This source code is licensed under the ISC license.
+ * See the LICENSE file in the root directory of this source tree.
+ */var SO={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
+ * @license lucide-react v0.454.0 - ISC
+ *
+ * This source code is licensed under the ISC license.
+ * See the LICENSE file in the root directory of this source tree.
+ */const bO=x.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:o="",children:i,iconNode:s,...a},l)=>x.createElement("svg",{ref:l,...SO,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:bb("lucide",o),...a},[...s.map(([c,d])=>x.createElement(c,d)),...Array.isArray(i)?i:[i]]));/**
+ * @license lucide-react v0.454.0 - ISC
+ *
+ * This source code is licensed under the ISC license.
+ * See the LICENSE file in the root directory of this source tree.
+ */const CO=(e,t)=>{const n=x.forwardRef(({className:r,...o},i)=>x.createElement(bO,{ref:i,iconNode:t,className:bb(`lucide-${_O(e)}`,r),...o}));return n.displayName=`${e}`,n};/**
+ * @license lucide-react v0.454.0 - ISC
+ *
+ * This source code is licensed under the ISC license.
+ * See the LICENSE file in the root directory of this source tree.
+ */const EO=CO("SquarePen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);var[_d,mz]=Xo("Tooltip",[gd]),Sd=gd(),Cb="TooltipProvider",kO=700,hh="tooltip.open",[NO,ag]=_d(Cb),Eb=e=>{const{__scopeTooltip:t,delayDuration:n=kO,skipDelayDuration:r=300,disableHoverableContent:o=!1,children:i}=e,[s,a]=x.useState(!0),l=x.useRef(!1),c=x.useRef(0);return x.useEffect(()=>{const d=c.current;return()=>window.clearTimeout(d)},[]),h.jsx(NO,{scope:t,isOpenDelayed:s,delayDuration:n,onOpen:x.useCallback(()=>{window.clearTimeout(c.current),a(!1)},[]),onClose:x.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>a(!0),r)},[r]),isPointerInTransitRef:l,onPointerInTransitChange:x.useCallback(d=>{l.current=d},[]),disableHoverableContent:o,children:i})};Eb.displayName=Cb;var bd="Tooltip",[TO,ml]=_d(bd),kb=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:o=!1,onOpenChange:i,disableHoverableContent:s,delayDuration:a}=e,l=ag(bd,e.__scopeTooltip),c=Sd(t),[d,u]=x.useState(null),f=xn(),p=x.useRef(0),y=s??l.disableHoverableContent,v=a??l.delayDuration,_=x.useRef(!1),[m=!1,g]=Hn({prop:r,defaultProp:o,onChange:E=>{E?(l.onOpen(),document.dispatchEvent(new CustomEvent(hh))):l.onClose(),i==null||i(E)}}),w=x.useMemo(()=>m?_.current?"delayed-open":"instant-open":"closed",[m]),S=x.useCallback(()=>{window.clearTimeout(p.current),p.current=0,_.current=!1,g(!0)},[g]),C=x.useCallback(()=>{window.clearTimeout(p.current),p.current=0,g(!1)},[g]),N=x.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{_.current=!0,g(!0),p.current=0},v)},[v,g]);return x.useEffect(()=>()=>{p.current&&(window.clearTimeout(p.current),p.current=0)},[]),h.jsx(NS,{...c,children:h.jsx(TO,{scope:t,contentId:f,open:m,stateAttribute:w,trigger:d,onTriggerChange:u,onTriggerEnter:x.useCallback(()=>{l.isOpenDelayed?N():S()},[l.isOpenDelayed,N,S]),onTriggerLeave:x.useCallback(()=>{y?C():(window.clearTimeout(p.current),p.current=0)},[C,y]),onOpen:S,onClose:C,disableHoverableContent:y,children:n})})};kb.displayName=bd;var mh="TooltipTrigger",Nb=x.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=ml(mh,n),i=ag(mh,n),s=Sd(n),a=x.useRef(null),l=Ae(t,a,o.onTriggerChange),c=x.useRef(!1),d=x.useRef(!1),u=x.useCallback(()=>c.current=!1,[]);return x.useEffect(()=>()=>document.removeEventListener("pointerup",u),[u]),h.jsx(TS,{asChild:!0,...s,children:h.jsx(xe.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...r,ref:l,onPointerMove:he(e.onPointerMove,f=>{f.pointerType!=="touch"&&!d.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),d.current=!0)}),onPointerLeave:he(e.onPointerLeave,()=>{o.onTriggerLeave(),d.current=!1}),onPointerDown:he(e.onPointerDown,()=>{c.current=!0,document.addEventListener("pointerup",u,{once:!0})}),onFocus:he(e.onFocus,()=>{c.current||o.onOpen()}),onBlur:he(e.onBlur,o.onClose),onClick:he(e.onClick,o.onClose)})})});Nb.displayName=mh;var lg="TooltipPortal",[PO,IO]=_d(lg,{forceMount:void 0}),Tb=e=>{const{__scopeTooltip:t,forceMount:n,children:r,container:o}=e,i=ml(lg,t);return h.jsx(PO,{scope:t,forceMount:n,children:h.jsx(kr,{present:n||i.open,children:h.jsx(fl,{asChild:!0,container:o,children:r})})})};Tb.displayName=lg;var ss="TooltipContent",Pb=x.forwardRef((e,t)=>{const n=IO(ss,e.__scopeTooltip),{forceMount:r=n.forceMount,side:o="top",...i}=e,s=ml(ss,e.__scopeTooltip);return h.jsx(kr,{present:r||s.open,children:s.disableHoverableContent?h.jsx(Ib,{side:o,...i,ref:t}):h.jsx(RO,{side:o,...i,ref:t})})}),RO=x.forwardRef((e,t)=>{const n=ml(ss,e.__scopeTooltip),r=ag(ss,e.__scopeTooltip),o=x.useRef(null),i=Ae(t,o),[s,a]=x.useState(null),{trigger:l,onClose:c}=n,d=o.current,{onPointerInTransitChange:u}=r,f=x.useCallback(()=>{a(null),u(!1)},[u]),p=x.useCallback((y,v)=>{const _=y.currentTarget,m={x:y.clientX,y:y.clientY},g=OO(m,_.getBoundingClientRect()),w=DO(m,g),S=LO(v.getBoundingClientRect()),C=$O([...w,...S]);a(C),u(!0)},[u]);return x.useEffect(()=>()=>f(),[f]),x.useEffect(()=>{if(l&&d){const y=_=>p(_,d),v=_=>p(_,l);return l.addEventListener("pointerleave",y),d.addEventListener("pointerleave",v),()=>{l.removeEventListener("pointerleave",y),d.removeEventListener("pointerleave",v)}}},[l,d,p,f]),x.useEffect(()=>{if(s){const y=v=>{const _=v.target,m={x:v.clientX,y:v.clientY},g=(l==null?void 0:l.contains(_))||(d==null?void 0:d.contains(_)),w=!zO(m,s);g?f():w&&(f(),c())};return document.addEventListener("pointermove",y),()=>document.removeEventListener("pointermove",y)}},[l,d,s,c,f]),h.jsx(Ib,{...e,ref:i})}),[AO,MO]=_d(bd,{isInside:!1}),Ib=x.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:s,...a}=e,l=ml(ss,n),c=Sd(n),{onClose:d}=l;return x.useEffect(()=>(document.addEventListener(hh,d),()=>document.removeEventListener(hh,d)),[d]),x.useEffect(()=>{if(l.trigger){const u=f=>{const p=f.target;p!=null&&p.contains(l.trigger)&&d()};return window.addEventListener("scroll",u,{capture:!0}),()=>window.removeEventListener("scroll",u,{capture:!0})}},[l.trigger,d]),h.jsx(ul,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:u=>u.preventDefault(),onDismiss:d,children:h.jsxs(PS,{"data-state":l.stateAttribute,...c,...a,ref:t,style:{...a.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[h.jsx(Z2,{children:r}),h.jsx(AO,{scope:n,isInside:!0,children:h.jsx(r7,{id:l.contentId,role:"tooltip",children:o||r})})]})})});Pb.displayName=ss;var Rb="TooltipArrow",jO=x.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=Sd(n);return MO(Rb,n).isInside?null:h.jsx(IS,{...o,...r,ref:t})});jO.displayName=Rb;function OO(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(n,r,o,i)){case i:return"left";case o:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function DO(e,t,n=5){const r=[];switch(t){case"top":r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function LO(e){const{top:t,right:n,bottom:r,left:o}=e;return[{x:o,y:t},{x:n,y:t},{x:n,y:r},{x:o,y:r}]}function zO(e,t){const{x:n,y:r}=e;let o=!1;for(let i=0,s=t.length-1;i<t.length;s=i++){const a=t[i].x,l=t[i].y,c=t[s].x,d=t[s].y;l>r!=d>r&&n<(c-a)*(r-l)/(d-l)+a&&(o=!o)}return o}function $O(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),FO(t)}function FO(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const o=e[r];for(;t.length>=2;){const i=t[t.length-1],s=t[t.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))t.pop();else break}t.push(o)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const o=e[r];for(;n.length>=2;){const i=n[n.length-1],s=n[n.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))n.pop();else break}n.push(o)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var VO=Eb,HO=kb,BO=Nb,UO=Tb,Ab=Pb;const WO=VO,ZO=HO,GO=BO,Mb=x.forwardRef(({className:e,sideOffset:t=4,...n},r)=>h.jsx(UO,{children:h.jsx(Ab,{ref:r,sideOffset:t,className:we("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n})}));Mb.displayName=Ab.displayName;function YO(e){const{id:t,selected:n}=e,r=x.useMemo(()=>os(e,"ports"),[e]),o=x.useMemo(()=>os(e,"repository"),[e]);return h.jsx(Qo,{id:t,selected:n,type:e.type,children:h.jsxs("div",{style:{padding:"10px 20px"},children:[Lt(e),h.jsx(Wt,{id:"repository",type:"target",position:ue.Left,isConnectableStart:o,isConnectableEnd:o,isConnectable:o}),h.jsx(Wt,{id:"ports",type:"source",position:ue.Top,isConnectableStart:r,isConnectableEnd:r,isConnectable:r}),h.jsx(Wt,{id:"env_var",type:"target",position:ue.Bottom,isConnectableStart:!0,isConnectableEnd:!0,isConnectable:!0})]})})}const KO=Pe.object({name:Pe.string().min(1,"requried"),type:Pe.enum(R_)}),XO=Pe.object({name:Pe.string().min(1,"required"),value:Pe.coerce.number().gt(0,"can not be negative")});function qO({id:e,data:t}){const n=zt(),r=yr({resolver:xr(KO),mode:"onChange",defaultValues:{name:t.label,type:t.type}}),o=yr({resolver:xr(XO),mode:"onSubmit",defaultValues:{name:"",value:0}}),i=x.useCallback(p=>{n.updateNodeData(e,{ports:(t.ports||[]).concat({id:Aa(),name:p.name,value:p.value})}),o.reset()},[t,o]);x.useEffect(()=>{const p=r.watch((y,{name:v,type:_})=>{if(console.log({name:v,type:_}),_==="change")switch(v){case"name":if(!y.name)break;n.updateNodeData(e,{label:y.name});break;case"type":if(!y.type)break;n.updateNodeData(e,{type:y.type});break}});return()=>p.unsubscribe()},[r,n]);const s=x.useCallback((p,y)=>v=>{p.ref(v),v!=null&&y===t.activeField&&(console.log(v),v.focus(),n.updateNodeData(e,{activeField:void 0}))},[t,n]),[a,l]=x.useState({});x.useEffect(()=>{t.activeField==="type"?l({open:!0,onOpenChange:()=>n.updateNodeData(e,{activeField:void 0})}):l({})},[n,t,l]);const c=x.useCallback(p=>()=>{n.updateNodeData(e,{...t,envVars:t.envVars.map(y=>y.id!==p.id?y:{...y,isEditting:!0})})},[e,t,n]),d=(p,y,v)=>{v.updateNodeData(e,{...t,envVars:t.envVars.map(_=>{if(_.id!==p.id)return _;if(y)return{..._,isEditting:!1,alias:y.toUpperCase()};if(console.log(_),"alias"in _){const{alias:m,...g}=_;return console.log(g),{...g,isEditting:!1}}return{..._,isEditting:!1}})})},u=x.useCallback(p=>y=>{y.key==="Enter"&&(y.preventDefault(),d(p,y.currentTarget.value,n))},[e,t,n]),f=x.useCallback(p=>y=>{d(p,y.currentTarget.value,n)},[e,t,n]);return h.jsxs(h.Fragment,{children:[h.jsx(wr,{...r,children:h.jsxs("form",{children:[h.jsx(ut,{control:r.control,name:"name",render:({field:p})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"name",className:"border border-black",...p,ref:s(p,"name")})}),h.jsx(st,{})]})}),h.jsx(ut,{control:r.control,name:"type",render:({field:p})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:p.onChange,defaultValue:p.value,...a,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Runtime"})})}),h.jsx(Vn,{children:R_.map(y=>h.jsx(_n,{value:y,children:y},y))})]}),h.jsx(st,{})]})})]})}),"Ports",h.jsx("ul",{children:t&&t.ports&&t.ports.map(p=>h.jsxs("li",{children:[p.name," - ",p.value]},p.id))}),h.jsx(wr,{...o,children:h.jsxs("form",{className:"flex flex-row space-x-1",onSubmit:o.handleSubmit(i),children:[h.jsx(ut,{control:o.control,name:"name",render:({field:p})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"name",className:"border border-black",...p})}),h.jsx(st,{})]})}),h.jsx(ut,{control:o.control,name:"value",render:({field:p})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"value",className:"border border-black",...p})}),h.jsx(st,{})]})}),h.jsx(Ln,{type:"submit",children:"Add Port"})]})}),"Env Vars",h.jsx("ul",{children:t&&t.envVars&&t.envVars.map(p=>{if("name"in p){const y="alias"in p?p.alias:p.name;return p.isEditting?h.jsx("li",{children:h.jsx(nn,{type:"text",className:"border border-black",defaultValue:y,onKeyUp:u(p),onBlur:f(p),autoFocus:!0})},p.id):h.jsx("li",{onClick:c(p),children:h.jsx(WO,{children:h.jsxs(ZO,{children:[h.jsxs(GO,{children:[h.jsx(Ln,{size:"icon",variant:"ghost",children:h.jsx(EO,{})}),y]}),h.jsx(Mb,{children:p.name})]})})},p.id)}})})]})}function QO(e){const{id:t,data:n,selected:r}=e,o=x.useMemo(()=>os(e,"volume"),[e]);return h.jsx(Qo,{id:t,selected:r,type:e.type,children:h.jsxs("div",{style:{padding:"10px 20px"},children:[h.jsx("div",{children:Lt(e)}),h.jsx("div",{children:n.type&&`${n.type}`}),h.jsx("div",{children:n.size&&`${n.size}`}),h.jsx(Wt,{id:"volume",type:"source",position:ue.Top,isConnectableStart:o,isConnectableEnd:o,isConnectable:o})]})})}const jb=["ReadWriteOnce","ReadOnlyMany","ReadWriteMany","ReadWriteOncePod"],JO=Pe.object({name:Pe.string().min(1),type:Pe.enum(jb),size:Pe.string().min(1).default("1Gi")});function eD({id:e,data:t}){const n=zt(),r=yr({resolver:xr(JO),mode:"onChange",defaultValues:{name:"",type:void 0,size:""}});return x.useEffect(()=>{const o=r.watch((i,{name:s,type:a})=>{a==="change"&&(console.log({name:s,type:a,value:i}),n.updateNodeData(e,{label:i.name,type:i.type,size:i.size}))});return()=>o.unsubscribe()},[r,n]),x.useEffect(()=>{r.reset({name:t.label,type:t.type,size:t.size})},[r,t]),h.jsx(h.Fragment,{children:h.jsx(wr,{...r,children:h.jsxs("form",{className:"space-y-2",children:[h.jsx(ut,{control:r.control,name:"name",render:({field:o})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"name",className:"border border-black",...o})}),h.jsx(st,{})]})}),h.jsx(ut,{control:r.control,name:"type",render:({field:o})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:o.onChange,defaultValue:o.value,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Volume Type"})})}),h.jsx(Vn,{children:jb.map(i=>h.jsx(_n,{value:i,children:i},i))})]}),h.jsx(st,{})]})}),h.jsx(ut,{control:r.control,name:"size",render:({field:o})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"size",className:"border border-black",...o})}),h.jsx(st,{})]})})]})})})}function tD(e){const{id:t,selected:n}=e;return h.jsx(Qo,{id:t,selected:n,type:e.type,children:h.jsxs("div",{style:{padding:"10px 20px"},children:[Lt(e),h.jsx(Wt,{id:"env_var",type:"source",position:ue.Top,isConnectableStart:!0,isConnectableEnd:!0,isConnectable:!0})]})})}const nD=Pe.object({name:Pe.string().min(1,"required")});function rD(e){const{id:t}=e,n=zt(),r=yr({resolver:xr(nD),mode:"onChange",defaultValues:{name:""}});return x.useEffect(()=>{const o=r.watch((i,{type:s})=>{s==="change"&&n.updateNodeData(t,{label:i.name})});return()=>o.unsubscribe()},[r,n]),h.jsx(h.Fragment,{children:h.jsx(wr,{...r,children:h.jsx("form",{className:"space-y-2",children:h.jsx(ut,{control:r.control,name:"name",render:({field:o})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"name",className:"border border-black",...o})}),h.jsx(st,{})]})})})})})}function oD(e){const{id:t,selected:n}=e;return h.jsx(Qo,{id:t,selected:n,type:e.type,children:h.jsxs("div",{style:{padding:"10px 20px"},children:[Lt(e),h.jsx(Wt,{id:"env_var",type:"source",position:ue.Top,isConnectableStart:!0,isConnectableEnd:!0,isConnectable:!0})]})})}function iD(e){return h.jsx(h.Fragment,{children:h.jsx("div",{children:Lt(e)})})}function sD(e){const{id:t,selected:n}=e,r=x.useMemo(()=>os(e,"repository"),[e]);return h.jsx(Qo,{id:t,selected:n,type:e.type,children:h.jsxs("div",{style:{padding:"10px 20px"},children:[Lt(e),h.jsx(Wt,{id:"repository",type:"source",position:ue.Right,isConnectableStart:r,isConnectableEnd:r,isConnectable:r})]})})}const aD=Pe.object({address:Pe.string().min(1)});function lD(e){const{id:t,data:n}=e,r=zt(),o=yr({resolver:xr(aD),mode:"onChange",defaultValues:{address:n.address}});return x.useEffect(()=>{const i=o.watch((s,{name:a,type:l})=>{if(l==="change")switch(a){case"address":r.updateNodeData(t,{address:s.address});break}});return()=>i.unsubscribe()},[o,r]),h.jsx(h.Fragment,{children:h.jsx(wr,{...o,children:h.jsx("form",{className:"space-y-2",children:h.jsx(ut,{control:o.control,name:"address",render:({field:i})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"address",className:"border border-black",...i})}),h.jsx(st,{})]})})})})})}const cD=1,uD=1e6;let Af=0;function dD(){return Af=(Af+1)%Number.MAX_SAFE_INTEGER,Af.toString()}const Mf=new Map,Ry=e=>{if(Mf.has(e))return;const t=setTimeout(()=>{Mf.delete(e),oa({type:"REMOVE_TOAST",toastId:e})},uD);Mf.set(e,t)},fD=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,cD)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(n=>n.id===t.toast.id?{...n,...t.toast}:n)};case"DISMISS_TOAST":{const{toastId:n}=t;return n?Ry(n):e.toasts.forEach(r=>{Ry(r.id)}),{...e,toasts:e.toasts.map(r=>r.id===n||n===void 0?{...r,open:!1}:r)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(n=>n.id!==t.toastId)}}},yc=[];let xc={toasts:[]};function oa(e){xc=fD(xc,e),yc.forEach(t=>{t(xc)})}function pD({...e}){const t=dD(),n=o=>oa({type:"UPDATE_TOAST",toast:{...o,id:t}}),r=()=>oa({type:"DISMISS_TOAST",toastId:t});return oa({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:o=>{o||r()}}}),{id:t,dismiss:r,update:n}}function cg(){const[e,t]=x.useState(xc);return x.useEffect(()=>(yc.push(t),()=>{const n=yc.indexOf(t);n>-1&&yc.splice(n,1)}),[e]),{...e,toast:pD,dismiss:n=>oa({type:"DISMISS_TOAST",toastId:n})}}function hD(){const{toast:e}=cg(),t=zt(),n=A_(),r=Ko(),o=ll(),i=cd(),s=Yo(),[a,l]=x.useState(!1),[c,d]=x.useState(!1);x.useEffect(()=>{l(!i.some(g=>g.type==="FATAL"))},[i,l]);const u=x.useCallback(async()=>{if(n!=null){d(!0);try{const g=w_(r,o);if(g==null)throw new Error("MUST NOT REACH!");const w=await fetch(`/api/project/${n}/deploy`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({state:JSON.stringify(s.toObject()),config:g})});w.ok?e({title:"Deployment succeeded"}):e({variant:"destructive",title:"Deployment failed",description:await w.text()})}catch(g){console.log(g),e({variant:"destructive",title:"Deployment failed"})}finally{d(!1)}}},[n,s,r,o,d]),[f,p]=x.useState(),y=x.useCallback(async()=>{if(n==null)return;const g=await fetch(`/api/project/${n}/saved`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s.toObject())});g.ok?e({title:"Save succeeded"}):e({variant:"destructive",title:"Save failed",description:await g.text()})},[n,s,p]),v=x.useCallback(async()=>{if(n==null)return;const w=await(await fetch(`/api/project/${n}/saved`,{method:"GET"})).json(),{x:S=0,y:C=0,zoom:N=1}=w.viewport;t.setNodes(w.nodes||[]),t.setEdges(w.edges||[]),s.setViewport({x:S,y:C,zoom:N})},[n,s,f]),[_,m]=x.useState({});return x.useEffect(()=>{m(c?{loading:!0}:a?{disabled:!1}:{disabled:!0})},[a,c,m]),h.jsxs(h.Fragment,{children:[h.jsx(Ln,{onClick:u,..._,children:"Deploy"}),h.jsx(Ln,{onClick:y,children:"Save"}),h.jsx(Ln,{onClick:v,children:"Restore"})]})}const mD=Pe.object({network:Pe.string().min(1,"reqired"),subdomain:Pe.string().min(1,"required")}),gD=Pe.object({serviceId:Pe.string(),portId:Pe.string()});function vD(e){const{id:t,selected:n}=e,r=x.useMemo(()=>os(e,"tcp"),[e]);return h.jsxs(Qo,{id:t,selected:n,type:e.type,children:[Lt(e),h.jsx(Wt,{type:"target",id:"tcp",position:ue.Bottom,isConnectable:r,isConnectableStart:r,isConnectableEnd:r})]})}function yD({id:e,data:t}){var v,_;const n=zt(),r=ll(),o=yr({resolver:xr(mD),mode:"onChange",defaultValues:{network:"",subdomain:""}});x.useEffect(()=>{const m=o.watch((g,{name:w})=>{w==="network"?g.network!==void 0&&n.updateNodeData(e,{network:g.network}):w==="subdomain"&&n.updateNodeData(e,{subdomain:g.subdomain})});return()=>m.unsubscribe()},[o,n]);const i=yr({resolver:xr(gD),mode:"onSubmit",defaultValues:{serviceId:(v=t.selected)==null?void 0:v.serviceId,portId:(_=t.selected)==null?void 0:_.portId}});x.useEffect(()=>{var m,g;i.reset({serviceId:(m=t.selected)==null?void 0:m.serviceId,portId:(g=t.selected)==null?void 0:g.portId}),console.log(i.getValues())},[i,t]);const s=Ko(),[a,l]=x.useState(void 0);x.useEffect(()=>{var m;if(((m=t.selected)==null?void 0:m.serviceId)==null)l(void 0);else{const g=t.selected.serviceId;l(s.find(w=>w.id===g))}},[t,l]);const c=x.useMemo(()=>(console.log(a),s.filter(m=>m.id===e?!1:a!=null&&a.id===e||"ports"in m.data&&(m.data.ports||[]).length>0)),[s,a]);x.useEffect(()=>{const m=i.watch((g,{name:w,type:S})=>{if(S==="change")switch(w){case"serviceId":if(!g.serviceId)break;n.updateNodeData(e,{selected:{serviceId:g.serviceId}});break;case"portId":if(!g.portId)break;n.updateNodeData(e,{selected:{serviceId:g.serviceId,portId:g.portId}});break}});return()=>m.unsubscribe()},[i,n]);const[d,u]=x.useState(new Map),[f,p]=x.useState(new Map);x.useEffect(()=>{u(new Map((t.exposed||[]).map(m=>[m.serviceId,Lt(s.find(g=>g.id===m.serviceId))]))),p(new Map((t.exposed||[]).map(m=>[`${m.serviceId} - ${m.portId}`,(s.find(g=>g.id===m.serviceId).data.ports||[]).find(g=>g.id===m.portId).name])))},[s,t,u,p]);const y=x.useCallback(m=>{n.setEdges(n.edges.filter(w=>w.target!==e));const g=(t.exposed||[]).concat({serviceId:m.serviceId,portId:m.portId});n.updateNodeData(e,{exposed:g,selected:void 0}),n.setEdges(n.edges.concat(g.map(w=>({id:Aa(),source:w.serviceId,sourceHandle:"ports",target:e,targetHandle:"tcp"}))))},[e,t,i,n,u,p]);return h.jsxs(h.Fragment,{children:[h.jsx(wr,{...o,children:h.jsxs("form",{className:"space-y-2",children:[h.jsx(ut,{control:o.control,name:"network",render:({field:m})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:m.onChange,defaultValue:m.value,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Network"})})}),h.jsx(Vn,{children:r.networks.map(g=>h.jsx(_n,{value:g.domain,children:`${g.name} - ${g.domain}`},g.name))})]}),h.jsx(st,{})]})}),h.jsx(ut,{control:o.control,name:"subdomain",render:({field:m})=>h.jsxs(ot,{children:[h.jsx(it,{children:h.jsx(nn,{placeholder:"subdomain",className:"border border-black",...m})}),h.jsx(st,{})]})})]})}),"Exposed Services",h.jsx("ul",{children:(t.exposed||[]).map((m,g)=>h.jsxs("li",{children:[d.get(m.serviceId)," - ",f.get(`${m.serviceId} - ${m.portId}`)]},g))}),h.jsx(wr,{...i,children:h.jsxs("form",{className:"space-y-2",onSubmit:i.handleSubmit(y),children:[h.jsx(ut,{control:i.control,name:"serviceId",render:({field:m})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:m.onChange,defaultValue:m.value,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Service"})})}),h.jsx(Vn,{children:c.map(g=>h.jsx(_n,{value:g.id,children:Lt(g)}))})]}),h.jsx(st,{})]})}),h.jsx(ut,{control:i.control,name:"portId",render:({field:m})=>h.jsxs(ot,{children:[h.jsxs(ur,{onValueChange:m.onChange,defaultValue:m.value,children:[h.jsx(it,{children:h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Port"})})}),h.jsx(Vn,{children:a&&(a.data.ports||[]).map(g=>h.jsxs(_n,{value:g.id,children:[g.name," - ",g.value]},g.id))})]}),h.jsx(st,{})]})}),h.jsx(Ln,{type:"submit",children:"Expose"})]})})]})}const xD=e=>({nodes:e.nodes,edges:e.edges,onNodesChange:e.onNodesChange,onEdgesChange:e.onEdgesChange,onConnect:e.onConnect});function wD(){const{nodes:e,edges:t,onNodesChange:n,onEdgesChange:r,onConnect:o}=zt(oj(xD)),i=Yo(),s=x.useMemo(()=>({app:YO,"gateway-https":xO,"gateway-tcp":vD,volume:QO,postgresql:tD,mongodb:oD,github:sD}),[]),a=x.useCallback(l=>{if(l.source===l.target)return!1;const c=i.getNode(l.source),d=i.getNode(l.target);return c.type==="github"?l.targetHandle==="repository":c.type==="app"&&l.sourceHandle==="ports"&&(!c.data.ports||c.data.ports.length===0)||d.type==="gateway-https"&&l.targetHandle==="https"&&d.data.https!==void 0?!1:c.type==="volume"?l.targetHandle==="volume":!0},[i]);return h.jsx("div",{style:{width:"100%",height:"100%"},children:h.jsxs(vR,{nodeTypes:s,nodes:e,edges:t,onNodesChange:n,onEdgesChange:r,onConnect:o,isValidConnection:a,fitView:!0,proOptions:{hideAttribution:!0},children:[h.jsx(IR,{}),h.jsx(bR,{variant:cr.Dots,gap:12,size:1}),h.jsx(Qu,{position:"bottom-right",children:h.jsx(hD,{})})]})})}function _D(e){switch(e.type){case"app":return h.jsx(qO,{...e});case"gateway-https":return h.jsx(wO,{...e});case"gateway-tcp":return h.jsx(yD,{...e});case"volume":return h.jsx(eD,{...e});case"postgresql":return h.jsx(rD,{...e});case"mongodb":return h.jsx(iD,{...e});case"github":return h.jsx(lD,{...e});default:return h.jsx(h.Fragment,{children:"nooo"})}}function SD(e,t,n){return n.indexOf(e)===t}function bD(){const e=Ko(),[t,n]=x.useState([]),r=x.useMemo(()=>e.filter(i=>i.selected).map(i=>i.id),[e]),o=x.useMemo(()=>t.concat(r).filter(SD),[t,r]);return h.jsx(Fm,{type:"multiple",value:o,onValueChange:i=>n(i),children:e.map(i=>h.jsxs(sd,{value:i.id,className:"px-3",children:[h.jsx(ad,{children:h.jsxs("div",{className:"flex flex-row space-x-2",children:[Bm(i.type),h.jsx("span",{children:Lt(i)})]})}),h.jsx(Vm,{children:h.jsx(_D,{...i})})]},i.id))})}const{createElement:as,createContext:CD,createRef:gz,forwardRef:Ob,useCallback:kt,useContext:Db,useEffect:Io,useImperativeHandle:Lb,useLayoutEffect:ED,useMemo:kD,useRef:Pt,useState:Li}=Nh,Ay=Nh[`useId${Math.random()}`.slice(0,5)],ND=ED,Cd=CD(null);Cd.displayName="PanelGroupContext";const Ro=ND,TD=typeof Ay=="function"?Ay:()=>null;let PD=0;function ug(e=null){const t=TD(),n=Pt(e||t||null);return n.current===null&&(n.current=""+PD++),e??n.current}function zb({children:e,className:t="",collapsedSize:n,collapsible:r,defaultSize:o,forwardedRef:i,id:s,maxSize:a,minSize:l,onCollapse:c,onExpand:d,onResize:u,order:f,style:p,tagName:y="div",...v}){const _=Db(Cd);if(_===null)throw Error("Panel components must be rendered within a PanelGroup container");const{collapsePanel:m,expandPanel:g,getPanelSize:w,getPanelStyle:S,groupId:C,isPanelCollapsed:N,reevaluatePanelConstraints:E,registerPanel:P,resizePanel:O,unregisterPanel:j}=_,$=ug(s),A=Pt({callbacks:{onCollapse:c,onExpand:d,onResize:u},constraints:{collapsedSize:n,collapsible:r,defaultSize:o,maxSize:a,minSize:l},id:$,idIsFromProps:s!==void 0,order:f});Pt({didLogMissingDefaultSizeWarning:!1}),Ro(()=>{const{callbacks:b,constraints:M}=A.current,T={...M};A.current.id=$,A.current.idIsFromProps=s!==void 0,A.current.order=f,b.onCollapse=c,b.onExpand=d,b.onResize=u,M.collapsedSize=n,M.collapsible=r,M.defaultSize=o,M.maxSize=a,M.minSize=l,(T.collapsedSize!==M.collapsedSize||T.collapsible!==M.collapsible||T.maxSize!==M.maxSize||T.minSize!==M.minSize)&&E(A.current,T)}),Ro(()=>{const b=A.current;return P(b),()=>{j(b)}},[f,$,P,j]),Lb(i,()=>({collapse:()=>{m(A.current)},expand:b=>{g(A.current,b)},getId(){return $},getSize(){return w(A.current)},isCollapsed(){return N(A.current)},isExpanded(){return!N(A.current)},resize:b=>{O(A.current,b)}}),[m,g,w,N,$,O]);const L=S(A.current,o);return as(y,{...v,children:e,className:t,id:s,style:{...L,...p},"data-panel":"","data-panel-collapsible":r||void 0,"data-panel-group-id":C,"data-panel-id":$,"data-panel-size":parseFloat(""+L.flexGrow).toFixed(1)})}const $b=Ob((e,t)=>as(zb,{...e,forwardedRef:t}));zb.displayName="Panel";$b.displayName="forwardRef(Panel)";let gh=null,Co=null;function ID(e,t){if(t){const n=(t&Ub)!==0,r=(t&Wb)!==0,o=(t&Zb)!==0,i=(t&Gb)!==0;if(n)return o?"se-resize":i?"ne-resize":"e-resize";if(r)return o?"sw-resize":i?"nw-resize":"w-resize";if(o)return"s-resize";if(i)return"n-resize"}switch(e){case"horizontal":return"ew-resize";case"intersection":return"move";case"vertical":return"ns-resize"}}function RD(){Co!==null&&(document.head.removeChild(Co),gh=null,Co=null)}function jf(e,t){const n=ID(e,t);gh!==n&&(gh=n,Co===null&&(Co=document.createElement("style"),document.head.appendChild(Co)),Co.innerHTML=`*{cursor: ${n}!important;}`)}function Fb(e){return e.type==="keydown"}function Vb(e){return e.type.startsWith("pointer")}function Hb(e){return e.type.startsWith("mouse")}function Ed(e){if(Vb(e)){if(e.isPrimary)return{x:e.clientX,y:e.clientY}}else if(Hb(e))return{x:e.clientX,y:e.clientY};return{x:1/0,y:1/0}}function AD(){if(typeof matchMedia=="function")return matchMedia("(pointer:coarse)").matches?"coarse":"fine"}function MD(e,t,n){return e.x<t.x+t.width&&e.x+e.width>t.x&&e.y<t.y+t.height&&e.y+e.height>t.y}function jD(e,t){if(e===t)throw new Error("Cannot compare node with itself");const n={a:Oy(e),b:Oy(t)};let r;for(;n.a.at(-1)===n.b.at(-1);)e=n.a.pop(),t=n.b.pop(),r=e;be(r,"Stacking order can only be calculated for elements with a common ancestor");const o={a:jy(My(n.a)),b:jy(My(n.b))};if(o.a===o.b){const i=r.childNodes,s={a:n.a.at(-1),b:n.b.at(-1)};let a=i.length;for(;a--;){const l=i[a];if(l===s.a)return 1;if(l===s.b)return-1}}return Math.sign(o.a-o.b)}const OD=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function DD(e){var t;const n=getComputedStyle((t=Bb(e))!==null&&t!==void 0?t:e).display;return n==="flex"||n==="inline-flex"}function LD(e){const t=getComputedStyle(e);return!!(t.position==="fixed"||t.zIndex!=="auto"&&(t.position!=="static"||DD(e))||+t.opacity<1||"transform"in t&&t.transform!=="none"||"webkitTransform"in t&&t.webkitTransform!=="none"||"mixBlendMode"in t&&t.mixBlendMode!=="normal"||"filter"in t&&t.filter!=="none"||"webkitFilter"in t&&t.webkitFilter!=="none"||"isolation"in t&&t.isolation==="isolate"||OD.test(t.willChange)||t.webkitOverflowScrolling==="touch")}function My(e){let t=e.length;for(;t--;){const n=e[t];if(be(n,"Missing node"),LD(n))return n}return null}function jy(e){return e&&Number(getComputedStyle(e).zIndex)||0}function Oy(e){const t=[];for(;e;)t.push(e),e=Bb(e);return t}function Bb(e){const{parentNode:t}=e;return t&&t instanceof ShadowRoot?t.host:t}const Ub=1,Wb=2,Zb=4,Gb=8,zD=AD()==="coarse";let Sn=[],zi=!1,Hr=new Map,kd=new Map;const Ka=new Set;function $D(e,t,n,r,o){var i;const{ownerDocument:s}=t,a={direction:n,element:t,hitAreaMargins:r,setResizeHandlerState:o},l=(i=Hr.get(s))!==null&&i!==void 0?i:0;return Hr.set(s,l+1),Ka.add(a),_u(),function(){var d;kd.delete(e),Ka.delete(a);const u=(d=Hr.get(s))!==null&&d!==void 0?d:1;if(Hr.set(s,u-1),_u(),u===1&&Hr.delete(s),Sn.includes(a)){const f=Sn.indexOf(a);f>=0&&Sn.splice(f,1),fg(),o("up",!0,null)}}}function Dy(e){const{target:t}=e,{x:n,y:r}=Ed(e);zi=!0,dg({target:t,x:n,y:r}),_u(),Sn.length>0&&(Su("down",e),e.preventDefault(),e.stopPropagation())}function Ms(e){const{x:t,y:n}=Ed(e);if(zi&&e.buttons===0&&(zi=!1,Su("up",e)),!zi){const{target:r}=e;dg({target:r,x:t,y:n})}Su("move",e),fg(),Sn.length>0&&e.preventDefault()}function oi(e){const{target:t}=e,{x:n,y:r}=Ed(e);kd.clear(),zi=!1,Sn.length>0&&e.preventDefault(),Su("up",e),dg({target:t,x:n,y:r}),fg(),_u()}function dg({target:e,x:t,y:n}){Sn.splice(0);let r=null;e instanceof HTMLElement&&(r=e),Ka.forEach(o=>{const{element:i,hitAreaMargins:s}=o,a=i.getBoundingClientRect(),{bottom:l,left:c,right:d,top:u}=a,f=zD?s.coarse:s.fine;if(t>=c-f&&t<=d+f&&n>=u-f&&n<=l+f){if(r!==null&&document.contains(r)&&i!==r&&!i.contains(r)&&!r.contains(i)&&jD(r,i)>0){let y=r,v=!1;for(;y&&!y.contains(i);){if(MD(y.getBoundingClientRect(),a)){v=!0;break}y=y.parentElement}if(v)return}Sn.push(o)}})}function Of(e,t){kd.set(e,t)}function fg(){let e=!1,t=!1;Sn.forEach(r=>{const{direction:o}=r;o==="horizontal"?e=!0:t=!0});let n=0;kd.forEach(r=>{n|=r}),e&&t?jf("intersection",n):e?jf("horizontal",n):t?jf("vertical",n):RD()}function _u(){Hr.forEach((e,t)=>{const{body:n}=t;n.removeEventListener("contextmenu",oi),n.removeEventListener("pointerdown",Dy),n.removeEventListener("pointerleave",Ms),n.removeEventListener("pointermove",Ms)}),window.removeEventListener("pointerup",oi),window.removeEventListener("pointercancel",oi),Ka.size>0&&(zi?(Sn.length>0&&Hr.forEach((e,t)=>{const{body:n}=t;e>0&&(n.addEventListener("contextmenu",oi),n.addEventListener("pointerleave",Ms),n.addEventListener("pointermove",Ms))}),window.addEventListener("pointerup",oi),window.addEventListener("pointercancel",oi)):Hr.forEach((e,t)=>{const{body:n}=t;e>0&&(n.addEventListener("pointerdown",Dy,{capture:!0}),n.addEventListener("pointermove",Ms))}))}function Su(e,t){Ka.forEach(n=>{const{setResizeHandlerState:r}=n,o=Sn.includes(n);r(e,o,t)})}function FD(){const[e,t]=Li(0);return kt(()=>t(n=>n+1),[])}function be(e,t){if(!e)throw console.error(t),Error(t)}const pg=10;function Bo(e,t,n=pg){return e.toFixed(n)===t.toFixed(n)?0:e>t?1:-1}function nr(e,t,n=pg){return Bo(e,t,n)===0}function Ft(e,t,n){return Bo(e,t,n)===0}function VD(e,t,n){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++){const o=e[r],i=t[r];if(!Ft(o,i,n))return!1}return!0}function Ci({panelConstraints:e,panelIndex:t,size:n}){const r=e[t];be(r!=null,`Panel constraints not found for index ${t}`);let{collapsedSize:o=0,collapsible:i,maxSize:s=100,minSize:a=0}=r;if(Bo(n,a)<0)if(i){const l=(o+a)/2;Bo(n,l)<0?n=o:n=a}else n=a;return n=Math.min(s,n),n=parseFloat(n.toFixed(pg)),n}function Bs({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:o,trigger:i}){if(Ft(e,0))return t;const s=[...t],[a,l]=r;be(a!=null,"Invalid first pivot index"),be(l!=null,"Invalid second pivot index");let c=0;if(i==="keyboard"){{const u=e<0?l:a,f=n[u];be(f,`Panel constraints not found for index ${u}`);const{collapsedSize:p=0,collapsible:y,minSize:v=0}=f;if(y){const _=t[u];if(be(_!=null,`Previous layout not found for panel index ${u}`),Ft(_,p)){const m=v-_;Bo(m,Math.abs(e))>0&&(e=e<0?0-m:m)}}}{const u=e<0?a:l,f=n[u];be(f,`No panel constraints found for index ${u}`);const{collapsedSize:p=0,collapsible:y,minSize:v=0}=f;if(y){const _=t[u];if(be(_!=null,`Previous layout not found for panel index ${u}`),Ft(_,v)){const m=_-p;Bo(m,Math.abs(e))>0&&(e=e<0?0-m:m)}}}}{const u=e<0?1:-1;let f=e<0?l:a,p=0;for(;;){const v=t[f];be(v!=null,`Previous layout not found for panel index ${f}`);const m=Ci({panelConstraints:n,panelIndex:f,size:100})-v;if(p+=m,f+=u,f<0||f>=n.length)break}const y=Math.min(Math.abs(e),Math.abs(p));e=e<0?0-y:y}{let f=e<0?a:l;for(;f>=0&&f<n.length;){const p=Math.abs(e)-Math.abs(c),y=t[f];be(y!=null,`Previous layout not found for panel index ${f}`);const v=y-p,_=Ci({panelConstraints:n,panelIndex:f,size:v});if(!Ft(y,_)&&(c+=y-_,s[f]=_,c.toPrecision(3).localeCompare(Math.abs(e).toPrecision(3),void 0,{numeric:!0})>=0))break;e<0?f--:f++}}if(VD(o,s))return o;{const u=e<0?l:a,f=t[u];be(f!=null,`Previous layout not found for panel index ${u}`);const p=f+c,y=Ci({panelConstraints:n,panelIndex:u,size:p});if(s[u]=y,!Ft(y,p)){let v=p-y,m=e<0?l:a;for(;m>=0&&m<n.length;){const g=s[m];be(g!=null,`Previous layout not found for panel index ${m}`);const w=g+v,S=Ci({panelConstraints:n,panelIndex:m,size:w});if(Ft(g,S)||(v-=S-g,s[m]=S),Ft(v,0))break;e>0?m--:m++}}}const d=s.reduce((u,f)=>f+u,0);return Ft(d,100)?s:o}function HD({layout:e,panelsArray:t,pivotIndices:n}){let r=0,o=100,i=0,s=0;const a=n[0];be(a!=null,"No pivot index found"),t.forEach((u,f)=>{const{constraints:p}=u,{maxSize:y=100,minSize:v=0}=p;f===a?(r=v,o=y):(i+=v,s+=y)});const l=Math.min(o,100-i),c=Math.max(r,100-s),d=e[a];return{valueMax:l,valueMin:c,valueNow:d}}function Xa(e,t=document){return Array.from(t.querySelectorAll(`[data-panel-resize-handle-id][data-panel-group-id="${e}"]`))}function Yb(e,t,n=document){const o=Xa(e,n).findIndex(i=>i.getAttribute("data-panel-resize-handle-id")===t);return o??null}function Kb(e,t,n){const r=Yb(e,t,n);return r!=null?[r,r+1]:[-1,-1]}function Xb(e,t=document){var n;if(t instanceof HTMLElement&&(t==null||(n=t.dataset)===null||n===void 0?void 0:n.panelGroupId)==e)return t;const r=t.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`);return r||null}function Nd(e,t=document){const n=t.querySelector(`[data-panel-resize-handle-id="${e}"]`);return n||null}function BD(e,t,n,r=document){var o,i,s,a;const l=Nd(t,r),c=Xa(e,r),d=l?c.indexOf(l):-1,u=(o=(i=n[d])===null||i===void 0?void 0:i.id)!==null&&o!==void 0?o:null,f=(s=(a=n[d+1])===null||a===void 0?void 0:a.id)!==null&&s!==void 0?s:null;return[u,f]}function UD({committedValuesRef:e,eagerValuesRef:t,groupId:n,layout:r,panelDataArray:o,panelGroupElement:i,setLayout:s}){Pt({didWarnAboutMissingResizeHandle:!1}),Ro(()=>{if(!i)return;const a=Xa(n,i);for(let l=0;l<o.length-1;l++){const{valueMax:c,valueMin:d,valueNow:u}=HD({layout:r,panelsArray:o,pivotIndices:[l,l+1]}),f=a[l];if(f!=null){const p=o[l];be(p,`No panel data found for index "${l}"`),f.setAttribute("aria-controls",p.id),f.setAttribute("aria-valuemax",""+Math.round(c)),f.setAttribute("aria-valuemin",""+Math.round(d)),f.setAttribute("aria-valuenow",u!=null?""+Math.round(u):"")}}return()=>{a.forEach((l,c)=>{l.removeAttribute("aria-controls"),l.removeAttribute("aria-valuemax"),l.removeAttribute("aria-valuemin"),l.removeAttribute("aria-valuenow")})}},[n,r,o,i]),Io(()=>{if(!i)return;const a=t.current;be(a,"Eager values not found");const{panelDataArray:l}=a,c=Xb(n,i);be(c!=null,`No group found for id "${n}"`);const d=Xa(n,i);be(d,`No resize handles found for group id "${n}"`);const u=d.map(f=>{const p=f.getAttribute("data-panel-resize-handle-id");be(p,"Resize handle element has no handle id attribute");const[y,v]=BD(n,p,l,i);if(y==null||v==null)return()=>{};const _=m=>{if(!m.defaultPrevented)switch(m.key){case"Enter":{m.preventDefault();const g=l.findIndex(w=>w.id===y);if(g>=0){const w=l[g];be(w,`No panel data found for index ${g}`);const S=r[g],{collapsedSize:C=0,collapsible:N,minSize:E=0}=w.constraints;if(S!=null&&N){const P=Bs({delta:Ft(S,C)?E-C:C-S,initialLayout:r,panelConstraints:l.map(O=>O.constraints),pivotIndices:Kb(n,p,i),prevLayout:r,trigger:"keyboard"});r!==P&&s(P)}}break}}};return f.addEventListener("keydown",_),()=>{f.removeEventListener("keydown",_)}});return()=>{u.forEach(f=>f())}},[i,e,t,n,r,o,s])}function Ly(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function qb(e,t){const n=e==="horizontal",{x:r,y:o}=Ed(t);return n?r:o}function WD(e,t,n,r,o){const i=n==="horizontal",s=Nd(t,o);be(s,`No resize handle element found for id "${t}"`);const a=s.getAttribute("data-panel-group-id");be(a,"Resize handle element has no group id attribute");let{initialCursorPosition:l}=r;const c=qb(n,e),d=Xb(a,o);be(d,`No group element found for id "${a}"`);const u=d.getBoundingClientRect(),f=i?u.width:u.height;return(c-l)/f*100}function ZD(e,t,n,r,o,i){if(Fb(e)){const s=n==="horizontal";let a=0;e.shiftKey?a=100:o!=null?a=o:a=10;let l=0;switch(e.key){case"ArrowDown":l=s?0:a;break;case"ArrowLeft":l=s?-a:0;break;case"ArrowRight":l=s?a:0;break;case"ArrowUp":l=s?0:-a;break;case"End":l=100;break;case"Home":l=-100;break}return l}else return r==null?0:WD(e,t,n,r,i)}function GD({panelDataArray:e}){const t=Array(e.length),n=e.map(i=>i.constraints);let r=0,o=100;for(let i=0;i<e.length;i++){const s=n[i];be(s,`Panel constraints not found for index ${i}`);const{defaultSize:a}=s;a!=null&&(r++,t[i]=a,o-=a)}for(let i=0;i<e.length;i++){const s=n[i];be(s,`Panel constraints not found for index ${i}`);const{defaultSize:a}=s;if(a!=null)continue;const l=e.length-r,c=o/l;r++,t[i]=c,o-=c}return t}function ii(e,t,n){t.forEach((r,o)=>{const i=e[o];be(i,`Panel data not found for index ${o}`);const{callbacks:s,constraints:a,id:l}=i,{collapsedSize:c=0,collapsible:d}=a,u=n[l];if(u==null||r!==u){n[l]=r;const{onCollapse:f,onExpand:p,onResize:y}=s;y&&y(r,u),d&&(f||p)&&(p&&(u==null||nr(u,c))&&!nr(r,c)&&p(),f&&(u==null||!nr(u,c))&&nr(r,c)&&f())}})}function Xl(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}function YD({defaultSize:e,dragState:t,layout:n,panelData:r,panelIndex:o,precision:i=3}){const s=n[o];let a;return s==null?a=e!=null?e.toPrecision(i):"1":r.length===1?a="1":a=s.toPrecision(i),{flexBasis:0,flexGrow:a,flexShrink:1,overflow:"hidden",pointerEvents:t!==null?"none":void 0}}function KD(e,t=10){let n=null;return(...o)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...o)},t)}}function zy(e){try{if(typeof localStorage<"u")e.getItem=t=>localStorage.getItem(t),e.setItem=(t,n)=>{localStorage.setItem(t,n)};else throw new Error("localStorage not supported in this environment")}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function Qb(e){return`react-resizable-panels:${e}`}function Jb(e){return e.map(t=>{const{constraints:n,id:r,idIsFromProps:o,order:i}=t;return o?r:i?`${i}:${JSON.stringify(n)}`:JSON.stringify(n)}).sort((t,n)=>t.localeCompare(n)).join(",")}function eC(e,t){try{const n=Qb(e),r=t.getItem(n);if(r){const o=JSON.parse(r);if(typeof o=="object"&&o!=null)return o}}catch{}return null}function XD(e,t,n){var r,o;const i=(r=eC(e,n))!==null&&r!==void 0?r:{},s=Jb(t);return(o=i[s])!==null&&o!==void 0?o:null}function qD(e,t,n,r,o){var i;const s=Qb(e),a=Jb(t),l=(i=eC(e,o))!==null&&i!==void 0?i:{};l[a]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{o.setItem(s,JSON.stringify(l))}catch(c){console.error(c)}}function $y({layout:e,panelConstraints:t}){const n=[...e],r=n.reduce((i,s)=>i+s,0);if(n.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${n.map(i=>`${i}%`).join(", ")}`);if(!Ft(r,100)&&n.length>0)for(let i=0;i<t.length;i++){const s=n[i];be(s!=null,`No layout data found for index ${i}`);const a=100/r*s;n[i]=a}let o=0;for(let i=0;i<t.length;i++){const s=n[i];be(s!=null,`No layout data found for index ${i}`);const a=Ci({panelConstraints:t,panelIndex:i,size:s});s!=a&&(o+=s-a,n[i]=a)}if(!Ft(o,0))for(let i=0;i<t.length;i++){const s=n[i];be(s!=null,`No layout data found for index ${i}`);const a=s+o,l=Ci({panelConstraints:t,panelIndex:i,size:a});if(s!==l&&(o-=l-s,n[i]=l,Ft(o,0)))break}return n}const QD=100,Us={getItem:e=>(zy(Us),Us.getItem(e)),setItem:(e,t)=>{zy(Us),Us.setItem(e,t)}},Fy={};function tC({autoSaveId:e=null,children:t,className:n="",direction:r,forwardedRef:o,id:i=null,onLayout:s=null,keyboardResizeBy:a=null,storage:l=Us,style:c,tagName:d="div",...u}){const f=ug(i),p=Pt(null),[y,v]=Li(null),[_,m]=Li([]),g=FD(),w=Pt({}),S=Pt(new Map),C=Pt(0),N=Pt({autoSaveId:e,direction:r,dragState:y,id:f,keyboardResizeBy:a,onLayout:s,storage:l}),E=Pt({layout:_,panelDataArray:[],panelDataArrayChanged:!1});Pt({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),Lb(o,()=>({getId:()=>N.current.id,getLayout:()=>{const{layout:H}=E.current;return H},setLayout:H=>{const{onLayout:Z}=N.current,{layout:K,panelDataArray:G}=E.current,V=$y({layout:H,panelConstraints:G.map(B=>B.constraints)});Ly(K,V)||(m(V),E.current.layout=V,Z&&Z(V),ii(G,V,w.current))}}),[]),Ro(()=>{N.current.autoSaveId=e,N.current.direction=r,N.current.dragState=y,N.current.id=f,N.current.onLayout=s,N.current.storage=l}),UD({committedValuesRef:N,eagerValuesRef:E,groupId:f,layout:_,panelDataArray:E.current.panelDataArray,setLayout:m,panelGroupElement:p.current}),Io(()=>{const{panelDataArray:H}=E.current;if(e){if(_.length===0||_.length!==H.length)return;let Z=Fy[e];Z==null&&(Z=KD(qD,QD),Fy[e]=Z);const K=[...H],G=new Map(S.current);Z(e,K,G,_,l)}},[e,_,l]),Io(()=>{});const P=kt(H=>{const{onLayout:Z}=N.current,{layout:K,panelDataArray:G}=E.current;if(H.constraints.collapsible){const V=G.map(oe=>oe.constraints),{collapsedSize:B=0,panelSize:ee,pivotIndices:ne}=mo(G,H,K);if(be(ee!=null,`Panel size not found for panel "${H.id}"`),!nr(ee,B)){S.current.set(H.id,ee);const X=li(G,H)===G.length-1?ee-B:B-ee,ae=Bs({delta:X,initialLayout:K,panelConstraints:V,pivotIndices:ne,prevLayout:K,trigger:"imperative-api"});Xl(K,ae)||(m(ae),E.current.layout=ae,Z&&Z(ae),ii(G,ae,w.current))}}},[]),O=kt((H,Z)=>{const{onLayout:K}=N.current,{layout:G,panelDataArray:V}=E.current;if(H.constraints.collapsible){const B=V.map(me=>me.constraints),{collapsedSize:ee=0,panelSize:ne=0,minSize:oe=0,pivotIndices:X}=mo(V,H,G),ae=Z??oe;if(nr(ne,ee)){const me=S.current.get(H.id),Le=me!=null&&me>=ae?me:ae,Et=li(V,H)===V.length-1?ne-Le:Le-ne,R=Bs({delta:Et,initialLayout:G,panelConstraints:B,pivotIndices:X,prevLayout:G,trigger:"imperative-api"});Xl(G,R)||(m(R),E.current.layout=R,K&&K(R),ii(V,R,w.current))}}},[]),j=kt(H=>{const{layout:Z,panelDataArray:K}=E.current,{panelSize:G}=mo(K,H,Z);return be(G!=null,`Panel size not found for panel "${H.id}"`),G},[]),$=kt((H,Z)=>{const{panelDataArray:K}=E.current,G=li(K,H);return YD({defaultSize:Z,dragState:y,layout:_,panelData:K,panelIndex:G})},[y,_]),A=kt(H=>{const{layout:Z,panelDataArray:K}=E.current,{collapsedSize:G=0,collapsible:V,panelSize:B}=mo(K,H,Z);return be(B!=null,`Panel size not found for panel "${H.id}"`),V===!0&&nr(B,G)},[]),L=kt(H=>{const{layout:Z,panelDataArray:K}=E.current,{collapsedSize:G=0,collapsible:V,panelSize:B}=mo(K,H,Z);return be(B!=null,`Panel size not found for panel "${H.id}"`),!V||Bo(B,G)>0},[]),b=kt(H=>{const{panelDataArray:Z}=E.current;Z.push(H),Z.sort((K,G)=>{const V=K.order,B=G.order;return V==null&&B==null?0:V==null?-1:B==null?1:V-B}),E.current.panelDataArrayChanged=!0,g()},[g]);Ro(()=>{if(E.current.panelDataArrayChanged){E.current.panelDataArrayChanged=!1;const{autoSaveId:H,onLayout:Z,storage:K}=N.current,{layout:G,panelDataArray:V}=E.current;let B=null;if(H){const ne=XD(H,V,K);ne&&(S.current=new Map(Object.entries(ne.expandToSizes)),B=ne.layout)}B==null&&(B=GD({panelDataArray:V}));const ee=$y({layout:B,panelConstraints:V.map(ne=>ne.constraints)});Ly(G,ee)||(m(ee),E.current.layout=ee,Z&&Z(ee),ii(V,ee,w.current))}}),Ro(()=>{const H=E.current;return()=>{H.layout=[]}},[]);const M=kt(H=>{let Z=!1;const K=p.current;return K&&window.getComputedStyle(K,null).getPropertyValue("direction")==="rtl"&&(Z=!0),function(V){V.preventDefault();const B=p.current;if(!B)return()=>null;const{direction:ee,dragState:ne,id:oe,keyboardResizeBy:X,onLayout:ae}=N.current,{layout:me,panelDataArray:Le}=E.current,{initialLayout:qe}=ne??{},Et=Kb(oe,H,B);let R=ZD(V,H,ee,ne,X,B);const F=ee==="horizontal";F&&Z&&(R=-R);const W=Le.map(q=>q.constraints),ie=Bs({delta:R,initialLayout:qe??me,panelConstraints:W,pivotIndices:Et,prevLayout:me,trigger:Fb(V)?"keyboard":"mouse-or-touch"}),te=!Xl(me,ie);(Vb(V)||Hb(V))&&C.current!=R&&(C.current=R,!te&&R!==0?F?Of(H,R<0?Ub:Wb):Of(H,R<0?Zb:Gb):Of(H,0)),te&&(m(ie),E.current.layout=ie,ae&&ae(ie),ii(Le,ie,w.current))}},[]),T=kt((H,Z)=>{const{onLayout:K}=N.current,{layout:G,panelDataArray:V}=E.current,B=V.map(me=>me.constraints),{panelSize:ee,pivotIndices:ne}=mo(V,H,G);be(ee!=null,`Panel size not found for panel "${H.id}"`);const X=li(V,H)===V.length-1?ee-Z:Z-ee,ae=Bs({delta:X,initialLayout:G,panelConstraints:B,pivotIndices:ne,prevLayout:G,trigger:"imperative-api"});Xl(G,ae)||(m(ae),E.current.layout=ae,K&&K(ae),ii(V,ae,w.current))},[]),D=kt((H,Z)=>{const{layout:K,panelDataArray:G}=E.current,{collapsedSize:V=0,collapsible:B}=Z,{collapsedSize:ee=0,collapsible:ne,maxSize:oe=100,minSize:X=0}=H.constraints,{panelSize:ae}=mo(G,H,K);ae!=null&&(B&&ne&&nr(ae,V)?nr(V,ee)||T(H,ee):ae<X?T(H,X):ae>oe&&T(H,oe))},[T]),k=kt((H,Z)=>{const{direction:K}=N.current,{layout:G}=E.current;if(!p.current)return;const V=Nd(H,p.current);be(V,`Drag handle element not found for id "${H}"`);const B=qb(K,Z);v({dragHandleId:H,dragHandleRect:V.getBoundingClientRect(),initialCursorPosition:B,initialLayout:G})},[]),I=kt(()=>{v(null)},[]),z=kt(H=>{const{panelDataArray:Z}=E.current,K=li(Z,H);K>=0&&(Z.splice(K,1),delete w.current[H.id],E.current.panelDataArrayChanged=!0,g())},[g]),U=kD(()=>({collapsePanel:P,direction:r,dragState:y,expandPanel:O,getPanelSize:j,getPanelStyle:$,groupId:f,isPanelCollapsed:A,isPanelExpanded:L,reevaluatePanelConstraints:D,registerPanel:b,registerResizeHandle:M,resizePanel:T,startDragging:k,stopDragging:I,unregisterPanel:z,panelGroupElement:p.current}),[P,y,r,O,j,$,f,A,L,D,b,M,T,k,I,z]),Y={display:"flex",flexDirection:r==="horizontal"?"row":"column",height:"100%",overflow:"hidden",width:"100%"};return as(Cd.Provider,{value:U},as(d,{...u,children:t,className:n,id:i,ref:p,style:{...Y,...c},"data-panel-group":"","data-panel-group-direction":r,"data-panel-group-id":f}))}const nC=Ob((e,t)=>as(tC,{...e,forwardedRef:t}));tC.displayName="PanelGroup";nC.displayName="forwardRef(PanelGroup)";function li(e,t){return e.findIndex(n=>n===t||n.id===t.id)}function mo(e,t,n){const r=li(e,t),i=r===e.length-1?[r-1,r]:[r,r+1],s=n[r];return{...t.constraints,panelSize:s,pivotIndices:i}}function JD({disabled:e,handleId:t,resizeHandler:n,panelGroupElement:r}){Io(()=>{if(e||n==null||r==null)return;const o=Nd(t,r);if(o==null)return;const i=s=>{if(!s.defaultPrevented)switch(s.key){case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"End":case"Home":{s.preventDefault(),n(s);break}case"F6":{s.preventDefault();const a=o.getAttribute("data-panel-group-id");be(a,`No group element found for id "${a}"`);const l=Xa(a,r),c=Yb(a,t,r);be(c!==null,`No resize element found for id "${t}"`);const d=s.shiftKey?c>0?c-1:l.length-1:c+1<l.length?c+1:0;l[d].focus();break}}};return o.addEventListener("keydown",i),()=>{o.removeEventListener("keydown",i)}},[r,e,t,n])}function rC({children:e=null,className:t="",disabled:n=!1,hitAreaMargins:r,id:o,onBlur:i,onDragging:s,onFocus:a,style:l={},tabIndex:c=0,tagName:d="div",...u}){var f,p;const y=Pt(null),v=Pt({onDragging:s});Io(()=>{v.current.onDragging=s});const _=Db(Cd);if(_===null)throw Error("PanelResizeHandle components must be rendered within a PanelGroup container");const{direction:m,groupId:g,registerResizeHandle:w,startDragging:S,stopDragging:C,panelGroupElement:N}=_,E=ug(o),[P,O]=Li("inactive"),[j,$]=Li(!1),[A,L]=Li(null),b=Pt({state:P});Ro(()=>{b.current.state=P}),Io(()=>{if(n)L(null);else{const k=w(E);L(()=>k)}},[n,E,w]);const M=(f=r==null?void 0:r.coarse)!==null&&f!==void 0?f:15,T=(p=r==null?void 0:r.fine)!==null&&p!==void 0?p:5;return Io(()=>{if(n||A==null)return;const k=y.current;return be(k,"Element ref not attached"),$D(E,k,m,{coarse:M,fine:T},(z,U,Y)=>{if(U)switch(z){case"down":{O("drag"),be(Y,'Expected event to be defined for "down" action'),S(E,Y);const{onDragging:H}=v.current;H&&H(!0);break}case"move":{const{state:H}=b.current;H!=="drag"&&O("hover"),be(Y,'Expected event to be defined for "move" action'),A(Y);break}case"up":{O("hover"),C();const{onDragging:H}=v.current;H&&H(!1);break}}else O("inactive")})},[M,m,n,T,w,E,A,S,C]),JD({disabled:n,handleId:E,resizeHandler:A,panelGroupElement:N}),as(d,{...u,children:e,className:t,id:o,onBlur:()=>{$(!1),i==null||i()},onFocus:()=>{$(!0),a==null||a()},ref:y,role:"separator",style:{...{touchAction:"none",userSelect:"none"},...l},tabIndex:c,"data-panel-group-direction":m,"data-panel-group-id":g,"data-resize-handle":"","data-resize-handle-active":P==="drag"?"pointer":j?"keyboard":void 0,"data-resize-handle-state":P,"data-panel-resize-handle-enabled":!n,"data-panel-resize-handle-id":E})}rC.displayName="PanelResizeHandle";const Df=({className:e,...t})=>h.jsx(nC,{className:we("flex h-full w-full data-[panel-group-direction=vertical]:flex-col",e),...t}),si=$b,Lf=({withHandle:e,className:t,...n})=>h.jsx(rC,{className:we("relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",t),...n,children:e&&h.jsx("div",{className:"z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border",children:h.jsx(v6,{className:"h-2.5 w-2.5"})})}),eL=td("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function oC({className:e,variant:t,...n}){return h.jsx("div",{className:we(eL({variant:t}),e),...n})}function tL(e,t=[]){let n=[];function r(i,s){const a=x.createContext(s),l=n.length;n=[...n,s];function c(u){const{scope:f,children:p,...y}=u,v=(f==null?void 0:f[e][l])||a,_=x.useMemo(()=>y,Object.values(y));return h.jsx(v.Provider,{value:_,children:p})}function d(u,f){const p=(f==null?void 0:f[e][l])||a,y=x.useContext(p);if(y)return y;if(s!==void 0)return s;throw new Error(`\`${u}\` must be used within \`${i}\``)}return c.displayName=i+"Provider",[c,d]}const o=()=>{const i=n.map(s=>x.createContext(s));return function(a){const l=(a==null?void 0:a[e])||i;return x.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,nL(o,...t)]}function nL(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const s=r.reduce((a,{useScope:l,scopeName:c})=>{const u=l(i)[`__scope${c}`];return{...a,...u}},{});return x.useMemo(()=>({[`__scope${t.scopeName}`]:s}),[s])}};return n.scopeName=t.scopeName,n}var zf="rovingFocusGroup.onEntryFocus",rL={bubbles:!1,cancelable:!0},Td="RovingFocusGroup",[vh,iC,oL]=nd(Td),[iL,sC]=tL(Td,[oL]),[sL,aL]=iL(Td),aC=x.forwardRef((e,t)=>h.jsx(vh.Provider,{scope:e.__scopeRovingFocusGroup,children:h.jsx(vh.Slot,{scope:e.__scopeRovingFocusGroup,children:h.jsx(lL,{...e,ref:t})})}));aC.displayName=Td;var lL=x.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:o=!1,dir:i,currentTabStopId:s,defaultCurrentTabStopId:a,onCurrentTabStopIdChange:l,onEntryFocus:c,preventScrollOnEntryFocus:d=!1,...u}=e,f=x.useRef(null),p=Ae(t,f),y=rd(i),[v=null,_]=Hn({prop:s,defaultProp:a,onChange:l}),[m,g]=x.useState(!1),w=Dt(c),S=iC(n),C=x.useRef(!1),[N,E]=x.useState(0);return x.useEffect(()=>{const P=f.current;if(P)return P.addEventListener(zf,w),()=>P.removeEventListener(zf,w)},[w]),h.jsx(sL,{scope:n,orientation:r,dir:y,loop:o,currentTabStopId:v,onItemFocus:x.useCallback(P=>_(P),[_]),onItemShiftTab:x.useCallback(()=>g(!0),[]),onFocusableItemAdd:x.useCallback(()=>E(P=>P+1),[]),onFocusableItemRemove:x.useCallback(()=>E(P=>P-1),[]),children:h.jsx(xe.div,{tabIndex:m||N===0?-1:0,"data-orientation":r,...u,ref:p,style:{outline:"none",...e.style},onMouseDown:he(e.onMouseDown,()=>{C.current=!0}),onFocus:he(e.onFocus,P=>{const O=!C.current;if(P.target===P.currentTarget&&O&&!m){const j=new CustomEvent(zf,rL);if(P.currentTarget.dispatchEvent(j),!j.defaultPrevented){const $=S().filter(T=>T.focusable),A=$.find(T=>T.active),L=$.find(T=>T.id===v),M=[A,L,...$].filter(Boolean).map(T=>T.ref.current);uC(M,d)}}C.current=!1}),onBlur:he(e.onBlur,()=>g(!1))})})}),lC="RovingFocusGroupItem",cC=x.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:o=!1,tabStopId:i,...s}=e,a=xn(),l=i||a,c=aL(lC,n),d=c.currentTabStopId===l,u=iC(n),{onFocusableItemAdd:f,onFocusableItemRemove:p}=c;return x.useEffect(()=>{if(r)return f(),()=>p()},[r,f,p]),h.jsx(vh.ItemSlot,{scope:n,id:l,focusable:r,active:o,children:h.jsx(xe.span,{tabIndex:d?0:-1,"data-orientation":c.orientation,...s,ref:t,onMouseDown:he(e.onMouseDown,y=>{r?c.onItemFocus(l):y.preventDefault()}),onFocus:he(e.onFocus,()=>c.onItemFocus(l)),onKeyDown:he(e.onKeyDown,y=>{if(y.key==="Tab"&&y.shiftKey){c.onItemShiftTab();return}if(y.target!==y.currentTarget)return;const v=dL(y,c.orientation,c.dir);if(v!==void 0){if(y.metaKey||y.ctrlKey||y.altKey||y.shiftKey)return;y.preventDefault();let m=u().filter(g=>g.focusable).map(g=>g.ref.current);if(v==="last")m.reverse();else if(v==="prev"||v==="next"){v==="prev"&&m.reverse();const g=m.indexOf(y.currentTarget);m=c.loop?fL(m,g+1):m.slice(g+1)}setTimeout(()=>uC(m))}})})})});cC.displayName=lC;var cL={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function uL(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function dL(e,t,n){const r=uL(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return cL[r]}function uC(e,t=!1){const n=document.activeElement;for(const r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function fL(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var pL=aC,hL=cC,hg="Tabs",[mL,vz]=Xo(hg,[sC]),dC=sC(),[gL,mg]=mL(hg),fC=x.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,onValueChange:o,defaultValue:i,orientation:s="horizontal",dir:a,activationMode:l="automatic",...c}=e,d=rd(a),[u,f]=Hn({prop:r,onChange:o,defaultProp:i});return h.jsx(gL,{scope:n,baseId:xn(),value:u,onValueChange:f,orientation:s,dir:d,activationMode:l,children:h.jsx(xe.div,{dir:d,"data-orientation":s,...c,ref:t})})});fC.displayName=hg;var pC="TabsList",hC=x.forwardRef((e,t)=>{const{__scopeTabs:n,loop:r=!0,...o}=e,i=mg(pC,n),s=dC(n);return h.jsx(pL,{asChild:!0,...s,orientation:i.orientation,dir:i.dir,loop:r,children:h.jsx(xe.div,{role:"tablist","aria-orientation":i.orientation,...o,ref:t})})});hC.displayName=pC;var mC="TabsTrigger",gC=x.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,disabled:o=!1,...i}=e,s=mg(mC,n),a=dC(n),l=xC(s.baseId,r),c=wC(s.baseId,r),d=r===s.value;return h.jsx(hL,{asChild:!0,...a,focusable:!o,active:d,children:h.jsx(xe.button,{type:"button",role:"tab","aria-selected":d,"aria-controls":c,"data-state":d?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:l,...i,ref:t,onMouseDown:he(e.onMouseDown,u=>{!o&&u.button===0&&u.ctrlKey===!1?s.onValueChange(r):u.preventDefault()}),onKeyDown:he(e.onKeyDown,u=>{[" ","Enter"].includes(u.key)&&s.onValueChange(r)}),onFocus:he(e.onFocus,()=>{const u=s.activationMode!=="manual";!d&&!o&&u&&s.onValueChange(r)})})})});gC.displayName=mC;var vC="TabsContent",yC=x.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,forceMount:o,children:i,...s}=e,a=mg(vC,n),l=xC(a.baseId,r),c=wC(a.baseId,r),d=r===a.value,u=x.useRef(d);return x.useEffect(()=>{const f=requestAnimationFrame(()=>u.current=!1);return()=>cancelAnimationFrame(f)},[]),h.jsx(kr,{present:o||d,children:({present:f})=>h.jsx(xe.div,{"data-state":d?"active":"inactive","data-orientation":a.orientation,role:"tabpanel","aria-labelledby":l,hidden:!f,id:c,tabIndex:0,...s,ref:t,style:{...e.style,animationDuration:u.current?"0s":void 0},children:f&&i})})});yC.displayName=vC;function xC(e,t){return`${e}-trigger-${t}`}function wC(e,t){return`${e}-content-${t}`}var vL=fC,_C=hC,SC=gC,bC=yC;const CC=vL,gg=x.forwardRef(({className:e,...t},n)=>h.jsx(_C,{ref:n,className:we("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));gg.displayName=_C.displayName;const $i=x.forwardRef(({className:e,...t},n)=>h.jsx(SC,{ref:n,className:we("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...t}));$i.displayName=SC.displayName;const Fi=x.forwardRef(({className:e,...t},n)=>h.jsx(bC,{ref:n,className:we("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));Fi.displayName=bC.displayName;const EC=x.forwardRef(({className:e,...t},n)=>h.jsx("div",{className:"relative w-full overflow-auto",children:h.jsx("table",{ref:n,className:we("w-full caption-top text-sm",e),...t})}));EC.displayName="Table";const kC=x.forwardRef(({className:e,...t},n)=>h.jsx("thead",{ref:n,className:we("[&_tr]:border-b",e),...t}));kC.displayName="TableHeader";const NC=x.forwardRef(({className:e,...t},n)=>h.jsx("tbody",{ref:n,className:we("[&_tr:last-child]:border-0",e),...t}));NC.displayName="TableBody";const yL=x.forwardRef(({className:e,...t},n)=>h.jsx("tfoot",{ref:n,className:we("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));yL.displayName="TableFooter";const yh=x.forwardRef(({className:e,...t},n)=>h.jsx("tr",{ref:n,className:we("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));yh.displayName="TableRow";const wc=x.forwardRef(({className:e,...t},n)=>h.jsx("th",{ref:n,className:we("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...t}));wc.displayName="TableHead";const _c=x.forwardRef(({className:e,...t},n)=>h.jsx("td",{ref:n,className:we("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...t}));_c.displayName="TableCell";const TC=x.forwardRef(({className:e,...t},n)=>h.jsx("caption",{ref:n,className:we("mt-4 text-sm text-muted-foreground",e),...t}));TC.displayName="TableCaption";function xL(e){const t=new Map(e.map(n=>[n.id,n]));return e.filter(n=>n.type==="gateway-https").map(n=>{if(console.log(n.data),!n.data||!n.data.network||!n.data.subdomain||!n.data.https||!n.data.https.serviceId||!n.data.https.portId)return null;console.log("1231");const r=t.get(n.data.https.serviceId),o=r.data.ports.find(i=>i.id===n.data.https.portId);return console.log({svc:r,port:o}),{id:`${n.id} - ${o.id}`,service:r,port:o,endpoint:`https://${n.data.subdomain}.${n.data.network}`}}).filter(n=>n!=null)}function wL(){const e=Ko(),t=x.useMemo(()=>xL(e),[e]);return h.jsx(h.Fragment,{children:h.jsxs(EC,{children:[h.jsx(TC,{children:"HTTPS Gateways"}),h.jsx(kC,{children:h.jsxs(yh,{children:[h.jsx(wc,{children:"Service"}),h.jsx(wc,{children:"Port"}),h.jsx(wc,{children:"Endpoint"})]})}),h.jsx(NC,{children:t.map(n=>h.jsxs(yh,{children:[h.jsx(_c,{children:Lt(n.service)}),h.jsx(_c,{children:n.port.name}),h.jsx(_c,{children:h.jsx("a",{href:n.endpoint,target:"_blank",children:n.endpoint})})]}))})]})})}function _L(){const e=zt(),t=Ko(),[n,r]=x.useState();x.useEffect(()=>{r(new Map(t.map(d=>[d.id,d])))},[t,r]);const o=x.useCallback(d=>()=>{d&&d(e)},[e]),i=cd(),[s,a]=x.useState(new Map);x.useEffect(()=>{const d=new Map;i.forEach(u=>{const f=u.nodeId||"global",p=d.get(f)||[];p.push(u),d.set(f,p)}),a(d)},[i,a]);const[l,c]=x.useState([...s.keys()]);return x.useEffect(()=>{c([...s.keys()])},[s,c]),h.jsx(Fm,{type:"multiple",value:l,onValueChange:d=>c(d),children:[...s.entries()].map(([d,u])=>h.jsxs(x_,{value:d,children:[h.jsxs(ad,{className:"flex flex-row-reverse !space-x-4 !justify-end",children:[h.jsx(oC,{children:u.length}),h.jsx("div",{children:d==="global"?"Global":Lt(n==null?void 0:n.get(d))})]}),h.jsx(Vm,{children:h.jsx("div",{className:"flex flex-col space-y-1",children:u.map(f=>h.jsx(Ln,{variant:"ghost",style:{justifyContent:"flex-start"},onMouseOver:o(f.onHighlight),onMouseLeave:o(f.onLooseHighlight),onClick:o(f.onClick),children:f.message},f.id))})})]},d))})}function SL(){const e=cd(),t=ll();return h.jsxs(CC,{defaultValue:"messages",className:"w-[400px] px-5 w-full h-full",children:[h.jsxs(gg,{children:[h.jsxs($i,{value:"messages",className:"space-x-2",children:[h.jsx("div",{children:"Messages"}),h.jsx(oC,{children:e.length})]}),h.jsx($i,{value:"deployment",children:"Deployment"}),h.jsx($i,{value:"deployKeys",children:"Deploy keys"})]}),h.jsx(Fi,{value:"messages",children:h.jsx(_L,{})}),h.jsx(Fi,{value:"deployment",children:h.jsx(wL,{})}),h.jsx(Fi,{value:"deployKeys",children:t&&h.jsx(h.Fragment,{children:t.deployKey})})]})}function bL(){return h.jsxs(Df,{direction:"horizontal",style:{width:"100vw",height:"calc(100vh - 100px)"},children:[h.jsx(si,{defaultSize:80,children:h.jsxs(Df,{direction:"vertical",children:[h.jsx(si,{defaultSize:80,children:h.jsxs(Df,{direction:"horizontal",children:[h.jsx(si,{defaultSize:15,children:h.jsx(tj,{})}),h.jsx(Lf,{withHandle:!0}),h.jsx(si,{defaultSize:85,children:h.jsx(wD,{})})]})}),h.jsx(Lf,{withHandle:!0}),h.jsx(si,{defaultSize:20,children:h.jsx(SL,{})})]})}),h.jsx(Lf,{withHandle:!0}),h.jsx(si,{defaultSize:20,children:h.jsx(bD,{})})]})}function CL(){const e=ll(),[t,n]=x.useState([]),r=Ko();x.useEffect(()=>{console.log(r),r&&r.length>0&&n(r)},[r,n]);const o=x.useMemo(()=>w_(t,e),[t,e]),i=x.useMemo(()=>JSON.stringify(o,void 0,4),[o]);return h.jsx("div",{className:"px-5",children:h.jsx("pre",{children:i})})}var vg="ToastProvider",[yg,EL,kL]=nd("Toast"),[PC,yz]=Xo("Toast",[kL]),[NL,Pd]=PC(vg),IC=e=>{const{__scopeToast:t,label:n="Notification",duration:r=5e3,swipeDirection:o="right",swipeThreshold:i=50,children:s}=e,[a,l]=x.useState(null),[c,d]=x.useState(0),u=x.useRef(!1),f=x.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${vg}\`. Expected non-empty \`string\`.`),h.jsx(yg.Provider,{scope:t,children:h.jsx(NL,{scope:t,label:n,duration:r,swipeDirection:o,swipeThreshold:i,toastCount:c,viewport:a,onViewportChange:l,onToastAdd:x.useCallback(()=>d(p=>p+1),[]),onToastRemove:x.useCallback(()=>d(p=>p-1),[]),isFocusedToastEscapeKeyDownRef:u,isClosePausedRef:f,children:s})})};IC.displayName=vg;var RC="ToastViewport",TL=["F8"],xh="toast.viewportPause",wh="toast.viewportResume",AC=x.forwardRef((e,t)=>{const{__scopeToast:n,hotkey:r=TL,label:o="Notifications ({hotkey})",...i}=e,s=Pd(RC,n),a=EL(n),l=x.useRef(null),c=x.useRef(null),d=x.useRef(null),u=x.useRef(null),f=Ae(t,u,s.onViewportChange),p=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),y=s.toastCount>0;x.useEffect(()=>{const _=m=>{var w;r.length!==0&&r.every(S=>m[S]||m.code===S)&&((w=u.current)==null||w.focus())};return document.addEventListener("keydown",_),()=>document.removeEventListener("keydown",_)},[r]),x.useEffect(()=>{const _=l.current,m=u.current;if(y&&_&&m){const g=()=>{if(!s.isClosePausedRef.current){const N=new CustomEvent(xh);m.dispatchEvent(N),s.isClosePausedRef.current=!0}},w=()=>{if(s.isClosePausedRef.current){const N=new CustomEvent(wh);m.dispatchEvent(N),s.isClosePausedRef.current=!1}},S=N=>{!_.contains(N.relatedTarget)&&w()},C=()=>{_.contains(document.activeElement)||w()};return _.addEventListener("focusin",g),_.addEventListener("focusout",S),_.addEventListener("pointermove",g),_.addEventListener("pointerleave",C),window.addEventListener("blur",g),window.addEventListener("focus",w),()=>{_.removeEventListener("focusin",g),_.removeEventListener("focusout",S),_.removeEventListener("pointermove",g),_.removeEventListener("pointerleave",C),window.removeEventListener("blur",g),window.removeEventListener("focus",w)}}},[y,s.isClosePausedRef]);const v=x.useCallback(({tabbingDirection:_})=>{const g=a().map(w=>{const S=w.ref.current,C=[S,...VL(S)];return _==="forwards"?C:C.reverse()});return(_==="forwards"?g.reverse():g).flat()},[a]);return x.useEffect(()=>{const _=u.current;if(_){const m=g=>{var C,N,E;const w=g.altKey||g.ctrlKey||g.metaKey;if(g.key==="Tab"&&!w){const P=document.activeElement,O=g.shiftKey;if(g.target===_&&O){(C=c.current)==null||C.focus();return}const A=v({tabbingDirection:O?"backwards":"forwards"}),L=A.findIndex(b=>b===P);$f(A.slice(L+1))?g.preventDefault():O?(N=c.current)==null||N.focus():(E=d.current)==null||E.focus()}};return _.addEventListener("keydown",m),()=>_.removeEventListener("keydown",m)}},[a,v]),h.jsxs(zj,{ref:l,role:"region","aria-label":o.replace("{hotkey}",p),tabIndex:-1,style:{pointerEvents:y?void 0:"none"},children:[y&&h.jsx(_h,{ref:c,onFocusFromOutsideViewport:()=>{const _=v({tabbingDirection:"forwards"});$f(_)}}),h.jsx(yg.Slot,{scope:n,children:h.jsx(xe.ol,{tabIndex:-1,...i,ref:f})}),y&&h.jsx(_h,{ref:d,onFocusFromOutsideViewport:()=>{const _=v({tabbingDirection:"backwards"});$f(_)}})]})});AC.displayName=RC;var MC="ToastFocusProxy",_h=x.forwardRef((e,t)=>{const{__scopeToast:n,onFocusFromOutsideViewport:r,...o}=e,i=Pd(MC,n);return h.jsx(pl,{"aria-hidden":!0,tabIndex:0,...o,ref:t,style:{position:"fixed"},onFocus:s=>{var c;const a=s.relatedTarget;!((c=i.viewport)!=null&&c.contains(a))&&r()}})});_h.displayName=MC;var Id="Toast",PL="toast.swipeStart",IL="toast.swipeMove",RL="toast.swipeCancel",AL="toast.swipeEnd",jC=x.forwardRef((e,t)=>{const{forceMount:n,open:r,defaultOpen:o,onOpenChange:i,...s}=e,[a=!0,l]=Hn({prop:r,defaultProp:o,onChange:i});return h.jsx(kr,{present:n||a,children:h.jsx(OL,{open:a,...s,ref:t,onClose:()=>l(!1),onPause:Dt(e.onPause),onResume:Dt(e.onResume),onSwipeStart:he(e.onSwipeStart,c=>{c.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:he(e.onSwipeMove,c=>{const{x:d,y:u}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","move"),c.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${d}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${u}px`)}),onSwipeCancel:he(e.onSwipeCancel,c=>{c.currentTarget.setAttribute("data-swipe","cancel"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:he(e.onSwipeEnd,c=>{const{x:d,y:u}=c.detail.delta;c.currentTarget.setAttribute("data-swipe","end"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),c.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),c.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${d}px`),c.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${u}px`),l(!1)})})})});jC.displayName=Id;var[ML,jL]=PC(Id,{onClose(){}}),OL=x.forwardRef((e,t)=>{const{__scopeToast:n,type:r="foreground",duration:o,open:i,onClose:s,onEscapeKeyDown:a,onPause:l,onResume:c,onSwipeStart:d,onSwipeMove:u,onSwipeCancel:f,onSwipeEnd:p,...y}=e,v=Pd(Id,n),[_,m]=x.useState(null),g=Ae(t,b=>m(b)),w=x.useRef(null),S=x.useRef(null),C=o||v.duration,N=x.useRef(0),E=x.useRef(C),P=x.useRef(0),{onToastAdd:O,onToastRemove:j}=v,$=Dt(()=>{var M;(_==null?void 0:_.contains(document.activeElement))&&((M=v.viewport)==null||M.focus()),s()}),A=x.useCallback(b=>{!b||b===1/0||(window.clearTimeout(P.current),N.current=new Date().getTime(),P.current=window.setTimeout($,b))},[$]);x.useEffect(()=>{const b=v.viewport;if(b){const M=()=>{A(E.current),c==null||c()},T=()=>{const D=new Date().getTime()-N.current;E.current=E.current-D,window.clearTimeout(P.current),l==null||l()};return b.addEventListener(xh,T),b.addEventListener(wh,M),()=>{b.removeEventListener(xh,T),b.removeEventListener(wh,M)}}},[v.viewport,C,l,c,A]),x.useEffect(()=>{i&&!v.isClosePausedRef.current&&A(C)},[i,C,v.isClosePausedRef,A]),x.useEffect(()=>(O(),()=>j()),[O,j]);const L=x.useMemo(()=>_?VC(_):null,[_]);return v.viewport?h.jsxs(h.Fragment,{children:[L&&h.jsx(DL,{__scopeToast:n,role:"status","aria-live":r==="foreground"?"assertive":"polite","aria-atomic":!0,children:L}),h.jsx(ML,{scope:n,onClose:$,children:Go.createPortal(h.jsx(yg.ItemSlot,{scope:n,children:h.jsx(Lj,{asChild:!0,onEscapeKeyDown:he(a,()=>{v.isFocusedToastEscapeKeyDownRef.current||$(),v.isFocusedToastEscapeKeyDownRef.current=!1}),children:h.jsx(xe.li,{role:"status","aria-live":"off","aria-atomic":!0,tabIndex:0,"data-state":i?"open":"closed","data-swipe-direction":v.swipeDirection,...y,ref:g,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:he(e.onKeyDown,b=>{b.key==="Escape"&&(a==null||a(b.nativeEvent),b.nativeEvent.defaultPrevented||(v.isFocusedToastEscapeKeyDownRef.current=!0,$()))}),onPointerDown:he(e.onPointerDown,b=>{b.button===0&&(w.current={x:b.clientX,y:b.clientY})}),onPointerMove:he(e.onPointerMove,b=>{if(!w.current)return;const M=b.clientX-w.current.x,T=b.clientY-w.current.y,D=!!S.current,k=["left","right"].includes(v.swipeDirection),I=["left","up"].includes(v.swipeDirection)?Math.min:Math.max,z=k?I(0,M):0,U=k?0:I(0,T),Y=b.pointerType==="touch"?10:2,H={x:z,y:U},Z={originalEvent:b,delta:H};D?(S.current=H,ql(IL,u,Z,{discrete:!1})):Vy(H,v.swipeDirection,Y)?(S.current=H,ql(PL,d,Z,{discrete:!1}),b.target.setPointerCapture(b.pointerId)):(Math.abs(M)>Y||Math.abs(T)>Y)&&(w.current=null)}),onPointerUp:he(e.onPointerUp,b=>{const M=S.current,T=b.target;if(T.hasPointerCapture(b.pointerId)&&T.releasePointerCapture(b.pointerId),S.current=null,w.current=null,M){const D=b.currentTarget,k={originalEvent:b,delta:M};Vy(M,v.swipeDirection,v.swipeThreshold)?ql(AL,p,k,{discrete:!0}):ql(RL,f,k,{discrete:!0}),D.addEventListener("click",I=>I.preventDefault(),{once:!0})}})})})}),v.viewport)})]}):null}),DL=e=>{const{__scopeToast:t,children:n,...r}=e,o=Pd(Id,t),[i,s]=x.useState(!1),[a,l]=x.useState(!1);return $L(()=>s(!0)),x.useEffect(()=>{const c=window.setTimeout(()=>l(!0),1e3);return()=>window.clearTimeout(c)},[]),a?null:h.jsx(fl,{asChild:!0,children:h.jsx(pl,{...r,children:i&&h.jsxs(h.Fragment,{children:[o.label," ",n]})})})},LL="ToastTitle",OC=x.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return h.jsx(xe.div,{...r,ref:t})});OC.displayName=LL;var zL="ToastDescription",DC=x.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return h.jsx(xe.div,{...r,ref:t})});DC.displayName=zL;var LC="ToastAction",zC=x.forwardRef((e,t)=>{const{altText:n,...r}=e;return n.trim()?h.jsx(FC,{altText:n,asChild:!0,children:h.jsx(xg,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${LC}\`. Expected non-empty \`string\`.`),null)});zC.displayName=LC;var $C="ToastClose",xg=x.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e,o=jL($C,n);return h.jsx(FC,{asChild:!0,children:h.jsx(xe.button,{type:"button",...r,ref:t,onClick:he(e.onClick,o.onClose)})})});xg.displayName=$C;var FC=x.forwardRef((e,t)=>{const{__scopeToast:n,altText:r,...o}=e;return h.jsx(xe.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":r||void 0,...o,ref:t})});function VC(e){const t=[];return Array.from(e.childNodes).forEach(r=>{if(r.nodeType===r.TEXT_NODE&&r.textContent&&t.push(r.textContent),FL(r)){const o=r.ariaHidden||r.hidden||r.style.display==="none",i=r.dataset.radixToastAnnounceExclude==="";if(!o)if(i){const s=r.dataset.radixToastAnnounceAlt;s&&t.push(s)}else t.push(...VC(r))}}),t}function ql(e,t,n,{discrete:r}){const o=n.originalEvent.currentTarget,i=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?e_(o,i):o.dispatchEvent(i)}var Vy=(e,t,n=0)=>{const r=Math.abs(e.x),o=Math.abs(e.y),i=r>o;return t==="left"||t==="right"?i&&r>n:!i&&o>n};function $L(e=()=>{}){const t=Dt(e);pt(()=>{let n=0,r=0;return n=window.requestAnimationFrame(()=>r=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(r)}},[t])}function FL(e){return e.nodeType===e.ELEMENT_NODE}function VL(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function $f(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}var HL=IC,HC=AC,BC=jC,UC=OC,WC=DC,ZC=zC,GC=xg;const BL=HL,YC=x.forwardRef(({className:e,...t},n)=>h.jsx(HC,{ref:n,className:we("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));YC.displayName=HC.displayName;const UL=td("group pointer-events-auto relative flex w-full items-center justify-between space-x-2 overflow-hidden rounded-md border p-4 pr-6 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),KC=x.forwardRef(({className:e,variant:t,...n},r)=>h.jsx(BC,{ref:r,className:we(UL({variant:t}),e),...n}));KC.displayName=BC.displayName;const WL=x.forwardRef(({className:e,...t},n)=>h.jsx(ZC,{ref:n,className:we("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...t}));WL.displayName=ZC.displayName;const XC=x.forwardRef(({className:e,...t},n)=>h.jsx(GC,{ref:n,className:we("absolute right-1 top-1 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-1 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:h.jsx(y_,{className:"h-4 w-4"})}));XC.displayName=GC.displayName;const qC=x.forwardRef(({className:e,...t},n)=>h.jsx(UC,{ref:n,className:we("text-sm font-semibold [&+div]:text-xs",e),...t}));qC.displayName=UC.displayName;const QC=x.forwardRef(({className:e,...t},n)=>h.jsx(WC,{ref:n,className:we("text-sm opacity-90",e),...t}));QC.displayName=WC.displayName;function ZL(){const{toasts:e}=cg();return h.jsxs(BL,{children:[e.map(function({id:t,title:n,description:r,action:o,...i}){return h.jsxs(KC,{...i,children:[h.jsxs("div",{className:"grid gap-1",children:[n&&h.jsx(qC,{children:n}),r&&h.jsx(QC,{children:r})]}),o,h.jsx(XC,{})]},t)}),h.jsx(YC,{})]})}var wg="Dialog",[JC,xz]=Xo(wg),[GL,Tn]=JC(wg),eE=e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:o,onOpenChange:i,modal:s=!0}=e,a=x.useRef(null),l=x.useRef(null),[c=!1,d]=Hn({prop:r,defaultProp:o,onChange:i});return h.jsx(GL,{scope:t,triggerRef:a,contentRef:l,contentId:xn(),titleId:xn(),descriptionId:xn(),open:c,onOpenChange:d,onOpenToggle:x.useCallback(()=>d(u=>!u),[d]),modal:s,children:n})};eE.displayName=wg;var tE="DialogTrigger",nE=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Tn(tE,n),i=Ae(t,o.triggerRef);return h.jsx(xe.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":bg(o.open),...r,ref:i,onClick:he(e.onClick,o.onOpenToggle)})});nE.displayName=tE;var _g="DialogPortal",[YL,rE]=JC(_g,{forceMount:void 0}),oE=e=>{const{__scopeDialog:t,forceMount:n,children:r,container:o}=e,i=Tn(_g,t);return h.jsx(YL,{scope:t,forceMount:n,children:x.Children.map(r,s=>h.jsx(kr,{present:n||i.open,children:h.jsx(fl,{asChild:!0,container:o,children:s})}))})};oE.displayName=_g;var bu="DialogOverlay",iE=x.forwardRef((e,t)=>{const n=rE(bu,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=Tn(bu,e.__scopeDialog);return i.modal?h.jsx(kr,{present:r||i.open,children:h.jsx(KL,{...o,ref:t})}):null});iE.displayName=bu;var KL=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Tn(bu,n);return h.jsx(ig,{as:to,allowPinchZoom:!0,shards:[o.contentRef],children:h.jsx(xe.div,{"data-state":bg(o.open),...r,ref:t,style:{pointerEvents:"auto",...r.style}})})}),Uo="DialogContent",sE=x.forwardRef((e,t)=>{const n=rE(Uo,e.__scopeDialog),{forceMount:r=n.forceMount,...o}=e,i=Tn(Uo,e.__scopeDialog);return h.jsx(kr,{present:r||i.open,children:i.modal?h.jsx(XL,{...o,ref:t}):h.jsx(qL,{...o,ref:t})})});sE.displayName=Uo;var XL=x.forwardRef((e,t)=>{const n=Tn(Uo,e.__scopeDialog),r=x.useRef(null),o=Ae(t,n.contentRef,r);return x.useEffect(()=>{const i=r.current;if(i)return AS(i)},[]),h.jsx(aE,{...e,ref:o,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:he(e.onCloseAutoFocus,i=>{var s;i.preventDefault(),(s=n.triggerRef.current)==null||s.focus()}),onPointerDownOutside:he(e.onPointerDownOutside,i=>{const s=i.detail.originalEvent,a=s.button===0&&s.ctrlKey===!0;(s.button===2||a)&&i.preventDefault()}),onFocusOutside:he(e.onFocusOutside,i=>i.preventDefault())})}),qL=x.forwardRef((e,t)=>{const n=Tn(Uo,e.__scopeDialog),r=x.useRef(!1),o=x.useRef(!1);return h.jsx(aE,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{var s,a;(s=e.onCloseAutoFocus)==null||s.call(e,i),i.defaultPrevented||(r.current||(a=n.triggerRef.current)==null||a.focus(),i.preventDefault()),r.current=!1,o.current=!1},onInteractOutside:i=>{var l,c;(l=e.onInteractOutside)==null||l.call(e,i),i.defaultPrevented||(r.current=!0,i.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const s=i.target;((c=n.triggerRef.current)==null?void 0:c.contains(s))&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&o.current&&i.preventDefault()}})}),aE=x.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:o,onCloseAutoFocus:i,...s}=e,a=Tn(Uo,n),l=x.useRef(null),c=Ae(t,l);return sS(),h.jsxs(h.Fragment,{children:[h.jsx(Km,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:o,onUnmountAutoFocus:i,children:h.jsx(ul,{role:"dialog",id:a.contentId,"aria-describedby":a.descriptionId,"aria-labelledby":a.titleId,"data-state":bg(a.open),...s,ref:c,onDismiss:()=>a.onOpenChange(!1)})}),h.jsxs(h.Fragment,{children:[h.jsx(QL,{titleId:a.titleId}),h.jsx(ez,{contentRef:l,descriptionId:a.descriptionId})]})]})}),Sg="DialogTitle",lE=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Tn(Sg,n);return h.jsx(xe.h2,{id:o.titleId,...r,ref:t})});lE.displayName=Sg;var cE="DialogDescription",uE=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Tn(cE,n);return h.jsx(xe.p,{id:o.descriptionId,...r,ref:t})});uE.displayName=cE;var dE="DialogClose",fE=x.forwardRef((e,t)=>{const{__scopeDialog:n,...r}=e,o=Tn(dE,n);return h.jsx(xe.button,{type:"button",...r,ref:t,onClick:he(e.onClick,()=>o.onOpenChange(!1))})});fE.displayName=dE;function bg(e){return e?"open":"closed"}var pE="DialogTitleWarning",[wz,hE]=AA(pE,{contentName:Uo,titleName:Sg,docsSlug:"dialog"}),QL=({titleId:e})=>{const t=hE(pE),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
+
+If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
+
+For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return x.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},JL="DialogDescriptionWarning",ez=({contentRef:e,descriptionId:t})=>{const r=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${hE(JL).contentName}}.`;return x.useEffect(()=>{var i;const o=(i=e.current)==null?void 0:i.getAttribute("aria-describedby");t&&o&&(document.getElementById(t)||console.warn(r))},[r,e,t]),null},tz=eE,nz=nE,rz=oE,mE=iE,gE=sE,vE=lE,yE=uE,oz=fE;const iz=tz,sz=nz,az=rz,xE=x.forwardRef(({className:e,...t},n)=>h.jsx(mE,{ref:n,className:we("fixed inset-0 z-50 bg-black/80  data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));xE.displayName=mE.displayName;const wE=x.forwardRef(({className:e,children:t,...n},r)=>h.jsxs(az,{children:[h.jsx(xE,{}),h.jsxs(gE,{ref:r,className:we("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...n,children:[t,h.jsxs(oz,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[h.jsx(y_,{className:"h-4 w-4"}),h.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));wE.displayName=gE.displayName;const lz=x.forwardRef(({className:e,...t},n)=>h.jsx(vE,{ref:n,className:we("text-lg font-semibold leading-none tracking-tight",e),...t}));lz.displayName=vE.displayName;const cz=x.forwardRef(({className:e,...t},n)=>h.jsx(yE,{ref:n,className:we("text-sm text-muted-foreground",e),...t}));cz.displayName=yE.displayName;function uz(){const{toast:e}=cg(),t=zt(),[n,r]=x.useState([]);x.useEffect(()=>{t.setProjects(n)},[n]);const o=x.useCallback(async()=>{try{const v=await fetch("/api/project");r(await v.json())}catch(v){console.log(v)}},[r]);x.useEffect(()=>{o()},[o]);const i=A_(),[s,a]=x.useState(!1),l=x.useCallback(v=>{v==="create-new"?a(!0):t.setProject(v)},[t]),c=Yo(),d=x.useCallback(async v=>{const m=await(await fetch(`/api/project/${v}/saved`,{method:"GET"})).json(),{x:g=0,y:w=0,zoom:S=1}=m.viewport;c.setNodes(m.nodes||[]),c.setEdges(m.edges||[]),c.setViewport({x:g,y:w,zoom:S})},[c]);x.useEffect(()=>{i!=null&&d(i)},[i,d]);const[u,f]=x.useState(void 0),p=x.useCallback(v=>{f(v.target.value)},[f]),y=x.useCallback(()=>{console.log(u),u&&fetch("/api/project",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:u})}).then(async v=>{if(!v.ok)return;const{id:_}=await v.json();await o(),t.setProject(_),a(!1),e({title:`Created project: ${u}`})}).catch(v=>{console.log(v),e({variant:"destructive",title:`Failed to create project: ${u}`})})},[u,a,e]);return h.jsx("div",{className:"flex flex-row h-9",children:h.jsxs(ur,{onValueChange:l,value:i,children:[h.jsx(Fn,{children:h.jsx(dr,{placeholder:"Choose Project",defaultValue:i})}),h.jsxs(Vn,{children:[n.map(v=>h.jsx(_n,{value:v.id,children:v.name})),h.jsx(_n,{value:"create-new",children:h.jsxs(iz,{open:s,onOpenChange:a,children:[h.jsx(sz,{children:"Create New"}),h.jsxs(wE,{children:[h.jsx(nn,{type:"text",placeholder:"Name",onChange:p}),h.jsx(Ln,{onClick:y,children:"Create New"})]})]})})]})]})})}function dz(){return h.jsxs(V2,{children:[h.jsx(uz,{}),h.jsx(fz,{}),h.jsx(ZL,{})]})}function fz(){const e=zt();return x.useEffect(()=>{setTimeout(async()=>await e.refreshEnv(),1)},[e]),h.jsxs(CC,{defaultValue:"canvas",children:[h.jsxs(gg,{children:[h.jsx($i,{value:"canvas",children:"Canvas"}),h.jsx($i,{value:"config",children:"Config"})]}),h.jsx(Fi,{value:"canvas",children:h.jsx(bL,{})}),h.jsx(Fi,{value:"config",children:h.jsx(CL,{})})]})}ew(document.getElementById("root")).render(h.jsx(x.StrictMode,{children:h.jsx(dz,{})}));
diff --git a/apps/canvas/server/front/index.html b/apps/canvas/server/front/index.html
new file mode 100644
index 0000000..4e6cd67
--- /dev/null
+++ b/apps/canvas/server/front/index.html
@@ -0,0 +1,14 @@
+<!doctype html>
+<html lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <title>dodo: Canvas</title>
+    <script type="module" crossorigin src="/assets/index-DRnLehre.js"></script>
+    <link rel="stylesheet" crossorigin href="/assets/index-DITJ3yy7.css">
+  </head>
+  <body>
+    <div id="root"></div>
+  </body>
+</html>
diff --git a/apps/canvas/server/main.go b/apps/canvas/server/main.go
index 7608049..82db481 100644
--- a/apps/canvas/server/main.go
+++ b/apps/canvas/server/main.go
@@ -108,11 +108,19 @@
 	json.NewEncoder(w).Encode(resp)
 }
 
+func getPort() string {
+	if p, ok := os.LookupEnv("DODO_PORT_WEB"); ok {
+		return p
+	}
+	panic("port missing")
+}
+
 func main() {
+	port := getPort()
 	http.HandleFunc("GET /saved", handleSavedGet)
 	http.HandleFunc("POST /saved", handleSave)
 	http.HandleFunc("GET /env", handleEnv)
 	http.HandleFunc("POST /deploy", handleDeploy)
-	http.Handle("/", http.FileServer(http.Dir("/home/gio/code/dist")))
-	log.Fatal(http.ListenAndServe(":3000", nil))
+	http.Handle("/", http.FileServer(http.Dir("./front")))
+	log.Fatal(http.ListenAndServe(fmt.Sprintf(":%s", port), nil))
 }